טכנולוגיה חדשה יותר, מודלים גדולים של שפה (LLM) (LLMs) לחזות אסימון או רצף של אסימונים, ולפעמים שווי של פסקאות רבות של אסימונים חזויים. חשוב לזכור שאסימון יכול להיות מילה, מילת משנה (קבוצת משנה של מילה אחת), או אפילו תו אחד. מודלים גדולים של שפה מספקים תחזיות הרבה יותר טובות מאשר במודלים של שפה (N-gram) או ברשתות נוירונים חוזרות, כי:
- מודלים גדולים של שפה מכילים הרבה יותר פרמטרים מאשר מודלים חוזרים.
- מודלים גדולים של שפה אוספים הקשר רחב הרבה יותר.
הקטע הזה מציג את הארכיטקטורה המצליחה ביותר והנפוצה ביותר לפיתוח מודלים גדולים של שפה: הטרנספורמר.
מהו טרנספורמר?
טרנספורמרים הם ארכיטקטורה מתקדמת למגוון רחב של של מודלים גדולים של שפה, כמו תרגום:
![איור 1. הקלט הוא: אני כלב טוב. מודל שמבוסס על טרנספורמר
המתרגם ממיר את הקלט לפלט: Je suis un bon
chien, שזה אותו משפט שתורגם לצרפתית.](https://developers.google.cn/static/machine-learning/crash-course/images/Iamagooddog.png?authuser=8&hl=he)
טרנספורמרים מלאים מורכבים ממקודד ומפענח:
- מקודד מבצע המרה של טקסט לייצוג ביניים. מקודד הוא מודל ענק Neural net.
- מפענח מבצע המרה את הייצוג הביניים הזה לטקסט שימושי. מפענח הוא גם רשת נוירונים ענקית.
לדוגמה, בכלי התרגום:
- המקודד מעבד את טקסט הקלט (למשל, משפט באנגלית) ייצוג ביניים מסוים.
- המפענח ממיר את הייצוג הזה לטקסט פלט (כלומר או המשפט המקביל בצרפתית).
![איור 2. המתרגם שמבוסס על טרנספורמר מתחיל במקודד,
שיוצרת ייצוג ביניים של המילה
משפט. מפענח ממיר את הייצוג הזה ל
משפט פלט בצרפתית.](https://developers.google.cn/static/machine-learning/crash-course/images/TransformerBasedTranslator.png?authuser=8&hl=he)
מהו קשב עצמי?
כדי לשפר את ההקשר, טרנספורמרים מסתמכים בעיקר על קונספט שנקרא קשב עצמי. בפועל, בשם כל אסימון של קלט, הקשב העצמי מבקש השאלה הבאה:
"באיזו מידה משפיעים כל אחד מהאסימונים האחרים על הפרשנות של הנתונים האלה אסימון?'
ה"עצמי" במצב "קשב עצמי" מתייחס לרצף הקלט. תשומת לב מנגנונים משקללים את היחסים בין אסימוני קלט לאסימונים ברצף פלט, תרגום או לאסימונים ברצף אחר. אבל תשומת לב עצמי בלבד שמשקללת את החשיבות של היחסים בין אסימונים ברצף הקלט.
כדי לפשט את העניינים, מניחים שכל אסימון הוא מילה ההקשר הוא רק משפט אחד. למשל, נבחן את המשפט הבא:
The animal didn't cross the street because it was too tired.
המשפט הקודם מכיל אחת-עשרה מילים. כל אחת מ-11 המילים היא שימו לב לעשרת המילים האחרות, תוהים כמה כל אחת מעשר המילים האלה הוא חשוב לעצמו. לדוגמה, שימו לב שהמשפט כולל את לשון הפנייה it. לשון הפנייה בדרך כלל לא ברורה. לשון הפנייה it מתייחסת בדרך כלל של שם עצם אחרון או של שם עצם, אבל במשפט לדוגמה, האם הוא מתייחס לבעל החיים או לרחוב?
מנגנון הקשב העצמי קובע את הרלוונטיות של כל מילה בקרבת מקום את לשון הפנייה it. איור 3 מציג את התוצאות. ככל שהקו כחול יותר, כך שהמילה הזאת חשובה ללשון הפנייה it. כלומר, בעל חיים חשוב מ-street ללשון הפנייה it.
![איור 3. הרלוונטיות של כל אחת מ-11 המילים במשפט:
"בעל החיים לא חצה את הכביש כי הוא היה עייף מדי"
לכינוי 'it'. המילה 'בעל חיים' הכי רלוונטי
את כינוי הגוף.](https://developers.google.cn/static/machine-learning/crash-course/images/Theanimaldidntcrossthestreet.png?authuser=8&hl=he)
לעומת זאת, נניח שהמילה הסופית במשפט משתנה באופן הבא:
The animal didn't cross the street because it was too wide.
במשפט המתוקן הזה, הקשב העצמי עשוי לדרג את רחוב בתור רלוונטית יותר מבעל חיים ללשון הפנייה it.
חלק ממנגנוני הקשב העצמי הם דו-כיווניים, כלומר לחשב את ציוני הרלוונטיות של אסימונים שקודמים ואחרי המילה השתתף/ה בו. לדוגמה, באיור 3, שימו לב שמילים משני הצדדים הוא נבדקים. כך, מנגנון דו-כיווני דו-כיווני יכול לאסוף הקשר ממילים משני הצדדים של המילה שאליה מתייחס המידע. לעומת זאת, מנגנון חד-כיווני של קשב עצמי יכול לאסוף הקשר רק ממילים בצד אחד של המילה שאליה מדברים. קשב עצמי דו-כיווני הוא שימושי במיוחד ליצירת ייצוגים של רצפים שלמים, יישומים שיוצרים רצפים לפי אסימון אחר אסימון דורשים חד-כיווניות קשב עצמי. לכן המקודדים משתמשים בקשב עצמי דו-כיווני, ואילו מפענחים משתמשים באינטראקציה חד-כיוונית.
מה זה קשב עצמי מרובה ראשים?
כל שכבה של הקשב העצמי מורכבת בדרך כלל מכמה ראשי קשב עצמי. הפלט של שכבה הוא פעולה מתמטית (לדוגמה, ממוצע משוקלל או מכפלה סקלרית) של הפלט ראשים שונים.
מכיוון שכל שכבת קשב עצמי מאותרת לערכים אקראיים, הוא יכול ללמוד על קשרים שונים בין כל מילה שמופיעה בה לבין של מילים קרובות. לדוגמה, שכבת הקשב העצמי שמתוארת בסרטון שמתמקד בקביעת שם העצם שהוא מתייחס אליו. עם זאת, שכבות אחרות של הקשב העצמי עשויות ללמוד את הרלוונטיות הדקדוקית כל מילה לכל מילה שנייה, או לומדות אינטראקציות אחרות.
למה טרנספורמרים כל כך גדולים?
טרנספורמרים מכילים מאות מיליארד או אפילו טריליונים פרמטרים. מומלץ בדרך כלל להשתמש במודלים של בנייה עם מספר פרמטרים על פני פרמטרים עם מספר גדול יותר של פרמטרים. אחרי הכול, מודל עם מספר קטן יותר של פרמטרים משתמש בפחות משאבים כדי לבצע תחזיות מאשר מודל עם מספר גדול יותר של פרמטרים. אבל מחקרים מראים שטרנספורמרים עם יותר פרמטרים יש ביצועים טובים יותר באופן עקבי מטרנספורמרים עם פחות פרמטרים.
אבל איך מודל שפה גדול (LLM) יוצר טקסט?
ראיתם איך חוקרים מאמנים מודלים גדולים של שפה כדי לחזות מילה או שתיים, יותר לא מרשים. אחרי הכול, חיזוי מילה או שתיים הוא בעצם תכונת ההשלמה האוטומטית שמובנית בתוכנות שונות של טקסט, אימייל ויצירת סרטונים. יכול להיות שתהיתם איך מודלים גדולים של שפה יכולים ליצור משפטים או פסקאות או Haikus על ארביטראז'.
למעשה, מודלים גדולים של שפה הם בעצם מנגנונים של השלמה אוטומטית לחזות (להשלים) אלפי אסימונים. לדוגמה, נבחן משפט ואחריו משפט המסכה:
My dog, Max, knows how to perform many traditional dog tricks. ___ (masked sentence)
מודל שפה גדול (LLM) יכול ליצור הסתברויות למשפט המסכה, כולל:
Probability | מילים |
---|---|
3.1% | לדוגמה, הוא יכול לשבת, להישאר לעבור הלאה. |
2.9% | לדוגמה, הוא יודע איך לשבת, להישאר לעבור הלאה. |
LLM גדול מספיק יכול ליצור הסתברויות לפסקאות מאמרים אפשר לחשוב על שאלות של משתמשים ל-LLM בתור "הנתון הנתון" משפט ואחריה מסכה דמיונית. לדוגמה:
User's question: What is the easiest trick to teach a dog? LLM's response: ___
ה-LLM יוצר הסתברויות לתגובות אפשריות שונות.
דוגמה נוספת, LLM שאומן על מספר עצום של "מילים מתמטיות" בעיות" יכול להיראות כמו חשיבה מתמטית מתוחכמת. אבל מודלי ה-LLM האלה הם פשוט משלימים אוטומטית הנחיה של בעיה מילולית.
היתרונות של מודלים גדולים של שפה
מודלים גדולים של שפה יכולים ליצור טקסט ברור וקל להבנה מגוון של קהלי יעד. מודלים גדולים של שפה יכולים לחזות את המשימות שהם מבצעים שאומנו במפורש. יש חוקרים שטוענים שמודלים גדולים של שפה חיזויים לקלט שהם לא אומנו באופן מפורש, אלא חוקרים הפריכו את הטענה.
בעיות עם מודלים גדולים של שפה
אימון של LLM כולל הרבה בעיות, כולל:
- אוספים ערכת אימונים ענקית.
- לצרוך מספר חודשים ומשאבי חישוב עצומים, החשמל.
- פתרון אתגרים של מקביליות.
השימוש במודלים גדולים של שפה (LLM) כדי להסיק חיזויים גורם לבעיות הבאות:
- מודלים גדולים של שפה hallucinate, כלומר, בחיזויים שלהם יש טעויות.
- מודלים גדולים של שפה צורכים כמויות עצומות של משאבי חישוב וחשמל. אימון על מודלים גדולים של שפה (LLM) על מערכי נתונים גדולים בדרך כלל מפחית את הירידה את כמות המשאבים שדרושים לצורך הסקת מסקנות, למרות שהאימון הכולל צוברים יותר משאבי אימון.
- כמו כל המודלים של למידת מכונה, מודלים מסוג LLM יכולים לגלות הטיות מכל מיני סוגים.