Azure DP-100: תוכנית לימודים בת 6 שבועות ל-Data Scientist Associate
תוכנית ריאליסטית בת 6 שבועות ל-DP-100 המכסה את Azure ML SDK v2, MLflow, designer ופריסה — בתוספת המלכודות שמכשילות מועמדים מוכנים אחרת.
DP-100 היא בחינת Designing and Implementing a Data Science Solution on Azure. עלותה 165 דולר ארה"ב, 40–60 שאלות ב-100 דקות (המספר משתנה עקב מקרי בוחן), סעיף אחד או שניים של מקרי בוחן, ציון מעבר מותאם של 700/1000. זוהי ההסמכה ברמת Associate מבוססת תפקיד עבור מדעני נתונים העובדים עם Azure Machine Learning.
שישה שבועות של 8–10 שעות בשבוע מספיקים אם אתם כבר מכירים את Python, scikit-learn, ומושגי ML בסיסיים. אם אתם לומדים ML מאפס, DP-100 אינה הבחינה הנכונה עדיין — לכו קודם לקורס אימון מודלים. הבחינה בודקת את Azure ML, לא אם אתם מבינים מטריצת בלבול.
מה DP-100 באמת בודקת
מדריך הבחינה הנוכחי (שרוענן ב-2024 כדי להסיר את SDK v1 ולהתמקד במלואו ב-v2) מתחלק בערך כך:
- ניהול משאבי Azure ML (workspaces, compute, datastores, environments) — כ-25%
- הרצת ניסויים ואימון מודלים (jobs, MLflow tracking, AutoML, hyperdrive) — כ-25%
- פריסה והפעלה של פתרונות ML (managed online endpoints, batch endpoints, monitoring) — כ-25%
- הטמעת ML אחראי (fairness, interpretability, differential privacy) — כ-25%
מה זה אומר בפועל: עליכם להיות שוטפים בשימוש ב-Azure ML Python SDK v2, נוחים ב-Azure ML Studio (designer בתוספת notebooks), וברורים לגבי ההבדלים בין MLflow tracking ב-Azure ML, AutoML עבור נתונים טבלאיים / תמונות / NLP, ו-HyperDrive / sweep jobs לכוונון היפרפרמטרים. החצי העוסק בפריסה רוצה שתדעו את ההבדל בין managed online endpoints (בזמן אמת, עם פיצול תעבורה ו-blue-green) לבין batch endpoints (ניקוד בקנה מידה).
דרישות קדם שאתם באמת צריכים
לפני שבוע 1, עליכם להיות ברמה הבאה:
- Python, בנוחות. קריאה וכתיבת פונקציות, מחלקות, decorators, סביבות וירטואליות.
- pandas + numpy ברמה תפקודית.
- scikit-learn, כולל
Pipeline,train_test_split, רגרסורים ומסווגים בסיסיים, ו-ColumnTransformer. - מושגי ML: חלוקת train/validation/test, אימות צולב, overfitting, regularization, ההבדל בין מדדי רגרסיה וסיווג.
- חשיפה מסוימת ל-Azure — לכל הפחות, אוצר המילים של AZ-900. Resource groups, RBAC, storage accounts, ו-Key Vault לא יוסברו מחדש בבחינה.
אם הנקודות הללו מרגישות מעורערות, השקיעו שבועיים בחיזוקן לפני שתתחילו את התוכנית למטה.
שבוע 1: workspace ו-compute
התנסו קודם בפלטפורמה. אל תקראו את מדריך הבחינה מההתחלה ועד הסוף עדיין.
- צרו חשבון Azure חינם אם אין לכם כזה. צרו workspace של Azure ML דרך הפורטל. שימו לב למה שנוצר יחד איתו: storage account, Key Vault, container registry, Application Insights. הבחינה שואלת על אלה.
- ספקו compute instance (קטנה — D2s_v3 בסדר) ו-compute cluster עם min nodes = 0. שימו לב ש-compute instances מחויבים גם כשהם לא בשימוש אך cluster nodes מתרחבים לאפס. זה קיים בבחינה.
- עברו על ממשק המשתמש של Azure ML Studio. לחצו על Datastores, Datasets / Data assets, Environments, Models, Endpoints. אתם לא בונים עדיין — אתם מבינים את הפריסה.
- חברו מחברת (notebook) ל-compute instance. התקינו את
azure-ai-ml(חבילת SDK v2 — לאazureml-core, שהיא v1 ומיושנת). בצעו אימות עםDefaultAzureCredentialוצרוMLClient. הדפיסו את שם ה-workspace. זהו ה-"hello world" שלכם.
נקודת בדיקה בסוף השבוע: אתם יכולים להתחבר ל-workspace שלכם ממחברת בפחות מ-60 שניות מבלי לחפש דבר.
שבוע 2: data, environments, jobs
כעת אתם בונים דברים אמיתיים.
- רשמו קובץ CSV כ-
Dataasset (URI file או MLTable). קראו אותו ממחברת באמצעותml_client.data.get(...). הבחינה אוהבת את ההבחנה בין סוגי נכסי הנתוניםuri_file,uri_folder, ו-mltable— שמרו בזיכרון את מקרה השימוש לכל אחד. - בנו environment מותאם אישית. או שצרו קובץ
conda.yamlאו השתמשו ב-curated environment בתוספת תלות pip נוספת. הגישוcommandjob שמריץ training script (מסווג scikit-learn בן 30 שורות על מערך הנתונים שרק רשמתם). - השתמשו ב-MLflow autologging בסקריפט שלכם (
mlflow.sklearn.autolog()ואז fit). צפו במדדים וב-artifacts המופיעים ב-job. השוו זאת לתיעוד ידני עםmlflow.log_metric(). - הגישו את ה-job ל-compute cluster שלכם במקום ל-compute instance. צפו ב-cluster עולה מ-0 וחוזר למטה.
מלכודת שכדאי להפנים: ב-SDK v2, jobs מוגשים באמצעות פונקציית command מ-azure.ai.ml, לא באמצעות ScriptRunConfig (זה היה ב-v1). הבחינה תציג לכם קוד בסגנון v1 באפשרויות התשובה השגויות. אמן את עיניך לזהות זאת.
שבוע 3: AutoML, HyperDrive, pipelines
שבוע ML כבד יותר.
- הריצו AutoML classification job מה-SDK כנגד אותו מערך נתונים. הגבילו אותו ל-30 דקות ול-
max_trials=10כדי לא לשרוף קרדיטים. הסתכלו על לוח התוצאות. - הריצו sweep / HyperDrive job על training script מותאם אישית. נסו
randomsampling תחילה, ואזbayesian(שאינו תומך ב-early termination — זוהי שאלת בחינה). - קראו על מדיניות ה-early termination: bandit, median stopping, truncation selection. הכירו את הממשק לכל אחת — בפרט את ה-
slack_factorו-slack_amountשל bandit. - בנו pipeline job עם לפחות שני רכיבים — רכיב הכנת נתונים ורכיב אימון — המחוברים יחד. pipelines אינם חלק גדול בבחינה אך הם מופיעים מספיק כדי שלא תרצו לנחש את ה-YAML ביום הבחינה.
נקודת בדיקה בסוף השבוע: אתם יכולים לתאר בקול רם מה עושים Random, Grid, ו-Bayesian sampling, מתי להשתמש בכל אחד, ולמה Bayesian אינו משתלב עם bandit.
שבוע 4: deployment
כאן רוב המועמדים מאבדים נקודות.
- רשמו model מתוך פלט של job. התאמנו בשתי הדרכים: מה-SDK עם
ml_client.models.create_or_update, ומממשק המשתמש של הסטודיו. - פרסו את המודל ל-managed online endpoint. הקימו לפחות שתי deployments מאחורי אותו endpoint ופצלו את התעבורה 90/10 ביניהן. זהו דפוס ה-blue/green ש-Microsoft בודקת ישירות.
- פרסו את אותו מודל ל-batch endpoint. נקדו תיקייה של קבצי קלט. שימו לב ש-batch endpoints אינם שומרים על compute לא פעיל; הם מקימים clusters לכל קריאה.
- הגדירו data drift monitoring על ה-deployment. קבעו התראה ב-Application Insights. הבחינה תשאל על Model Monitor (השם החדש למה שנקרא בעבר Data Drift Monitor ב-SDK v1) לפחות בשאלה אחת.
מלכודת: managed online endpoints מחויבים לפי ה-VM הבסיסי בין אם אתם שולחים תעבורה ובין אם לא. הבחינה תציג תרחיש שבו התשובה הזולה ביותר היא batch endpoint וכל התשובות השגויות יפנו ל-online endpoints. קראו את השאלה היטב לחפש "predictions don't need to be real-time" לפני שתבחרו.
שבוע 5: ML אחראי ומקרי בוחן
פחות קוד, יותר קריאה.
- עברו על ה-Responsible AI dashboard של Microsoft עבור מודל מאומן. צרו fairness metrics, error analysis, וערכי model interpretability (SHAP). הבחינה בודקת אוצר מילים, לא עומק הטמעה.
- קראו על differential privacy ב-Azure ML —
azureml-opendp-smartnoiseקיים אך הבחינה משאירה את זה ברמה קונספטואלית. - בצעו את בחינת התרגול המלאה הראשונה שלכם בתנאי זמן. שני מקרי בוחן ברצף יאכלו 30+ דקות. התרגלו לקצב.
- זהו תחומים חלשים מציון התרגול. עבור רוב המועמדים זהו פנימיות פריסה (deployment internals) או מדיניות כוונון היפרפרמטרים (hyperparameter tuning policies) — חזרו לשבועות 3 או 4.
שבוע 6: תרגול ושיגור
בחינות תרגול כל יומיים. לאחר כל אחת, רשמו את השירותים או המושגים שטעיתם בהם. תבניות יצוצו — בדרך כלל סביב environments (curated לעומת custom לעומת registered), סוגי data asset, ואיזה כלי ניטור הוא התשובה הנכונה (Application Insights לעומת Azure Monitor לעומת Log Analytics workspace).
קבעו את הבחינה לסוף השבוע. אם אתם מקבלים ציון מעל 80% בשתי בחינות תרגול רצופות בתנאי זמן, אתם מוכנים. מתחת ל-70% פירושו לדחות בשבוע נוסף — הבחינה החוזרת בעלות 165$ בתוספת תקופת ההמתנה של 24 שעות עולה יותר משבעה ימים נוספים.
כיצד DP-100 משתלב עם AI-102 ו-DP-900
DP-100 הוא המסלול של מדעני נתונים; AI-102 הוא המסלול של מהנדסי AI. החפיפה קטנה. DP-100 רוצה שתאמנו ותפרסו מודלים מותאמים אישית ב-Azure ML; AI-102 רוצה שתחברו שירותי Azure AI (Vision, Language, OpenAI) ליישומים. אם אתם מדעני נתונים, DP-100 לבדו מספיק. אם אתם מהנדסי תוכנה שבונים תכונות בסגנון Copilot, AI-102 מתאים יותר ו-DP-100 הוא מיותר.
DP-900 הוא חימום ידידותי — שימושי אם אתם חדשים לשירותי נתונים של Azure באופן כללי, מיותר אם כבר עבדתם עם Azure ML.
כשתהיו מוכנים לתרגל שאלות, עיינו במאגר השאלות של DP-100 ב-CertLabPro או התחילו סימולציה מתוזמנת. שאלות מקרי הבוחן הן המקום שבו לחץ הזמן משפיע — תרגלו אותן תחת שעון, לא בקריאת אחר צהריים בבית קפה.