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