Top-p sampling (HE)

From Systems analysis Wiki
Jump to navigation Jump to search

דגימת Top‑p, המכונה גם דגימת גרעין (באנגלית: Nucleus Sampling), היא שיטת פענוח סטוכסטית למודלי שפה אוטו-רגרסיביים, הנמצאת בשימוש נרחב במיוחד במודלי שפה גדולים (LLM). השיטה הוצעה בשנת 2019 על ידי Ari Holtzman ושותפיו (פרה-פרינט ב-arXiv — אפריל 2019; פרסום ב-ICLR 2020) כאלטרנטיבה משופרת לדגימת Top‑k בעלת הסף הקבוע. הרעיון שלה הוא לבחור באופן דינמי קבוצת מועמדים בכל שלב של הגנרציה לפי סף הסתברות מצטברת p.[1]

הרקע ההיסטורי: בעיית ניוון הטקסט הנוירוני

לפני הופעת Top‑p, אסטרטגיות הפענוח הדומיננטיות היו חיפוש חמדן (greedy search) וחיפוש קרני (beam search), המבוססות על פרדיגמת מיקסום הסבירות — בחירת רצף הטוקנים בעל ההסתברות המצטברת הגבוהה ביותר. חיפוש חמדן בוחר בכל שלב באופן מקומי את הטוקן בעל ההסתברות המרבית, ואילו חיפוש קרני עוקב במקביל אחר מספר השערות גנרציה.[1]

למרות שיטות אלו היו יעילות במשימות סגורות (תרגום מכונה, חילוץ מידע), במעבר למשימות של גנרציה פתוחה של טקסט (כתיבת סיפורים, מערכות שיח) הן הובילו לעיתים קרובות לניוון טקסט נוירוני — ניוון הפלט שבו הטקסט הופך לתבניתי, מאבד קוהרנטיות או נתקע בחזרות. תופעה זו תוארה בפירוט על ידי Holtzman ושותפיו בעבודה The Curious Case of Neural Text Degeneration.[1]

Meister ושותפיו קושרים את בעיית הניוון לכך שטקסט אנושי שואף לשמור על תוכן מידע הקרוב לאנטרופיה המותנית הצפויה, ולא פשוט למקסם את ההסתברות המקומית של כל טוקן הבא.[2]

חלופה לכך הפכה לדגימה סטוכסטית טהורה (sampling without truncation), שבה טוקן נבחר באקראי בהתאם להסתברותו. אולם שיטה זו יצרה בעיה הפוכה: פונקציית Softmax אינה מקצה לטוקן הסתברות שוות אפס בדיוק, ולכן במילון של עשרות אלפי מילים קיים תמיד אזור נרחב של טוקני רעש. בדגימה טהורה גדל הסיכון ליפול לזנב הלא-אמין של ההתפלגות, מה שעלול לפגוע בקוהרנטיות של הטקסט המיוצר.[1][3] הצורך לשלב בין עושרו של הבחירה הסטוכסטית ובין האמינות של הגבלות דטרמיניסטיות הוביל לפיתוח שיטות של קיצוץ התפלגות, שדגימת הגרעין (Top‑p) היא הדגל שלהן.[1][4]

הסבר פשוט

דגימת Top-p היא דרך להגביל את בחירת הטוקן הבא רק לאפשרויות הסבירות ביותר, מבלי לקבע את מספרן מראש.

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

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

למשל, אם המודל ממשיך את הביטוי «Сегодня на улице шёл сильный…», בין האפשרויות הסבירות ביותר עשויות להיות «дождь» (0.45), «ливень» (0.25), «снег» (0.15) ו-«ветер» (0.10). עם סף p=0.90, האלגוריתם מסכם טוקנים בסדר יורד של הסתברות: 0.45 + 0.25 = 0.70 (פחות מ-0.90), מוסיף «снег»: 0.70 + 0.15 = 0.85 (עדיין פחות מ-0.90), מוסיף «ветер»: 0.85 + 0.10 = 0.95 (הסף חצה). הגרעין נוצר מארבעה טוקנים. כל האפשרויות הנדירות יותר נזרקות, וההסתברויות של הנותרים מנורמלות מחדש: כך ההסתברות של הטוקן «дождь» לאחר הנרמול תהיה 0.45/0.9547.4%, והגנרטור יבחר את הטוקן הבא בדיוק מהתפלגות מעודכנת זו.

