מודלים גדולים של שפה: מהו מודל שפה גדול?

טכנולוגיה חדשה יותר, מודלים גדולים של שפה (LLMs), חזות אסימון או רצף של אסימונים, לפעמים אסימונים חזויים שכוללים כמה פסקאות. חשוב לזכור שאסימון יכול להיות מילה, מילה משנה (קבוצת משנה של מילה) או אפילו תו יחיד. מודלים גדולים של שפה (LLMs) מניבים תחזיות טובות בהרבה ממודלים של שפה מסוג N-gram או מרשתות נוירונים חוזרות (RNNs), כי:

  • מודלים גדולים של שפה מכילים הרבה יותר פרמטרים מאשר מודלים חזרה.
  • מודלים של שפה גדולה אוספים הרבה יותר הקשר.

בקטע הזה נסביר על הארכיטקטורה המוצלחת ביותר והנפוצה ביותר ליצירת מודלים גדולים של שפה (LLM): הטרנספורמר.

מהו Transformer?

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

איור 1.  הקלט הוא: I am a good dog. מתרגם שמבוסס על טרנספורמר ממיר את הקלט הזה לפלט: Je suis un bon chien, שהוא אותו משפט בתרגום לצרפתית.
איור 1. אפליקציה מבוססת-טרנספורמר שמתרגמת מאנגלית לצרפתית.

 

טרנספורמרים מלאים מורכבים ממקודד ומפענח:

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

לדוגמה, במתרגם:

  • המקודד מעבד את טקסט הקלט (לדוגמה, משפט באנגלית) לייצוג ביניים כלשהו.
  • המפענח ממיר את הייצוג הביניים הזה לטקסט פלט (לדוגמה, המשפט המקביל בצרפתית).
איור 2. התרגם מבוסס-הטרנספורמר מתחיל במקודד, שמייצר ייצוג ביניים של משפט באנגלית. מפענח ממיר את הייצוג הביניים הזה למשפט פלט בצרפתית.
איור 2. טרנספורמר מלא מכיל גם מקודד וגם מפענח.

 

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

  • בארכיטקטורות של קודק בלבד, טקסט הקלט ממופה לייצוג ביניים (לרוב שכבת הטמעה). תרחישים לדוגמה לארכיטקטורות של מקודדים בלבד:
    • חיזוי של כל אסימון ברצף הקלט (זהו התפקיד הרגיל של מודלים של שפה).
    • יצירת הטמעה מתוחכמת שיכולה לשמש כקלט למערכת אחרת, כמו סיווג.
  • בארכיטקטורות של מקודדים בלבד, המערכת יוצרת אסימונים חדשים מהטקסט שכבר נוצר. מודלים של מקודדים בלבד בדרך כלל מצטיינים ביצירת רצפים. מודלים מודרניים של מקודדים בלבד יכולים להשתמש ביכולת היצירה שלהם כדי ליצור המשכים של היסטוריות של שיחות והנחיות אחרות.

מהו קשב עצמי?

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

"מה מידת ההשפעה של כל אסימון אחר של קלט על הפרשנות של האסימון הזה?"

המונח 'עצמי' ב'קשב עצמי' מתייחס לרצף הקלט. מנגנוני תשומת לב מסוימים נותנים משקל ליחסים בין אסימוני קלט לאסימונים ברצף פלט, כמו תרגום, או לאסימונים ברצף אחר. אבל self-attention רק מעריך את החשיבות של היחסים בין האסימונים ברצף הקלט.

כדי לפשט את העניין, נניח שכל אסימון הוא מילה וההקשר המלא הוא רק משפט אחד. נבחן את המשפט הבא:

The animal didn't cross the street because it was too tired.

המשפט הקודם מכיל 11 מילים. כל אחת מ-11 המילים מתייחסת לעשר המילים האחרות, ומנסה להבין כמה כל אחת מהן חשובה לה. לדוגמה, שימו לב שהמשפט מכיל את לשון הפנייה it. לשון הפנייה היא לעיתים קרובות לא ברורה. בדרך כלל, לשם העצם או ביטוי שם העצם שצוין לאחרונה מתייחס לשם העצם it. אבל במשפט לדוגמה, לשם איזה עצם שצוין לאחרונה מתייחס it – החיה או הרחוב?

