מדוע ולידציה של מערך נתונים LLM נשברת בהיקף
במדגם של אלף דוגמאות, אי-התאמות בתיוג כמעט אינן נראות: מנקים אותן ידנית ורואים בהן רעש אקראי. בהיקף של מאות אלפים התמונה משתנה — עשרות מתייגים מפרשים את ההוראה באופן שונה, ואותה שאלה מקבלת פעם תשובה מפורטת, פעם תשובה של מילה אחת, פעם סירוב. פער של 5-8% בתיוג בין מתייגים לא צף בדוח, אבל דווקא הוא קובע את התקרה שמעליה המודל המכוונן לא עולה.
השכבה השנייה של הבעיה — כפילויות ודליפות. ניסוחים דומים של אותה שאלה נופלים גם למדגם האימון וגם למדגם הבקרה, והמדדים בבדיקה מראים עלייה שלא קיימת בבקשות אמיתיות.
כל עוד המדגם עובר דה-דופליקציה לפי התאמה מדויקת, חזרות סמנטיות נשארות בלתי מזוהות: פרפרזה של שתיים-שלוש מילים עוברת את המסנן ומכפילה את משקל הנושא באימון.
רעש במדגם האימון ושגיאות תיוג במערך הנתונים מסוכנים בכך שהם מתרחבים עם המודל, ולא נבלעים בו. הצוות מבזבז שבועות על חיפוש מתכוני אימון ותיקון פרומפטים, בעוד צוואר הבקבוק של הכנת הנתונים נמצא מוקדם יותר — במדגם עצמו.
ולידציה של מערך נתונים LLM נדרשת לא כניקוי חד-פעמי לפני הרצה, אלא כבקרה שוטפת: כללים לעקביות תיוג, ספים לאי-התאמה בין מתייגים, בדיקת חפיפות בין מדגמים.
נפרק איך זה נסגר: אילו בדיקות מוצבות בכניסה, איך מתייגים מקרים שנויים במחלוקת ומה מראה אי-התאמה לפני ואחרי ניקוי.
מה מתקנים לפני אימון: כפילויות, רעש, תיוג, דליפות
לפני כיוונון עדין, מערך הנתונים עובר בדיקה לפי מחלקות פגמים, וכל אחת מהן המודל לומד יחד עם האות המועיל. תיקון זה הזול ביותר על הנתונים: אחרי הרצת האימון, עלות התיקון עולה יחד עם היקף התיוג. להלן מה בדיוק אנחנו בודקים ובמה מודדים תוצאה.
- כפילויות וכמעט-כפילויות. חזרות מדויקות וזוגות מנוסחים מחדש מאתרים לפי חפיפת n-גרמים עם סף קרבה מתכוונן. חלק האימון אחרי ניקוי קצר ב-15–40% בלי לאבד משמעות — המודל מפסיק להעריך יתר על המידה ניסוחים שכיחים.
- רעש ואשפה. קטעי זיהוי קטועים, הכנסות שירות, תווים פגומים ודוגמאות לא רלוונטיות מסננים בכללים ובסטטיסטיקה לפי אורך. שיעור האשפה יורד מתחת ל-1%: הקיבולת של המודל לא מתבזבזת על שינון ארטיפקטים.
- עקביות תיוג. אותה דוגמה אצל מתייגים שונים מקבלת תוויות שונות. מחשבים את שיעור אי-ההתאמות על תת-מדגם בקרה, מקרים שנויים במחלוקת נדונים וקובעים כלל בהוראה, ותוויות חשודות מדורגות על ידי Cleanlab. אי-התאמות מתחת ל-5% אומרות שגבול המחלקות מתויג באופן אחיד.
- דליפה בין מדגמים. דוגמאות דומות נופלות גם לאימון וגם לבדיקה, ולכן המדדים על החלק המוחזק מנופחים. מקבצים דוגמאות קשורות לפי מקור ומסמך ומחלקים לפי קבוצות — שיעור החפיפות אפס, וההערכה הוגנת.
- חוסר איזון בין מחלקות. מחלקה נדירה טובעת בשכיחה: מחשבים מחדש משקלים בפונקציית ההפסד, בוחרים דוגמאות לפי שכבות במקום סינתטיקה. עקומת האיכות על המחלקה הנדירה יוצאת מהרעש.
מצבי ניקוי: כללים, תיוג על ידי מודל, בדיקה ידנית
אף מצב ניקוי לא עובד לבדו. כללי סינון זולים, ניתנים לשחזור וצפויים, אבל עיוורים למשמעות: הם לא יבחינו בין תשובה קוהרנטית לבין צירוף סביר של ביטויים. מודל שופט תופס פגם סמנטי — סתירות, אי-עמידה בהוראה, ניסוחים מזיקים — אבל יורש הטיות של מודל הבסיס ודורש כיול על תקן. את בחירת המצב קובעים שני דברים: היקף הקורפוס ועלות הטעות בפלט.
לכן משווים גישות לפי שלושה צירים: מה בדיוק תופס, באיזה היקף מחזיר את ההשקעה, מה דורש מהצוות. לפי הטבלה שלמטה בוחרים מצב בודד או מרכיבים מפל.
| אפשרות | מתי מתאימה | מגבלות |
|---|---|---|
| כללי סינון | קורפוסים גדולים, פגם גס: כפילויות, קטעים קטועים, תיוג פגום, מקטעים אסורים | לא רואה אשפה סמנטית ודליפות; יש לתחזק כללים בעת החלפת מקור |
| מודל שופט | קריטריון סמנטי: קוהרנטיות, עמידה בהוראה, רעילות, התאמה נושאית | הטיות של מודל הבסיס, סחף רובריקה; נדרשים כיול ובקרת חזרתיות |
| בדיקה ידנית של מדגם | כיול סף, תיוג תקן, ניתוח קבוצות דוגמאות שנויות במחלוקת | לא מתרחב לכל הקורפוס; דורש הוראות למתייגים ומדידת הסכמה |
| מפל של כללים, מודל ובדיקה ידנית | קורפוסים מעורבים עם דרישות גבוהות לניקיון | קשה יותר לשחזור: כללים, רובריקה וספים מנוהלים בגרסאות יחד |
בנפרד מכיילים את סף חיתוך הדוגמאות: הוא תמיד מאזן בין כיסוי לדיוק. סף נמוך משאיר רעש וסתירות, שהמודל לומד אחר כך כנורמה; סף גבוה חותך דוגמאות נדירות אך תקפות — דיאלוגים ארוכים, לקסיקה נדירה, ניסוחים לא שגרתיים.
את הסף בוחרים על מדגם תקן שתויג ידנית, ומקבעים יחד עם גרסת הרובריקה — אחרת הרצה חוזרת נותנת מערך נתונים אחר והשחזוריות אבודה.
שלבי ביקורת וניקוי מערך נתונים: מספירת מלאי ועד מסירה
ביקורת נתונים אינה ניקוי חד-פעמי של קובץ, אלא רצף שבו כל שלב נשען על תוצאת השלב הקודם. הסדר חשוב: בלי ספירת מלאי, פרופיילינג סופר כפילויות כרשומות נפרדות, ובלי תוכנית ניקוי, סינון חותך מחלקות נדירות שהמודל דווקא אמור ללמוד.
- ספירת מלאי של מקורות. אוספים את כל הקורפוסים ותוצרי הייצוא, מתעדים מקור, זכויות שימוש, תאריך איסוף וחפיפות בין מקורות — חלק מהרשומות בדרך כלל מופיע פעמיים-שלוש בסטים.
- פרופיילינג של המדגם. מחשבים התפלגויות: אורך רשומות, שפה, שיעור דוגמאות ריקות וחתוכות, פיזור תוויות. העיוות נחשף כאן — לפני שהוא נכנס לאימון.
- סכמת תיוג. מגדירים באופן פורמלי מחלקות יעד, כללי סימון וסדר הכרעה באי-התאמות בין מתייגים, אחרת דוגמאות זהות יקבלו תוויות שונות.
- תוכנית ניקוי. מתארים דה-דופליקציה מדויקת וכמעט-כפילויות, סינון אשפה, נרמול, איזון מחלקות ופיצול למדגמי אימון, ולידציה ומוחזק בלי דליפת נתונים.
- סינון ותיוג מחדש. מריצים כללים, מקרים שנויים במחלוקת נדונים ידנית, מודדים הסכמה בתיוג לפני ואחרי.
- הרצת בקרה. מאמנים על חתכים מנוקים ועל חתכים מקוריים, משווים מדדים על המדגם המוחזק — כך רואים מה בדיוק הניקוי נתן, ולא תחושה.
- מסירה. מוסרים מערך נתונים מנוהל בגרסאות, כרטיס נתונים עם תיאור מגבלות וסקריפטים שמשחזרים את הרכבת החתכים.
ארטיפקטים: סכמות תיוג, כללי סינון, דוחות
ולידציה של מערך נתונים LLM מסתיימת לא בפסק דין "הנתונים מתאימים", אלא בסט ארטיפקטים שלפיהם צוות הלקוח יכול לחזור על הניקוי על חתך חדש בלעדינו. להלן מה נכלל במסירה ולמה נדרש כל מסמך.
- סכמת תיוג: שדות רשומה, סוגי ערכים, חובה, תוויות מותרות וכלל הכרעה בקונפליקטים בין מתייגים.
- הוראות למבצעים: איך לפרש דוגמאות גבול, מה נחשב לפגם, איך לסמן תיוג לא בטוח — אי-ההתאמות בין אנשים יורדות פי כמה.
- כללי סינון נתונים: דה-דופליקציה לפי טקסט מנורמל, ספים לפי אורך ושפה, סינון מקטעים תבניתיים ומייצרי-מכונה, טיפול בנתונים אישיים.
- דוח איכות נתונים: התפלגות לפי מחלקות וסגמנטים, שיעור אי-התאמות בין מתייגים, כיסוי הסט בבדיקות, רשימת חתכים בעייתיים.
- יומן דוגמאות שהוצאו: כל מקטע שנפסל עם סיבה והפניה לכלל — אפשר לערער על ההחלטה ולשקול אותה מחדש, ולא לקבל אותה כאקסיומה.
- קונפיגורציות וסקריפטים לניקוי: הרצה חוזרת על חתך חדש נותנת אותה תוצאה ואותם דוחות.
- נוהל ולידציה חוזרת: לפי אילו מדדים ובאיזו תדירות לבדוק מחדש את הסט אחרי כיוונון עדין.
את הסט מוסרים עם ניתוח: מראים היכן הכללים סותרים את הנתונים בפועל ומה לשנות קודם. בהמשך מחזור הוולידציה מנוהל על ידי צוות הלקוח באופן עצמאי.
מקרה בוחן: כיוונון עדין על נתונים רועשים לפני ואחרי
לפני: מה הראתה הביקורת
הפרויקט — עוזר לקו תמיכה ראשון, שעונה לפי בסיס ידע פנימי. הלקוח הביא ארכיון פניות ורצה לכוונן עליו מודל.
לפני האימון הרצנו ביקורת: מתוך 240 אלף זוגות, כמעט 19% היו כפילויות קרובות עם תיוג שונה, 8% הכילו תשובות סותרות, ועוד 6% איבדו הקשר בייצוא — התשובה הייתה, אבל השאלה שאליה היא מתייחסת לא נשארה בזוג.
אימון על סט כזה נתן חוסר יציבות: שתי הרצות באותה קונפיגורציה נבדלו בשיעור התשובות הנכונות במדגם הבקרה בכמה אחוזים.
אחרי: מה שינינו ומה קיבלנו
דה-דופליקציה חושבה לפי ניסוחים מנורמלים עם סף קרבה, ולא לפי התאמה מדויקת, ולכן פרפרזות של אותה פנייה לא נכנסו למדגם. זוגות מתנגשים הועברו לבוררות, כללי התיוג קובעו בכתב והתיוג בוצע ב-Label Studio — גרסאות ההערות הפכו לשחזוריות. דוגמאות חתוכות הוחזרו מהדיאלוגים המקוריים או הושלכו.
שיעור הכפילויות ירד מ-19% ל-2%, דוגמאות סותרות ירדו מתחת ל-1%, והיקף המדגם הצטמצם בכערבע. שיעור התשובות הנכונות במדגם הבקרה עלה מ-61% ל-79%, והפיזור בין הרצות חוזרות — פחות מאחוז אחד, כלומר התוצאה הפסיקה להיות תלויה בסדר הנתונים.
את מדגם הבקרה קבענו לפני תחילת העבודה ולא השתמשנו בו באימון. זה נותן ללקוח אפשרות להשוות גרסאות מודל זו לזו ולהבין שהעלייה באיכות היא תוצאה של הנתונים, ולא של התאמה למדגם הבדיקה.
מה לעשות אם מדגם האימון כבר נאסף ותויג?
תיוג מחדש מלא הוא אמצעי קיצון, לא צעד ראשון. מעבר חוזר מכפיל את עלות העבודה ומוסיף שכבת רעש חדשה: שני מתייגים מפרשים את ההוראה באופן שונה, והתיוג הקודם מפסיק להיות תקן להשוואת הרצות. לכן קודם כל מודדים — כמה דוגמאות שבורות באמת יש בסט ובאילו חתכים הן נמצאות.
ביקורת חלקית של המדגם נבנית באופן סטרטיפיקציה — לפי מקורות, סוגי משימות ואורך תשובה. בודקים שיעור אי-התאמות בין מתייגים על דוגמאות חופפות, שיעור תשובות חתוכות וריקות, כפילויות, וחפיפה בין חלק הבדיקה לחלק האימון. הפגם בדרך כלל מרוכז בשני-שלושה חתכים, ותיוג מחדש של השאר הוא הוצאה בלי עלייה במדדים.
בהמשך — תיוג השלמה לסגמנטים שנויים במחלוקת: במקום שבו מתייגים חלקו, או שהתשובה נכונה פורמלית אבל סותרת את ההוראה, מדייקים את הכלל ומתייגים מחדש רק את החתך הזה. את שאר המערך לא נוגעים, כדי לשמור על השוואת הרצות ולראות את התרומה של הנתונים שתוקנו דווקא.
שימוש חוזר בהוראות מכסה את עיקר ההיקף: תשובות שכבר תויגו נשארות בסט אם הן לא סותרות את הכללים המעודכנים. בדיקה אוטומטית להתאמה להוראה מוציאה לתיוג ידני משלים רק מקרי גבול — לפי הניסיון שלנו אלו אחוזים בודדים מהמערך.
הסט נעשה מתאים לכיוונון עדין בלי תיוג מחדש מלא, וההחלטות לכל חתך מקובעות בכללים, כדי שאיסוף הנתונים הבא לא יחזור על אותן שגיאות.
מגבלות וספקות נפוצים לגבי איכות נתונים
הניקוי נשען על סטטיסטיקה: כללים נכתבים למקרים המוניים — כפילויות, קטעי תיוג קטועים, תשובות תבניתיות. על מחלקות נדירות אותם מסננים נותנים התראות שווא וחותכים בדיוק את מה שלמענו מכווננים את המודל: טרמינולוגיה צרה, ניסוחים לא טיפוסיים, תרחישי סירוב בודדים.
מחיקה בלי הסגר היא סוג השגיאה היקר ביותר: פגם במערך הנתונים לא נראה, והאות הדרוש כבר לא ניתן להחזיר.
אפקט הניקוי על מדד רועש נמדד לא במספר אחד. מחשבים על מדגם מוחזק סטרטיפיקציה, מחלקות נדירות בודקים בחתכים נפרדים, חוזרים על הרצה על אותו סט ומשווים פיזור. לצד זה שומרים על שיעור הדוגמאות הנדירות שנשמרו והיקף הפסולים.
האם לא נאבד דוגמאות נדירות בכללים נוקשים?
אנחנו מוחקים רק אשפה מובהקת, רשומות שנויות במחלוקת עוברות להסגר עם סיבת הפסילה ונדונות ידנית. לפני ההרצה מקבעים את שיעור המחלקות הנדירות לפי חתכים, אחרי ניקוי משווים — ירידה גבוהה מהמוסכם עוצרת את התהליך.
איך להבין שהניקוי השפיע, אם המדד רועש?
מקבעים מדגם מוחזק, סדר דוגמאות ותנאי הרצה. מסתכלים לא על הציון הכולל, אלא על השינוי לפי חתכים: במקום שהכלל פעל ממוקד, הזזה נראית במספרים קטנים. הבדל בתוך פיזור הרצות חוזרות לא נחשב לאפקט.
נדבר על המשימה: איך מתחילים לעבוד
לפני שלוקחים את כל המערך, צריך להבין איך הוא בנוי. להערכה מספיק תיאור המדגם, הוראות התיוג הפעילות וסט דוגמאות שנויות במחלוקת — זה מספיק כדי לראות מחלקות שגיאה ולנקוב בלוחות זמנים.
- היקף והרכב: שפות, נושאים, איך נאספו הנתונים ואיזה חלק נוצר ביצירה ואיזה הגיע מפניות אמיתיות.
- הוראות תיוג ומדריך למתייגים, כולל מקומות שבהם הפרקטיקה סטתה מהטקסט.
- 30–50 מקטעים שבהם מתייגים לא הסכימו ביניהם או שהתשובה נראית מפוקפקת: מהם רואים היכן נשברת העקביות.
- דרישות המוצר: אילו שגיאות אסורות, מה המודל לא צריך לענות, ואילו תרחישים נחשבים ליעד.
- איך המדגם מתחלק לאימון ולבקרה — כדי לשלול חפיפות ודליפות בין החלקים.
- הרשאות: ייצוא אנונימי או עבודה בצד שלכם, מי מאשר מקרים שנויים במחלוקת.
- קריטריוני קבלה ולוחות זמנים שקריטיים לכם.
לפי הסט הזה מרכיבים תוכנית עבודה לניקוי: דה-דופליקציה ונרמול, מסנני רעילות ונתונים אישיים, תיוג מחדש של מקרים שנויים במחלוקת, הרכבה מחדש של הפיצול לאימון ולבקרה.
הצעד הראשון הוא שלב ניסוי על חתך קטן — הוא מראה אם הכלל עובד על הנתונים שלכם, ולא בתאוריה, והיכן כללי הניקוי מתנגשים זה עם זה. אחריו הערכת לוחות הזמנים נשענת על מדידות, ולא על מספרים ממוצעים. נדבר על המשימה — נחזור עם הערכה ותוכנית.