ההבדל העיקרי מ-Top‑k הוא שTop‑k תמיד לוקח מספר קבוע של המילים הטובות ביותר (למשל 50), ואילו Top‑p אינו מקבע את מספר האפשרויות מראש: לפעמים אלה יכולות להיות 3 מילים, לפעמים 20 — הכל תלוי בכיצד התחלקו ההסתברויות בדיוק בשלב זה. בזכות כך השיטה מסתגלת להקשר ועוזרת לגדוע את "הזנב" של הטוקנים הפחות סבירים, מה שהופך את הטקסט לטבעי יותר.

דוגמה נוספת. למשל, המודל ממשיך את הביטוי «На завтрак он выпил горячий…». בין ההמשכים הסבירים ביותר עשויים להיות: «чай» (0.50), «кофе» (0.30), «шоколад» (0.08), «бульон» (0.04), «кефир» (0.03). אם הסף p=0.80 נתון, האלגוריתם מתחיל לסכם הסתברויות מלמעלה למטה: 0.50 עבור «чай», לאחר מכן 0.50 + 0.30 = 0.80. הסף כבר הושג, כלומר הגרעין מורכב רק משני טוקנים: «чай» ו-«кофе». כל שאר האפשרויות נזרקות. לאחר נרמול מחדש, הסתברות «чай» בתוך הגרעין הופכת ל-0.50/0.80=62.5%, והסתברות «кофе» — ל-0.30/0.80=37.5%. הטוקן הבא נבחר רק מבין שתי אפשרויות אלו.

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

קונספט

הרעיון המרכזי של Top‑p הוא לבחור בכל שלב את הקבוצה המינימלית של הטוקנים הסבירים ביותר שההסתברות המצטברת שלהם אינה קטנה מהסף הנתון p (הגרעין, באנגלית: nucleus).

פורמלית, תהי x(1),x(2), — טוקני המילון V, ממוינים בסדר יורד של ההסתברות המותנית P(xx1:i1). אז הגרעין V(p) מוגדר כקידומת הקצרה ביותר של רצף זה הממוין שמסתה המצטברת מגיעה לסף:

m=min{n:j=1nP(x(j)x1:i1)p},V(p)={x(1),,x(m)}.

במילים אחרות, זוהי הקבוצה הקטנה ביותר מבחינת הכלה של הטוקנים הסבירים ביותר שהסכום הכולל של הסתברויותיהם אינו קטן מ-p.[1]

לאחר קביעת הגרעין, ההסתברויות של טוקנים מחוץ ל-V(p) מאופסות, ואילו בתוך הגרעין הן מנורמלות מחדש (מחולקות במסה המצטברת בפועל p=xV(p)P(xx1:i1), כך שהסכום נעשה שווה ל-1). הטוקן הבא נדגם מהתפלגות קצוצה ומנורמלת זו.

הסתגלות דינמית

  • בהתפלגות "חדה" (המודל בטוח), הגרעין קטן: כמה טוקנים כבר נותנים מסה ≥ p, מה שמגביר את הקוהרנטיות. במקרה הקיצוני, אם ההסתברות של הטוקן הסביר ביותר כבר עולה על p (למשל, P(x(1))=0.96 עם p=0.95), הגרעין מצטמצם לטוקן יחיד ו-Top‑p הופך בפועל לפענוח חמדן (greedy search).
  • בהתפלגות "שטוחה" (הרבה המשכים סבירים), הגרעין גדול: הבחירה מתרחבת, גדל הגיוון.[1]

השוואה עם שיטות פענוח אחרות

