הערכת התוצאות

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

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

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

תרשים עם נקודות נתונים אקראיות
איור 2: תצוגה מציאותית יותר של נתונים

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

תרשים זרימה חזותי של תהליך האימות
אפשר ללחוץ כאן כדי להציג גרסה גדולה יותר של התרשים הזה.

שלב 1: הערכת האיכות של הקיבוץ

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

לאחר מכן, כדאי לבדוק את המדדים הנפוצים הבאים (זוהי רשימה חלקית בלבד):

  • עוצמה (cardinality) של אשכול
  • עוצמת האשכול
  • ביצועים ב-downstream

עוצמה (cardinality) של אשכול

עוצמה (cardinality) של אשכול היא מספר הדוגמאות בכל אשכול. מציירים את עוצמת הקבוצה (cardinality) של כל האשכולות ובודקים אשכולות שהם חריגים במיוחד. באיור 2, זהו האשכולות 5.

תרשים עמודות שבו מוצגת העוצמה של כמה אשכולות. אשכול 5 קטן יותר מהשאר.
איור 2: עוצמה של כמה אשכולות.

עוצמת האשכול

עוצמת האשכולות היא סכום המרחקים מכל הדוגמאות באשכולות למרכז האשכולות. הצגת עוצמת האשכולות של כל האשכולות ובדיקה של ערכים חריגים. באיור 3, אשכול 0 הוא חריג.

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

תרשים עמודות שבו מוצגת עוצמת כמה אשכולות. אשכול 0 גדול בהרבה מהאשכולות האחרים.
איור 3: עוצמת כמה אשכולות.

עוצמה לעומת עוצמה (cardinality)

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

תרשים פיזור שבו מוצגים עוצמת הקבוצה לעומת עוצמת המאפיין בכמה אשכולות. אשכולות אחדים הם חריגים בתרשים.
איור 4: עוצמה (cardinality) לעומת עוצמה (magnitude) של האשכולות שמוצגים למעלה.

ביצועים ב-downstream

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

שלב 2: בודקים מחדש את מדד הדמיון

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

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

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

שלב 3: חיפוש המספר האופטימלי של אשכולות

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

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

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

שאלות בנושא פתרון בעיות

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

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