מילון מונחים ללמידת מכונה: עקרונות בסיסיים של למידת מכונה

הדף הזה מכיל מונחי מילון מונחים של ML Fundamentals. כאן אפשר למצוא את כל המונחים במילון המונחים.

A

דיוק

#fundamentals

מספר החיזויים הנכונים לסיווג במספר הכולל של החיזויים. כלומר:

$$\text{Accuracy} = \frac{\text{correct predictions}} {\text{correct predictions + incorrect predictions }}$$

לדוגמה, למודל שיצר 40 חיזויים נכונים ו-10 חיזויים שגויים, רמת הדיוק של:

$$\text{Accuracy} = \frac{\text{40}} {\text{40 + 10}} = \text{80%}$$

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

$$\text{Accuracy} = \frac{\text{TP} + \text{TN}} {\text{TP} + \text{TN} + \text{FP} + \text{FN}}$$

איפה:

תוכלו להשוות בין מידת הדיוק לבין הדיוק והזכירה.

פונקציית הפעלה

#fundamentals

פונקציה שמאפשרת לרשתות נוירונים ללמוד על קשרים לא לינאריים (מורכבות) בין תכונות לבין התווית.

פונקציות הפעלה פופולריות כוללות:

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

עלילה קרטזית בת שתי שורות. בשורה הראשונה יש ערך y קבוע של 0, לאורך ציר ה-X מ-infinity,0 עד 0,-0.
          השורה השנייה מתחילה ב-0.0. לקו הזה יש שיפוע של +1, ולכן הוא מתחיל מ-0,0 עד +אינסוף.

תרשים של פונקציית ההפעלה סיגמואיד נראה כך:

תרשים מפותל דו-ממדי עם ערכי x שמקיף את הדומיין
 -מאינסוף עד +חיובי, בעוד שערכים ב-y מתפרסים על הטווח כמעט 0 עד 1. כשה-x הוא 0, y הוא 0.5. שיפוע העקומה תמיד
          חיובי, כאשר השיפוע הגבוה ביותר הוא 0.0.5,והשיפוע יורד בהדרגה
          ככל שהערך המוחלט של x גדל.

לגבי בינה מלאכותית,

#fundamentals

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

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

AUC (אזור מתחת לעקומת ROC)

#fundamentals

מספר בין 0.0 ל-1.0, שמייצג את היכולת של מודל סיווג בינארי להפריד בין מחלקות חיוביות ל-מחלקות שליליות. ככל שה-AUC קרוב יותר ל-1.0, כך טובה יותר היכולת של המודל להפריד בין המחלקות זו לזו.

לדוגמה, האיור הבא מציג מודל מסווג שמפריד בצורה מושלמת בין סיווגים חיוביים (אליפסות ירוקות) לסיווגים שליליים (מלבנים סגולים). למודל הזה, באופן לא מציאותי, יש AUC של 1.0:

קו מספר עם 8 דוגמאות חיוביות בצד אחד
          ו-9 דוגמאות שליליות בצד השני.

לעומת זאת, באיור הבא מוצגות התוצאות של מודל מסווג שיצר תוצאות אקראיות. לדגם זה יש AUC של 0.5:

שורת מספר עם 6 דוגמאות חיוביות ו-6 דוגמאות שליליות.
          הרצף של הדוגמאות הוא חיובי, שלילי,
          חיובי, שלילי, חיובי, שלילי, חיובי, שלילי, חיובי
          שלילי, חיובי, שלילי.

כן, למודל הקודם יש AUC של 0.5, ולא 0.0.

רוב המודלים נמצאים בין שתי האפשרויות הקיצוניות. לדוגמה, המודל הבא מפריד במידה מסוימת בין חיוביים שליליים, ולכן יש לו AUC בין 0.5 ל-1.0:

שורת מספר עם 6 דוגמאות חיוביות ו-6 דוגמאות שליליות.
          הרצף של הדוגמאות הוא שלילי, שלילי, שלילי, שלילי,
 חיובי, שלילי, חיובי, חיובי, שלילי, חיובי, חיובי, חיובי.

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

B

הפצה לאחור

#fundamentals

האלגוריתם שמטמיע ירידה הדרגתית ברשתות נוירונים.

אימון של רשת נוירונים כרוכה בהרבה איטרציות במחזור הדו-שלבי הבא:

  1. במהלך האישור הקדמי, המערכת מעבדת מקבץ של דוגמאות כדי לספק חיזויים. המערכת משווה כל חיזוי לכל ערך תווית. ההבדל בין החיזוי לערך התווית הוא loss בדוגמה הזו. המערכת צוברת את ההפסדים עבור כל הדוגמאות כדי לחשב את סך ההפסדים של הקבוצה הנוכחית.
  2. במהלך ההעברה לאחור (backpagation), המערכת מצמצמת את ההפסד על ידי התאמת המשקולות של כל נוירונים בכל השכבות המוסתרות.

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

קצב הלמידה הוא מכפיל ששולט בדרגה שבה כל העברה לאחור מעלה או מורידה כל משקל. קצב למידה גדול יגדיל או יקטין כל משקל יותר מקצב למידה קטן.

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

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

אצווה

#fundamentals

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

במאמר epoch מוסבר איך חבילה מסוימת קשורה לתקופה.

גודל אצווה

#fundamentals

מספר הדוגמאות באצווה. לדוגמה, אם גודל האצווה הוא 100, המודל מעבד 100 דוגמאות לכל איטרציה.

השיטות הנפוצות הבאות הן גודל אצווה:

  • Stochastic Gradient Descent (SGD), שבו גודל האצווה הוא 1.
  • מלא, שבו גודל האצווה הוא מספר הדוגמאות בכל קבוצת האימון. לדוגמה, אם קבוצת האימון מכילה מיליון דוגמאות, גודל האצווה יהיה מיליון דוגמאות. חבילה מלאה היא בדרך כלל אסטרטגיה לא יעילה.
  • mini-batch, שבו גודל האצווה הוא בדרך כלל בין 10 ל-1,000. מיני-אצווה היא בדרך כלל האסטרטגיה היעילה ביותר.

הטיה (אתיקה/הוגנות)

#fairness
#fundamentals

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

2. שגיאה שיטתית שנובעת מתהליך דגימה או דיווח. דוגמאות להטיה מסוג כזה:

חשוב להבין מה ההבדל בין מונח ההטיה במודלים של למידת מכונה או הטיה של חיזוי.

מונח של הטיה (מתמטיקה) או הטיה

#fundamentals

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

  • b
  • 0

לדוגמה, ההטיה היא b בנוסחה הבאה:

$$y' = b + w_1x_1 + w_2x_2 + … w_nx_n$$

בקו דו-ממדי פשוט, הטיה פירושה "חיתוך בצורת Y". לדוגמה, ההטיה של הקו באיור הבא היא 2.

שרטוט של קו עם שיפוע של 0.5 הטיה (חיתוך y) של 2.

יש הטיה כי לא כל המודלים מתחילים מהמקור (0,0). לדוגמה, נניח שכניסה לפארק שעשועים היא 2 אירו ועוד 0.5 אירו לכל שעה שבה לקוח שוהה. לכן, במודל שממפה את העלות הכוללת יש הטיה של 2, כי העלות הנמוכה ביותר היא 2 אירו.

אין להתבלבל בין הטיה לבין הטיה אתיקה והגינות או הטיה של חיזוי.

סיווג בינארי

#fundamentals

סוג של משימת סיווג שמפיקה חיזוי אחד מתוך שני סיווגים בלעדיים:

לדוגמה, שני המודלים הבאים של למידת מכונה מבצעים סיווג בינארי:

  • מודל שקובע אם הודעות אימייל הן ספאם (הכיתה החיובית) או לא ספאם (הכיתה השלילית).
  • מודל שמעריך תסמינים רפואיים כדי לקבוע אם אדם מסוים חולה במחלה מסוימת (המעמד החיובי) או שהוא לא סובל ממחלה זו (הסיווג השלילי).

בניגוד לסיווג מרובה מחלקות.

כדאי לקרוא גם על רגרסיה לוגיסטית וסף הסיווג.

חלוקה לקטגוריות

#fundamentals

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

לדוגמה, במקום לייצג את הטמפרטורה כתכונה של נקודה צפה רציפה, אפשר לחתוך טווחי טמפרטורות לקטגוריות נפרדות, למשל:

  • <= 10 מעלות צלזיוס תהיה הקטגוריה ה "קרה".
  • 11-24 מעלות צלזיוס תהיה הקטגוריה ה "ממוזגת".
  • >= 25 מעלות צלזיוס תהיה הקטגוריה ה "חמימה".

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

C

נתונים קטגוריים

#fundamentals

לתכונות יש קבוצה ספציפית של ערכים אפשריים. לדוגמה, כדאי להשתמש בתכונה קטגורית בשם traffic-light-state, שיכולה להיות לה רק אחד משלושת הערכים האפשריים הבאים:

  • red
  • yellow
  • green

הצגת traffic-light-state כתכונה קטגורית מאפשרת למודל ללמוד את ההשפעות השונות של red, green ו-yellow על התנהגות הנהגים.

תכונות קטגוריות נקראות לפעמים תכונות נפרדות.

הנתונים מנוגדים לנתונים מספריים.

מחלקה

#fundamentals

קטגוריה שתווית יכולה להשתייך אליה. לדוגמה:

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

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

מודל סיווג

#fundamentals

model שהחיזוי שלו הוא model. לדוגמה, אלה כל המודלים של הסיווג:

  • מודל שחוזה את השפה של משפט הקלט (צרפתית? ספרדית? איטלקית?).
  • מודל שמנבא זני עצים (מייפל? Oak? באובב?).
  • מודל שחוזה את הסיווג החיובי או השלילי למצב רפואי מסוים.

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

יש שני סוגים נפוצים של מודלים לסיווג:

סף סיווג (classification threshold)

#fundamentals

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

מודל רגרסיה לוגיסטי יוצר ערך גולמי בין 0 ל-1. לאחר מכן:

  • אם הערך הגולמי הזה גדול מסף הסיווג, אז הסיווג החיובי צפוי.
  • אם הערך הגולמי הזה נמוך מסף הסיווג, אז צפוי שהסיווג השלילי.

לדוגמה, נניח שסף הסיווג הוא 0.8. אם הערך הגולמי הוא 0.9, המודל חוזה את המחלקה החיובית. אם הערך הגולמי הוא 0.7, המודל חוזה את המחלקה השלילית.

הבחירה של סף הסיווג משפיעה מאוד על מספר התוצאות החיוביות השגויות והתוצאות השליליות השגויות.

מערך נתונים לא מאוזן לכיתה

#fundamentals

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

  • 1,000,000 תוויות שליליות
  • 10 תוויות חיוביות

היחס בין תוויות שליליות לתוויות חיוביות הוא 100,000 ל-1, ולכן זהו מערך נתונים לא מאוזן.

לעומת זאת, במערך הנתונים הבא אין איזון כיתתי כי היחס בין תוויות שליליות לתוויות חיוביות קרוב יחסית ל-1:

  • 517 תוויות שליליות
  • 483 תוויות חיוביות

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

  • 1,000,000 תוויות עם הסיווג 'ירוק'
  • 200 תוויות עם הסיווג 'סגול'
  • 350 תוויות עם הסיווג "כתום"

למידע נוסף, ראו אנטרופיה, סיווג הבכירות וסיווג מיעוט.

חיתוך

#fundamentals

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

  • הפחתת ערכי התכונות שהם גבוהים מסף מקסימלי לסף המקסימלי.
  • הגדלת ערכי תכונות שנמוכים מסף מינימלי עד לאותו סף מינימלי.

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

  • צריך לחתוך את כל הערכים שגדולים מ-60 (הסף המקסימלי) כך שהם יהיו בדיוק 60.
  • צריך לחתוך את כל הערכים מתחת ל-40 (הסף המינימלי) כך שהם יהיו בדיוק 40.

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

חיתוך הדרגתי מאלצת ערכי הדרגתיות בתוך טווח מוגדר במהלך האימון.

מטריצת בלבול

#fundamentals

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