Top‑p לעומת Top‑k

  • Top‑k תמיד בוחר ממספר קבוע k של הטוקנים הסבירים ביותר. בהתפלגויות "חדות" זה עלול להוסיף אפשרויות מיותרות בעלות הסתברות נמוכה "לצורך הכמות", ואילו בהתפלגויות "שטוחות" — להיפך, לגדוע המשכים סבירים שלא נכנסו ל-top‑k.
  • Top‑p מתאים את גודל קבוצת המועמדים לפי נתוני השלב, מה שהופך את ההתנהגות לגמישה ויציבה יותר על פני סוגים שונים של התפלגויות.[1]
  • בפועל, Top‑k ו-Top‑p יכולים לשמש בו-זמנית. במקרה זה, תחילה נבחרים top‑k הטוקנים, ואז בתוך קבוצה מוגבלת זו מחפשים גרעין עם סף p. הסדר המדויק והמוטיבציה תלויים במימוש, אך שילוב כזה מתועד כשיטה נפוצה.[5]

פשוט יותר, Top-k מחליט מראש כמה אפשרויות להשאיר, ואילו Top-p מסתכל על המצב ומשאיר כמה שצריך בהקשר הנוכחי. לכן Top-p בדרך כלל גמיש יותר, ו-Top-k — פשוט וצפוי יותר.

Top‑p לעומת טמפרטורה

  • טמפרטורה (temperature) משנה את כל צורת ההתפלגות (הופכת אותה לחדה יותר או חלקה יותר), אך אינה קוצצת טוקנים: אפילו אפשרויות בעלות הסתברות נמוכה שומרות על סיכוי שאינו אפס.[5]
  • Top‑p מכניס קיצוץ קשיח של הזנב של ההתפלגות — טוקנים בעלי הסתברות נמוכה נשללים לחלוטין מהדגימה, מה שעוזר למנוע המשכים בלתי הולמים בעליל.[1]
  • סדר היישום. ב-pipeline-ים סטנדרטיים (למשל ב-Hugging Face Transformers), תחילה מוחלת הטמפרטורה על ה-logit-ים (משתנה צורת ההתפלגות), לאחר מכן עשוי להיות מוחל Top‑k, ורק לאחר מכן Top‑p (קיצוץ הזנב). זה מסביר מדוע ה"השפעה הכפולה" קשה לשליטה: שינוי הטמפרטורה משנה את המסה המצטברת עצמה שאיתה עובד Top‑p לאחר מכן.[5]

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

סדר הפעולות במימוש Hugging Face Transformers

סדר יישום מעבדי ה-sampling תלוי בספרייה הספציפית. ב-Hugging Face Transformers (החל מ-v4.x), עבור שלישיית הפרמטרים הנדונה, מעבדי ה-logit מתווספים כברירת מחדל בסדר הבא:[5][6]

  1. שינוי קנה-מידה של ה-logit-ים על ידי טמפרטורה. ה-logit של כל טוקן מחולק בערך הטמפרטורה לפני חישוב הפונקציה האקספוננציאלית של Softmax. הטמפרטורה משנה את צורת ההתפלגות, ומכינה אותה לסינון הבא.
  2. מסנן Top‑k (אם מוגדר): קוצץ את המילון למספר קבוע של מועמדים.
  3. מסנן Top‑p: קיצוץ מצטבר מוחל על אגם הטוקנים שכבר צומצם.
  4. נרמול מחדש של ההסתברויות הנותרות ודגימה סטוכסטית.

בפועל, שילוב של טמפרטורה בינונית (0.7) עם גרעין Top‑p רחב (0.95) ומגבלת Top‑k (50) הוא נפוץ: הטמפרטורה מספקת שונות בסיסית, Top‑k עובד כבטיחות גס, ו-Top‑p מבצע כוונון עדין תלוי-הקשר.[5]

פשוט יותר, המודל תחילה הופך את הבחירה לפחות או יותר "חופשית" באמצעות הטמפרטורה, לאחר מכן במידת הצורך מגביל את מספר המועמדים דרך Top-k, ואז מסיר אפשרויות חלשות מדי דרך Top-p. סדר זה עוזר תחילה לכוון את אופי הבחירה הכללי, ואז לגדוע את המיותר.

המלצה: כיוון פרמטר אחד בכל פעם

ספקי מודלים ממליצים, בעת כיוון סגנון הגנרציה, לשנות או temperature, או top_p, אך לא את שניהם בו-זמנית. המלצה זו מופיעה בתיעוד הרשמי של OpenAI, Azure OpenAI ו-Anthropic.[7][8][9]

ההנמקה המעשית: שני הפרמטרים משפיעים על צורת ההתפלגות ההסתברותית (הטמפרטורה משנה את תלילות העקומה, ו-Top‑p קובע את נקודת הגזירה), לכן שינויים בו-זמניים שלהם מקשים על אבחון — אי אפשר לקבוע איזה פרמטר בדיוק הוביל לשיפור או הרעה בפלט. בנוסף, בערכים נמוכים קיצוניים של שני הפרמטרים (למשל, Temperature ≈ 0 ו-Top‑p ≈ 0.01), הגרעין בפועל מצטמצם לטוקן אחד, ובכך הופך בפועל את הדגימה לחיפוש חמדן.[7]

מספר מודלי reasoning מגבילים בנוסף את כיוון פרמטרים אלה ברמת ה-API, מה שהופך את שאלת שינויים משולבים שלהם ללא-רלוונטית עבור מודלים כאלה (ראו סעיף "תאימות עם ספריות ו-API").[7]

אמת אצבע הנדסית נפוצה: למשימות הדורשות רבייה גבוהה, — להשתמש בטמפרטורה נמוכה (עד אפס); למשימות יצירתיות — להשאיר את הטמפרטורה ברמה הבסיסית (1.0) ולווסת שונות באמצעות פרמטר Top‑p, או לקבע את Top‑p על 1.0 ולשנות את הטמפרטורה. המלצות ספציפיות עשויות להשתנות אצל ספקים שונים.[7][9]

השפעה על עובדתיות והזיות

בחירת אסטרטגיית הפענוח עשויה להשפיע לא רק על הסגנוניות של הטקסט המיוצר, אלא גם על תדירות וסוג השגיאות העובדתיות. תופעת ההזיות — גנרציה בטוחה-מדי של מידע שגוי או סותר הקשר — היא אחת מבעיות המרכזיות של AI גנרטיבי. מחקרים אמפיריים מראים שהשפעת אסטרטגיות דגימה על הזיות תלויה במשימה, במודל ובהגדרות הפרמטרים הספציפיות.[3][10]

מנגנון היווצרות שגיאות בדגימה סטוכסטית

בערכים גבוהים של Top‑p (למשל 0.95), המודל יוצר גרעין המכסה 95% מהמסה ההסתברותית. במצבי אנטרופיה גבוהה (למשל בניסיון לענות על עובדה פחות מוכרת) גרעין זה עשוי לכלול מאות טוקנים בעלי הסתברות נמוכה. דגימה סטוכסטית בתנאים כאלה עלולה לשלוף טוקן שהוא נכון דקדוקית אך אינו קשור מבחינה סמנטית לאמת העובדתית. ברגע שהוא נמצא בהקשר, טוקן כזה עשוי להשפיע על שלבי הגנרציה הבאים, מכיוון שהמודל ממשיך בגנרציה תוך התחשבות בכל הטוקנים הקודמים, כולל הטעויות.[3][1]

דיכוטומיה של משימות פתוחות וסגורות

ניסויים בקנה מידה גדול חושפים תלות בין איכות הגנרציה לסוג המשימה. במשימות כתיבת חיבורים או מערכות שיח, שיטות סטוכסטיות (Top‑p, Temperature) נשארות מובילות, ואילו בדומיינים נוקשה-דטרמיניסטיים הן עשויות לפגר משמעותית אחרי גישות דטרמיניסטיות.[10]

ב-benchmark-ים של סינתזת קוד תוכנה (HumanEval, MBPP) ופתרון בעיות מתמטיות (GSM8K), שיטות דטרמיניסטיות (Beam Search, Greedy Decoding) מציגות תוצאות טובות יותר בהשוואה לגישות המבוססות על Top‑p. ה-dataset GSM8K, הכולל 8,500 בעיות מתמטיות הדורשות 2 עד 8 שלבי חישוב, ממחיש את פגיעות הבחירה הסטוכסטית במשימות כאלה: הזרקת אקראיות דרך ההתפלגות הקצוצה של Top‑p עלולה לשבש את שרשרת ההיסקים של המודל (Chain‑of‑Thought) בכל אחד מהשלבים הביניים. Tan ושותפיו מדגישים שהיעילות של שיטת הפענוח תלויה מאוד במשימה הספציפית (task‑dependent).[10]

