close menu

צוקרברג: לא מיקרוסופט ולא גוגל. אנחנו הstate-of-the-art בכל מה ש"GPT"!

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

מודל חדש (LLaMA) של מטא שוחרר לפני כמה שעות ולטענתם עוקף את GPT-3 בהכל (באמת בהכל).

וגם קטן ממנו פי 10.

ככה על הדרך.

כמה קטן? הקטן ביותר (7B) ברמה שאתם כנראה יכולים לאמן אותו על 3090 בודד (עם DeepSpeed). כן! מודל שעוקף את GPT-3 בחלק מהמדדים מאומן על 3090 בודד. מודל אחד מעליו (13B) כבר עוקף את GPT-3 ממש בהכל, דרך אגב.

אבל אז הצצתי במאמר..

מאמר: https://research.facebook.com/…/llama-open-and…/

קוד: https://github.com/facebookresearch/llama

בלוג: https://ai.facebook.com/…/large-language-model-llama…/

בקשת גישה: https://docs.google.com/…/1FAIpQLSfqNECQnMkycA…/viewform

איך כולם "יותר טובים מGPT-3" כל הזמן?

איכשהו, כולם כל הזמן אומרים שהם עוקפים את GPT-3 אבל אף פעם המודלים לא "מרגישים ככה".

אף אחד לא באמת יודע איך למדוד מודלי שפה כמו שצריך, יש כל מיני מבחנים ומדדים אבל רוב ציוני המודלים נקבעים על ידי אחד מ:

  • כמה מילים "שהיו צריכות להופיע" מופיעות במשפט שנוצר.
  • כמה נמוך הלוס בוולידציה.

מיותר לציין ששני מדדים אלו לא מייצגים בצורה טובה במיוחד האם המודל "טוב" ב"מציאות". לכן אנחנו רואים על ימין ועל שמאל שמודלים "טובים יותר" מGPT-3 אבל הם לא "מרגישים ככה".

ה"סוד" של GPT-3

הסוד הוא שאין סוד.

זה הדאטה.

כנראה שGPT-3 מאומן על סט נתונים סופר איכותי ונקי במיוחד – הדאטהסטים הפתוחים כיום פשוט לא באותה האיכות.

דגש: אין לנו (וגם לי) הרבה מידע על נתוני האימון.

כמו רבים אחרים גם מטא נתקלו בבעיה זו בזמן שאימנו את המודל הגדול הקודם: OPT

לו ביצועים נחותים במיוחד בהשוואה למודלים בגודל דומה..

אז על מנת להתמודד בעיה זו במודל הנוכחי בחרו הכותבים בפתרון הבא:

להגזים.

דאטהסט לאימון

המודל אומן על 1.4 טריליון טוקנים..

להשוואה: GPT-3 אומן על 0.5 טריליון.

..המכילים כ5 טרה בייט (!!) טקסט מ CommonCrawl, C4, גיטהאב, ויקיפדיה, Books, Arxiv, StackExchange כולם דאטהסטים פתוחים ונגישים.

לצורך ניקוי הדאטה, הם מוחקים כפילויות ברמת שורת הטקסט עם CCNet ומזהים אוטומטית את שפת הטקסט עם fastText. הטוקנייזר של המודל מבוסס על SentencePiece ונוספו במיוחד טוקנים לכל הספרות 0-9

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

אפוק אחד:

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

המודלים בכל הגדלים אומנו על כל הדאטה כך שבכמעט כל הטוקנים נעשה שימוש בודד בלבד.

חוקי הסקיילאביליות של מודלי ענק

מאז שחרור GPT-3 בו נצפתה בפעם הראשונה תופעת הFew-shot..

שאומרת ש: שאפשר לתת למודל "דוגמאות" מתויגות בתוך הטקסט והוא "ישלים" את הדוגמה "הלא מתוייגת" – כך אפשר להשתמש במודל לפתור משימות שמעולם לא אומן לפתור בזמן אמת.

..ניתן דגש רב לגודל המודל. חשבנו שגודל המודל הוא הפרמטר העיקרי לתופעות "חכמות" אלו. בחודשים שלאחר מכן החל מירוץ חימוש בו כל אחת מהשחקניות הגדולות ניסתה לאמן מודל כמה שיותר גדול.

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

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

במאמר זה הכותבים מותחים את הרעיון ומאמנים סדרת מודלים בגדלים הולכים וגדלים על כמות נתונים עצומה ומוכיחים בלי צל של ספק שScale is not all you need כשמדובר בפרמטרים ושכמעט כל מודלי השפה המודרניים פשוט Under-trained.

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

תוצאת המודלים במאמר: מודל בגודל 13 מיליארד פרמטרים עקף את GPT-3 כמעט בכלל המבחנים כשGPT-3 גדול ממנו פי 10.

ארכיטקטורה

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

  • שימוש בנרמול RMSNorm בתחילת כל הבלוקים

הם לקחו את הרעיון מGPT-3

  • שימוש באקטיבציה SwiGLU

הם לקחו את הרעיון מPaLM

  • שימוש באמבדינגס רלטיבי Rotary Embeddings

הם לקחו את הרעיון מGPT-J

היפרפרמטרים

לאחר שבאימון OPT נאלצו כותבי המאמר להשתמש בScheduler "מה שנראה לי decay" ידני לגמרי לקצב האימון, כאן נעשה שימוש בCosine פשוט עם AdamW.

גודל הבאצ' הוא 4 מיליון דגימות.

לא רוצה לחמם אבל אני רואה פה טריק לשיפור מידי של המודל!

האימון כולו ערך כשלושה שבועות על 2048 GPUs מסוג A100. (ג'יזס).

תוצאות

לפי התוצאות במאמר: המודלים הם הState-of-the-art בכל המדדים חוץ מאחד: MMLU. בו ציון המודל הוא 68%. להשוואה, ציון GPT-3 במדד זה הוא 77.4%.

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

כן אבל האם הוא "ב-א-מ-ת" יותר טוב?

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

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

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

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

אבל אם אתם רוצים מודל טוב לFine-Tuning

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

עוד בנושא: