מודלים וסכימות נתמכים

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

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

הקשר בין מודלים להעשרת אובייקטים

כדי להפעיל מודלים, יוצרים תצורת תכונה (FeatureConfig) שמציינת אילו קטגוריות לסרוק ואילו מודלים להריץ. במהלך העיבוד האסינכרוני, Cloud Storage מעריך את האובייקטים המתאימים באמצעות המודלים שבחרתם, ויוצר מטא-נתונים מובְנים בפורמט JSON שנקראים "העשרת אובייקטים".

כל מודל יוצר מטען ייעודי (payload) ייעודי של JSON, שמערכת Cloud Storage מצרפת ישירות לאובייקט כהקשר של אובייקט בניהול Google, במאפיין contexts.custom. מפתח הקשר ייחודי עם הקידומת google:annotation: מזהה כל מטען ייעודי (payload).

בהתאם לתהליך העבודה שלכם, אתם יכולים לצרוך את המטא-נתונים האלה בשתי דרכים:

איתור פנים

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

פרטי המודל

  • שם המודל: face-detector
  • מפתח הקשר: google:annotation:face-detector-v1
  • ‫אובייקטים שעומדים בדרישות: אובייקטים של תמונות בגודל 20MiB או פחות, עם Content-Type נתמך של BMP,‏ GIF,‏ ICO,‏ JPEG,‏ PNG,‏ TIFF או WEBP.

סכימת הפלט

הפלט מהמודל הוא אובייקט JSON שמכיל את modelName, modelVersion ו-faceAnnotationGroup עם מערך של faceAnnotations. אם הפעלת המודל נכשלת, אובייקט ה-JSON מכיל אובייקט error במקום faceAnnotationGroup.

שדה סוג טווח תיאור
modelName string לא רלוונטי השם של מודל למידת המכונה שיצר את ההעשרה הזו.
modelVersion string לא רלוונטי גרסת המודל של למידת המכונה שיצרה את ההעשרה הזו.
faceAnnotationGroup object לא רלוונטי אובייקט קונטיינר ברמה העליונה להעשרות של זיהוי פנים. מופיע כשהמודל מופעל בהצלחה.
faceAnnotationGroup.faceAnnotations[] array לא רלוונטי רשימה של הפנים שזוהו בתמונה.
faceAnnotationGroup.faceAnnotations[].boundingPoly object לא רלוונטי BoundingPoly שמקיפה את כל הראש והפנים, בהתאם לממדי התמונה המקורית.
faceAnnotationGroup.faceAnnotations[].faceDetectionBoundingPoly object לא רלוונטי ה-BoundingPoly לאיתור פנים. צמוד יותר מ-boundingPoly, כך שרק העור ותווי הפנים הגלויים נכללים.
faceAnnotationGroup.faceAnnotations[].landmarks[] array לא רלוונטי רשימה של אובייקטים מסוג FaceLandmark שזוהו ומייצגים תווי פנים ספציפיים.
faceAnnotationGroup.faceAnnotations[].rollAngle number -180 עד 180 סיבוב הפנים בכיוון השעון או נגד כיוון השעון, במעלות.
faceAnnotationGroup.faceAnnotations[].panAngle number -180 עד 180 הזווית האופקית שבה הפנים פונות שמאלה או ימינה, במעלות.
faceAnnotationGroup.faceAnnotations[].tiltAngle number -180 עד 180 זווית ההטיה האנכית של הפנים כלפי מעלה או מטה, במעלות.
faceAnnotationGroup.faceAnnotations[].detectionConfidence number ‫0 עד 1 (0% עד 100%) ציון מהימנות לזיהוי הפנים הכולל.
faceAnnotationGroup.faceAnnotations[].landmarkingConfidence number ‫0 עד 1 (0% עד 100%) ציון מהימנות למיקום של נקודת ציון בפנים.
faceAnnotationGroup.faceAnnotations[].joyProbability number ‫0 עד 1 (0% עד 100%) הסבירות שהפנים מביעות שמחה.
faceAnnotationGroup.faceAnnotations[].sorrowProbability number ‫0 עד 1 (0% עד 100%) הסבירות שהפנים מביעות צער.
faceAnnotationGroup.faceAnnotations[].angerProbability number ‫0 עד 1 (0% עד 100%) הסבירות שהפנים מביעות כעס.
faceAnnotationGroup.faceAnnotations[].surpriseProbability number ‫0 עד 1 (0% עד 100%) הסבירות שהפנים מביעות הפתעה.
faceAnnotationGroup.faceAnnotations[].underExposedProbability number ‫0 עד 1 (0% עד 100%) הסבירות שהפנים בתמונה בחשיפת חסר.
faceAnnotationGroup.faceAnnotations[].blurredProbability number ‫0 עד 1 (0% עד 100%) הסבירות שהפנים בתמונה מטושטשות.
faceAnnotationGroup.faceAnnotations[].headwearProbability number ‫0 עד 1 (0% עד 100%) הסבירות שהאדם חובש כיסוי ראש, כמו כובע או כובע מצחייה.
error object לא רלוונטי אובייקט google.rpc.Status שמכיל את code ו-message. השדה הזה מאוכלס רק אם הפעלת המודל נכשלת.