שיטות מלחמה בהזיות ברמת הפענוח

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

  • פענוח ניגודי (Contrastive Decoding, DoLa) — מייטב את הפער בסבירות הלוגריתמית בין המודל הראשי למודל עזר קטן יותר, תוך שהוא ממלא תפקיד של מסנן אמינות.[10]
  • SH2 (Self‑Highlighted Hesitation) — מאלץ באופן מלאכותי את ה-decoder ל"היסוס" בעת עבודה עם טוקנים בעלי ביטחון נמוך.[11]
  • הטלת הפעלות מכוונת (SEA) — מדכאת אותות הזיות ברמת הייצוגים הווקטוריים.[11]

במקביל, מודלים מודרניים בעלי יישור איכותי (alignment) מחזיקים בהבנה עמוקה יותר של עובדתיות, מה שמפחית את האנטרופיה של ההתפלגויות הפנימיות שלהם והופך אותם לפחות חשופים לדגרדציה של עובדות אפילו בערכים גבוהים של Top‑p.[10][12]

שימוש מעשי והמלצות

Top‑p נמצא בשימוש נרחב ב-LLM מודרניים הודות לשילוב של גמישות ושליטה.

  • טווח ערכים טיפוסי. בפועל נפוץ לשימוש p0.900.95. ערך ברירת המחדל שונה אצל ספקים: ב-OpenAI `top_p` = 1.0 (קיצוץ כבוי בפועל), ב-Anthropic — 0.99, אצל מודלי Google Gemini רבים — 0.95.[13] בספריית Hugging Face Transformers ברירת המחדל של המסגרת גם היא 1.0, אם כי מודלים ספציפיים עשויים לדרוס אותה ב-`generation_config.json` שלהם.[14] כך, 0.9–0.95 הוא טווח מעשי מומלץ נפוץ, אך אינו תקן אוניברסלי כברירת מחדל.[5][15]
    • ערכים הקרובים ל-1.0 (למשל, 0.98–0.99) מגבירים גיוון: יותר טוקנים נכנסים לגרעין.
    • ערכים קטנים (למשל, 0.80–0.90) מגבירים דטרמיניזם ו"ריסון" הפלט.
    • עם p=1, הקיצוץ של Top‑p נעלם: הבחירה נעשית על פני כל המילון (בהתחשב בטמפרטורה ומסנני פענוח אחרים, אם הם מופעלים).[5]
  • תאימות עם ספריות ו-API.
    • ב-Hugging Face Transformers ממומש TopPLogitsWarper, שם נעשה שימוש נוסף בסף `min_tokens_to_keep` (כברירת מחדל 1). זהו פרט הגנתי של המימוש: בערכים סטנדרטיים p(0,1], גרעין ריק כך או כך אינו נוצר מהגדרה, אולם הפרמטר מבטיח פעולה תקינה במקרי קצה.[16]
    • בחלק מה-API-ים הפרמטר `top_p` זמין, ואילו `top_k` עשוי להיעדר; תמיכה בפרמטרים והסמנטיקה שלהם תלויות במודל הספציפי ובמצב הפעולה. מודלי reasoning בדרך כלל מגבילים את הגדרת הסטוכסטיקה ברמת ה-API. לדוגמה, בתיעוד העדכני של OpenAI, הפרמטרים `temperature` ו-`top_p` נתמכים במפורש רק ב-GPT‑5.2 עם `reasoning.effort = none`; בקשות ל-GPT‑5.2 או GPT‑5.1 עם ערכי `reasoning` אחרים, וכן למודלי GPT‑5 ישנים יותר (`gpt‑5`, `gpt‑5‑mini`, `gpt‑5‑nano`) בעת העברת שדות אלה גורמות לשגיאה. מודלי reasoning מהדורות קודמות (o1, o3) גם הם מגבילים או קובעים אותם.[7][17][18] אצל Anthropic ב-Claude API בעת הפעלת חשיבה מורחבת (extended thinking) שינוי `temperature` ו-`top_k` אסור, אולם `top_p` מותר בטווח 0.95–1.0; בפלטפורמות של צד שלישי (למשל Amazon Bedrock) ההגבלות עשויות להיות שונות.[19] הגבלות ספקים משתנות לעיתים קרובות מגרסה לגרסה; מומלץ לבדוק בתיעוד העדכני.[8][20]
  • טקסטים ארוכים וחזרתיות. בסדרת ניסויים הוצג כי nucleus sampling מפחית נטייה לניוון (חזרות, ביטויי קלישאה) בהשוואה ל-greedy/beam ול-Top‑k הקבוע, במיוחד ברצפים ארוכים.[1][10]