מנגנון תשומת הלב העצמית קובע את הרלוונטיות של כל מילה בסביבה לשם העצם it. באיור 3 מוצגות התוצאות – ככל שהקו כחול יותר, כך המילה חשובה יותר לשם העצם it. כלומר, animal חשוב יותר מ-street לשם העצם it.

איור 3.  הרלוונטיות של כל אחת מ-11 המילים במשפט:
            'החיה לא חצתה את הרחוב כי היא הייתה עייפת מדי'
            לפנייה 'היא'. המילה 'חיה' היא המילה הכי רלוונטית לשם העצם 'היא'.
איור 3. קשב עצמי לשם העצם it. מתוך Transformer: A Novel Neural Network Architecture for Language Understanding.

 

לעומת זאת, נניח שהמילה האחרונה במשפט משתנה באופן הבא:

The animal didn't cross the street because it was too wide.

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

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

מהו קשב עצמי עם כמה ראשים?

בדרך כלל, כל שכבת קשב עצמי מורכבת מכמה ראשי קשב עצמי. הפלט של השכבה הוא פעולה מתמטית (למשל, ממוצע משוקלל או מכפלת נקודה) של הפלט של הראשים השונים.

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

התכונה 'התמקדות עצמית' מאלצת כל מילה בהקשר ללמוד את הרלוונטיות של כל המילים האחרות בהקשר. לכן, קל להכריז שזו בעיה מסוג O(N2), כאשר:

  • N הוא מספר האסימונים בהקשר.

כאילו שה-Big O הקודם לא היה מטריד מספיק, ה-Transformers מכילים כמה שכבות של קשב עצמי וכמה ראשי קשב עצמי לכל שכבת קשב עצמי, כך ש-Big O הוא למעשה:

O(N2 · S · D)

כאשר:

  • S הוא מספר שכבות הקשב העצמי.
  • D הוא מספר הראשים בכל שכבה.

סביר להניח שאף פעם לא תאמינו LLM מאפס. אימון של LLM ברמה תעשייתית דורש כמויות אדירות של מומחיות ב-ML, משאבי מחשוב וזמן. עם זאת, לחצת על הסמל כדי לקבל מידע נוסף, ולכן אנחנו חייבים לך הסבר.

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

The residents of the sleepy town weren't prepared for what came next.

אסימונים אקראיים יוסרו, לדוגמה:

The ___ of the sleepy town weren't prepared for ___ came next.

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

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

Oranges are traditionally ___ by hand. Once clipped from a tree, __ don't ripen.

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

שלב אימון נוסף אופציונלי שנקרא התאמת ההוראות יכול לשפר את היכולת של LLM לפעול לפי הוראות.

למה טרנספורמרים גדולים כל כך?

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

אבל איך מודל שפה גדול יוצר טקסט?

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

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

My dog, Max, knows how to perform many traditional dog tricks.
___ (masked sentence)

מודל שפה גדול יכול ליצור הסתברויות למשפט המוסתר, כולל:

Probability מילים
3.1% לדוגמה, הוא יכול לשבת, להישאר במקום ולגלגל את עצמו.
2.9% לדוגמה, הוא יודע לשבת, להישאר במקום ולגלגל את עצמו.

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

User's question: What is the easiest trick to teach a dog?
LLM's response:  ___

ה-LLM יוצר הסתברויות לתשובות אפשריות שונות.

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

היתרונות של LLM

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

בעיות עם מודלים גדולים של שפה (LLM)

אימון של LLM כרוך בבעיות רבות, כולל:

  • איסוף של קבוצת אימון עצומה.
  • צריכת זמן של כמה חודשים ומשאבים עצומים של חשמל ומחשוב.
  • פתרון אתגרים של עבודה במקביל.

שימוש ב-LLM כדי להסיק תחזיות גורם לבעיות הבאות:

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

תרגול: בדיקת ההבנה

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