בקטעים הבאים של המאמר מפורטים דרישות הנתונים, קובץ הסכימה של הקלט/פלט והפורמט של קובצי ייבוא הנתונים (JSON Lines ו-CSV) שמוגדרים על ידי הסכימה.
הרשאות
כדי להשתמש בתמונות מקטגוריה של Cloud Storage, צריך להעניק לסוכן של Agent Platform Service את התפקיד Storage Object Viewer בקטגוריה. סוכן השירות הוא חשבון שירות בניהול Google ש-Agent Platform משתמשת בו כדי לגשת לנתונים שלכם בשמכם. הסבר מפורט יותר זמין במאמר סוכני שירות.
סיווג עם תווית אחת
הדרישות לגבי הנתונים
- נתוני אימון: הפורמטים הבאים של תמונות נתמכים כשמאמנים את המודל. אחרי ש-Agent Platform API מבצע עיבוד מקדים לתמונות המיובאות, הן משמשות כנתונים לאימון המודל. הגודל המקסימלי של כל קובץ תמונה הוא 30MB.
- JPEG
- GIF
- PNG
- BMP
- ICO
- נתוני חיזוי: כשמבקשים חיזוי מהמודל (שליחת שאילתה), אפשר להשתמש בפורמטים הבאים של תמונות. הגודל המקסימלי של כל קובץ הוא 1.5MB.
- JPEG
- GIF
- PNG
- WEBP
- BMP
- TIFF
- ICO
- מודלים של AutoML מותאמים לתמונות של אובייקטים בעולם האמיתי.
- נתוני האימון צריכים להיות כמה שיותר קרובים לנתונים שעליהם יתבססו התחזיות. לדוגמה, אם תרצו להשתמש במודל כדי לזהות תמונות מטושטשות ברזולוציה נמוכה (למשל, תמונות ממצלמת אבטחה), נתוני האימון צריכים לכלול תמונות מטושטשות ברזולוציה נמוכה. באופן כללי, כדאי גם לספק כמה זוויות, רזולוציות ורקעים לתמונות האימון.
- בדרך כלל, מודלים של Gemini Enterprise Agent Platform לא יכולים לחזות תוויות שאנשים לא יכולים להקצות. לכן, אם אי אפשר לאמן אדם להקצות תוויות על ידי התבוננות בתמונה למשך שנייה או שתיים, סביר להניח שגם את המודל אי אפשר לאמן לעשות זאת.
- מומלץ להשתמש בכ-1,000 תמונות לאימון לכל תווית. הסכום המינימלי לכל תווית הוא 10. באופן כללי, נדרשות יותר דוגמאות לכל תווית כדי לאמן מודלים עם כמה תוויות לכל תמונה, והציונים שמתקבלים קשים יותר לפירוש.
- המודל פועל בצורה הכי טובה כשיש לכל היותר פי 100 יותר תמונות לתווית הנפוצה ביותר מאשר לתווית הנפוצה הכי פחות. מומלץ להסיר תוויות עם תדירות נמוכה מאוד.
- מומלץ לכלול תווית None_of_the_above ותמונות שלא תואמות לאף אחת מהתוויות שהגדרתם. לדוגמה, אם אתם יוצרים מערך נתונים של פרחים, כדאי לכלול תמונות של פרחים שלא נכללים בזנים שסימנתם, ולסמן אותם בתווית None_of_the_above.
שיטות מומלצות לשימוש בנתוני תמונות לאימון מודלים של AutoML
השיטות המומלצות הבאות רלוונטיות למערכי נתונים שמשמשים לאימון מודלים באמצעות AutoML.
קובץ סכימת YAML
כדי לייבא הערות של סיווג תמונות עם תווית אחת, צריך להשתמש בקובץ הסכימה הבא שזמין לציבור. קובץ הסכימה הזה קובע את הפורמט של קובצי קלט הנתונים. המבנה של הקובץ הזה מבוסס על סכימת OpenAPI.
gs://google-cloud-aiplatform/schema/dataset/ioformat/image_classification_single_label_io_format_1.0.0.yaml
קובץ סכימה מלא
title: ImageClassificationSingleLabel description: > Import and export format for importing/exporting images together with single-label classification annotation. Can be used in Dataset.import_schema_uri field. type: object required: - imageGcsUri properties: imageGcsUri: type: string description: > A Cloud Storage URI pointing to an image. Up to 30MB in size. Supported file mime types: `image/jpeg`, `image/gif`, `image/png`, `image/webp`, `image/bmp`, `image/tiff`, `image/vnd.microsoft.icon`. classificationAnnotation: type: object description: Single classification Annotation on the image. properties: displayName: type: string description: > It will be imported as/exported from AnnotationSpec's display name, i.e. the name of the label/class. annotationResourceLabels: description: Resource labels on the Annotation. type: object additionalProperties: type: string dataItemResourceLabels: description: Resource labels on the DataItem. type: object additionalProperties: type: string
קבצי קלט
JSON Lines
JSON בכל שורה:
{
"imageGcsUri": "gs://bucket/filename.ext",
"classificationAnnotation": {
"displayName": "LABEL",
"annotationResourceLabels": {
"aiplatform.googleapis.com/annotation_set_name": "displayName",
"env": "prod"
}
},
"dataItemResourceLabels": {
"aiplatform.googleapis.com/ml_use": "training/test/validation"
}
}הערות בשדה:
-
imageGcsUri– שדה החובה היחיד. -
annotationResourceLabels– יכול להכיל כל מספר של צמדי מפתח/ערך של מחרוזות. צמד המפתח/ערך היחיד ששמור למערכת הוא:- "aiplatform.googleapis.com/annotation_set_name" : "value"
כאשר value הוא אחד מהשמות המוצגים של קבוצות ההערות הקיימות במערך הנתונים.
-
dataItemResourceLabels– יכול להכיל כל מספר של צמדי מפתח/ערך של מחרוזות. צמד המפתח/ערך היחיד ששמור למערכת הוא הבא, שמציין את קבוצת השימוש של למידת מכונה בפריט הנתונים:- "aiplatform.googleapis.com/ml_use" : "training/test/validation"
דוגמה ל-JSON Lines – image_classification_single_label.jsonl:
{"imageGcsUri": "gs://bucket/filename1.jpeg", "classificationAnnotation": {"displayName": "daisy"}, "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "test"}}
{"imageGcsUri": "gs://bucket/filename2.gif", "classificationAnnotation": {"displayName": "dandelion"}, "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}}
{"imageGcsUri": "gs://bucket/filename3.png", "classificationAnnotation": {"displayName": "roses"}, "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}}
{"imageGcsUri": "gs://bucket/filename4.bmp", "classificationAnnotation": {"displayName": "sunflowers"}, "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}}
{"imageGcsUri": "gs://bucket/filename5.tiff", "classificationAnnotation": {"displayName": "tulips"}, "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "validation"}}
...CSV
פורמט CSV:
[ML_USE],GCS_FILE_PATH,[LABEL]
-
ML_USE(אופציונלי) – לצורך פיצול נתונים כשמאמנים מודל. משתמשים ב-TRAINING, TEST או VALIDATION. מידע נוסף על פיצול נתונים ידני זמין במאמר מידע על פיצול נתונים למודלים של AutoML. -
GCS_FILE_PATH– השדה הזה מכיל את ה-URI של Cloud Storage לתמונה. כתובות URI של Cloud Storage הן תלויות רישיות. LABEL(אופציונלי) – התוויות חייבות להתחיל באות ולהכיל רק אותיות, מספרים וקווים תחתונים.
דוגמה לקובץ CSV – image_classification_single_label.csv:
test,gs://bucket/filename1.jpeg,daisy
training,gs://bucket/filename2.gif,dandelion
gs://bucket/filename3.png
gs://bucket/filename4.bmp,sunflowers
validation,gs://bucket/filename5.tiff,tulips
...
סיווג עם כמה תוויות
הדרישות לגבי הנתונים
- נתוני אימון: הפורמטים הבאים של תמונות נתמכים כשמאמנים את המודל. אחרי ש-Agent Platform API מבצע עיבוד מקדים לתמונות המיובאות, הן משמשות כנתונים לאימון המודל. הגודל המקסימלי של כל קובץ תמונה הוא 30MB.
- JPEG
- GIF
- PNG
- BMP
- ICO
- נתוני חיזוי: כשמבקשים חיזוי מהמודל (שליחת שאילתה), אפשר להשתמש בפורמטים הבאים של תמונות. הגודל המקסימלי של כל קובץ הוא 1.5MB.
- JPEG
- GIF
- PNG
- WEBP
- BMP
- TIFF
- ICO
- מודלים של AutoML מותאמים לתמונות של אובייקטים בעולם האמיתי.
- נתוני האימון צריכים להיות כמה שיותר קרובים לנתונים שעליהם יתבססו התחזיות. לדוגמה, אם תרצו להשתמש במודל כדי לזהות תמונות מטושטשות ברזולוציה נמוכה (למשל, תמונות ממצלמת אבטחה), נתוני האימון צריכים לכלול תמונות מטושטשות ברזולוציה נמוכה. באופן כללי, כדאי גם לספק כמה זוויות, רזולוציות ורקעים לתמונות האימון.
- בדרך כלל, מודלים של Gemini Enterprise Agent Platform לא יכולים לחזות תוויות שאנשים לא יכולים להקצות. לכן, אם אי אפשר לאמן אדם להקצות תוויות על ידי התבוננות בתמונה למשך שנייה או שתיים, סביר להניח שגם את המודל אי אפשר לאמן לעשות זאת.
- מומלץ להשתמש בכ-1,000 תמונות לאימון לכל תווית. הסכום המינימלי לכל תווית הוא 10. באופן כללי, נדרשות יותר דוגמאות לכל תווית כדי לאמן מודלים עם כמה תוויות לכל תמונה, והציונים שמתקבלים קשים יותר לפירוש.
- המודל פועל בצורה הכי טובה כשיש לכל היותר פי 100 יותר תמונות לתווית הנפוצה ביותר מאשר לתווית הנפוצה הכי פחות. מומלץ להסיר תוויות עם תדירות נמוכה מאוד.
- מומלץ לכלול תווית None_of_the_above ותמונות שלא תואמות לאף אחת מהתוויות שהגדרתם. לדוגמה, אם אתם יוצרים מערך נתונים של פרחים, כדאי לכלול תמונות של פרחים שלא נכללים בזנים שסימנתם, ולסמן אותם בתווית None_of_the_above.
שיטות מומלצות לשימוש בנתוני תמונות לאימון מודלים של AutoML
השיטות המומלצות הבאות רלוונטיות למערכי נתונים שמשמשים לאימון מודלים באמצעות AutoML.
קובץ סכימת YAML
כדי לייבא הערות של סיווג תמונות עם כמה תוויות, צריך להשתמש בקובץ הסכימה הבא שזמין לציבור. קובץ הסכימה הזה קובע את הפורמט של קובצי קלט הנתונים. המבנה של הקובץ הזה מבוסס על סכימת OpenAPI.
קובץ סכימה מלא
title: ImageClassificationMultiLabel description: > Import and export format for importing/exporting images together with multi-label classification annotations. Can be used in Dataset.import_schema_uri field. type: object required: - imageGcsUri properties: imageGcsUri: type: string description: > A Cloud Storage URI pointing to an image. Up to 30MB in size. Supported file mime types: `image/jpeg`, `image/gif`, `image/png`, `image/webp`, `image/bmp`, `image/tiff`, `image/vnd.microsoft.icon`. classificationAnnotations: type: array description: Multiple classification Annotations on the image. items: type: object description: Classification annotation. properties: displayName: type: string description: > It will be imported as/exported from AnnotationSpec's display name, i.e. the name of the label/class. annotationResourceLabels: description: Resource labels on the Annotation. type: object additionalProperties: type: string dataItemResourceLabels: description: Resource labels on the DataItem. type: object additionalProperties: type: string
קבצי קלט
JSON Lines
JSON בכל שורה:
{
"imageGcsUri": "gs://bucket/filename.ext",
"classificationAnnotations": [
{
"displayName": "LABEL1",
"annotationResourceLabels": {
"aiplatform.googleapis.com/annotation_set_name":"displayName",
"label_type": "flower_type"
}
},
{
"displayName": "LABEL2",
"annotationResourceLabels": {
"aiplatform.googleapis.com/annotation_set_name":"displayName",
"label_type": "image_shot_type"
}
}
],
"dataItemResourceLabels": {
"aiplatform.googleapis.com/ml_use": "training/test/validation"
}
}הערות בשדה:
-
imageGcsUri– שדה החובה היחיד. -
annotationResourceLabels– יכול להכיל כל מספר של צמדי מפתח/ערך של מחרוזות. צמד המפתח/ערך היחיד ששמור למערכת הוא:- "aiplatform.googleapis.com/annotation_set_name" : "value"
כאשר value הוא אחד מהשמות המוצגים של קבוצות ההערות הקיימות במערך הנתונים.
-
dataItemResourceLabels– יכול להכיל כל מספר של צמדי מפתח/ערך של מחרוזות. צמד המפתח/ערך היחיד ששמור למערכת הוא הבא, שמציין את קבוצת השימוש של למידת מכונה בפריט הנתונים:- "aiplatform.googleapis.com/ml_use" : "training/test/validation"
דוגמה ל-JSON Lines – image_classification_multi_label.jsonl:
{"imageGcsUri": "gs://bucket/filename1.jpeg", "classificationAnnotations": [{"displayName": "daisy"}, {"displayName": "full_shot"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "test"}}
{"imageGcsUri": "gs://bucket/filename2.gif", "classificationAnnotations": [{"displayName": "dandelion"}, {"displayName": "medium_shot"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}}
{"imageGcsUri": "gs://bucket/filename3.png", "classificationAnnotations": [{"displayName": "roses"}, {"displayName": "extreme_closeup"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}}
{"imageGcsUri": "gs://bucket/filename4.bmp", "classificationAnnotations": [{"displayName": "sunflowers"}, {"displayName": "closeup"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "training"}}
{"imageGcsUri": "gs://bucket/filename5.tiff", "classificationAnnotations": [{"displayName": "tulips"}, {"displayName": "extreme_closeup"}], "dataItemResourceLabels": {"aiplatform.googleapis.com/ml_use": "validation"}}
...CSV
פורמט CSV:
[ML_USE],GCS_FILE_PATH,[LABEL1,LABEL2,...LABELn]
-
ML_USE(אופציונלי) – לצורך פיצול נתונים כשמאמנים מודל. משתמשים ב-TRAINING, TEST או VALIDATION. מידע נוסף על פיצול נתונים ידני זמין במאמר מידע על פיצול נתונים למודלים של AutoML. -
GCS_FILE_PATH– השדה הזה מכיל את ה-URI של Cloud Storage לתמונה. כתובות URI של Cloud Storage הן תלויות רישיות. -
LABEL(אופציונלי) – התוויות חייבות להתחיל באות ויכולות להכיל רק אותיות, מספרים וקווים תחתונים.
דוגמה לקובץ CSV – image_classification_multi_label.csv:
test,gs://bucket/filename1.jpeg,daisy,full_shot
training,gs://bucket/filename2.gif,dandelion,medium_shot
gs://bucket/filename3.png
gs://bucket/filename4.bmp,sunflowers,closeup
validation,gs://bucket/filename5.tiff,tulips,extreme_closeup
...