BoundingPoly

האובייקט BoundingPoly מייצג פוליגון תוחם שמקיף מאפיין תמונה שזוהה.

שדה סוג טווח תיאור
vertices[] array לא רלוונטי קואורדינטות של פוליגון תוחם באמצעות אובייקטים של פיקסלים מוחלטים מסוג Vertex.
normalizedVertices[] array לא רלוונטי קואורדינטות של מצולע תוחם באמצעות אובייקטים יחסיים של NormalizedVertex, בקנה מידה של 0 עד 1.

Vertex

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

שדה סוג טווח תיאור
x integer ‫0 או יותר קואורדינטת X אופקית, בפיקסלים מהקצה השמאלי.
y integer ‫0 או יותר קואורדינטת Y אנכית, בפיקסלים מהקצה העליון.

NormalizedVertex

האובייקט NormalizedVertex מייצג נקודת קואורדינטה דו-ממדית שמבוטאת כיחס לממדי התמונה המקורית.

שדה סוג טווח תיאור
x number 0 עד 1 קואורדינטת X אופקית ביחס לרוחב התמונה, כאשר 0.0 הוא הקצה השמאלי ו-1.0 הוא הקצה הימני.
y number 0 עד 1 קואורדינטת Y אנכית ביחס לגובה התמונה, כאשר 0.0 הוא הקצה העליון ו-1.0 הוא הקצה התחתון.

FaceLandmark

האובייקט FaceLandmark מייצג נקודת ציון ספציפית שזוהתה בפנים.

שדה סוג טווח תיאור
type enum סוג נקודת הציון המאפיין הספציפי שזוהה בפנים.
position object לא רלוונטי Position התלת-ממדי של נקודת הציון.

סוג ציון הדרך

המודל מזהה 36 נקודות ציון ספציפיות בפנים:

  • TYPE_UNSPECIFIED
  • LEFT_EYE
  • RIGHT_EYE
  • LEFT_OF_LEFT_EYEBROW
  • RIGHT_OF_LEFT_EYEBROW
  • LEFT_OF_RIGHT_EYEBROW
  • RIGHT_OF_RIGHT_EYEBROW
  • MIDPOINT_BETWEEN_EYES
  • NOSE_TIP
  • UPPER_LIP
  • LOWER_LIP
  • MOUTH_LEFT
  • MOUTH_RIGHT
  • MOUTH_CENTER
  • NOSE_BOTTOM_RIGHT
  • NOSE_BOTTOM_LEFT
  • NOSE_BOTTOM_CENTER
  • LEFT_EYE_TOP_BOUNDARY
  • LEFT_EYE_RIGHT_CORNER
  • LEFT_EYE_BOTTOM_BOUNDARY
  • LEFT_EYE_LEFT_CORNER
  • RIGHT_EYE_TOP_BOUNDARY
  • RIGHT_EYE_RIGHT_CORNER
  • RIGHT_EYE_BOTTOM_BOUNDARY
  • RIGHT_EYE_LEFT_CORNER
  • LEFT_EYEBROW_UPPER_MIDPOINT
  • RIGHT_EYEBROW_UPPER_MIDPOINT
  • LEFT_EAR_TRAGION
  • RIGHT_EAR_TRAGION
  • LEFT_EYE_PUPIL
  • RIGHT_EYE_PUPIL
  • FOREHEAD_GLABELLA
  • CHIN_GNATHION
  • CHIN_LEFT_GONION
  • CHIN_RIGHT_GONION
  • LEFT_CHEEK_CENTER
  • RIGHT_CHEEK_CENTER

מקום

האובייקט Position מייצג את הקואורדינטות התלת-ממדיות של נקודת ציון בפנים.

שדה סוג טווח תיאור
x number לא רלוונטי קואורדינטת X אופקית.
y number לא רלוונטי קואורדינטת Y אנכית.
z number לא רלוונטי קואורדינטת העומק ביחס למישור הפנים, כאשר ערכים קטנים יותר קרובים יותר למצלמה.

פלט לדוגמה

{
  "modelName": "face-detector",
  "modelVersion": "v1",
  "faceAnnotationGroup": {
    "faceAnnotations": [
      {
        "boundingPoly": {
          "vertices": [
            { "x": 1079, "y": 148 },
            { "x": 2152, "y": 148 },
            { "x": 2152, "y": 1396 },
            { "x": 1079, "y": 1396 }
          ],
          "normalizedVertices": [
            { "x": 0.35, "y": 0.12 },
            { "x": 0.70, "y": 0.12 },
            { "x": 0.70, "y": 0.95 },
            { "x": 0.35, "y": 0.95 }
          ]
        },
        "faceDetectionBoundingPoly": {
          "vertices": [
            { "x": 1190, "y": 427 },
            { "x": 2037, "y": 427 },
            { "x": 2037, "y": 1285 },
            { "x": 1190, "y": 1285 }
          ]
        },
        "landmarks": [
          {
            "type": "LEFT_EYE",
            "position": { "x": 1368.8, "y": 737.6, "z": 0.0016 }
          },
          {
            "type": "RIGHT_EYE",
            "position": { "x": 1659.2, "y": 755.1, "z": -116.4 }
          }
        ],
        "rollAngle": 1.959,
        "panAngle": -21.954,
        "tiltAngle": -2.267,
        "detectionConfidence": 0.98,
        "landmarkingConfidence": 0.61,
        "joyProbability": 0.18,
        "headwearProbability": 0.80
      }
    ]
  }
}

זיהוי אובייקטים

אפשר להשתמש במודל object-detector כדי לזהות ולעקוב אחרי כמה אובייקטים נפרדים בתמונה. לכל אובייקט שזוהה, המודל מספק שם ישות, מזהה ישות של Knowledge Graph‏ (knowledgeGraphId), ציון מהימנות וקואורדינטות של תיבה תוחמת.

פרטי המודל

  • שם המודל: object-detector
  • מפתח הקשר: google:annotation:object-detector-v1
  • ‫אובייקטים שעומדים בדרישות: אובייקטים של תמונות בגודל 20MiB או פחות, עם Content-Type נתמך של BMP,‏ GIF,‏ ICO,‏ JPEG,‏ PNG,‏ TIFF או WEBP.

סכימת הפלט

המודל מוציא אובייקט JSON שמכיל את modelName, modelVersion ו-objectAnnotationGroup עם מערך של objectAnnotations. אם הפעלת המודל נכשלת, אובייקט ה-JSON מכיל אובייקט error במקום objectAnnotationGroup.

שדה סוג טווח תיאור
modelName string לא רלוונטי השם של מודל למידת המכונה שיצר את ההעשרה הזו.
modelVersion string לא רלוונטי גרסת המודל של למידת המכונה שיצרה את ההעשרה הזו.
objectAnnotationGroup object לא רלוונטי אובייקט קונטיינר ברמה העליונה להעשרות של זיהוי אובייקטים. מופיע כשהמודל מופעל בהצלחה.
objectAnnotationGroup.objectAnnotations[] array לא רלוונטי רשימה של אובייקטים שזוהו בתמונה.
objectAnnotationGroup.objectAnnotations[].knowledgeGraphId string לא רלוונטי מזהה הישות ב-Knowledge Graph של Google של האובייקט שזוהה.
objectAnnotationGroup.objectAnnotations[].name string לא רלוונטי השם או התווית של האובייקט שזוהה, כמו "Person" או "Chair".
objectAnnotationGroup.objectAnnotations[].score number ‫0 עד 1 (0% עד 100%) ציון המהימנות של זיהוי האובייקטים.
objectAnnotationGroup.objectAnnotations[].boundingPoly object לא רלוונטי BoundingPoly מסביב לאובייקט, שמכילה קואורדינטות של פיקסלים (vertices) וקואורדינטות מנורמלות (normalizedVertices).
error object לא רלוונטי אובייקט google.rpc.Status שמכיל את code ו-message. השדה הזה מאוכלס רק אם הפעלת המודל נכשלת.

פלט לדוגמה

{
  "modelName": "object-detector",
  "modelVersion": "v1",
  "objectAnnotationGroup": {
    "objectAnnotations": [
      {
        "knowledgeGraphId": "/m/01g317",
        "name": "Person",
        "score": 0.89,
        "boundingPoly": {
          "normalizedVertices": [
            { "x": 0.1, "y": 0.15 },
            { "x": 0.2, "y": 0.15 },
            { "x": 0.2, "y": 0.3 },
            { "x": 0.1, "y": 0.3 }
          ]
        }
      }
    ]
  }
}