גידול (חיזוי) ללא גידול (חיזוי)
גידול (מהות מקור) 18 (TP) 1 (FN)
ללא טמור (בסיסי) 6 (FP) 452 (TN)

מטריצת הבלבול הקודמת מציגה את הנתונים הבאים:

  • מתוך 19 החיזויים שבהם ground truth היה Tumor, המודל סיווג בצורה נכונה 18 וסווג באופן שגוי 1.
  • מתוך 458 החיזויים שבהם יסודות הבסיס הייתה Non-Tumor, המודל סיווג בצורה נכונה 452 וסווג באופן שגוי 6.

מטריצת הבלבול לבעיות של סיווג מרובה-סיווגים יכולה לעזור לכם לזהות דפוסים של טעויות. לדוגמה, כדאי להשתמש במטריצת הבלבול הבאה למודל סיווג רב-סיווגי בן 3 מחלקות, שמסווג שלושה סוגים שונים של אירוסים (Virginica, Versicolor ו-Setosa). כשהאמת הבסיסית הייתה וירג'יניה, מטריצת הבלבול מראה שיש סבירות גבוהה בהרבה שהמודל יחזה בטעות ורסקולור מאשר סטוסה:

  Setosa (חיזוי) Versicolor (חיזוי) וירג'יניה (לפי התחזית)
Setosa (ground truth) 88 12 0
Versicolor (ground truth) 6 141 7
וירג'יניה (אמת) 2 27 109

דוגמה נוספת: מטריצת בלבול יכולה לחשוף שמודל שמאומן לזהות ספרות בכתב יד נוטה לחזות בטעות את המספר 9 במקום את 4, או לחזות בטעות את המספר 1 במקום את 7.

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

תכונה רציפה

#fundamentals

תכונה מסוג נקודה צפה (floating-point) עם טווח אינסופי של ערכים אפשריים, כמו טמפרטורה או משקל.

הניגוד הוא עם תכונה לא ברורה.

התכנסות

#fundamentals

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

עלילה קרטזית. ציר ה-X הוא אובדן. ציר ה-Y הוא מספר החזרות האימון. האובדן גבוה מאוד במהלך החזרות הראשונות, אבל
          יש ירידה חדה. אחרי כ-100 חזרות, הירידה עדיין
          יורדת, אבל הרבה יותר הדרגתית. אחרי כ-700 חזרות,
          האובדן נשאר ללא שינוי.

המודל מתכנס כשאימון נוסף לא ישפר את המודל.

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

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

D

DataFrame

#fundamentals

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

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

כל עמודה ב-DataFrame בנויה כמו מערך דו-ממדי, אבל ניתן להקצות לכל עמודה סוג נתונים משלה.

תוכלו למצוא גם את דף העזר הרשמי של pandas.DataFrame.

מערך נתונים או מערך נתונים

#fundamentals

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

  • גיליון אלקטרוני, גיליון אלקטרוני, גליון אלקטרוני
  • קובץ בפורמט CSV (ערכים מופרדים בפסיקים)

מודל עמוק

#fundamentals

רשת נוירונים שמכילה יותר משכבה מוסתרת אחת.

מודל עמוק נקרא גם רשת נוירונים עמוקה.

הניגודיות למודל רחב.

ישות צפופה

#fundamentals

תכונה שבה רוב הערכים או כל הערכים אינם אפס. לרוב, מדובר בטנזור של ערכים של נקודות צפה (floating-point). לדוגמה, ה-Tensor הבא, שכולל 10 רכיבים, צפוף כי 9 מהערכים שלו שונים מאפס:

8 3 7 5 2 4 0 4 9 6

הניגודיות היא עם התכונה 'דמוגרפית'.

עומק

#fundamentals

הסכום של הפריטים הבאים ברשת נוירונים:

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

שימו לב ששכבת הקלט לא משפיעה על העומק.

תכונה נפרדת

#fundamentals

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

הניגודיות היא לתכונה רציפה.

דינמי

#fundamentals

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

  • מודל דינמי (או מודל אונליין) הוא מודל שעבר אימון מחדש לעיתים קרובות או באופן רציף.
  • אימון דינמי (או הדרכה אונליין) הוא תהליך של אימון לעיתים קרובות או רציף.
  • הסקת מסקנות דינמית (או הסקת מסקנות אונליין) היא התהליך של יצירת חיזויים על פי דרישה.

מודל דינמי

#fundamentals

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

הניגודיות ל-מודל סטטי.

E

עצירה מוקדמת

#fundamentals

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

שכבת הטמעה

#language
#fundamentals

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

לדוגמה, Google Earth תומך כרגע בכ-73,000 זני עצים. נניח שמיני עצים הם תכונה במודל, ושכבת הקלט של המודל כוללת וקטור אחד לוהט באורך של 73,000 רכיבים. לדוגמה, ייתכן שהייצוג של baobab ייראה כך:

מערך של 73,000 רכיבים. 6,232 הרכיבים הראשונים מכילים את הערך
     0. הרכיב הבא מכיל את הערך 1. 66,767 הרכיבים הסופיים מכילים את הערך אפס.

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

במצבים מסוימים, hashing הוא חלופה סבירה לשכבת הטמעה.

תקופה של זמן מערכת

#fundamentals

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

תקופה של זמן מערכת מייצגת N/גודל אצווה איטרציות, כאשר N מייצג את מספר הדוגמאות הכולל.

לדוגמה, נניח כי:

  • מערך הנתונים כולל 1,000 דוגמאות.
  • גודל האצווה הוא 50 דוגמאות.

לכן, תקופה של זמן מערכת מחייבת 20 איטרציות:

1 epoch = (N/batch size) = (1,000 / 50) = 20 iterations

דוגמה

#fundamentals

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

  • דוגמה מתווית כוללת תכונה אחת או יותר ותווית. דוגמאות לתוויות משמשות במהלך האימון.
  • דוגמה ללא תווית מכילה תכונה אחת או יותר, אבל ללא תווית. דוגמאות ללא תוויות משמשות במהלך הסקת מסקנות.

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

תכונות תווית
טמפרטורה לחות לחץ ציון בחינה
15 47 998 טוב
19 34 1020 מצוינת
18 92 1012 גרועה

