הגדרת ניתוח מודל 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 - שם התכונה assocated עם משקל למשל.

מפרט מדדים

מפרט ערכים הם מסוג 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 וכו') וכיצד לטעון ולהגדיר את המודל מהמיקום השמור שלו בדיסק (למשל תגים וכו'). tfma.default_eval_shared_model API ניתן להשתמש כדי ליצור מופע בהינתן חדלות נתיב תגיות.