סקירה כללית על הערכת מודלים ב-BigQuery ML

במאמר הזה מתואר איך BigQuery ML תומך בהערכת מודלים של למידת מכונה (ML).

סקירה כללית של הערכת מודל

אפשר להשתמש במדדי הערכה של מודלים של למידת מכונה למטרות הבאות:

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

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

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

הצעות להערכת מודלים

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

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

רגרסיה של עצים מחוזקים

רגרסיה של יער אקראי

רגרסיה של DNN

רגרסיה של רשת רחבה ועמוקה

רגרסיה של AutoML Tables
ML.EVALUATE הדוח כולל את המדדים הבאים:
  • שגיאה ממוצעת מוחלטת
  • שגיאה ריבועית ממוצעת
  • שגיאת יומן ריבועית ממוצעת
  • שגיאה מוחלטת חציונית
  • ציון r2
  • שונות מוסברת
Logistic regression

Boosted trees classifier

Random forest classifier

DNN classifier

Wide-and-deep classifier

AutoML Tables classifier
ML.EVALUATE הדוח כולל את המדדים הבאים:
  • דיוק
  • recall
  • דיוק
  • ציון F1
  • אובדן לוגריתמי
  • roc auc
ML.CONFUSION_MATRIX הפונקציה מחזירה את מטריצת הטעות.
ML.ROC_CURVE הדוחות כוללים מדדים עבור ערכי סף שונים, כולל המדדים הבאים:
  • recall
  • שיעור התוצאות החיוביות השגויות
  • חיוביים אמיתיים
  • תוצאות חיוביות שגויות
  • תוצאות שליליות אמיתיות
  • תוצאות שליליות שגויות

המאפיין הזה רלוונטי רק למודלים של סיווג בינארי.
למידה לא מפוקחת K-means ML.EVALUATE הפונקציה מחזירה את מדד Davies-Bouldin ואת המרחק הממוצע בריבוע בין נקודות הנתונים לבין מרכזי הכובד של האשכולות שהוקצו.
פירוק מטריצות ML.EVALUATE למודלים שמבוססים על משוב מפורש, המדדים הבאים מופיעים בדוחות:
  • שגיאה ממוצעת מוחלטת
  • שגיאה ריבועית ממוצעת
  • שגיאת יומן ריבועית ממוצעת
  • שגיאה מוחלטת חציונית
  • ציון r2
  • שונות מוסברת
בדגמים שמבוססים על משוב מרומז, המדדים הבאים מופיעים בדוחות:
PCA ML.EVALUATE הדוח מציג את היחס הכולל של השונות המוסברת.
Autoencoder ML.EVALUATE הדוח כולל את המדדים הבאים:
  • שגיאה ממוצעת מוחלטת
  • שגיאה ריבועית ממוצעת
  • שגיאת יומן ריבועית ממוצעת
פעולות על ציר הזמן ARIMA_PLUS ML.EVALUATE הדוח כולל את המדדים הבאים:
  • שגיאה ממוצעת מוחלטת
  • שגיאה ריבועית ממוצעת
  • שגיאה ממוצעת באחוזים
  • שגיאה סימטרית ממוצעת באחוזים

הפונקציה הזו דורשת נתונים חדשים כקלט.
ML.ARIMA_EVALUATE הדוח כולל את המדדים הבאים לכל המודלים הפוטנציאליים של ARIMA שמאופיינים על ידי טפלים שונים (p, d, q, has_drift):

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

הפונקציה הזו לא דורשת נתונים חדשים כקלט.

הערכה אוטומטית ב-CREATE MODEL הצהרות

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

  • במודלים k-means,‏ PCA,‏ autoencoder ו-ARIMA_PLUS,‏ BigQuery ML משתמש בכל נתוני הקלט כנתוני אימון, ומדדי ההערכה מחושבים על סמך כל מערך נתוני הקלט.

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

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

  • לגבי מודלים של AutoML Tables, אפשר לעיין במאמר מידע על פיצולי נתונים למודלים של AutoML.

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

הערכה עם מערך נתונים חדש

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

המאמרים הבאים

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