הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab

לאחרונה, סטודיו SageMaker של אמזון השיקה דרך קלה להפעיל מחברות כעבודות אצווה שיכולות לפעול לפי לוח זמנים חוזר. Amazon SageMaker Studio Lab תומך גם בתכונה זו, מה שמאפשר לך להפעיל מחברות שאתה מפתח ב- SageMaker Studio Lab בחשבון AWS שלך. זה מאפשר לך להתאים במהירות את ניסויי למידת מכונה (ML) שלך עם מערכי נתונים גדולים יותר ומופעים חזקים יותר, מבלי שתצטרך ללמוד שום דבר חדש או לשנות שורת קוד אחת.

בפוסט זה, אנו מדריכים אותך דרך התנאי המוקדם החד-פעמי לחיבור סביבת Studio Lab שלך לחשבון AWS. לאחר מכן, נלווה אותך בשלבים להפעלת מחברות כעבודת אצווה מ-Studio Lab.

סקירת פתרונות

Studio Lab שילבה את אותה הרחבה כמו Studio, המבוססת על תוסף הקוד הפתוח של Jupyter עבור מחברות מתוזמנות. להרחבה הזו יש פרמטרים נוספים ספציפיים ל-AWS, כמו סוג המחשוב. ב-Studio Lab, מחברת מתוזמנת מועתקת תחילה ל- שירות אחסון פשוט של אמזון (Amazon S3) דלי בחשבון AWS שלך, ולאחר מכן הפעל בזמן המתוכנן עם סוג המחשוב שנבחר. כאשר העבודה הושלמה, הפלט נכתב לדלי S3, ומחשוב ה-AWS נעצר לחלוטין, ומונע עלויות שוטפות.

תנאים מוקדמים

כדי להשתמש בעבודות מחברת Studio Lab, אתה זקוק לגישה מנהלתית לחשבון AWS שאליו אתה הולך להתחבר (או סיוע ממישהו עם גישה זו). בהמשך הפוסט הזה, אנו מניחים שאתה מנהל ה-AWS, אם זה לא המקרה, בקש ממנהל המערכת או מבעל החשבון שלך לבדוק את השלבים האלה איתך.

צור תפקיד ביצוע של SageMaker

עלינו לוודא שלחשבון AWS יש AWS זהות וניהול גישה (IAM) תפקיד ביצוע של SageMaker. תפקיד זה משמש את משאבי SageMaker בתוך החשבון, ומספק גישה מ- SageMaker למשאבים אחרים בחשבון AWS. במקרה שלנו, עבודות המחברת שלנו פועלות עם הרשאות אלה. אם נעשה שימוש בעבר ב- SageMaker בחשבון זה, ייתכן שתפקיד כבר קיים, אך ייתכן שאין לו את כל ההרשאות הנדרשות. אז בואו נמשיך וניצור אחד חדש.

יש לבצע את השלבים הבאים רק פעם אחת, ללא קשר למספר סביבות SageMaker Studio Lab יגשו לחשבון AWS זה.

  1. במסוף IAM בחר תפקידים בחלונית הניווט.
  2. לבחור צור תפקיד.
  3. בעד סוג ישות מהימנה, בחר שירות AWS.
  4. בעד מקרי שימוש עבור שירותי AWS אחרים, בחר SageMaker.
  5. בחר SageMaker – ביצוע.
  6. לבחור הַבָּא.
  7. סקור את ההרשאות ולאחר מכן בחר הַבָּא.הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.
  8. בעד שם התפקיד, הזן שם (עבור פוסט זה אנו משתמשים sagemaker-execution-role-notebook-jobs).
  9. לבחור צור תפקיד.
  10. רשום את התפקיד ARN.

התפקיד ARN יהיה במתכונת של arn:aws:iam::[account-number]:role/service-role/[role-name] והוא נדרש בהגדרת Studio Lab.

צור משתמש IAM

כדי שסביבת Studio Lab תוכל לגשת ל-AWS, עלינו ליצור משתמש IAM בתוך AWS ולהעניק לו הרשאות נחוצות. לאחר מכן עלינו ליצור קבוצה של מפתחות גישה עבור אותו משתמש ולספק אותם לסביבת Studio Lab.

יש לחזור על שלב זה עבור כל סביבת SageMaker Studio Lab שתייגש לחשבון AWS זה.

שים לב שמנהלי מערכת ובעלי חשבונות AWS צריכים להבטיח שבמידת האפשר, נוהלי אבטחה מתוכננים היטב. לדוגמה, יש להקטין את הרשאות המשתמש תמיד, ויש לסובב את מפתחות הגישה באופן קבוע כדי למזער את ההשפעה של פגיעה באישורים.

בבלוג זה אנו מראים כיצד להשתמש ב- AmazonSageMakerFullAccess מדיניות מנוהלת. מדיניות זו מספקת גישה רחבה לאמזון SageMaker שעשויה לחרוג מהנדרש. פרטים על AmazonSageMakerFullAccess ניתן למצוא כאן.

