מושגי יסוד
נספח — המתמטיקה הקטנה שפותחת את הבינה הגדולה
מדריך מקדים וקריא לוקטורים, הסתברויות, גרדיאנטים, Softmax ומדדי הערכה עבור פרקי היסודות.
תוכן העניינים
- למה בכלל צריך מתמטיקה כדי להבין מודל?
- וקטור הוא רשימה מסודרת של מספרים
- מכפלה פנימית: להפוך שני וקטורים לציון אחד
- Softmax: איך ציונים נהפכים למשקלים?
- מה עושה Temperature?
- Attention במספרים, שלב אחרי שלב
- Loss ו־Gradient: לדעת אם מתקדמים בכיוון הנכון
- הסתברות מותנית: מה פירוש חיזוי טוקן הבא?
- Precision, Recall ו־Accuracy — מדוע צריך את שלושתם?
- כיול: מה שונה בין 0.9 לסיכוי אמיתי של 90%?
- שאלות בדיקה עצמית
- להמשך העמקה
טיפ
הנספח מיועד לקוראים שאין להם רקע במתמטיקה מתקדמת. הוא לא מחליף לימודי אלגברה ליניארית או חשבון דיפרנציאלי; הוא מסביר מספיק כדי להבין מה באמת מחושב בדוגמאות הספר. כל הערכים בדוגמאות הם לצורך הוראה בלבד.
למה בכלל צריך מתמטיקה כדי להבין מודל?#
אפשר לומר שמודל "מחבר בין מושגים". אך בלי להבין איך אפשר לייצג מושג במספרים ואיך מעדכנים את הייצוג, זו נשארת מטאפורה. נתחיל מארבע פעולות פשוטות: חיבור וכפל, עבודה עם רשימות מספרים, המרת ציונים להסתברויות והקטנת שגיאה. אותן פעולות מופיעות בהיקף עצום במודלים אמיתיים.
וקטור הוא רשימה מסודרת של מספרים#
נניח שלמוצר יש שני מאפיינים: רוחב וגובה. את המוצר אפשר לייצג כווקטור x=[2,3]. מספרים אלה עדיין אינם "משמעות". ההגדרה של כל ממד — והדרך למדוד אותו — ניתנה לנו מראש.
במודלי שפה, לעומת זאת, המודל לומד ייצוגים בממדים רבים. אין ממד אחד שהוא תמיד "האם זו חשבונית" וממד אחד שהוא תמיד "עד כמה זה מנומס". המשמעות החישובית נוצרת מהיחסים בין הייצוגים ומאופן השימוש בהם בשכבות השונות.
המחשה של מרחק: נניח שלשתי נקודות יש קואורדינטות A=[1,1] ו־B=[4,5]. המרחק האוקלידי הוא √((4−1)²+(5−1)²)=√25=5. במרחבי Embeddings אמיתיים משתמשים לעיתים במדדי קרבה אחרים, כמו דמיון קוסינוס. קרבה מספרית אינה מבטיחה ששני מסמכים אומרים אותו דבר או שאחד מהם אמת.
מכפלה פנימית: להפוך שני וקטורים לציון אחד#
לשני וקטורים בעלי אותו מספר רכיבים a=[1,2] ו־b=[3,4], המכפלה הפנימית היא a·b=1×3+2×4=11. היא נותנת ציון שמושפע מכיוון הווקטורים ומגודלם.
מנגנון Attention משתמש, בין היתר, במכפלות פנימיות של הייצוגים שמכונים Query ו־Key. לכן אם עוצרים בפרק 3 מול הביטוי QKᵀ, אפשר לקרוא אותו כהרבה מכפלות פנימיות שמחשבות התאמה בין מיקומים ברצף.
Softmax: איך ציונים נהפכים למשקלים?#
נניח שתחזית של מודל הפיקה ציונים [2,0]. אלו אינם אחוזים. פונקציית softmax מחשבת לכל ציון את e בחזקתו ומחלקת בסכום החזקות. בדוגמה:
e² ≈ 7.389e⁰ = 1- הסכום
≈ 8.389 - המשקל הראשון
7.389/8.389 ≈ 0.881, והשני≈ 0.119.
המשקלים מסתכמים ל־1. המודל לא "מאמין" באפשרות הראשונה מבחינה אנושית; זו תוצאה של פונקציה מתמטית על ציונים.
מה עושה Temperature?#
אפשר להחליף את הציון z ב־z/T לפני Softmax, כאשר T>0. למשל T=2 יהפוך [2,0] ל־[1,0]; Softmax יחזיר ≈[0.731,0.269], פחות מרוכז. כאשר T=0.5, הציונים יהיו [4,0] והמשקל הראשון יעלה לכ־0.982. זו הדגמה של עיקרון הדגימה, לא מתכון לדיוק עובדתי.
Attention במספרים, שלב אחרי שלב#
ניקח Query דו־ממדי q=[1,2]; שני Keys k₁=[2,0], k₂=[0,2]; ושני ערכי Value חד־ממדיים v₁=10, v₂=0.
- ציוני המכפלות:
q·k₁=2;q·k₂=4. - ממד ה־Key הוא
dₖ=2; מחלקים ב־√2≈1.414, ומקבלים ציונים[1.414,2.828]. - Softmax על שני הציונים מפיק בקירוב
[0.196,0.804]. - מחברים ערכים במשקלים אלה:
0.196×10 + 0.804×0 = 1.96.
התוצאה היא שילוב מספרי של Values. היא לא אומרת שאחת המילים "נכונה ב־80.4%". בפרק 3 תראו שמנגנון זה פועל בהרבה ראשים ושכבות, והממדים במודלים מסחריים גדולים הרבה יותר.
מה נותר בחוץ? רכיבי Normalization, Masking, ריבוי ראשים, חיבורים שיוריים, שכבות Feed-forward, למידה של Q/K/V ואסטרטגיות יעילות לחישוב. לכן זו הדגמת גרעין חישובי, לא סימולציה מלאה של Transformer.
Loss ו־Gradient: לדעת אם מתקדמים בכיוון הנכון#
מודל פשוט חוזה זמן טיפול ŷ=w×x. בקבוצת אימון יש שתי דוגמאות: (x,y)=(1,2) ו־(2,4). נגדיר ממוצע ריבועי שגיאות:
L(w)=((w−2)²+(2w−4)²)/2.
אם w=1, התחזיות הן 1 ו־2, והשגיאה היא (1+4)/2=2.5. הנגזרת היא dL/dw=5(w−2). לכן ב־w=1 הנגזרת שווה −5.
עם קצב למידה η=0.1:
w_new = w_old − η(dL/dw) = 1−0.1×(−5)=1.5.
עכשיו L(1.5)=0.625. הקטנו את השגיאה בדוגמאות שלנו. לא למדנו מכך שהמודל יודע להתמודד עם נתונים חדשים: נדרשת הערכה על דוגמאות שלא שימשו לאימון.
המקרה החד־ממדי הזה גם מסביר למה ב־Deep Learning מייצגים גרדיאנט כווקטור רב־ממדי: לכל פרמטר יש נגזרת משלו, ו־Backpropagation מחשב כיצד שינוי בפרמטרים תורם לשינוי בהפסד הכולל.
הסתברות מותנית: מה פירוש חיזוי טוקן הבא?#
נניח שרצף כבר מכיל "אני שותה כוס של". המודל מעריך התפלגות P(next token | previous tokens): הסתברות להמשך מסוים בהינתן מה שקדם לו. זו הסתברות מותנית: אי אפשר לפרש את תוצאת הניסוי בלי להזכיר את ההקשר. אם מוחקים את "כוס", ההתפלגות משתנה; אם מוסיפים "במדבר", היא יכולה להשתנות שוב.
בחיזוי אוטורגרסיבי של רצף, אפשר לכתוב פירוק עקרוני:
P(t₁,...,tₙ)=P(t₁)×P(t₂|t₁)×...×P(tₙ|t₁,...,tₙ₋₁).
אין בכך טענה שהמודל יודע את "האמת" של טקסט, אלא שהוא מקצה הסתברויות לרצפים בהתאם לאימון ולהקשר.
Precision, Recall ו־Accuracy — מדוע צריך את שלושתם?#
במדגם לימודי של 100 הודעות:
- 38 חשבוניות זוהו נכון (TP).
- 6 פרסומות הוכרו בטעות כחשבוניות (FP).
- 2 חשבוניות הוחמצו (FN).
- 54 הודעות לא רלוונטיות נדחו נכון (TN).
Precision שווה 38/(38+6)≈86.36%.
Recall שווה 38/(38+2)=95%.
Accuracy שווה (38+54)/100=92%.
אם כל הודעת זבל שנכנסת לתיקייה עולה כמה שניות, אבל חשבונית שהוחמצה גוררת קנס, ייתכן שנעדיף Recall גבוה גם במחיר Precision נמוך. אם כל טעות מפעילה תשלום כספי אוטומטי, ייתכן שנבחר סף אחר ונחייב אישור אנושי. המדדים כשלעצמם אינם מחליטים עבורנו את מחיר הטעות.
כיול: מה שונה בין 0.9 לסיכוי אמיתי של 90%?#
נניח שמסווג מחזיר 0.9 עבור 100 מקרים. אם רק 55 מהמקרים נכון סווגו, הציון 0.9 אינו מכויל כ־90% הסתברות, גם אם המודל מצליח לדרג מקרים ביחס זה לזה. בדיקת Calibration מחלקת תחזיות לפי טווחי ציון ובוחנת תדירויות הצלחה בפועל. מודל יכול להיות טוב בדירוג ומכויל בצורה גרועה; שני התכונות חשובות למשימות שונות.
זה גם מסביר מדוע משפט טקסטואלי של מודל — "אני בטוח ב־90%" — אינו תמיד שקול להסתברות מכוילת. יש לוודא כיצד הציון הוגדר ונמדד.
שאלות בדיקה עצמית#
- האם
[2,0]הוא וקטור הסתברויות? לא. אלו ציונים שיכולים לעבור Softmax. - למה ההפסד ירד אחרי עדכון w? כי העדכון נע בכיוון הגרדיאנט השלילי עבור פונקציית ההפסד והדוגמה המסוימת.
- האם דמיון קוסינוס גבוה בין מסמכים מאמת תוכן? לא. הוא מדד גאומטרי לייצוג שנבחר.
- האם Attention במשקל 0.8 אומר שהמודל "האמין 80%" למקור? לא. זה משקל ערבוב בתוך החישוב, שאינו מדד אמינות מקור.
- האם Accuracy=92% מספיק כדי לאשר מערכת? לא. צריך מדדי החמצה/אזעקת שווא, תרחישי סיכון ותהליך עבודה.