חלופות מודרניות

לאחר פרסום nucleus sampling בשנת 2019, הוצעו מספר שיטות חלופיות של פענוח סטוכסטי, המפתחות או משלימות את הרעיון של Top‑p:

דגימת Min‑p

דגימת Min‑p (Nguyen et al., 2024) משאירה טוקנים שהסתברותם אינה נמוכה מ-pmin×P(x(1)), כלומר קובעת סף יחסי לטוקן הסביר ביותר. התקבלה להרצאה בעל-פה ב-ICLR 2025; ממומשת במספר frameworks פופולריים, כולל Hugging Face Transformers[21] ו-vLLM[22].[23]

ההבדל המרכזי מ-Top‑p נעוץ בסוג הסף: Top‑p משתמש בסף מוחלט המבוסס על סכום ההסתברויות המצטבר, ואילו Min‑p קובע סף יחסי, הניתן לקנה מידה מהסתברות הטוקן הסביר ביותר.[23]

מתמטית, האלגוריתם פועל כך: בכל שלב נקבעת ההסתברות המרבית Pmax=P(x(1)x1:i1), ואז מחושב הסף המוגדל Pthreshold=pmin×Pmax. לאגם הסופי נכנסים רק טוקנים שהסתברותם האישית עולה על סף זה.[24]

זה מבטיח הסתגלות: אם המודל בטוח במילה הבאה (Pmax=0.9), עם בסיסי pmin=0.1 הסף יהיה 0.09, גוזם בחדות טוקני רעש. אם המודל אינו בטוח (Pmax=0.1), הסף יורד ל-0.01, ומאפשר גיוון רחב של מועמדים לגרעין.[23]

חולשה ידועה של Top‑p מתגלה בדגימה בטמפרטורה גבוהה (T>1.0): כאשר ההתפלגות מושטחת באופן מלאכותי, Top‑p נאלץ לכלול בגרעין כמות גדולה של טוקנים בעלי הסתברות נמוכה כדי להגיע לסכום המצטבר הנדרש, מה שעלול להוביל לדגרדציה של הקוהרנטיות.[23] Min‑p מתמודד טוב יותר עם תנאים כאלה. בניסויי המחברים על benchmark-ים של ידע מדעי ולוגי (GPQA) עם מודל Mistral Large בטמפרטורה קיצונית T=3.0, אלגוריתם Min‑p הציג דיוק של 13.84%, ואילו Top‑p סטנדרטי 0.9 נתן תוצאה של 0.89% — ברמת רעש אקראי.[24]

במקביל, בזירה האקדמית מתנהל דיון: עבודות ביקורתיות מסוימות (למשל arXiv:2506.13681) מטילות ספק באוניברסליות יתרונות Min‑p על פני כל מדדי NLP, וממציינות צורך בחקר נוסף.[25]

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

Locally typical sampling

Locally typical sampling (Meister ושותפיו, 2023) בוחרת טוקנים שעומס המידע שלהם (logP) קרוב לאנטרופיה המותנית, תוך הסתמכות על מושג האופייניות מתורת המידע.[2]