למרות ש-Studio Lab מפעילה אבטחה ארגונית, יש לציין כי אישורי המשתמש של Studio Lab אינם מהווים חלק מחשבון AWS שלך, ולכן, למשל, אינם כפופים לסיסמת AWS או למדיניות ה-MFA שלך.

כדי להקטין את ההרשאות ככל האפשר, אנו יוצרים פרופיל משתמש במיוחד עבור גישה זו.

  1. במסוף IAM בחר משתמש בחלונית הניווט.
  2. לבחור הוסף משתמשים.
  3. בעד כינוי, הזן שם. מומלץ להשתמש בשם המקושר לאדם בודד שישתמש בחשבון זה; זה עוזר אם בודקים יומני ביקורת.
  4. בעד בחר סוג גישה AWS, בחר מפתח גישה - גישה פרוגרמטית.
  5. לבחור הבא: הרשאות.הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.
  6. לבחור צרף ישירות מדיניות קיימת.
  7. חפש ובחר AmazonSageMakerFullAccess.הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.
  8. חפש ובחר AmazonEventBridgeFullAccess.הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.
  9. לבחור הבא: תגיות.
  10. לבחור הבא: סקירה.
  11. אשר את המדיניות שלך ולאחר מכן בחר צור משתמש.הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.העמוד האחרון של תהליך יצירת המשתמש אמור להראות לך את מפתחות הגישה של המשתמש. השאר את הכרטיסייה הזו פתוחה, כי אנחנו לא יכולים לנווט חזרה לכאן ואנחנו צריכים את הפרטים האלה.
  12. פתח כרטיסיית דפדפן חדשה ב-Studio Lab.
  13. על שלח בתפריט, בחר משגר חדש, ואז לבחור מסוף.הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.
  14. בשורת הפקודה, הזן את הקוד הבא:
    aws configure

  15. הזן את הקוד הבא:
    1. הזן את הערכים מדף מסוף IAM עבור מזהה מפתח הגישה ומפתח הגישה הסודי שלך.
    2. בעד Default region name, להיכנס us-west-2.
    3. יציאה Default output format as text.
      (studiolab) studio-lab-user@default:~$ aws configure 
      AWS Access Key ID []: 01234567890
      AWS Secret Access Key []: ABCDEFG1234567890ABCDEFG
      Default region name []: us-west-2
      Default output format [text]: 
      
      (studiolab) studio-lab-user@default:~$

מזל טוב, סביבת Studio Lab שלך אמורה להיות מוגדרת כעת לגישה לחשבון AWS. כדי לבדוק את החיבור, הפק את הפקודה הבאה:

aws sts get-caller-identity

פקודה זו אמורה להחזיר פרטים על משתמש IAM שהגדרת להשתמש בו.

צור עבודת מחברת

עבודות מחברת נוצרות באמצעות מחברות Jupyter בתוך Studio Lab. אם המחברת שלך פועלת ב-Studio Lab, היא יכולה לפעול כעבודת מחברת (עם יותר משאבים וגישה לשירותי AWS). עם זאת, יש כמה דברים שצריך לשים לב אליהם.

אם התקנת חבילות כדי לגרום למחברת שלך לעבוד, הוסף פקודות כדי לטעון חבילות אלה בתא בראש המחברת שלך. על ידי שימוש בסמל & בתחילת כל שורה, הקוד יישלח לשורת הפקודה להפעלה. בדוגמה הבאה, התא הראשון משתמש ב-pip כדי להתקין ספריות PyTorch:

%%capture
%pip install torch
%pip install torchvision

הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

המחברת שלנו תיצור מודל PyTorch מאומן. עם הקוד הרגיל שלנו, אנו שומרים את המודל למערכת הקבצים ב-Studio Labs.

כאשר אנו מפעילים זאת כעבודת מחברת, עלינו לשמור את הדגם במקום בו נוכל לגשת אליו לאחר מכן. הדרך הקלה ביותר לעשות זאת היא לשמור את הדגם באמזון S3. יצרנו דלי S3 כדי לשמור את המודלים שלנו, והשתמשנו בתא שורת פקודה אחר כדי להעתיק את האובייקט לדלי.

הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי. הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

אנו משתמשים ממשק שורת הפקודה של AWS (AWS CLI) כאן כדי להעתיק את האובייקט. נוכל גם להשתמש ב AWS SDK עבור Python (Boto3) אם נרצה לקבל שליטה מתוחכמת יותר או אוטומטית יותר בשם הקובץ. לעת עתה, נוודא שנשנה את שם הקובץ בכל פעם שאנו מפעילים את המחברת כדי שהדגמים לא יוחלפו.

