דלג לתוכן

פרמטרים (Parameters)

יסודות בינה מלאכותית

🆕 את הערך הזה אפשר לקרוא גם בגרסה לגיל 12 או בגרסה למנהלים.

הגדרה

פרמטרים (Parameters) הם הערכים הפנימיים שמודל AI לומד במהלך האימון — במובן מסוים, ה"זיכרון" של המודל.

💡 דוגמה

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

רמת הסבר:

מה זה פרמטר בודד, ולמה יש כל כך הרבה

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

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

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

מכאן גם המספרים הגדולים. כדי לייצג את המורכבות של שפה אנושית — דקדוק, הקשר, עובדות, סגנון — נדרשות המון דרגות חופש קטנות. GPT-3 של OpenAI, שיצא ב-2020, כלל 175 מיליארד פרמטרים כאלה.

משקלים והטיות: שני סוגי הפרמטרים

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

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

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

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

כמה מקום תופסים הפרמטרים בזיכרון

אפשר לתרגם את מספר הפרמטרים למשקל מוחשי, וזה מסביר לא מעט. כל פרמטר נשמר לרוב בדיוק של 16 סיביות, כלומר שני בתים. 175 מיליארד פרמטרים כפול שני בתים הם 350 ג׳יגה-בייט — הרבה יותר ממה שנכנס במחשב ביתי, ואפילו לא בכרטיס מסך יחיד.

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

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

פרמטרים מול היפר-פרמטרים

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

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

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

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

יותר פרמטרים אינו בהכרח מודל טוב יותר

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

הראשונה היא מחקר Chinchilla של DeepMind מ-2022. החוקרים אימנו יותר מ-400 מודלים בגדלים שונים, ומצאו שמודלי הענק של אותה תקופה היו למעשה מאומנים בחסר: הם היו גדולים מדי ביחס לכמות הנתונים שהוזנה להם. מודל בן 70 מיליארד פרמטרים, שאומן על כמות נתונים גדולה פי ארבעה באותו תקציב חישוב, עקף בעקביות את Gopher בן 280 מיליארד הפרמטרים וגם את GPT-3 בן 175 מיליארד.

השנייה היא מחקר InstructGPT של OpenAI. שם מודל בן 1.3 מיליארד פרמטרים בלבד, שעבר כוונון עם משוב אנושי, קיבל מבני-אדם העדפה על פני GPT-3 שהיה גדול ממנו פי מאה.

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

פרמטרים כוללים מול פרמטרים פעילים

בשנים האחרונות המספר שמפורסם על מודל הפך מטעה, כי ארכיטקטורת תמהיל מומחים (Mixture of Experts) שינתה את משמעותו.

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

דוגמה מוחשית היא Mixtral 8x7B של Mistral. כל טוקן שעובר בו נגיש ל-47 מיליארד פרמטרים, אבל בפועל מופעלים רק כ-13 מיליארד מהם. המודל צורך זיכרון של מודל גדול, אבל עלות חישוב של מודל בינוני.

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

📬 הגיליון השבועי של Wiki-AI

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

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

שאלות נפוצות ❓

מה זה פרמטר במודל AI?

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

האם יותר פרמטרים זה מודל טוב יותר?

לא בהכרח. מחקר Chinchilla מ-2022 הראה שמודל בן 70 מיליארד פרמטרים עקף את Gopher בן 280 מיליארד, מפני שאומן על כמות נתונים גדולה פי ארבעה.

כמה פרמטרים יש ל-GPT-4?

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

מה ההבדל בין פרמטר להיפר-פרמטר?

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

שתפו:וואטסאפטלגרם

מצאתם טעות בערך, או שיש לכם מקור שכדאי להוסיף? כתבו לנו