בשונה מ-Top‑p, השואף למזער את גודל הגרעין על ידי בחירת הטוקנים בעלי ההסתברות המרבית, Locally Typical Sampling פותר בעיית אופטימיזציה המבוססת על מדד מרחק מידע. האלגוריתם מחשב את תוכן המידע של כל טוקן (logP(x)) ומודד את המרחק המוחלט שלו מהאנטרופיה המותנית H של המודל. הטוקנים מדורגים לא לפי הסתברות גולמית, אלא לפי מידת "האופייניות המידעית" שלהם — קרבתם לתוכן המידע הצפוי של ההקשר. טוקנים מתווספים לגרעין (בסדר עולה של מרחק לאנטרופיה) עד השגת סף ההסתברות המצטברת.[2][26]

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

Tail Free Sampling (TFS)

Tail Free Sampling (TFS) — גישה פחות פורמלית אך מעניינת מבחינה מעשית לזיהוי הזנב הרועשני, המבוססת על ניתוח דיפרנציאלי של מרחב ההסתברות. אם Top‑p ו-Min‑p פועלים בהסתברויות מסדר ראשון (סכום מצטבר וחלקים בסיסיים), TFS מנתח את הנגזרת הראשונה והשנייה של עקומת ההסתברויות הממוינת. השיטה מתוארת בבלוג של Trenton Bricken וממומשת במספר מנועי inference, אם כי לא פורסמה כמאמר בשיפוט עמיתים.[27]

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

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

p‑less sampling

p‑less sampling — שיטה המשחררת לחלוטין את המהנדס מהצורך לכוון היפר-פרמטרים של קיצוץ.[28] הבעיה הבסיסית של כל השיטות הקודמות — מ-Top‑k ו-Top‑p ועד Min‑p — נעוצה בתלות בהיפר-פרמטרים סטטיים, שערכיהם דורשים כיוון מומחה ועשויים להיות אופטימליים למשימה אחת (כתיבה יצירתית) אך גרועים לאחרת (תכנות).[29]

האלגוריתם p‑less, המושרש בתורת המידע, יוצר באופן דינמי סף קיצוץ ייחודי בכל שלב פענוח, תוך ניתוח הטופולוגיה הפנימית של כל ההתפלגות ההסתברותית בזמן אמת. המחברים מדווחים על עמידות השיטה בפני תנודות טמפרטורה (temperature robustness): עם עלייה בטמפרטורה, שיטות מסורתיות עלולות לדרדר משמעותית, ואילו p‑less שומרת על יציבות האיכות. בנוסף, הודות לנטישת הלוגיקה של סריקה מצטברת ונרמול מחדש של גרעינים גדולים, השיטה, לפי נתוני המחברים, מספקת יעילות חישובית גבוהה יותר בשלב ה-inference ומייצרת תשובות קומפקטיות יותר ללא אובדן דיוק על dataset-ים של מתמטיקה, לוגיקה וכתיבה יצירתית.[29][28]

η‑דגימה

η‑דגימה (Hewitt et al., 2022) משתמשת בסף הסתברות תלוי-אנטרופיה, ומסתגלת להקשרים בעלי אנטרופיה נמוכה שבהם Top‑p עלול לקצץ יתר על המידה.[30]

ספרות

  • Holtzman, A., Buys, J., Du, L., Forbes, M., & Choi, Y. (2019; פורסם ב-ICLR 2020). The Curious Case of Neural Text Degeneration. arXiv:1904.09751.
  • Fan, A., Lewis, M., & Dauphin, Y. (2018). Hierarchical Neural Story Generation. arXiv:1805.04833.
  • Meister, C., Pimentel, T., Wiher, G., & Cotterell, R. (2023). Locally Typical Sampling. arXiv:2202.00666.
  • Ravfogel, S., Goldberg, Y., & Goldberger, J. (2023). Conformal Nucleus Sampling. ACL Findings 2023.
  • Tan, Q. et al. (2024). A Thorough Examination of Decoding Methods in the Era of LLMs. arXiv:2402.06925.
  • Finlayson, M. et al. (2024). Closing the Curious Case of Neural Text Degeneration. arXiv:2310.01693.
  • Chen, S. J. et al. (2025). Decoding Game: On Minimax Optimality of Heuristic Text Generation Strategies. arXiv:2410.03968.
  • Nguyen, M. et al. (2024). Turning Up the Heat: Min-p Sampling for Creative and Coherent LLM Outputs. arXiv:2407.01082.
  • Sen, J. et al. (2025). Advancing Decoding Strategies: Enhancements in Locally Typical Sampling for LLMs. arXiv:2506.05387.
  • Bricken, T. Tail Free Sampling. [32].
  • p‑less Sampling: A Robust Hyperparameter-Free Approach for LLM Decoding. arXiv:2509.23234.