הנה שלוש דוגמאות ללא תווית:

טמפרטורה לחות לחץ  
12 62 1014  
21 47 1017  
19 41 1021  

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

F

false negative (FN)

#fundamentals

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

תוצאה חיובית כוזבת (FP)

#fundamentals

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

שיעור חיובי שקרי (FPR)

#fundamentals

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

$$\text{false positive rate} = \frac{\text{false positives}}{\text{false positives} + \text{true negatives}}$$

השיעור החיובי השגוי הוא ציר ה-X בעקומת ROC.

מאפיין

#fundamentals

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

תכונות תווית
טמפרטורה לחות לחץ ציון בחינה
15 47 998 92
19 34 1020 84
18 92 1012 87

הניגודיות ל-label.

צלב תכונות

#fundamentals

תכונה סינתטית שנוצרת על ידי תכונות קטגוריות או קטגוריות 'חוצה'.

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

  • freezing
  • chilly
  • temperate
  • warm

ומייצג את מהירות הרוח באחת משלושת הקטגוריות הבאות:

  • still
  • light
  • windy

ללא הצלבת תכונות, המודל הלינארי מתאמן באופן עצמאי בכל אחת משבע הקטגוריות השונות שקדמו לה. כלומר, המודל מתאמן בעוד freezing, ללא קשר לאימון של, למשל, windy.

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

  • freezing-still
  • freezing-light
  • freezing-windy
  • chilly-still
  • chilly-light
  • chilly-windy
  • temperate-still
  • temperate-light
  • temperate-windy
  • warm-still
  • warm-light
  • warm-windy

הודות לשילובי תכונות, המודל יכול לזהות הבדלים בין מצבי הרוח בין יום אחד (freezing-windy) ליום freezing-still.

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

באופן רשמי, צלב הוא מוצר קרטזיאני.

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

הנדסת פיצ'רים (feature engineering)

#fundamentals
TensorFlow #

תהליך שכולל את השלבים הבאים:

  1. להחליט אילו תכונות עשויות להועיל לאימון המודל.
  2. המרת נתונים גולמיים ממערך הנתונים לגרסאות יעילות של התכונות האלה.

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

הנדסת התכונות נקראת לפעמים חילוץ תכונות.

קבוצת תכונות

#fundamentals

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

מאפיין וקטור

#fundamentals

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

[0.92, 0.56]

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

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

[0.73, 0.49]

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

[0.0, 0.0, 1.0, 0.0, 0.0]

כדוגמה נוספת, נניח שהמודל שלך מכיל שלוש תכונות:

  • תכונה בינארית קטגורית עם חמישה ערכים אפשריים המיוצגים באמצעות קידוד חד-פעמי, לדוגמה: [0.0, 1.0, 0.0, 0.0, 0.0]
  • מאפיין בינארי קטגורי נוסף עם שלושה ערכים אפשריים המיוצגים באמצעות קידוד לוהט אחד (1). לדוגמה: [0.0, 0.0, 1.0]
  • תכונת נקודה צפה (floating-point). לדוגמה: 8.3.

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

0.0
1.0
0.0
0.0
0.0
0.0
0.0
1.0
8.3

לולאת משוב

#fundamentals

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

G

הכללה

#fundamentals

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

עקומת הכללה

#fundamentals

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

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

תרשים קרטסיאני שבו ציר ה-Y מסומן בתווית &#39;loss&#39; וציר ה-X (איטרציות). מופיעות שתי תצוגות. בתרשים אחד מוצג
          אובדן האימון, בתרשים השני מוצג האובדן בתהליך.
          שתי התרשימים מתחילות באופן דומה, אך בסופו של דבר אובדן האימון
          יורד הרבה יותר נמוך מאובדן האימות.

ירידה הדרגתית

#fundamentals

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

ירידה הדרגתית היא מצב ישן יותר – הרבה יותר ישן – מאשר למידת מכונה.

Gground truth

#fundamentals

ריאליטי.

מה שקרה בפועל.

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

H

שכבה מוסתרת

#fundamentals

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

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

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

היפר-פרמטר

#fundamentals

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

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

I

בהפצה נפרדת וזהה (כלומר)

#fundamentals

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

כדאי גם לקרוא את הקטע על חוסר-תחנות.

היקש

#fundamentals

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

להסקת הנתונים יש משמעות קצת שונה בנתונים הסטטיסטיים. לפרטים נוספים קראו את המאמר בוויקיפדיה על הסקת מסקנות סטטיסטית.

שכבת קלט

#fundamentals

השכבה של רשת נוירונים שמכילה את וקטור המאפיין. כלומר, שכבת הקלט מספקת דוגמאות לאימון או להֶקֵּשׁ. לדוגמה, שכבת הקלט ברשת הנוירונים הבאה מורכבת משתי תכונות:

ארבע שכבות: שכבת קלט, שתי שכבות מוסתרות ושכבת פלט.

פרשנות

#fundamentals

היכולת להסביר או להציג לבני אדם את ההגיון של המודלים של למידת מכונה (ML) במונחים שמבינים.

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

אתם יכולים להשתמש בכלי לפירוש מצב הלמידה (LIT) כדי לפרש מודלים של למידת מכונה.

חזרה

#fundamentals

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

כשמאמנים רשת נוירונים, בחזרה אחת כוללת את שני המעברים הבאים:

  1. כרטיס קדימה להערכת ההפסד של קבוצה אחת.
  2. העברה לאחור (backpagation) כדי לשנות את הפרמטרים של המודל על סמך ההפסד וקצב הלמידה.

L

רגולציית L0

#fundamentals

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

רגולציית L0 נקראת לפעמים רגילות L0-norm.

הפסד של L1

#fundamentals

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

הערך בפועל של הדוגמה הערך החזוי של המודל ערך מוחלט של דלתא
7 6 1
5 4 1
8 11 3
4 6 2
9 8 1
  8 = הפסד של L1

אובדן L1 הוא פחות רגיש לגורמים חריגים לעומת הפסד L2.

השגיאה האבסולוטית הממוצעת היא ההפסד הממוצע של 1 לכל דוגמה.

רגולציה L1

#fundamentals

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