הוספת תוויות כלליות לתמונות

אתם יכולים להשתמש במודל label-detector כדי ליצור תוויות תיאוריות, מילות מפתח וקטגוריות סמנטיות רחבות לתמונות. המודל מזהה ישויות כלליות, נופים, פעילויות ומיקומים, כמו Landscape, Urban או Night, ומאפשר לחפש בנכסים החזותיים ולקטלג אותם.

פרטי המודל

  • שם המודל: label-detector
  • מפתח הקשר: google:annotation:label-detector-v1
  • ‫אובייקטים שעומדים בדרישות: אובייקטים של תמונות בגודל 20MiB או פחות, עם Content-Type נתמך של BMP,‏ GIF,‏ ICO,‏ JPEG,‏ PNG,‏ TIFF או WEBP.

סכימת הפלט

הפלט מהמודל הוא אובייקט JSON שמכיל את modelName, modelVersion ו-labelAnnotationGroup עם מערך של labelAnnotations. אם הפעלת המודל נכשלת, אובייקט ה-JSON מכיל אובייקט error במקום labelAnnotationGroup.

שדה סוג טווח תיאור
modelName string לא רלוונטי השם של מודל למידת המכונה שיצר את ההעשרה הזו.
modelVersion string לא רלוונטי גרסת המודל של למידת המכונה שיצרה את ההעשרה הזו.
labelAnnotationGroup object לא רלוונטי אובייקט קונטיינר ברמה העליונה להעשרת תוויות של תמונות. מופיע כשהמודל מופעל בהצלחה.
labelAnnotationGroup.labelAnnotations[] array לא רלוונטי רשימה של תוויות וקטגוריות שזוהו.
labelAnnotationGroup.labelAnnotations[].knowledgeGraphId string לא רלוונטי מזהה הישות של התווית ב-Google Knowledge Graph.
labelAnnotationGroup.labelAnnotations[].description string לא רלוונטי תיאור טקסטואלי או שם התווית של הישות שזוהתה.
labelAnnotationGroup.labelAnnotations[].score number ‫0 עד 1 (0% עד 100%) ציון המהימנות של התווית.
labelAnnotationGroup.labelAnnotations[].topicality number ‫0 עד 1 (0% עד 100%) מידת הרלוונטיות של התווית לנושא העיקרי של התמונה. ככל שהניקוד גבוה יותר, כך הנושא בולט יותר.
error object לא רלוונטי אובייקט google.rpc.Status שמכיל את code ו-message. השדה הזה מאוכלס רק אם הפעלת המודל נכשלת.

פלט לדוגמה

{
  "modelName": "label-detector",
  "modelVersion": "v1",
  "labelAnnotationGroup": {
    "labelAnnotations": [
      {
        "knowledgeGraphId": "/m/01d74z",
        "description": "Night",
        "score": 0.92,
        "topicality": 0.19
      }
    ]
  }
}

זיהוי תוכן בוטה

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

פרטי המודל

  • שם המודל: content-safety
  • מפתח הקשר: google:annotation:content-safety-v1
  • ‫אובייקטים שעומדים בדרישות: אובייקטים של תמונות בגודל 20MiB או פחות, עם Content-Type נתמך של BMP,‏ GIF,‏ ICO,‏ JPEG,‏ PNG,‏ TIFF או WEBP.

סכימת הפלט

המודל מוציא אובייקט JSON שמכיל את modelName, modelVersion ואובייקט contentSafetyAnnotation עם דירוגי סבירות. אם הפעלת המודל נכשלת, אובייקט ה-JSON מכיל אובייקט error במקום contentSafetyAnnotation.

שדה סוג ערכים / טווח תיאור
modelName string לא רלוונטי השם של מודל למידת המכונה שיצר את ההעשרה הזו.
modelVersion string לא רלוונטי גרסת המודל של למידת המכונה שיצרה את ההעשרה הזו.
contentSafetyAnnotation object לא רלוונטי אובייקט קונטיינר ברמה העליונה לתוצאות של ניתוח תוכן. מופיע כשהמודל מופעל בהצלחה.
contentSafetyAnnotation.adultContentLikelihood string VERY_UNLIKELY, UNLIKELY, POSSIBLE, LIKELY, VERY_LIKELY הסבירות שהתמונה מכילה תוכן למבוגרים בלבד.
contentSafetyAnnotation.violentContentLikelihood string VERY_UNLIKELY, UNLIKELY, POSSIBLE, LIKELY, VERY_LIKELY הסבירות שהתמונה מציגה אלימות.
error object לא רלוונטי אובייקט google.rpc.Status שמכיל את code ו-message. השדה הזה מאוכלס רק אם הפעלת המודל נכשלת.