כעת אנו מוכנים ליצור את עבודת המחברת.

  1. בחר (לחץ לחיצה ימנית) על שם המחברת ולאחר מכן בחר צור עבודה של מחברת.הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.
    אם אפשרות תפריט זו חסרה, ייתכן שיהיה עליך לרענן את סביבת Studio Lab שלך. כדי לעשות זאת, פתח את Terminal מהמפעיל והפעל את הקוד הבא:
    conda deactivate && conda env remove —name studiolab

  2. לאחר מכן, הפעל מחדש את מופע JupyterLab שלך על ידי בחירה Amazon SageMaker Studio Lab מהתפריט העליון ולאחר מכן בחר הפעל מחדש את JupyterLab.לחלופין, עבור לדף הפרויקט, כבה והפעל מחדש את זמן הריצה.
  3. על צור עבודה עמוד, עבור סוג מחשוב, בחר את סוג המחשוב המתאים לעבודה שלך.

    למידע נוסף על סוגי קיבולת המחשוב השונים, כולל העלות, ראה תמחור SageMaker של אמזון (בחר תמחור לפי דרישה ונווט אל הדרכה לשונית. ייתכן שתצטרך גם לבדוק את זמינות המכסה של סוג המחשוב בחשבון AWS שלך. למידע נוסף על מכסות שירות, ראה: מכסות שירות AWS.לדוגמה זו, בחרנו מופע ml.p3.2xlarge, המציע 8 vCPU, 61 GB של זיכרון ו-Tesla V100 GPU.הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

    אם אין אזהרות בדף זה, אתה אמור להיות מוכן לצאת לדרך. אם יש אזהרות, בדוק כדי לוודא שהתפקיד הנכון של ARN מצוין בו אפשרויות נוספות. תפקיד זה צריך להתאים ל-ARN של תפקיד הביצוע של SageMaker שיצרנו קודם. ה-ARN הוא בפורמט arn:aws:iam::[account-number]:role/service-role/[role-name].

    יש אפשרויות אחרות זמינות בפנים אפשרויות נוספות; לדוגמה, אתה יכול לבחור תמונה וקרנל מסוימים שאולי כבר יש להם את התצורה הדרושה לך ללא צורך בהתקנת ספריות נוספות.

  4. אם ברצונך להפעיל מחברת זו לפי לוח זמנים, בחר רוץ לפי לוח זמנים וציין באיזו תדירות ברצונך שהמשימה תפעל.הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.אנחנו רוצים שהמחברת הזו תפעל פעם אחת, אז אנחנו בוחרים רוץ עכשיו.
  5. לבחור צור.
    הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

רשימת משרות מחברת

אל האני עבודות מחברת הדף מפרט את כל העבודות הפועלות כעת ואלו שפעלו בעבר. אתה יכול למצוא רשימה זו מהמפעיל (בחר, שלח, משגר חדש), אז תבחר עבודות מחברת ב אחר סָעִיף.

הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

כאשר עבודת המחברת תושלם, תראה את הסטטוס משתנה ל Completed (להשתמש ב לִטעוֹן מִחָדָשׁ אפשרות במידת הצורך). לאחר מכן תוכל לבחור בסמל ההורדה כדי לגשת לקבצי הפלט.

הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

לאחר הורדת הקבצים, תוכל לסקור את המחברת יחד עם יומן פלט הקוד ויומן הפלט. במקרה שלנו, מכיוון שהוספנו קוד לזמן הריצה של תא האימון, אנו יכולים לראות כמה זמן ארכה עבודת האימון - 16 דקות ו-21 שניות, שזה הרבה יותר מהיר מאשר אם הקוד היה רץ בתוך Studio Lab (שעה אחת) , 1 דקות, 38 שניות). למעשה, המחברת כולה רצה תוך 55 שניות (קצת יותר מ-1,231 דקות) בעלות של פחות מ-$20 (USD).

הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

W יכול כעת להגדיל את מספר העידנים ולהתאים את הפרמטרים ההיפר כדי לשפר את ערך ההפסד של המודל, ולהגיש עבודת מחברת נוספת.

סיכום

בפוסט זה, הראינו כיצד להשתמש בעבודות מחברת Studio Lab כדי להרחיב את הקוד שפיתחנו ב-Studio Lab ולהפעיל אותו עם משאבים נוספים בחשבון AWS.

על ידי הוספת אישורי AWS לסביבת Studio Lab שלנו, לא רק שנוכל לגשת לעבודות מחברת, אלא נוכל גם לגשת למשאבים אחרים מחשבון AWS ישירות מתוך מחברות Studio Lab שלנו. תסתכל על AWS SDK עבור Python.

היכולת הנוספת הזו של Studio Lab מרימה את גבולות הסוגים והגדלים של הפרויקטים שאתה יכול להשיג. ספר לנו מה אתה בונה עם היכולת החדשה הזו!


על המחברים

הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.מייק צ'יימברס הוא עורך דין למפתחים עבור AI ו-ML ב-AWS. הוא בילה את 7 השנים האחרונות בעזרה לבונים ללמוד ענן, אבטחה ו-ML. במקור מבריטניה, מייק הוא שותה תה נלהב ובונה לגו.

הפעל מחברות כעבודות אצווה ב-Amazon SageMaker Studio Lab PlatoBlockchain Data Intelligence. חיפוש אנכי. איי. מישל מונקלובה הוא מנהל מוצר ראשי ב-AWS בצוות SageMaker. היא ילידת ניו יורק וותיקה בעמק הסיליקון. היא נלהבת מחידושים המשפרים את איכות החיים שלנו.

בול זמן:

עוד מ למידת מכונות AWS