תהליך עבודה טבלאי ל-TabNet

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

TabNet משתמש בתשומת לב רציפה כדי לבחור את התכונות שמהן יוסקו מסקנות בכל שלב של קבלת החלטה. השיטה הזו מקדמת פרשנות ולמידה יעילה יותר, כי יכולת הלמידה משמשת לתכונות הבולטות ביותר.

יתרונות

  • המערכת בוחרת באופן אוטומטי את מרחב החיפוש המתאים של היפר-פרמטרים על סמך גודל מערך הנתונים, סוג ההיקש ותקציב האימון.
  • משולב עם Vertex AI. המודל המאומן הוא מודל Vertex AI. אתם יכולים להריץ מסקנות באצווה או לפרוס את המודל למסקנות אונליין באופן מיידי.
  • מספק יכולת מובנית לפרשנות של המודל. אתם יכולים לקבל תובנות לגבי התכונות שבהן נעשה שימוש ב-TabNet כדי לקבל את ההחלטה.
  • תמיכה באימון GPU.

‫TabNet ב-Vertex AI Pipelines

‫Tabular Workflow for TabNet הוא מופע מנוהל של Vertex AI Pipelines.

Vertex AI Pipelines הוא שירות ללא שרתים שמריץ צינורות עיבוד נתונים של Kubeflow. אתם יכולים להשתמש בצינורות כדי להפוך לאוטומטיות את המשימות שלכם בלמידת מכונה ובהכנת נתונים, ולעקוב אחריהן. כל שלב בצינור העברת נתונים מבצע חלק מזרימת העבודה של צינור העברת הנתונים. לדוגמה, צינור יכול לכלול שלבים לפיצול נתונים, המרה של סוגי נתונים ואימון מודל. מכיוון ששלבים הם מופעים של רכיבי צינור עיבוד נתונים, יש להם קלט, פלט וקובץ אימג' של קונטיינר. אפשר להגדיר את קלט השלב מתוך הקלט של צינור העיבוד, או שהוא יכול להיות תלוי בפלט של שלבים אחרים בצינור העיבוד הזה. התלויות האלה מגדירות את תהליך העבודה של הצינור כגרף אציקלי מכוון.

יש שתי גרסאות של Tabular Workflow for TabNet:

  • HyperparameterTuningJob מחפש את קבוצת הערכים הכי טובה של היפר-פרמטרים לשימוש באימון המודל.
  • CustomJob מאפשר לכם לציין את ערכי ההיפר-פרמטרים שבהם יש להשתמש לאימון המודל. אם אתם יודעים בדיוק אילו ערכים של היפרפרמטרים אתם צריכים, ציינו אותם במקום לחפש אותם, וכך לחסוך במשאבי אימון.

סקירה כללית של צינור (pipeline) ורכיבים של TabNet CustomJob

התרשים הבא ממחיש את צינור עיבוד הנתונים של TabNet CustomJob:

צינור עיבוד נתונים ל-TabNet CustomJob 

הרכיבים של צינור עיבוד הנתונים הם:

  1. feature-transform-engine: ביצוע הנדסת פיצ'רים. פרטים נוספים זמינים במאמר בנושא Feature Transform Engine.
  2. split-materialized-data: פיצול הנתונים המגובשים לקבוצת נתונים לאימון, לקבוצת הערכה ולקבוצת נתונים לבדיקה.

    קלט:

    • נתונים מהותיים materialized_data.

    פלט:

    • חלוקת האימון שהתממשה materialized_train_split.
    • פיצול חומרי הערכה materialized_eval_split.
    • קבוצת נתונים לבדיקה materialized_test_split.
  3. tabnet-trainer: ביצוע אימון מודל.

    קלט:

    • ערך הבסיס של המופע instance_baseline.
    • סכימת אימון training_schema.
    • פלט הטרנספורמציה transform_output.
    • חלוקת רכבת מהותית materialized_train_split.
    • פיצול חומרי הערכה materialized_eval_split.
    • קבוצת נתונים לבדיקה materialized_test_split.

    פלט:

    • מודל סופי
  4. automl-tabular-infra-validator: אימות המודל שאומן על ידי שליחת בקשת חיזוי ובדיקה אם היא הושלמה בהצלחה.
  5. model-upload: העלאת המודל מקטגוריה של Cloud Storage של המשתמש ל-Vertex AI בתור מודל Vertex AI.
  6. condition-run-evaluation-2: אופציונלי. משתמשים בקבוצת הנתונים לבדיקה כדי לחשב את מדדי ההערכה. ההגדרה הזו פועלת רק אם הערך של run_evaluation הוא true.

סקירה כללית של צינור (pipeline) ורכיבים של TabNet HyperparameterTuningJob

התרשים הבא מדגים את צינור עיבוד הנתונים של TabNet HyperparameterTuningJob:

צינור עיבוד נתונים ל-TabNet HyperparameterTuningJob 

  1. feature-transform-engine: ביצוע הנדסת פיצ'רים. פרטים נוספים זמינים במאמר בנושא Feature Transform Engine.
  2. split-materialized-data: פיצול הנתונים המגובשים לקבוצת נתונים לאימון, לקבוצת הערכה ולקבוצת נתונים לבדיקה.

    קלט:

    • נתונים מהותיים materialized_data.

    פלט:

    • חלוקת האימון שהתממשה materialized_train_split.
    • פיצול חומרי הערכה materialized_eval_split.
    • קבוצת נתונים לבדיקה materialized_test_split.
  3. get-tabnet-study-spec-parameters: יצירת מפרט המחקר על סמך הגדרה של צינור ההדרכה. אם המשתמש מספק ערכים ל-study_spec_parameters_override, המערכת משתמשת בערכים האלה כדי לבטל את הערכים שצוינו במפרט המחקר.

    קלט:

    • הגדרת צינור עיבוד נתונים לאימון (max_trial_count, prediction_type).
    • נתונים סטטיסטיים של מערך הנתונים dataset_stats.
    • שינוי אופציונלי של פרמטרים במפרט המחקר study_spec_parameters_override.

    פלט:

    • רשימה סופית של היפר-פרמטרים והטווחים שלהם למשימת כוונון ההיפר-פרמטרים.
  4. tabnet-hyperparameter-tuning-job: ביצוע ניסוי אחד או יותר של כוונון היפר-פרמטרים.

    קלט:

    • ערך הבסיס של המופע instance_baseline.
    • סכימת אימון training_schema.
    • פלט הטרנספורמציה transform_output.
    • חלוקת רכבת מהותית materialized_train_split.
    • פיצול חומרי הערכה materialized_eval_split.
    • קבוצת נתונים לבדיקה materialized_test_split.
    • רשימה של היפר-פרמטרים והטווחים שלהם למשימת כוונון ההיפר-פרמטרים.
  5. get-best-hyperparameter-tuning-job-trial: בוחרים את המודל מתוך הניסוי הטוב ביותר של משימת כוונון ההיפר-פרמטר מהשלב הקודם.

    פלט:

    • מודל סופי
  6. automl-tabular-infra-validator: אימות המודל שאומן על ידי שליחת בקשת חיזוי ובדיקה אם היא הושלמה בהצלחה.
  7. model-upload: העלאת המודל מקטגוריה של Cloud Storage של המשתמש ל-Vertex AI בתור מודל Vertex AI.
  8. condition-run-evaluation-2: אופציונלי. משתמשים בקבוצת הנתונים לבדיקה כדי לחשב את מדדי ההערכה. ההגדרה הזו פועלת רק אם הערך של run_evaluation הוא true.

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