הגדרת ניתוח מודל Tensorflow

תְצוּרָה

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

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

  • הערכת מודל יחיד:
    • לא רלוונטי (כלומר ללא שם)
  • הערכה מבוססת אימות:
    • baseline
    • candidate
  • הערכת השוואת מודלים:
    • my_model_a
    • my_model_b

מפרט דגם

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

  • name - שם הדגם (אם נעשה שימוש במספר דגמים)
  • signature_name - שם החתימה המשמשת לחיזויים (ברירת המחדל היא serving_default ). השתמש eval אם אתה משתמש ב-EvalSavedModel.
  • label_key - שם התכונה המשויכת לתווית.
  • example_weight_key - שם התכונה המשויכת למשקל לדוגמה.

מפרט מדדים

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

מפרט חיתוך

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

  • {}
    • פרוסה המורכבת מנתונים כוללים.
  • { feature_keys: ["country"] }
    • פרוסות עבור כל הערכים בתכונה "מדינה". לדוגמה, אנו עשויים לקבל פרוסות "country:us", "country:jp" וכו'.
  • { feature_values: [{key: "country", value: "us"}] }
    • פרוסה המורכבת מ"מדינה:נו".
  • { feature_keys: ["country", "city"] }
    • פרוסות עבור כל הערכים בתכונה "מדינה" מוצלבות עם כל הערכים בתכונה "עיר" (שים לב שזה עשוי להיות יקר).
  • { feature_keys: ["country"] feature_values: [{key: "age", value: "20"}] }
    • פרוסות עבור כל הערכים בתכונה "מדינה" עם הערך "גיל:20"

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

EvalSharedModel

בנוסף להגדרות התצורה, TFMA דורש גם ליצור מופע של tfma.EvalSharedModel לשיתוף מודל בין שרשורים מרובים באותו תהליך. מופע המודל המשותף כולל מידע על סוג הדגם (keras וכו') וכיצד לטעון ולהגדיר את המודל מהמיקום השמור שלו בדיסק (למשל תגיות וכו'). ניתן להשתמש ב-API של tfma.default_eval_shared_model כדי ליצור מופע ברירת מחדל בהינתן נתיב וקבוצת תגים.