בדף הזה מוסבר איך להעריך את המודלים של AutoML לסיווג תמונות, כדי שתוכלו לשפר את המודל.
ב-Gemini Enterprise Agent Platform יש מדדים להערכת מודלים, כמו מדדי דיוק וזכירה, שעוזרים לכם לקבוע את הביצועים של המודלים. פלטפורמת Agent מחשבת את מדדי ההערכה באמצעות קבוצת הנתונים לבדיקה.
איך משתמשים במדדים להערכת מודלים
מדדי הערכת המודל מספקים מדידות כמותיות של ביצועי המודל בקבוצת הבדיקה. האופן שבו אתם מפרשים את המדדים האלה ומשתמשים בהם תלוי בצרכים העסקיים שלכם ובבעיה שהמודל שלכם אומן לפתור. לדוגמה, יכול להיות שאתם מוכנים לקבל יותר תוצאות שליליות מוטעות מאשר תוצאות חיוביות מוטעות, או להיפך. התשובות לשאלות האלה משפיעות על המדדים שבהם תתמקדו.
למידע נוסף על שיפור המודל, ראו שיפור המודל.
מדדי הערכה שמוחזרים על ידי Agent Platform
פלטפורמת Agent מחזירה כמה מדדי הערכה שונים, כמו דיוק, זיכרון וספי סמך. המדדים שמוחזרים על ידי Agent Platform תלויים ביעד של המודל. לדוגמה, Agent Platform מספקת מדדי הערכה שונים למודל סיווג תמונות בהשוואה למודל זיהוי אובייקטים בתמונות.
קובץ סכימה, שאפשר להוריד ממיקום ב-Cloud Storage, קובע אילו מדדי הערכה Agent Platform מספקת לכל מטרה. בכרטיסיות הבאות יש קישורים לקובצי הסכימה ותיאור של מדדי ההערכה לכל יעד של המודל.
אפשר לראות ולהוריד קובצי סכימה מהמיקום הבא ב-Cloud Storage:
gs://google-cloud-aiplatform/schema/modelevaluation/
- AuPRC: השטח מתחת לעקומת הדיוק-אחזור (PR), שנקרא גם דיוק ממוצע. הערך הזה נע בין אפס לאחד, וככל שהערך גבוה יותר, כך המודל איכותי יותר.
- Log loss: האנטרופיה המשותפת בין ההסקה של המודל לבין ערכי היעד. הערך נע בין אפס לאינסוף, וככל שהערך נמוך יותר, כך המודל איכותי יותר.
- סף מהימנות: ציון מהימנות שקובע אילו הסקות יוחזרו. המודל מחזיר הסקות שהערך שלהן שווה לערך הזה או גבוה ממנו. סף סמך גבוה יותר מגדיל את הדיוק אבל מקטין את ה-recall. פלטפורמת Agent מחזירה מדדי סמך בערכי סף שונים כדי להראות איך הסף משפיע על הדיוק ועל האחזור.
- אחזור: החלק של ההסקות עם המחלקה הזו שהמודל חזה בצורה נכונה. נקרא גם שיעור החיוביים האמיתיים.
- דיוק: החלק של הסקות הסיווג שנוצרו על ידי המודל שהיו נכונות.
- מטריצת טעויות: מטריצת טעויות מראה באיזו תדירות המודל חזה תוצאה בצורה נכונה. במקרים של חיזוי שגוי, המטריצה מראה מה המודל חזה במקום זאת. מטריצת הטעויות עוזרת להבין איפה המודל "מתבלבל" בין שתי תוצאות.
קבלת מדדי הערכה
אתם יכולים לקבל קבוצה מצטברת של מדדי הערכה למודל, ובמטרות מסוימות, מדדי הערכה לסיווג או לתווית מסוימים. מדדי הערכה של מחלקה או תווית מסוימת נקראים גם פרוסת הערכה. בקטע הבא מוסבר איך לקבל מדדי הערכה מצטברים ופרוסות הערכה באמצעות מסוף Cloud de Confiance או ה-API.
מסוף Cloud de Confiance
במסוף Cloud de Confiance , בקטע Agent Platform, נכנסים לדף Models.
בתפריט הנפתח Region, בוחרים את האזור שבו נמצא המודל.
ברשימת המודלים, לוחצים על המודל כדי לפתוח את הכרטיסייה Evaluate.
בכרטיסייה Evaluate אפשר לראות את מדדי ההערכה המצטברים של המודל, כמו Average precision ו-Recall.
אם ליעד המודל יש פרוסות הערכה, במסוף תוצג רשימה של תוויות. אפשר ללחוץ על תווית כדי לראות את מדדי ההערכה שלה, כמו בדוגמה הבאה:

