תהליך עבודה טבלאי ל-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:

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

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

  1. split-materialized-data: פיצול הנתונים המגובשים לקבוצת נתונים לאימון, לקבוצת הערכה ולקבוצת נתונים לבדיקה.

    קלט:

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

    פלט:

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

    קלט:

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

    פלט:

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

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

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

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

  1. split-materialized-data: פיצול הנתונים המגובשים לקבוצת נתונים לאימון, לקבוצת הערכה ולקבוצת נתונים לבדיקה.

    קלט:

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

    פלט:

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

    קלט:

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

    פלט:

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

    קלט:

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

    פלט:

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

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