ממוקד למידת מכונה, משתלב עם SageMaker Studio + זרימה ← משימת עיבוד ← Pipeline ← ייצוא Notebook ← SageMaker Data Wrangler. ניקוי נתונים כללי עם מתכונים לשימוש חוזר, פרופיילינג, ללא תלות ב-SageMaker ← AWS Glue DataBrew. 50 TB+ Spark עם קוד מותאם אישית ← Amazon EMR.
למה: Data Wrangler היא האפשרות המובנית ב-SageMaker (300+ טרנספורמציות, חילוץ תאריך/שעה, ייצוא ל-Pipeline/Processing). DataBrew מבוססת מתכונים ובלתי תלויה במקור. EMR מטפל בקנה מידה וב-Spark שרירותי.
תייג 100,000 תמונות ביעילות-עלות - רוצה תיוג אנושי + אוטומטי.
Amazon SageMaker Ground Truth עם תיוג נתונים אוטומטי מופעל. לאחר תת-קבוצה ראשונית שתויגה על ידי אדם, Ground Truth מאמנת מודל ומבצעת תיוג אוטומטי לדוגמאות בעלות ביטחון גבוה.
למה: למידה אקטיבית בדרך כלל מקצצת את עלות התיוג עד 70%. A2I מיועד לבדיקה אנושית של תחזיות מודל, לא לתיוג בכמויות גדולות.
מספר מבצעי תיוג אינם מסכימים; דרוש בודק בכיר כדי לוודא מדגם של תוויות.
זרימת עבודה של אימות תוויות (ביקורת) של Ground Truth. תת-קבוצה של תוויות מנותבת לכוח עבודה של בודקים שמאשר, דוחה או מתאים. שלב עם איחוד הערות להצבעת רוב של מספר עובדים.
אותן תכונות מהונדסות נחוצות באימון (אצווה) וב-inference (פחות מ-10 אלפיות השנייה).
Amazon SageMaker Feature Store עם חנויות מקוונות + לא מקוונות מופעלות בקבוצת התכונות. החנות המקוונת תומכת ב-GetRecord בזמן אמת; החנות הלא מקוונת (Parquet ב-S3) תומכת באימון.
למה: מבטל הטיה בין אימון/הגשה ללא סנכרון DynamoDB ↔ S3 מותאם אישית.
בחר מצב קלט נתוני אימון של SageMaker עבור מערך נתונים של 500 GB.
מצב קובץ ← כל מערך הנתונים יורד ראשית (התחלה איטית, עלות EBS). מצב Pipe ← זורם מ-S3, אתחול נמוך, אחסון נמוך. מצב FastFile ← סטרימינג עצל ברמת קובץ. השתמש ב-Pipe (או FastFile) עבור מערכי נתונים גדולים כדי להימנע מהורדה.
קודד תכונות קטגוריאליות. חלקן מסודרות (בסיסי/סטנדרטי/פרימיום), חלקן לא (מדינות בארה"ב).
מסודר ← קידוד אורדינלי (שומר על דרגה). לא מסודר ← קידוד one-hot (מונע סדר מדומיין). הימנע מקידוד תוויות על תכונות לא מסודרות. קידוד יעד דורש CV זהיר כדי למנוע דליפה.
לעמודה מספרית יש ערכים חסרים המקבילים לתכונה אחרת (לדוגמה, הכנסה חסרה תלויה בסוג העסקה).
השלמה מבוססת קבוצות באמצעות חציון (חציון לכל סוג העסקה). שומר על היחס; ממוצע רגיש לחריגים; השמטה מאבדת נתונים; אפס מוסיף הטיה.
סיווג בינארי עם 0.3% מחלקה חיובית.
דגימת יתר של SMOTE על קיפול האימון בלבד (לאחר הפיצול). שלב עם הערכת PR-curve / F1, לא דיוק.
למה: החל דגימת יתר אחרי הפיצול כדי למנוע דליפה. דיוק מטעה על נתונים לא מאוזנים.
תכונה נומרית מוטה ימינה (לדוגמה הכנסה) פוגעת בביצועי המודל הליניארי.
טרנספורמציה לוגריתמית. מכווצת את הזנב הימני ומייצרת התפלגות סימטרית יותר. סטנדרטיזציה/min-max משנים קנה מידה, לא צורה.
50 תכונות מתואמות מאוד; רוצה ממדיות נמוכה יותר השומרת על שונות.
PCA. הופך תכונות מתואמות לרכיבים ראשיים לא מתואמים המדורגים לפי שונות.
בחר פיצול אימון/אימות/בדיקה.
סיווג לא מאוזן ← פיצול שכבות (שומר על יחס מחלקה). סדרות זמן ← פיצול כרונולוגי (אימון על תקופה מוקדמת, בדיקה על האחרונה); לעולם לא ערבוב אקראי. טבלאי IID ← אקראי.
פיתוח מודלים של למידת מכונה
בחר אלגוריתם מובנה של SageMaker.
סיווג/רגרסיה טבלאיים ← XGBoost או Linear Learner. סיווג טקסט רב-מחלקי בקנה מידה ← BlazingText (מפוקח). סדרות זמן עם סדרות קשורות ועונתיות ← DeepAR. זיהוי חריגים לא מפוקח על נתונים מספריים ← Random Cut Forest. מידול נושאים ← Neural Topic Model. תרגום / Seq2Seq ← Sequence-to-Sequence. מחלקות ברמת פיקסל ← Semantic Segmentation. הטמעות ישויות מותאמות (משתמש/פריט) ← Object2Vec.
מסגרת אימון מותאמת אישית / טוקניזר קנייני לא מובנים.
BYOC (Bring Your Own Container): תמונת Docker עם הקוד והתלויות, דחף ל-Amazon ECR, הפניה באימון SageMaker. שומר על תשתית מנוהלת (Spot, מבוזר, מחזור חיים) מבלי לוותר על התאמה אישית.
למידת העברה ממודל שאומן מראש על ImageNet (לדוגמה ResNet). כוונן דק את השכבות האחרונות. SageMaker Image Classification תומך בכך ישירות.
למה: אימון מאפס על נתונים קטנים גורם להתאמת יתר. תכונות שאומנו מראש (קצוות, טקסטורות) עוברות בצורה נקייה לתמונות רפואיות.
כוונן דק מודל יסוד שאומן מראש במהירות מבלי לכתוב קוד אימון מותאם אישית.
API של SageMaker JumpStart לכוונון דק: בחר מזהה מודל, ספק מערך נתונים בפורמט הצפוי (בדרך כלל JSONL), הפעל משימת כוונון דק, פרוס לנקודת קצה מ-JumpStart.
התאם LLM לתחום. ידע סטטי רב ← בחר RAG לעומת כוונון דק לעומת הנחיה בלבד.
ידע תחום המשתנה לעיתים קרובות ← RAG באמצעות Bedrock Knowledge Bases. קול מותג / סגנון עקבי עם דוגמאות מתויגות ← התאמה אישית של מודל Bedrock (כוונון דק, לעיתים קרובות מתאמים חסכוניים בפרמטרים). הנחיה סטטית קטנה ← הנדסת הנחיות עם few-shot.
המודל מתאים ל-GPU אחד אבל הנתונים עצומים ← מקבילות נתונים (שכפל מודל, פצל אצוות, גרדיאנטים של AllReduce). המודל לא מתאים ל-GPU אחד ← מקבילות מודל (פצל שכבות/טנסורים על פני GPUs). 10B+ פרמטרים ← ספריית מקבילות מודל של SageMaker (מקבילות טנסור + pipeline).
אובדן האימון ממשיך לרדת, אובדן האימות מתחיל לעלות לאחר epoch 50.
התאמת יתר. החל עצירה מוקדמת במינימום אובדן האימות, בתוספת נשירה / ריקבון משקל L2. יותר שכבות מחמירות את המצב.
בחר את מדד הסיווג הנכון.
לא מאוזן + חיובי נדיר חשוב ← recall, F1, עקומת PR / Average Precision (לא ROC AUC, המנופח על ידי TNs רבים). רב-מחלקי עם חוסר איזון ← F1 ממוצע מאקרו. דירוג בלתי תלוי בסף ← AUC. כיול הסתברות ← log loss / Brier.
מודל רגרסיה מנבא יתר על המידה בקצה העליון ומנבא חסר בקצה התחתון.
צייר שאריות לעומת ערך מנובא; השתמש בשגיאה ממוצעת (עם סימן) עבור הטיה שיטתית. RMSE / MAE / R² מסתירים כיוון.
כל קלט יכול להשתייך למספר מחלקות בו זמנית.
הפעלת Sigmoid לכל נוירון פלט עם אובדן אנטרופיה צולבת בינארית (הסתברויות בלתי תלויות). Softmax + אנטרופיה צולבת קטגוריאלית מניחים מחלקות שאינן כוללות זו את זו.
ערום מספר מודלי בסיס עם לומד-על (meta-learner).
אימות צולב k-fold: כל מודל בסיס מייצר תחזיות מחוץ לקיפול על הקיפול שהוצא; אסוף על פני הקיפולים ואמן את ה-meta-learner עליהם.
למה: אימון מודלי בסיס וחיזוי על אותו מערך אימון מדליף מידע ללומד-העל.
עקוב והשווה ריצות אימון רבות (פרמטרים, מדדים, חפצים).
זהה פתולוגיות אימון (vanishing gradient, loss לא יורד, exploding tensor) מבלי לשכתב את הסקריפט.
SageMaker Debugger עם כללים מובנים (`VanishingGradient`, `LossNotDecreasing`, `ExplodingTensor`, `Overfit`). לוכד טנסורים באמצעות hooks; מעריך כללים תוך כדי תנועה.
סינכרוני עם זמן אחזור נמוך ויציב ← נקודת קצה בזמן אמת. תעבורה לא סדירה / סרק, ללא צורך ב-GPU ← הסקה ללא שרת (הגדר Provisioned Concurrency לביטול אתחולים קרים). ארוך טווח לכל בקשה (>60 שניות) או מטענים גדולים ← הסקה אסינכרונית. ניקוד אופליין בכמות גדולה של רשומות S3 ← batch transform.
זרימת עבודה מקומית של למידת מכונה: אימון ← הערכה ← רישום/פריסה מותנה.
SageMaker Pipelines עם TrainingStep → ConditionStep (סף מדד) → RegisterModel → צעד Lambda (או CreateModel/Endpoint). אינטגרציה מקומית של SageMaker, פרמטריזציה, שמירה במטמון, אילן יוחסין.
AWS Step Functions. אינטגרציות שירות מקומיות על פני הערימה; עשיר יותר מ-Pipelines עבור צעדים שאינם של SageMaker.
למה: Pipelines היא הבחירה הנכונה עבור תהליכי עבודה טהורים של למידת מכונה; Step Functions היא הבחירה הנכונה כאשר אתה זקוק לאינטגרציות שירות רחבות יותר של AWS.
התפלגות הקלט נראית ללא שינוי אך איכות החיזוי השתנתה.
SageMaker Clarify Feature Attribution Drift Monitor (מבוסס SHAP). מזהה סחף מושגים באמצעות שינויים בחשיבות התכונות. שלב עם Model Quality monitor כאשר אמת הקרקע זמינה.
סחף מושגים (היחס בין התווית/התכונה השתנה). סחף נתונים נפסל. תיקון: אימון מחדש על נתונים מתויגים עדכניים.
בדוק את מערך הנתונים להטיה לפני אימון.
מדדי הטיה לפני אימון של SageMaker Clarify. חוסר איזון מחלקות (CI) עבור פער בגודל מדגם; הבדל בשיעורים חיוביים של תוויות (DPL) עבור פער בשיעור תוויות; סטיית KL/JS עבור פערי התפלגות.
מחברת צריכה לקרוא נתוני אימון מ-S3 bucket אחד ולכתוב חפצים ל-bucket אחר.
מדיניות IAM מותאמת אישית: `s3:GetObject` על ה-bucket/קידומת של האימון ו-`s3:PutObject` על ה-bucket/קידומת של החפצים, מחוברת לתפקיד הביצוע של SageMaker. הימנע מ-`AmazonS3FullAccess`.
הצפן נתוני אימון וחפצי מודל עם מפתחות מנוהלים על ידי לקוח + סיבוב.
SSE-KMS עם מפתח מנוהל על ידי לקוח (CMK). סיבוב KMS, מדיניות מפתחות, ביקורת CloudTrail. ציין את מפתח ה-KMS במשימת האימון + תצורת נקודת הקצה (נפח + פלט) כדי ש-SageMaker ישתמש בו.
הפעל את SageMaker בתת-רשת פרטית ללא NAT/Internet Gateway. הוסף נקודות קצה של VPC - נקודת קצה של gateway עבור S3, נקודות קצה של ממשק עבור SageMaker API + Runtime + ECR + STS + CloudWatch Logs.
אכוף שכל משאבי SageMaker ישתמשו ב-VPC + KMS + סוגי מופעים מאושרים.
מניעתי ← מוצרי SageMaker Service Catalog (תצורות מאושרות מראש) ומפתחות תנאי IAM (`sagemaker:VpcSecurityGroupIds`, `sagemaker:VolumeKmsKey`) המונעים קריאות API שאינן תואמות. איתור → כללים מנוהלים/מותאמים אישית של AWS Config.