הערות

  1. 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 Holtzman, A., Buys, J., Du, L., Forbes, M., & Choi, Y. (2019). The Curious Case of Neural Text Degeneration. arXiv:1904.09751. [1]
  2. 2.0 2.1 2.2 Meister, C., Pimentel, T., Wiher, G., & Cotterell, R. (2023). Locally Typical Sampling. TACL, Vol. 11. arXiv:2202.00666. [2]
  3. 3.0 3.1 3.2 Large Language Models Hallucination: A Comprehensive Survey. arXiv:2510.06265. [3]
  4. Finlayson, M. et al. (2024). Closing the Curious Case of Neural Text Degeneration. arXiv:2310.01693. [4]
  5. 5.0 5.1 5.2 5.3 5.4 5.5 5.6 Hugging Face Transformers. Generation strategies (top‑k, top‑p, temperature). [5]
  6. Hugging Face Transformers. generation/utils.py (исходный код). [6]
  7. 7.0 7.1 7.2 7.3 7.4 OpenAI API Reference. top_p — рекомендация «We generally recommend altering this or temperature but not both». [7]
  8. 8.0 8.1 Microsoft Learn (Azure OpenAI). Text/Chat Completions — parameters. [8]
  9. 9.0 9.1 Anthropic API Reference. Messages API — top_p. [9]
  10. 10.0 10.1 10.2 10.3 10.4 10.5 Tan, Q. et al. (2024). A Thorough Examination of Decoding Methods in the Era of LLMs. arXiv:2402.06925. [10]
  11. 11.0 11.1 From Illusion to Insight: A Taxonomic Survey of Hallucination Mitigation Techniques in LLMs. MDPI. [11]
  12. Survey and analysis of hallucinations in large language models: attribution to prompting strategies or model behavior. Frontiers in AI. [12]
  13. Anthropic. API release notes. [13]
  14. Hugging Face. GenerationConfig (top_p default). [14]
  15. Google AI / Vertex AI. Content generation parameters (topP/topK). [15] [16]
  16. Transformers API. TopPLogitsWarper (параметры и поведение, включая `min_tokens_to_keep`). [17]
  17. OpenAI API. Using reasoning models — parameter support. [18]
  18. OpenAI API. Using GPT-5.2. [19]
  19. Anthropic. Building with extended thinking. [20]
  20. Microsoft Learn (Azure AI Foundry). Reasoning models — supported parameters. [21]
  21. Hugging Face Transformers. MinPLogitsWarper. [22]
  22. vLLM. Sampling Parameters — min_p. [23]
  23. 23.0 23.1 23.2 23.3 Nguyen, M. et al. (2024). Turning Up the Heat: Min-p Sampling for Creative and Coherent LLM Outputs. arXiv:2407.01082. [24]
  24. 24.0 24.1 Nguyen, M. et al. Turning Up the Heat: Min-p Sampling for Creative and Coherent LLM Outputs. [25]
  25. Turning Down the Heat: A Critical Analysis of Min-p Sampling in Language Models. arXiv:2506.13681. [26]
  26. 26.0 26.1 Locally Typical Sampling. Transactions of the ACL, MIT Press. [27]
  27. 27.0 27.1 27.2 Bricken, T. Tail Free Sampling. [28]
  28. 28.0 28.1 p‑less Sampling: A Robust Hyperparameter-Free Approach for LLM Decoding. OpenReview. [29]
  29. 29.0 29.1 p‑less Sampling: A Robust Hyperparameter-Free Approach for LLM Decoding. arXiv:2509.23234. [30]
  30. Hewitt, J., Manning, C. D., & Liang, P. (2022). Truncation Sampling as Language Model Desmoothing. Findings of EMNLP 2022. arXiv:2210.15191. [31]

ראו גם

  • טמפרטורה
  • מודלי שפה גדולים