ניגודיות עם L2 רגולריזציה.

הפסד של L2

#fundamentals

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

הערך בפועל של הדוגמה הערך החזוי של המודל ריבוע הדלתא
7 6 1
5 4 1
8 11 9
4 6 4
9 8 1
  16 = הפסד של L2

בגלל צבירה של L2, ההשפעה של הדברים יוצאי דופן גורמת. כלומר, אובדן ה-L2 מגיב חזק יותר לחיזויים גרועים מאשר להפסד L1. לדוגמה, הערך של אובדן ה-L1 עבור הקבוצה הקודמת יהיה 8, במקום 16. שימו לב שיוצא מן הכלל אחד מתייחס ל-9 מתוך 16.

מודלים של רגרסיה בדרך כלל משתמשים בהפסד L2 כפונקציית האובדן.

השגיאה הממוצעת הריבועית היא אובדן ה-L2 הממוצע לכל דוגמה. הפסד בריבוע הוא שם נוסף של אובדן L2.

רגולציה L2

#fundamentals

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

הרגולטורציה של L2 תמיד משפרת את ההכללה במודלים לינאריים.

השיטה הזו מנוגדת לרגולציה של L1.

label

#fundamentals

בלמידה חישובית מבוקרת, החלק 'תשובה' או 'תוצאה' בדוגמה.

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

דוגמה עם תווית

#fundamentals

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

מספר חדרי שינה מספר חדרי הרחצה גיל הבית מחיר הבית (תווית)
3 2 15 1380,000 ש"ח
2 1 72 716,000 ש"ח
4 2 34 1,468,000 ש"ח

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

ניגודיות לדוגמה עם תווית ללא תוויות.

למבדה

#fundamentals

מילה נרדפת לתעריף הרגולציה.

למבדה הוא מונח עמוס. כאן נתמקד בהגדרת המונח במסגרת רדירוּת.

שכבה

#fundamentals

קבוצה של נוירונים ברשת נוירונים. יש שלושה סוגים נפוצים של שכבות:

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

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

ב-TensorFlow, layers הן גם פונקציות Python שמשתמשות ב-Tensors ובאפשרויות ההגדרה כקלט, ומפיקות טנטורים אחרים כפלט.

קצב למידה

#fundamentals

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

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

ליניארי

#fundamentals

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

עלילה של קשר לינארי היא קו.

הניגודיות לערך לא לינארי.

מודל לינארי

#fundamentals

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

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

רגרסיה לינארית ורגרסיה לוגיסטית הם שני סוגים של מודלים לינאריים.

רגרסיה לינארית

#fundamentals

סוג של מודל למידת מכונה שבו מתקיימים שני התנאים הבאים:

  • המודל הוא מודל לינארי.
  • החיזוי הוא ערך של נקודה צפה (floating-point). (זהו החלק של הרגרסיה מרגרסיה לינארית).

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

רגרסיה לוגיסטית

#fundamentals

סוג של מודל רגרסיה שמנבא הסתברות. למודלים של רגרסיה לוגיסטית יש את המאפיינים הבאים:

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

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

  • סיכוי של 72% שהודעת האימייל תהיה ספאם.
  • סיכוי של 28% שהודעת האימייל לא תהיה ספאם.

מודל רגרסיה לוגיסטי משתמש בארכיטקטורה הדו-שלבית הבאה:

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

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

  • אם המספר החזוי גבוה מסף הסיווג, מודל הסיווג הבינארי יוצר תחזית לגבי הסיווג החיובי.
  • אם המספר החזוי נמוך מסף הסיווג, מודל הסיווג הבינארי חוזה את הסיווג השלילי.

אובדן יומנים

#fundamentals

הפונקציה loss שמשמשת לרגרסיה לוגיסטית בינארית.

פונקציות ביומן

#fundamentals

הלוגריתם של סיכויים של אירוע מסוים.

הפסד

#fundamentals

במהלך האימון של מודל מפוקח, אפשר למדוד את המרחק של החיזוי של המודל מהתווית.

פונקציית loss מחשבת את האובדן.

עקומת הפסד

#fundamentals

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

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

עקומות האובדן יכולות לעזור לכם לקבוע מתי המודל מתאחד או יש התאמה יתר.

עקומות אובדן יכולות להציג בתרשים את כל סוגי ההפסדים הבאים:

כדאי לעיין גם בעקומת ההכללה.

פונקציית אובדן

#fundamentals

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

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

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

M

למידת מכונה

#fundamentals

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

למידת מכונה מתייחסת גם לתחום המחקר שקשור לתוכניות או למערכות האלה.

מחלקת הרוב

#fundamentals

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

הערך הזה מנוגד לסיווג מיעוט.

מיני אצווה

#fundamentals

קבוצת משנה קטנה שנבחרה באופן אקראי של אצווה שמעובדת בחזרה אחת. גודל האצווה הוא בדרך כלל בין 10 ל-1,000 דוגמאות.

לדוגמה, נניח שקבוצת האימון כולה (האצווה המלאה) מכילה 1,000 דוגמאות. בנוסף, נניח שהגדרתם את גודל האצווה של כל מיני אצווה ל-20. לכן, כל איטרציה קובעת אובדן של 20 אקראיות מתוך 1,000 הדוגמאות, ולאחר מכן משנה את המשקלים וההטיות בהתאם.

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

מעמד מיעוט

#fundamentals

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

הניגודיות היא של סיווג הרוב.

model

#fundamentals

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

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

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

סיווג רב-סיווגי

#fundamentals

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

  • איריס סטוסה
  • איריס וירג'יניה
  • קשתית בצבעי הקשת

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

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

בבעיות של אשכולות, סיווג מרובה מחלקות מתייחס ליותר משני אשכולות.

צ'

סיווג שלילי

#fundamentals

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

  • הסיווג השלילי בבדיקה רפואית עשוי להיות 'לא גידול'.
  • הקטגוריה השלילית במסווג אימיילים עשויה להיות 'לא ספאם'.

הניגודיות לסיווג חיובי.

רשת הזרימה קדימה

#fundamentals

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

רשת נוירונים עם שכבת קלט, שתי שכבות מוסתרות ושכבת פלט.

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

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

