סיכום כל המאמרים שיצאו מאנטרופיק מאז הקמתה
במי? מה?
והרבה אחרים מOpenAI. חפשו את השמות.
לשעבר Vice President of Research בOpenAI
אך אולי נקבל פרטים נוספים באירוע אותו מקיימת גוגל בעוד ארבעה ימים..
את שניים ממאמרי החברה סיכמתי בעבר במטרה לעלותם לקבוצה [בתוספת שחזור ניסויים משל עצמי]. אך ספציפית את אותו הפוסט מערכת סינון הספאם האוטומטי של פייסבוק חסמה ולא ניתן לשתפו אתכם. זאת גם לאחר מספר שינויים ועריכות, ניסיתי.
רגע לפני: רקע כללי על בעית הAlignment
אמ;לק: כשמודלים מחזירים לנו את "מה שהם חושבים שרצינו" אבל זה לא "בדיוק בדיוק מה שרצינו".
אבל יםםםםםםםם, למה שלא פשוט נאמן מראש רק על השאלות עם הכי הרבה Upvotes וזהו? זה יחסוך שלב קשה באימון! | תשובה: כי זה לא עובד טוב. ניסיתי. המודל לומד משמעותית איכותי יותר מאימון כל התשובות לכל שאלה. [אינטואיציה על כך בסקירת אחד המאמרים בהמשך]
-
יצירת מספר תשובות מהמודל ואימון רגיל של השאלה והתשובה "הכי נכונה" לדעתנו. (נקרא במאמר OpenAI כFeedME)
-
באמצעות שיטה מס' 1 אומן GPT-3 גרסה 002 (הנקרא בסלנג "InstructGPT") ובאמצעות שיטה מס' (ככל הנראה, לפי המידע המדויק ביותר שיש בידינו כרגע) אומנו GPT-3 גרסה 003 וגם ChatGPT.
מהניסיון שלי: לי אישית יש ניסיון עם שתי השיטות, השיטה הראשונה עובדת מצוין ויציבה מאד. השיטה השניה קשה יותר לייצוב (ככל הנראה חסרים "פרטים" ו"טריקים" במאמרים ששוחררו העוזרים לאימון) אך בסופו של דבר מובילה את המודל להתנהגות שונה במיוחד מהשיטה הראשונה.
עוד מניסיון: כל השיטות רגישות מאד (מאד) לאיכות מודל העזר הקטן (ולכמות הדוגמאות עליהן הוא אומן), אם אתם מתכננים להשתמש בשיטות אלו השקיעו בו במיוחד.
סיכום כל מאמרי Anthropic
אמ;לק: המאמר הראשון של החברה לגבי Alignment, דן בבייסליין המתאים לחקר הבעיה.
כך גם אומן ChatGPT על פי מאמרי OpenAI. אני מאד אוהב שהם הלכו לבדוק כמה חלופות, גם אם גילו בסוף שזו הדרך הטובה ביותר – עובדה זו מרמזת על כך שניסוים אלו ככל הנראה גם בוצעו בOpenAI אך מעולם לא תועדו בפומבי מכיוון ש"לא הצליחו". או בשפה מאד פשוטה: תמיד נסו בעצמכם עוד דרכים שונות ומשונות גם אם "לא ככה עושים את זה" או "לא ככה כתבו במאמר" כי מאמרים באופן כללי מוטים לכיוון "מה שהצליח" אבל במקרים רבים דווקא "מה שלא הצליח" רעיון מצוין שיכול לעבוד במצבים אחרים.
אמ;לק: מאמר הדן בשיטות אימון מודל שפה להיות "עוזר אישי" תוך המנעות מתופעות לא רצויות
כמו שאמרתי קודם, שפה המאמרים.. "מעניינת"
למשל כמו שמישהו כאן [בלי לנקוב בשמות] ביקש מChatGPT מדריך ליצור פצצות אבל "בצחוק"
אמ;לק: לאימון מודלי שפה גדולים ישנו רכיב הניתן לחיזוי (שיפור ביצועים ביחס לגודל) ורכיב שאינו ניתן לחיזוי ולו השפעות רבות על החברה האנושית
וחסימת משתמשים העושים בו שימוש בStack Overflow, ודחית מאמרים המכילים טקסטים ממנו, וחסימת האתר ברשתות בתי ספר רבות בעולם, והרשימה עוד ארוכה..
אמ;לק: אפשר לחזות בקלות וגם פשוט לשאול את המודל האם הוא מחרטט ולקבל דיוק גבוה במיוחד.
-
ניתנות למודל מספר שאלות ותשובות ולכל אחת מהן גם מצוין האם תשובה זו נכונה ובכך שיטה זו מאפשרת "סיעור מוחות" לפני החזרת התשובה מהמודל.
אמ;לק: על ידי שינויים קלים בארכיטקטורת המודל ניתן לעודד את היצוג הנלמד להיות קל לפרשנות אנושית בלי לפגוע בביצועים.
-
נראה כי שכבות המוקדמות במודל מרכיבות מילים ארוכות המורכבות מכמה טוקנים שונים או מילים המגיעות משפות שונות.
-
אך בשכבות מאוחרות, מתקיימת התופעה הארוכה ונראה שנוירונים לומדים "להרכיב" את "החלק הבא" במילים ארוכות בזמן הכתיבה.
-
בשכבות הביניים, נלמדים נוירונים מופשטים יותר, למשל, נצפה נוירון הנראה כמייצג מספרים אך רק כאשר מדובר בספירת אנשים.
בנוסף למאמר החוקרים משחררים גם דיון מוקלט וידאו לא פורמלי בו הם מתייעצים בזמן המחקר בפרוייקט. מעניין ומומלץ.
אמ;לק: בזוג מאמרים אלו נמצא כי מודלי שפה בכל הגדלים עוברים מעבר-פאזה חד וקיצוני בזמן האימון ובשלב זה נלמדות יכולות הFew shot learning המפורסמות של המודל, יכולות אלו הן המאפשרות את כל משחקי הPrompt Engineering שכולנו מכירים.
(כמו שכתבתי, שחזרתי בעצמי חלק מהניסוים במאמרים אלו ובדקתי אישית סדרת מודלים בגדלים ההולכים וגדלים ממיליוני פרמטרים בודדים ועד ל20 מיליארד פרמטרים. מעבר הפאזה משתחזר.)
יכולת זו גם כמובן מועצמת באימון מודלי שפה בכל הגדלים כאשר בזמן אימון המודל חלק מדוגמאות הנתונים מנוסחים בצורה זו, טכניקה זו נמצאת בשימוש נרחב כיום מכיוון שהיא מאפשרת למודל הכללה למשימות חדשות שמעולם לא ראה במהלך האימון. והיא נכללת בהרבה דאטהסטים מוכנים לאימון מודלי שפה באינטרנט.
הכותבים ציינו בפגישת זום בוידאו עם ElutherAI כמה מבוססת כל אחת מטענות אלו בשלב זה ועד כמה יש לקחת כל אחת מהן בערבון מוגבל. כל טענות אלו ככל הנראה עדיין נמצאות בבדיקה ומחקר תמידי.
-
טענה 1: מודלי שפה גדולים עוברים "מעבר פאזה" בשלב מוקדם באימון, במהלכו נוצרים ראשי אינדוקציה ובו זמנית נרכשת יכולת למידת ההקשר של המודל.
-
טענה 2: כאשר משנים את ארכיטקטורת המודל באופן המשתנה את יכולת יצירת ראשי אינדוקציה אלו (גם לטובה וגם לרעה) ביצועי יכולת למידת ההקשר משתנים בהתאם.
-
טענה 3: כאשר "דופקים" ישירות את ראשי האינדוקציה בזמן הטסט, יכולת למידת ההקשר נפגעת במיוחד (עד כדי כך שנעלמת לחלוטין) אך יכולות אחרות אותן למד המודל נפגעות פחות.
-
טענה 4: למרות שנראה כי ראשי האינדוקציה לומדים העתקת רצפים, נראה באופן אמפירי שאותם ראשים גם לוכדים יכולות מתוחכמות ומורכבות יותר ללמידת הקשר, יכולות אלו מובילות להתנהגויות מופשטות ביותר.
-
טענה 5: עבור מודלים קטנים מאד (שכבה בודדת, שתי שכבות), ניתן להסביר במדויק כיצד ראשי אינדוקציה עובדים, וניתן להראות שהם תורמים ללמידת הקשר.
-
טענה 6: על מנת לבדוק טענות אלו אומנו מודלים במבנה מיוחד המאפשר לכידה ופרשנות של ראשי אינדוקציה ויכולותיהם. לכן, בשל העלות הרבה של אימון מודלי שפה גדולים לא אומן מודל במבנה זה בתצורת ענק ולכן טענות אלו אינן נבדקו במודלי ענק. ובכל זאת, נראה כי במודלים קטנים תצפיות וטענות אלו מקיימים וישנה האפשרות שגם במודלי שפה גדולים תצפיות אלו מתרחשות.
דגש: שיניתי קצת את הניסוח המקורי של חלק מטענות אלו על מנת לצמצם חלק "מהפרשנות" ולהצמד לעובדות ותצפיות כמו שנכתב בתחילת הפוסט. קוראים המעוניינים בטענות המקוריות כמו שהן מובאות במאמר מוזמנים לקרוא את המאמר כולו, הוא מעניין מאד וכתוב מצוין לדעתי.
אמ;לק: המאמר חוקר לעומק את ההבדלים ביצוג הנלמד במודלים הלומדים לשנן דוגמאות (אוברפיטינג) למודלים הלומדים להכליל.
אמ;לק: במאמר זה הכותבים משתמשים במודל שפה על מנת ליצור שאלות למבחן מודלי שפה אחרים תוך הקטנת המאמץ האנושי מביצוע מבחן זה
אמ;לק: בכל שלב צוות אנושי מנסה "לעבוד על המודל" ואז מאמנים את המודל לא ליפול לאותם הטריקים. בתהליך זה נוצר מודל איכותי ועמיד במיוחד "לטריקים".
מזכיר: הדאטה שנאסף שוחרר ונמצא ברשת! מכיל כ40,000 דוגמאות מתויגות.
אמ;לק: שכפול מזערי בנתוני האימון פוגע באופן חמור ולא פרופורציונלי בביצועי מודלי שפה ככל הנראה מכיוון שצורך פרמטרים מהמודל עבור "שינון" על חשבון יכולות הכללה אחרות
למשל: עשרות עמודי דאטה רצופים של "\" שהרסו את אחד ממודלי השפה הגדולים המפורסמים היום ברגע שנכנסו אל המודל באימון.
אמ;לק: הכותבים מראים שמודלי שפה יכולים ללמוד סט ערכים פשוטים באמצעות שפה חופשית על ידי שימוש בשיפור עצמי, ולאחר מכן הם משתמשים בשיטה זו על מנת לאמן מודל "עוזר" ו"לא מזיק".