פלט לדוגמה

{
  "modelName": "content-safety",
  "modelVersion": "v1",
  "contentSafetyAnnotation": {
    "adultContentLikelihood": "VERY_UNLIKELY",
    "violentContentLikelihood": "UNLIKELY"
  }
}

סיווג קובצי PDF

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

פרטי המודל

  • שם המודל: pdf-classification
  • מפתח הקשר: google:annotation:pdf-classification-v1
  • אובייקטים שעומדים בדרישות: אובייקטים של מסמכי PDF בגודל של עד ‎20MiB עם Content-Type של application/pdf.

סכימת הפלט

הפלט מהמודל מוציא אובייקט JSON שמכיל את modelName, modelVersion ו-pdfClassificationCategoryList עם מערך של categories מסווגים. אם הפעלת המודל נכשלת, אובייקט ה-JSON מכיל אובייקט error במקום pdfClassificationCategoryList.

שדה סוג טווח תיאור
modelName string לא רלוונטי השם של מודל למידת המכונה שיצר את ההעשרה הזו.
modelVersion string לא רלוונטי גרסת המודל של למידת המכונה שיצרה את ההעשרה הזו.
pdfClassificationCategoryList object לא רלוונטי אובייקט קונטיינר ברמה העליונה לתוצאות הסיווג של קובצי PDF. מופיע כשהמודל מופעל בהצלחה.
pdfClassificationCategoryList.categories[] array לא רלוונטי רשימה של קטגוריות סיווג שזוהו.
pdfClassificationCategoryList.categories[].label string קטגוריות הסיווג של קובצי PDF הנתיב של הקטגוריה ההיררכית, למשל "/Finance/Accounting & Auditing/Tax Preparation & Planning".
pdfClassificationCategoryList.categories[].score number ‫0 עד 1 (0% עד 100%) ציון המהימנות של הקטגוריה שהוקצתה.
error object לא רלוונטי אובייקט google.rpc.Status שמכיל את code ו-message. השדה הזה מאוכלס רק אם הפעלת המודל נכשלת.

קטגוריות נתמכות

המודל pdf-classification מקצה קטגוריות תוכן היררכיות סטנדרטיות למסמכי PDF.

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

  • ענפים ברמה העליונה: תחומי נושאים רחבים, כמו /Finance, /Law & Government או /Computers & Electronics.
  • קטגוריות משנה: נושאים ספציפיים בתוך ענף, כמו /Finance/Accounting & Auditing/Tax Preparation & Planning.
  • קטגוריות משנה של /Other: קטגוריות של תוכן שתואם לקטגוריית ההורה אבל לא מתאים לאף קטגוריית משנה ספציפית.

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

קטגוריות ברמה העליונה

המודל מסווג מסמכי PDF ל-27 קטגוריות ברמה העליונה:

  • /Adult
  • /Arts & Entertainment
  • /Autos & Vehicles
  • /Beauty & Fitness
  • /Books & Literature
  • /Business & Industrial
  • /Computers & Electronics
  • /Finance
  • /Food & Drink
  • /Games
  • /Health
  • /Hobbies & Leisure
  • /Home & Garden
  • /Internet & Telecom
  • /Jobs & Education
  • /Law & Government
  • /News
  • /Online Communities
  • /People & Society
  • /Pets & Animals
  • /Real Estate
  • /Reference
  • /Science
  • /Sensitive Subjects
  • /Shopping
  • /Sports
  • /Travel & Transportation

קטגוריות המשנה מופיעות בנתיב ההיררכי /Top-Level-Vertical/Subcategory, עם רמות עמוקות יותר (אופציונלי) מתחת לקטגוריות ברמה העליונה. ברשימה הזו מפורטים כל הנתיבים של הקטגוריות לסיווג קובצי PDF.

פלט לדוגמה

{
  "modelName": "pdf-classification",
  "modelVersion": "v1",
  "pdfClassificationCategoryList": {
    "categories": [
      {
        "label": "/Finance/Accounting & Auditing/Tax Preparation & Planning",
        "score": 0.85
      },
      {
        "label": "/Business & Industrial/Printing & Publishing/Document & Printing Services",
        "score": 0.25
      }
    ]
  }
}

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