רשתות נוירונים מסוימות יכולות לחקות קשרים לא לינאריים מורכבים מאוד בין תכונות שונות לבין התווית.

למידע נוסף, ראו רשת נוירונים מלאכותיות ורשת נוירונים חוזרת.

נוירון

#fundamentals

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

  1. הפונקציה מחשבת את הסכום המשוקלל של ערכי הקלט כפול המשקולות שלהם.
  2. הפונקציה מעבירה את הסכום המשוקלל כקלט אל פונקציית הפעלה.

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

באיור הבא מודגשים שני נוירונים ואת הקלט שלהם.

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

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

צומת (רשת נוירונים)

#fundamentals

נוירון בשכבה מוסתרת.

לא לינארי

#fundamentals

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

שתי חלקות. עלילה אחת היא קו, ולכן זהו קשר לינארי.
          העקומה השנייה היא עקומה, לכן הקשר הזה אינו לינארי.

לא נייטיב

#fundamentals

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

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

הניגודיות לייצוג נייטרלי.

נורמליזציה

#fundamentals

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

  • -1 עד +1
  • 0 על 1
  • את ההתפלגות הנורמלית

לדוגמה, נניח שטווח הערכים בפועל של פיצ'ר מסוים הוא 800 עד 2,400. כחלק מהנדסת התכונות, אפשר לנרמל את הערכים בפועל לטווח סטנדרטי, למשל -1 עד +1.

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

נתונים מספריים

#fundamentals

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

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

תכונות מספריות נקראות לפעמים תכונות רציפות.

O

אופליין

#fundamentals

מילה נרדפת ל-static.

מסקנות אופליין

#fundamentals

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

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

מסקנות אופליין נקראת גם הסקת מסקנות סטטית.

מנוגדת להֶקֵּשׁ אונליין.

קידוד בחום אחיד

#fundamentals

הצגת נתונים קטגוריים כוקטור שבו:

  • רכיב אחד מוגדר לערך 1.
  • כל שאר הרכיבים מוגדרים כ-0.

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

  • "דנמרק"
  • "שוודיה"
  • "נורווגיה"
  • "פינלנד"
  • "איסלנד"

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

country וקטור
"דנמרק" 1 0 0 0 0
"שוודיה" 0 1 0 0 0
"נורווגיה" 0 0 1 0 0
"פינלנד" 0 0 0 1 0
"איסלנד" 0 0 0 0 1

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

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

  • הערך של "דנמרק" הוא 0
  • "Sweden" הוא 1
  • "נורווגיה" הוא 2
  • "פינלנד" היא 3
  • "איסלנד" הוא 4

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

אחד לעומת כולם

#fundamentals

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

  • בעל חיים לעומת לא בעל חיים
  • ירקות לעומת לא ירקות
  • מינרל לעומת לא מינרל

online

#fundamentals

מילה נרדפת ל-Dynamic.

הֶקֵּשׁ באינטרנט

#fundamentals

יוצרים חיזויים על פי דרישה. לדוגמה, נניח שאפליקציה מעבירה קלט למודל ומנפיקה בקשה לחיזוי. מערכת שמשתמשת בהֶקֵּשׁ אונליין מגיבה לבקשה באמצעות הרצת המודל (והחזרת החיזוי לאפליקציה).

מנוגדת להסקת מסקנות אופליין.

שכבת פלט

#fundamentals

השכבה "האחרונה" של רשת נוירונים. שכבת הפלט מכילה את החיזוי.

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

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

התאמת יתר (overfitting)

#fundamentals

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

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

P

פנדות

#fundamentals

API לניתוח נתונים מבוסס-עמודות שמבוסס על numpy. מסגרות רבות של למידת מכונה, כולל TensorFlow, תומכות במבני נתונים של פנדה כקלט. לפרטים נוספים עיינו במסמכי התיעוד בנושא פנדה.

פרמטר

#fundamentals

