מודלים של שפות גדולות (או LLMs) הפכו לנושא של שיחות יומיומיות. האימוץ המהיר שלהם ניכר בכמות הזמן הנדרשת כדי להגיע ל-100 מיליון משתמשים, שהפך מ"4.5 שנים בפייסבוק" לשפל של כל הזמנים של "חודשיים על ידי ChatGPT". שנאי מיומן מראש (GPT) משתמש בעדכונים אוטורגרסיביים סיבתיים כדי לבצע חיזוי. מגוון משימות כגון זיהוי דיבור, הפקת טקסט ומענה על שאלות מוכחים כבעלי ביצועים מדהימים על ידי ארכיטקטורות המודל הללו. מספר דגמים עדכניים כגון Neox, בז, לאמה השתמש בארכיטקטורת GPT בתור עמוד שדרה. אימון לימודי LLM דורש כמות אדירה של זמן חישוב, שעולה מיליוני דולרים. בפוסט זה, נסכם את הליך ההדרכה של GPT Neox on AWS Trainium, מאיץ למידת מכונה (ML) מותאם לאימון למידה עמוקה. נתאר כיצד אימנו בצורה חסכונית (3.2 M tokens/$) דגמים כאלה עם AWS Trainium מבלי לאבד מאיכות דגם.
סקירת פתרונות
דגמי GPT NeoX ו- Pythia
GPT NeoX ו פיתיה הם מודלים של שפות סיבתיות בקוד פתוח של Eleuther-AI עם כ-20 מיליארד פרמטרים ב-NeoX ו-6.9 מיליארד ב-Pytia. שניהם דגמי מפענח העוקבים אחר עיצוב אדריכלי דומה כמו Chat GPT3. עם זאת, יש להם גם מספר תוספות, שגם מאומצות באופן נרחב בדגמים האחרונים כמו לאמה. במיוחד, יש להם הטבעה מיקוםית סיבובית (ROPE) עם סיבוב חלקי על פני ממדי הראש. הדגמים המקוריים (NeoX ו-Pythia 6.9B) מאומנים בזמינים באופן גלוי ערימה של מערך נתונים עם מניעת כפילויות ושימוש ב-Megatron ו-Deepspeed backend.
אנו מדגימים את האימון המקדים והכוונן העדין של מודלים אלה במופעי Trn1 מבוססי AWS Trainium באמצעות Neuron NeMo סִפְרִיָה. כדי לבסס את הוכחת המושג ושעתוק מהיר, נשתמש בתת-ערכת מערך קטנה יותר של ויקיפדיה עם אסימון באמצעות GPT2 Byte-pair encoding (BPE) tokenizer.
Walkthrough
הורד את מערך הנתונים המוגדר מראש של ויקיפדיה כפי שמוצג:
גם NeoX 20B וגם Pythia 6.9B משתמשים ב-ROPE עם סיבוב חלקי, למשל, סיבוב של 25% מממדי הראש ושמירה על השאר ללא סיבוב. כדי ליישם ביעילות את הסיבוב החלקי במאיץ AWS Trainium, במקום לשרשר את הממדים המסתובבים והלא מסתובבים, אנו מוסיפים תדרים אפס עבור ממדים שאינם מסתובבים ולאחר מכן מסובבים את הסט המלא של ממדי הראש. הטריק הפשוט הזה עזר לנו לשפר את התפוקה (רצפים מעובדים לשנייה) ב-AWS Trainium.
שלבי אימון
כדי להפעיל את ההדרכה, אנו משתמשים ב-SLURM מנוהל מרובה צמתים Amazon Elastic Compute Cloud (אמזון) אשכול Trn1, כאשר כל צומת מכיל מופע trn1.32xl. כל אחד trn1.32xl בעל 16 מאיצים עם שני עובדים לכל מאיץ. לאחר הורדת הגרסה האחרונה Neuron NeMo חבילה, השתמש במצורף המצורף neox ו פיתיה אימון מקדים וכוונון עדין של סקריפטים עם פרמטרי היפר מותאמים ובצע את הפעולות הבאות לאימון ארבעה צמתים.
- קומפילציה: ערכו מראש את המודל עם שלוש איטרציות של רכבת כדי ליצור ולשמור את הגרפים:
- ריצה: בצע את האימון על ידי טעינת הגרפים המאוחסנים במטמון מהשלבים הראשונים
- עקוב אחר התוצאות
יש לבצע את אותם השלבים להפעלת דגם Pythia 6.9B עם החלפה neox_20B_slurm.sh
by pythia_6.9B_slurm.sh
.
טרום אימון וניסויים כוונון עדין
אנו מדגימים את ההכשרה המוקדמת של דגמי GPT-NeoX ו-Pytia ב-AWS Trainium באמצעות Neuron NeMo ספרייה עבור 10 איטרציות, וגם להציג כוונון עדין של מודלים אלה עבור 1 שלבים. לאימון מקדים, אנו משתמשים בטוקניזר GPT2 BPE בתוך ה-NeMo ועוקבים אחר אותו הדבר config כפי שהיה בשימוש בדגם המקורי. כוונון עדין ב-AWS Trainium דורש שינוי של כמה פרמטרים (כגון גורם חלוקת גודל ווקאב), שמסופקים בסקריפטים לכוונון עדין כדי להתאים לשינויים של Megatron לעומת NeMo ו-GPU לעומת AWS Trainium. תפוקת האימון המבוזרת מרובת צמתים עם מספר משתנה של צמתים מוצגת בטבלה-1.
מספר סימוכין | טנזור מקביל | צינור מקביל | מספר המקרים | עלות ($/שעה) | אורך רצף | גודל אצווה גלובלי | תפוקה (seq/sec) | יחס עלות-תפוקה (אסימונים/$) |
Pythia 6.9B | 8 | 1 | 1 | 7.59 | 2048 | 256 | 10.4 | 10,102,387 |
8 | 1 | 4 | 30.36 | 2048 | 256 | 35.8 | 8,693,881 | |
NeoX 20B | 8 | 4 | 4 | 30.36 | 2048 | 16384 | 13.60 | 3,302,704 |
8 | 4 | 8 | 60.72 | 2048 | 16384 | 26.80 | 3,254,134 | |
8 | 4 | 16 | 121.44 | 2048 | 16384 | 54.30 | 3,296,632 | |
8 | 4 | 32 | 242.88 | 2048 | 16384 | 107.50 | 3,263,241 | |
8 | 4 | 64 | 485.76 | 2048 | 16384 | 212.00 | 3,217,708 |
הטבלה 1. השוואת תפוקה ממוצעת של דגמי GPT NeoX ו-Pytia לאימון של עד 500 צעדים עם מספר משתנה של צמתים. ה תמחור של trn1.32xl מבוסס על תעריף אפקטיבי לשעה שמור ל-3 שנים.
לאחר מכן, אנו גם מעריכים את מסלול ההפסד של אימון המודל ב-AWS Trainium ומשווים אותו לריצה המקבילה על אשכול P4d (ליבות Nvidia A100 GPU). יחד עם אובדן האימון, אנו גם משווים אינדיקטור שימושי כמו נורמת שיפוע, שהיא 2 נורמה של שיפוע המודל המחושב בכל איטרציה של אימון כדי לעקוב אחר התקדמות האימון. תוצאות האימון מוצגות באיור-1, 2 וכוונון עדין של NeoX 20B באיור-3.
איור 1. אובדן הכשרה בממוצע על פני כל העובדים (שמאל) ונורמת השיפוע (ימין) באימון בכל שלב. NeoX 20B מאומן על 4 צמתים עם מערך נתונים קטן של ויקי ב-GPU ו-Trainium עם אותם הפרמטרים של אימון (גודל אצווה גלובלי=256). GPU משתמש ב-BF16 ובברירת המחדל של דיוק מעורב בעוד AWS Trainium משתמש ב-BF16 מלא עם עיגול סטוכסטי. מסלולי הנורמה של אובדן ושיפוע תואמים עבור GPU ו-AWS Trainium.
איור 2. אובדן הכשרה בממוצע על פני כל העובדים (שמאל) ונורמת השיפוע (ימין) באימון בכל שלב. בדומה ל-GPT NeoX באיור 1, Pythia 6.9B מאומן ב-4 צמתים עם מערך נתונים קטן של ויקי ב-GPU ו-Trainium עם אותם הפרמטרים של אימון (גודל אצווה גלובלי=256). מסלולי הנורמה של אובדן ושיפוע תואמים עבור GPU ו-Trainium.
איור 3. כוונון עדין של דגם GPT NeoX 20B ב-GPU ו-AWS Trainium עם אובדן אימון בממוצע על פני כל העובדים (שמאל) ונורמת שיפוע (ימין). מערך נתונים קטן של ויקי משמש לכוונון עדין של הדגמה. מסלולי הנורמה של אובדן ושיפוע תואמים עבור GPU ו-AWS Trainium.
בפוסט זה, הראינו הדרכה חסכונית של LLMs על חומרת למידה עמוקה של AWS. הכשרנו את דגמי GPT NeoX 20B ו- Pythia 6.9B על AWS Trn1 עם ספריית Neuron NeMo. התפוקה המנורמלת של 20 מיליארד דגמים עם AWS Trainium היא בסביבות 3.2 מיליון אסימונים/$ שהוצאה. יחד עם אימון חסכוני ב-AWS Trainium, אנו משיגים דיוק מודל דומה, אשר ניכר מאובדן צעדי אימון ומסלול נורמה שיפוע. גם כוונון עדין של המחסומים הזמינים עבור דגם NeoX 20B ב-AWS Trainium. למידע נוסף על ההדרכה המבוזרת עם NeMo Megatron ב-AWS Trainium, ראה AWS Neuron Reference עבור NeMo Megatron. ניתן למצוא כאן משאב טוב להתחיל כוונון עדין של מודל הלאמה, כוונון עדין של Llama2. כדי להתחיל בעבודה עם AWS Trainium מנוהל אמזון SageMakerראה אמן את דגמי ה-ML שלך עם AWS Trainium ו-Amazon SageMaker.
על הכותבים
גאורב גופטה הוא כיום מדען יישומי במעבדות AI של Amazon Web Services (AWS). ד"ר גופטה השלים את הדוקטורט שלו מ-USC Viterbi. תחומי המחקר שלו משתרעים על התחום של מודלים רציפים של נתונים, לימוד משוואות דיפרנציאליות חלקיות, תורת מידע ללמידת מכונה, מודלים דינמיים חלקיים ורשתות מורכבות. כיום הוא עובד על בעיות יישומיות ומתמטיות על התנהגות אימון של LLMs, מודלים של ראייה עם PDEs, מודלים רב-מודאליים תיאורטיים של מידע. לד"ר גופטה יש פרסומים בכתבי עת/כנסים מובילים כמו Neurips, ICLR, ICML, Nature, IEEE Control Society, ACM Cyber-physical Society.
בן סניידר הוא מדען יישומי עם AWS Deep Learning. תחומי המחקר שלו כוללים מודלים בסיסיים, למידת חיזוק ואופטימיזציה אסינכרונית. מחוץ לעבודה, הוא נהנה מרכיבה על אופניים וקמפינג בשטח.
אמית' (ר) ממידאלה הוא הבכיר בהנדסת יישומי למידת מכונה במעבדות AWS Annapurna. ד"ר ממידאלה השלים את הדוקטורט שלו באוניברסיטת אוהיו סטייט במחשוב ותקשורת עם ביצועים גבוהים. במהלך כהונתו במחקר IBM, ד"ר ממידלה תרם למעמד מחשבי BlueGene, אשר הובילו לעתים קרובות את דירוג ה-500 המובילים של מחשבי העל החזקים והחסכוניים ביותר. הפרויקט זכה במדליה הלאומית לטכנולוגיה וחדשנות לשנת 2009. לאחר תקופה קצרה כמהנדס בינה מלאכותית בקרן גידור פיננסית, ד"ר ממידלה הצטרף למעבדות אנאפורנה שהתמקדו בהכשרת מודלים של שפה גדולה.
יוני (לוק) הואן הוא מדען ראשי במעבדות AWS AI. ד"ר הואן עובד על AI ו-Data Science. הוא פרסם יותר מ-180 מאמרים בביקורת עמיתים בכנסים ובכתבי עת מובילים. הוא זכה בפרס לפיתוח קריירה מוקדמת של הפקולטה NSF בשנת 2009. לפני שהצטרף ל-AWS, הוא עבד במחקר Baidu כמדען מכובד וראש מעבדת ביג דאטה באידו. הוא הקים את StylingAI Inc., סטארט-אפ בינה מלאכותית, ועבד כמנכ"ל וכמדען ראשי בשנים 2019-2021. לפני שהצטרף לתעשייה, הוא היה פרופסור צ'ארלס אי ומרי ג'יין ספר במחלקה ל-EECS באוניברסיטת קנזס.
שרוטי קופרקאר הוא מנהל שיווק מוצר בכיר ב-AWS. היא עוזרת ללקוחות לחקור, להעריך ולאמץ תשתית מחשוב מואצת של Amazon EC2 לצרכי למידת המכונה שלהם.
- הפצת תוכן ויחסי ציבור מופעל על ידי SEO. קבל הגברה היום.
- PlatoData.Network Vertical Generative Ai. העצים את עצמך. גישה כאן.
- PlatoAiStream. Web3 Intelligence. הידע מוגבר. גישה כאן.
- PlatoESG. פחמן, קלינטק, אנרגיה, סביבה, שמש, ניהול פסולת. גישה כאן.
- PlatoHealth. מודיעין ביוטכנולוגיה וניסויים קליניים. גישה כאן.
- מקור: https://aws.amazon.com/blogs/machine-learning/frugality-meets-accuracy-cost-efficient-training-of-gpt-neox-and-pythia-models-with-aws-trainium/
- :יש ל
- :הוא
- $ למעלה
- 1
- 10
- 100
- 10K
- 120
- 16
- 160
- 180
- 20
- 500
- 7
- 9
- a
- מוּאָץ
- מאיץ
- מאיצים
- להתאים
- דיוק
- ACM
- לרוחב
- נוסף
- מידע נוסף
- נוסף
- לְאַמֵץ
- מאומץ
- אימוץ
- לאחר
- AI
- תעשיות
- כל הזמנים הנמוכים
- לאורך
- גם
- אמזון בעברית
- אמזון
- אמזון שירותי אינטרנט
- אמזון שירותי אינטרנט (AWS)
- כמות
- an
- ו
- כל
- בקשה
- יישומית
- בערך
- אדריכלי
- ארכיטקטורה
- ARE
- סביב
- AS
- At
- זמין
- פרס
- הוענק
- AWS
- עמוד שדרה
- קצה אחורי
- Baidu
- מבוסס
- BE
- להיות
- לפני
- התנהגות
- גָדוֹל
- נתונים גדולים
- B
- BIN
- שניהם
- by
- קריירה
- CD
- מנכ"ל
- שינוי
- שינויים
- משתנה
- צ'ארלס
- ChatGPT
- רֹאשׁ
- בכיתה
- ענן
- אשכול
- תקשורת
- לְהַשְׁווֹת
- השוואה
- להשלים
- השלמת
- מורכב
- לחשב
- מחשבים
- מחשוב
- כנסים
- תרם
- לִשְׁלוֹט
- שיחות
- תוֹאֵם
- עלות
- עלויות
- יכול
- כיום
- לקוחות
- יומי
- נתונים
- מדע נתונים
- עמוק
- למידה עמוקה
- בְּרִירַת מֶחדָל
- להפגין
- מופגן
- מַחלָקָה
- עיצוב
- צעצועי התפתחות
- ההבדלים
- ממדים
- נִכבָּד
- מופץ
- הכשרה מבוזרת
- חטיבה
- דולר
- תחום
- הורדה
- dr
- ד"ר גופטה
- בְּמַהֲלָך
- e
- כל אחד
- מוקדם
- אפקטיבי
- יעילות
- הטבעה
- הַצפָּנָה
- מהנדס
- הנדסה
- משוואות
- להקים
- להעריך
- ברור
- דוגמה
- לבצע
- לחקור
- מעטים
- כספי
- ראשון
- צעדים ראשונים
- התמקדות
- לעקוב
- בעקבות
- הבא
- בעד
- מצא
- היסוד
- נוסד
- ארבע
- שברירי
- החל מ-
- מלא
- קרן
- ליצור
- דור
- גנרטטיבית
- לקבל
- גלוֹבָּלִי
- נעלם
- טוב
- GPU
- שיפועים
- גרפים
- גופטה
- חומרה
- יש
- he
- ראש
- גָדֵר חַיָה
- קרן גידור
- עזר
- עוזר
- כאן
- גָבוֹהַ
- שֶׁלוֹ
- שעה
- איך
- אולם
- HTML
- HTTPS
- חיבוק פנים
- יבמ
- IDX
- IEEE
- ליישם
- לשפר
- in
- בע"מ
- לכלול
- אינדיקטור
- תעשייה
- מידע
- תשתית
- חדשנות
- בתוך
- למשל
- במקום
- אינטרסים
- IT
- איטרציה
- איטרציות
- ג'יין
- הצטרף
- הצטרפות
- jpg
- ג'סון
- קנזס
- שמירה
- מעבדה
- מעבדות
- שפה
- גָדוֹל
- האחרון
- מוביל
- למידה
- הוביל
- עזבו
- אורך
- סִפְרִיָה
- לאמה
- טוען
- לאבד
- את
- נמוך
- מכונה
- למידת מכונה
- לעשות
- הצליח
- מנהל
- שיווק
- להתאים
- מתימטי
- אומר
- פוגשת
- סתם
- meta
- מִילִיוֹן
- מיליונים
- ML
- מודל
- דוגמנות
- מודלים
- צג
- חודשים
- יותר
- רוב
- לאומי
- טבע
- צרכי
- רשתות
- צומת
- צמתים
- NSF
- מספר
- Nvidia
- להשיג
- of
- לעתים קרובות
- אוהיו
- on
- קוד פתוח
- בגלוי
- אופטימיזציה
- אופטימיזציה
- or
- מְקוֹרִי
- מתווה
- בחוץ
- חבילה
- ניירות
- פרמטרים
- במיוחד
- ביקורת עמיתים
- עבור
- ביצועים
- דוקטורט
- אפלטון
- מודיעין אפלטון
- אפלטון נתונים
- הודעה
- חזק
- נבואה
- מנהל
- בעיות
- הליך
- מעובד
- המוצר
- פרופסור
- התקדמות
- פּרוֹיֶקט
- ובלבד
- פרסומים
- לאור
- איכות
- שאלה
- מָהִיר
- R
- דירוג
- ציון
- יחס
- לְהַגִיעַ
- לאחרונה
- הכרה
- הפניה
- שעתוק
- נדרש
- דורש
- מחקר
- שמור
- משאב
- REST
- תוצאות
- תקין
- עיגול
- הפעלה
- ריצה
- אותו
- שמור
- מדע
- מַדְעָן
- סקריפטים
- ה-SEC
- לִרְאוֹת
- לחצני מצוקה לפנסיונרים
- שירותים
- סט
- כמה
- היא
- לְהַצִיג
- הראה
- הראה
- דומה
- פָּשׁוּט
- מידה
- קטן
- קטן יותר
- חֶברָה
- משך
- נאום
- זיהוי דיבור
- בילה
- התחלה
- Start-up
- החל
- מדינה
- שלב
- צעדים
- כזה
- לסכם
- משימות
- טכנולוגיה
- טֶקסט
- מֵאֲשֶׁר
- השמיים
- שֶׁלָהֶם
- אז
- התאוריה
- אלה
- הֵם
- זֶה
- שְׁלוֹשָׁה
- תפוקה
- זמן
- ל
- token
- חלק עליון
- נושא
- לקראת
- רכבת
- מְאוּמָן
- הדרכה
- מסלול
- שנאי
- שתיים
- אוניברסיטה
- עדכונים
- us
- להשתמש
- מְשׁוּמָשׁ
- משתמשים
- שימושים
- באמצעות
- מגוון
- משתנה
- נגד
- חזון
- היה
- we
- אינטרנט
- שירותי אינטרנט
- אשר
- בזמן
- באופן נרחב
- ויקיפדיה
- עם
- לְלֹא
- תיק עבודות
- עבד
- עובדים
- עובד
- עובד
- זפירנט
- אפס