(תצוגה מקדימה) לכל תווית אפשר לראות תמונות חזויות שמקובצות כתוצאות חיוביות אמיתיות, תוצאות חיוביות שגויות ותוצאות שליליות שגויות. לכל תמונה יש מדד מרחק בריבוע L2, שמודד את מידת הדמיון של התמונה לתמונות האימון. תמונה שמתויגת בתג חריגה שונה יחסית מכל תמונות האימון. כדי לשפר את ביצועי המודל, כדאי להוסיף עוד תמונות לאימון שדומות לערכים החריגים.
API
בקשות ה-API לקבלת מדדי הערכה זהות לכל סוג נתונים ויעד, אבל הפלט שונה. בדוגמאות הבאות מוצגת אותה בקשה אבל עם תשובות שונות.
קבלת מדדי הערכה מצטברים של המודל
מדדי ההערכה המצטברים של המודל מספקים מידע על המודל כולו. כדי לראות מידע על פלח ספציפי, צריך להציג את הפלחים של הערכת המודל.
כדי לראות את המדדים המצטברים להערכת המודל, משתמשים ב-method projects.locations.models.evaluations.get.
Agent Platform מחזירה מערך של מדדי רמת סמך. כל רכיב מציג מדדי הערכה בערך confidenceThreshold שונה (החל מ-0 ועד 1). כשמציגים ערכי סף שונים, אפשר לראות איך הסף משפיע על מדדים אחרים כמו דיוק ו-recall.
בוחרים כרטיסייה שמתאימה לשפה או לסביבה:
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- LOCATION: האזור שבו המודל מאוחסן.
- PROJECT: מזהה הפרויקט. .
- MODEL_ID: המזהה של משאב המודל.
- PROJECT_NUMBER: מספר הפרויקט שנוצר באופן אוטומטי.
- EVALUATION_ID: המזהה של הערכת המודל (מופיע בתשובה).
ה-method של ה-HTTP וכתובת ה-URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations
כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:
curl
מריצים את הפקודה הבאה:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations"
PowerShell
מריצים את הפקודה הבאה:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Java במדריך למתחילים של Agent Platform באמצעות ספריות לקוח.
כדי לבצע אימות ב-Agent Platform, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Node.js במדריך למתחילים של Agent Platform באמצעות ספריות לקוח.
כדי לבצע אימות ב-Agent Platform, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Python
במאמר התקנת Vertex AI SDK ל-Python מוסבר איך להתקין או לעדכן את Vertex AI SDK ל-Python. מידע נוסף מופיע ב מאמרי העזרה של ה-API מבוסס-Python.
רשימה של כל פרוסות ההערכה
ה-method projects.locations.models.evaluations.slices.list מציגה את כל פרוסות ההערכה של המודל. כדי לעשות את זה, אתם צריכים את מזהה ההערכה של המודל, שאותו אפשר לקבל כשמציגים את מדדי ההערכה המצטברים.
אתם יכולים להשתמש בפרוסות של הערכת המודל כדי לקבוע את הביצועים של המודל בתווית ספציפית. השדה value מציין לאיזו תווית המדדים מתייחסים.
Agent Platform מחזירה מערך של מדדי רמת סמך. כל רכיב מציג מדדי הערכה בערך confidenceThreshold שונה (החל מ-0 ועד 1). כשמציגים ערכי סף שונים, אפשר לראות איך הסף משפיע על מדדים אחרים כמו דיוק ו-recall.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- LOCATION: האזור שבו נמצא המודל. לדוגמה:
us-central1. - PROJECT: .
- MODEL_ID: מזהה המודל.
- EVALUATION_ID: המזהה של הערכת המודל שמכילה את פרוסות ההערכה שרוצים להציג.
ה-method של ה-HTTP וכתובת ה-URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices
כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:
curl
מריצים את הפקודה הבאה:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices"
PowerShell
מריצים את הפקודה הבאה:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Java במדריך למתחילים של Agent Platform באמצעות ספריות לקוח.
כדי לבצע אימות ב-Agent Platform, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Node.js במדריך למתחילים של Agent Platform באמצעות ספריות לקוח.
כדי לבצע אימות ב-Agent Platform, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Python
במאמר התקנת Vertex AI SDK ל-Python מוסבר איך להתקין או לעדכן את Vertex AI SDK ל-Python. מידע נוסף מופיע ב מאמרי העזרה של ה-API מבוסס-Python.
קבלת מדדים לפרוסה אחת
כדי לראות את מדדי ההערכה של פרוסה אחת, משתמשים ב-method projects.locations.models.evaluations.slices.get. צריך להיות לכם את מזהה הפרוסה, שמופיע כשמציגים את כל הפרוסות. הדוגמה הבאה רלוונטית לכל סוגי הנתונים והיעדים.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- LOCATION: האזור שבו נמצא המודל. לדוגמה, us-central1.
- PROJECT: .
- MODEL_ID: מזהה המודל.
- EVALUATION_ID: המזהה של הערכת המודל שמכילה את פלח ההערכה שרוצים לאחזר.
- SLICE_ID: המזהה של פרוסת ההערכה שרוצים לקבל.
- PROJECT_NUMBER: מספר הפרויקט שנוצר באופן אוטומטי.
- EVALUATION_METRIC_SCHEMA_FILE_NAME: השם של קובץ סכימה שמגדיר את מדדי ההערכה שיוחזרו, כמו
classification_metrics_1.0.0.
ה-method של ה-HTTP וכתובת ה-URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices/SLICE_ID
כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:
curl
מריצים את הפקודה הבאה:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices/SLICE_ID"
PowerShell
מריצים את הפקודה הבאה:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/models/MODEL_ID/evaluations/EVALUATION_ID/slices/SLICE_ID" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Java במדריך למתחילים של Agent Platform באמצעות ספריות לקוח.
כדי לבצע אימות ב-Agent Platform, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Node.js במדריך למתחילים של Agent Platform באמצעות ספריות לקוח.
כדי לבצע אימות ב-Agent Platform, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Python
במאמר התקנת Vertex AI SDK ל-Python מוסבר איך להתקין או לעדכן את Vertex AI SDK ל-Python. מידע נוסף מופיע ב מאמרי העזרה של ה-API מבוסס-Python.
שיפור המודל
מדדי הערכת המודל מספקים נקודת התחלה לניפוי באגים במודל, אם המודל לא עומד בציפיות שלכם. לדוגמה, ציוני דיוק וזכירה נמוכים יכולים להצביע על כך שהמודל צריך נתוני אימון נוספים או שיש לו תוויות לא עקביות. דיוק וזכירה מושלמים יכולים להצביע על כך שקל מדי לחזות את נתוני הבדיקה, וייתכן שהם לא יתאימו להכללה.
אתם יכולים לחזור על נתוני האימון וליצור מודל חדש. אחרי שיוצרים מודל חדש, אפשר להשוות בין מדדי ההערכה של המודל הקיים לבין אלה של המודל החדש.
ההצעות הבאות יכולות לעזור לכם לשפר מודלים שמוסיפים תוויות לפריטים, כמו מודלים של סיווג או זיהוי:
- כדאי להוסיף עוד דוגמאות או מגוון רחב יותר של דוגמאות בנתוני האימון. לדוגמה, במודל לסיווג תמונות, אפשר לכלול תמונות בזווית רחבה יותר, תמונות ברזולוציה גבוהה או נמוכה יותר או נקודות מבט שונות. למידע נוסף, קראו את המאמר הכנת נתונים.
- כדאי להסיר מחלקות או תוויות שאין להן הרבה דוגמאות. אם אין מספיק דוגמאות, המודל לא יכול לחזות באופן עקבי ובטוח את הסיווגים או התוויות האלה.
- מכונות לא יכולות לפרש את השמות של המחלקות או התוויות, והן לא מבינות את ההבדלים הדקים ביניהן, כמו "דלת" ו"דלת_עם_ידית". אתם צריכים לספק נתונים שיעזרו למכונות לזהות את הניואנסים האלה.
- כדי להפחית את הבלבול של המודל, כדאי להוסיף לנתונים עוד דוגמאות של תוצאות חיוביות אמיתיות ותוצאות שליליות אמיתיות, במיוחד דוגמאות שקרובות לגבול ההחלטה.
- לציין פיצול נתונים משלכם (אימון, אימות ובדיקה). פלטפורמת Agent מקצה פריטים לכל קבוצה באופן אקראי. לכן, כפילויות חלקיות יכולות להיות מוקצות בקבוצות הנתונים לאימון ולתיקוף, מה שעלול להוביל להתאמת יתר (overfitting) ואז לביצועים נמוכים בקבוצת הנתונים לבדיקה. למידע נוסף על הגדרת פיצול נתונים משלכם, קראו את המאמר מידע על פיצולי נתונים למודלים של AutoML.
- אם מדדי ההערכה של המודל כוללים מטריצת בלבול, תוכלו לראות אם המודל מבלבל בין שתי תוויות, כלומר אם המודל חוזה תווית מסוימת באופן משמעותי יותר מהתווית האמיתית. בודקים את הנתונים ומוודאים שהדוגמאות מתויגות בצורה נכונה.
- אם זמן האימון היה קצר (מספר מקסימלי נמוך של שעות שימוש בצומת), יכול להיות שתקבלו מודל באיכות גבוהה יותר אם תאפשרו לו להתאמן במשך זמן ארוך יותר (מספר מקסימלי גבוה יותר של שעות שימוש בצומת).