המשקלים והדעות הקדומות שמודל לומד במהלך האימון. לדוגמה, במודל רגרסיה לינארית, הפרמטרים מכילים את ההטיות (b) ואת כל המשקולות (w1, w2 וכו') בנוסחה הבאה:

$$y' = b + w_1x_1 + w_2x_2 + … w_nx_n$$

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

דירוג חיובי

#fundamentals

הכיתה שבחרת לבדוק.

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

הניגודיות לסיווג שלילי.

לאחר עיבוד

#fairness
#fundamentals

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

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

חיזוי (prediction)

#fundamentals

הפלט של מודל. לדוגמה:

  • החיזוי של מודל סיווג בינארי הוא הסיווג החיובי או המחלקה השלילית.
  • החיזוי של מודל סיווג מרובה מחלקות הוא מחלקה אחת.
  • החיזוי של מודל רגרסיה לינארי הוא מספר.

תוויות של שרת proxy

#fundamentals

נתונים שמשמשים להערכה של תוויות שלא זמינות ישירות במערך נתונים.

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

דוגמה שנייה: נניח שאתם רוצים שהתווית is it rainsed? (האם יורד גשם?) תהיה תווית בוליאנית של מערך הנתונים, אבל מערך הנתונים לא מכיל נתוני גשם. אם יש תמונות, תוכלו להוסיף תוויות של אנשים שנושאים מטריות כתווית לאיתור האם יורד גשם? האם זו תווית טובה לשרת proxy? אולי, אבל בתרבויות מסוימות יש סיכוי גדול יותר לשאת מטריות להגנה מפני השמש מאשר הגשם.

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

R

מדרג

#fundamentals

אדם שמספק תוויות לדוגמאות. "Annotator" הוא שם נוסף של המדרג.

יחידה לינארית מתוקנת (ReLU)

#fundamentals

פונקציית הפעלה עם ההתנהגות הבאה:

  • אם הקלט הוא שלילי או אפס, הפלט הוא 0.
  • אם הקלט הוא חיובי, הפלט שווה לקלט.

לדוגמה:

  • אם הקלט הוא 3-, אז הפלט הוא 0.
  • אם הקלט הוא 3+, הפלט הוא 3.0.

הנה עלילה של ReLU:

עלילה קרטזית בת שתי שורות. בשורה הראשונה יש ערך y קבוע של 0, לאורך ציר ה-X מ-infinity,0 עד 0,-0.
          השורה השנייה מתחילה ב-0.0. לקו הזה יש שיפוע של +1, ולכן הוא מתחיל מ-0,0 עד +אינסוף.

ReLU היא פונקציית הפעלה פופולרית מאוד. למרות ההתנהגות הפשוטה שלה, ה-ReLU עדיין מאפשר לרשת נוירונים ללמוד על קשרים לא לינאריים בין features ל-label.

מודל רגרסיה

#fundamentals

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

  • מודל שחוזה ערך של בית מסוים, למשל 423,000 אירו.
  • מודל שחוזים את תוחלת החיים של עץ מסוים, למשל 23.2 שנים.
  • מודל שחוזה את כמות הגשם שתירד בעיר מסוימת בשש השעות הבאות, למשל 0.18 אינץ'.

יש שני סוגים נפוצים של מודלים של רגרסיה:

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

רגולריזציה (regularization)

#fundamentals

כל מנגנון שמפחית התאמת יתר. דוגמאות לסוגים נפוצים של רגולציה:

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

שיעור ההתאמה הרגולטורית

#fundamentals

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

ReLU

#fundamentals

קיצור של יחידה לינארית מוקפצת.

יצירת מודלים מרובים לצורך אחזור

#fundamentals

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

  • שיפור הדיוק העובדתי של התשובות שנוצרות באמצעות המודל
  • להעניק למודל גישה לידע שהוא לא אומן לבצע
  • שינוי הידע שהמודל משתמש בו
  • הפעלת המודל לצטט מקורות

לדוגמה, נניח שאפליקציית כימיה משתמשת ב-PaLM API כדי ליצור סיכומים שקשורים לשאילתות משתמשים. כשהקצה העורפי של האפליקציה מקבל שאילתה, הוא מחפש תחילה ("אחזורים") נתונים שרלוונטיים לשאילתת המשתמש, מוסיף ("תוספות") את נתוני הכימיה הרלוונטיים לשאילתת המשתמש ומורה ל-LLM ליצור סיכום על סמך הנתונים המצורפים.

עקומה של ROC (מאפיין ההפעלה של המקלט)

#fundamentals

תרשים של שיעור חיובי אמיתי לעומת שיעור חיובי כוזב עבור ערכי סף שונים לסיווג בסיווג הבינארי.

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

קו מספר עם 8 דוגמאות חיוביות בצד ימין
          ו-7 דוגמאות לשליליות מצד שמאל.

עקומת ה-ROC של המודל הקודם נראית כך:

עקומת ROC. ציר ה-X הוא False Positive Rate וציר ה-Y הוא הערך True Positive Rate. לעקומה יש צורת L הפוכה. העקומה מתחילה ב-(0.0,0.0) ומגיעה ישירות למעלה (0.0,1.0). לאחר מכן העקומה עוברת מ-(0.0,1.0) ל-(1.0,1.0).

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

שורת מספרים עם דוגמאות חיוביות וסיווגים שליליים משולבים לחלוטין.

עקומת ה-ROC במודל הזה נראית כך:

עקומת ROC, שהיא למעשה קו ישר מ-(0.0,0.0)
          עד (1.0,1.0).

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

עקומת ROC. ציר ה-X הוא False Positive Rate וציר ה-Y הוא הערך True Positive Rate. עקומת ROC מייצגת קשת רועשת שחוצה את נקודות המצפן ממערב לצפון.

באופן תיאורטי, הנקודה בעקומת ROC הקרובה ביותר ל-(0.0,1.0) מזהה את סף הסיווג האידאלי. עם זאת, יש כמה בעיות אחרות בעולם האמיתי שמשפיעות על הבחירה של סף הסיווג האידיאלי לסיווג. לדוגמה, אולי תופעות שליליות כוזבות גורמות להרבה יותר כאב מאשר תוצאות חיוביות שגויות.

מדד מספרי שנקרא AUC מסכם את עקומת ה-ROC לערך של נקודה צפה (floating-point).

שגיאה בריבוע הממוצע (RMSE) של הרמה הבסיסית

#fundamentals

השורש הריבועי של השגיאה הממוצעת בריבוע.

S

פונקציית סיגמואיד

#fundamentals

פונקציה מתמטית ש'מכווצת' ערך קלט לטווח מוגבל, בדרך כלל מ-0 עד 1 או מ- -1 עד +1. כלומר, אפשר להעביר כל מספר (שני, מיליון, מיליארד ושלילי), לסיגמואיד, והפלט עדיין יהיה בטווח המוגבל. תרשים של פונקציית ההפעלה סיגמואיד נראה כך:

תרשים מפותל דו-ממדי עם ערכי x שמקיף את הדומיין
 -מאינסוף עד +חיובי, בעוד שערכים ב-y מתפרסים על הטווח כמעט 0 עד 1. כשה-x הוא 0, y הוא 0.5. שיפוע העקומה תמיד
          חיובי, כאשר השיפוע הגבוה ביותר הוא 0.0.5,והשיפוע יורד בהדרגה
          ככל שהערך המוחלט של x גדל.

לפונקציה סיגמואיד יש כמה שימושים בלמידת מכונה, כולל:

softmax,

#fundamentals

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

התמונה היא... Probability
כלב .85
cat .13
סוס .02

Softmax נקרא גם softmax

ההגדרה הזו מנוגדת לדגימת המועמדים.

תכונה מועטה

#language
#fundamentals

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

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

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

ייצוג מועט

#language
#fundamentals

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

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

אפשר להשתמש בווקטור חד-פעמי לייצוג זני העצים בכל דוגמה. וקטור אחד לוהט מכיל 1 אחד (שמייצג את סוג העצים הספציפי בדוגמה הזו) ו-35 0 (שמייצג את 35 זני העצים לא בדוגמה הזו). אז הייצוג החם היחיד של maple עשוי להיראות כך:

וקטור שבו מיקומים 0 עד 23 מחזיקים את הערך 0, מיקום 24 מכיל את הערך 1 ומיקומים 25 עד 35 מכילים את הערך 0.

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

24

שימו לב שהייצוג הדחוס הוא הרבה יותר קומפקטי מהייצוג בעל אופי אחיד.

וקטור sparse

#fundamentals

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

הפסד בריבוע

#fundamentals

מילה נרדפת ל-L2 להגיש.

סטטי

#fundamentals

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

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

הניגודיות היא דינמית.

הסקה סטטית

#fundamentals

מילה נרדפת למסקנות אופליין.

נייטיב

#fundamentals

תכונה שהערכים שלה לא משתנים במאפיין אחד או יותר, בדרך כלל זמן. לדוגמה, תכונה שהערכים שלה נראים בערך אותו הדבר ב-2021 וב-2023, מוצגת נייטיבוּת.

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

הניגודיות לחוסר יציבות.

ירידה סטוכסטית הדרגתית (SGD)

#fundamentals

אלגוריתם של ירידה הדרגתית שבו גודל האצווה הוא אחד. במילים אחרות, SGD מתאמן לפי דוגמה אחת שנבחרה בצורה אחידה באופן אקראי מתוך קבוצת אימונים.

למידת מכונה מבוקרת

#fundamentals

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

אפשר להשוות אותו ללמידת מכונה לא מפוקחת.

תכונה סינתטית

#fundamentals

פיצ'ר שלא נמצא בין תכונות הקלט, אלא מורכב מאחת או יותר מהן. השיטות ליצירת תכונות סינתטיות כוללות:

  • התאמה של המאפיין 'סידור מחרוזות' בסידורים שונים במסגרת סלי טווח.
  • יצירת צלב תכונות.
  • הכפלה (או חלוקת) של ערך תכונה אחד בערך אחר של תכונה או בעצמה. לדוגמה, אם a ו-b הן תכונות קלט, הנה דוגמאות לתכונות סינתטיות:
    • ab
    • a2
  • החלת פונקציה טרנסצנדנטלית על ערך תכונה. לדוגמה, אם c היא תכונת קלט, הדוגמאות הבאות הן דוגמאות לתכונות סינתטיות:
    • sin(c)
    • ln(c)

תכונות שנוצרו על ידי נירמול או התאמה לעומס (scaling) לא נחשבות כתכונות סינתטיות.

T

אובדן בדיקה

#fundamentals

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

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

הדרכה

#fundamentals

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

אובדן אימון

#fundamentals

מדד שמייצג את ההפסד של מודל במהלך איטרציה ספציפית לאימון. לדוגמה, נניח שפונקציית האובדן היא Mean Squared Error (שגיאה בריבוע הממוצע). אולי אובדן האימון (השגיאה הממוצעת Squared) באיטרציה העשירית הוא 2.2, ואובדן האימון באיטרציה ה-100 הוא 1.9.

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

  • מדרון כלפי מטה מרמז על כך שהמודל משתפר.
  • מדרון כלפי מעלה מרמז שהמודל מחמיר.
  • מדרון שטוח מרמז על כך שהמודל הגיע להמרה.

לדוגמה, העקומת הפסד שהביאה למצב אידיאלי למדי:

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

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

למרות שאובדן האימון חשוב, כדאי לקרוא את המאמר הכללה.

training-serving skew

#fundamentals

ההפרש בין הביצועים של מודל במהלך האימון לבין הביצועים של אותו מודל במהלך הצגת המודעות.

קבוצת אימון

#fundamentals

קבוצת המשנה של מערך הנתונים המשמשת לאימון מודל.

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

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

true negative (TN)

#fundamentals

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

חיובי אמיתי (TP)

#fundamentals

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

שיעור חיובי נכון (TPR)

#fundamentals

מילה נרדפת לrecall. כלומר:

$$\text{true positive rate} = \frac{\text{true positives}} {\text{true positives} + \text{false negatives}}$$

הקצב החיובי האמיתי הוא ציר ה-Y בעקומת ROC.

U

התאמה נמוכה

#fundamentals

יצירת model עם יכולת חיזוי נמוכה כי המודל לא השלים את המורכבות של נתוני האימון. בעיות רבות עלולות לגרום לאי-התאמה, כולל:

דוגמה ללא תווית

#fundamentals

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

מספר חדרי שינה מספר חדרי הרחצה גיל הבית
3 2 15
2 1 72
4 2 34

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

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

ניגודיות דוגמה ללא תווית עם דוגמה מתויגת.

למידת מכונה בלתי מונחית

#clustering
#fundamentals

אימון model כדי למצוא דפוסים במערך נתונים, בדרך כלל מערך נתונים ללא תווית.

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

בניגוד ללמידה חישובית מבוקרת.

V

אימות

#fundamentals

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

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

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

אובדן בתהליך האימות

#fundamentals

מדד שמייצג את ההפסד של המודל בקבוצת האימות במהלך חזרה מסוימת של אימון.

כדאי לעיין גם בעקומת ההכללה.

קבוצת אימות

#fundamentals

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

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

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

W

משקל

#fundamentals

ערך שמודל מכפיל בערך אחר. אימון הוא תהליך קביעת המשקולות האידאליות של מודל. הֶקֵּשׁ הוא התהליך של שימוש במשקולות הנלמדות כדי ליצור חיזויים.

סכום משוקלל

#fundamentals

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

ערך הקלט משקל הקלט
2 -1.3
-1 0.6
3 0.4

לכן הסכום המשוקלל הוא:

weighted sum = (2)(-1.3) + (-1)(0.6) + (3)(0.4) = -2.0

סכום משוקלל הוא ארגומנט הקלט לפונקציית הפעלה.

Z

נורמליזציה של ציון Z

#fundamentals

שיטת התאמה לעומס (scaling) שמחליפה ערך גולמי של תכונה בערך של נקודה צפה (floating-point) שמייצג את מספר סטיות התקן מהממוצע של התכונה הזו. לדוגמה, נניח שהממוצע שלה הוא 800 והסטייה הסטנדרטית שלה היא 100. הטבלה הבאה מראה איך הנירמול של ציון ה-Z ימפה את הערך הגולמי לציון ה-Z:

ערך גולמי ציון Z
800 0
950 +1.5
575 -2.25

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