יצירת מודל חיזוי של AutoML באמצעות Vertex AI

1. סקירה כללית

בשיעור ה-Lab הזה:

  • יצירת מערך נתונים מנוהל
  • ייבוא נתונים מקטגוריה של Google Cloud Storage
  • עדכון המטא-נתונים של העמודה לשימוש מתאים ב-AutoML
  • אימון מודל באמצעות אפשרויות כמו תקציב ויעד אופטימיזציה
  • ביצוע חיזויים אונליין באצווה

2. בדיקת הנתונים

בשיעור ה-Lab הזה משתמשים בנתונים ממערך הנתונים של מכירות משקאות חריפים באיווה מתוך מערכי נתונים ציבוריים של BigQuery. מערך הנתונים הזה כולל רכישות סיטונאיות של אלכוהול במדינת איווה בארה"ב מאז 2012.

כדי לראות את הנתונים הגולמיים המקוריים, בוחרים באפשרות הצגת מערך הנתונים. כדי לגשת לטבלה, עוברים בסרגל הניווט הימני לפרויקט bigquery-public-datasets, למערך הנתונים iowa_liquor_sales ולטבלה sales. אפשר ללחוץ על תצוגה מקדימה כדי לראות מבחר של שורות ממערך הנתונים.

f07c88368e7445c6.png

לצורך ה-Lab הזה, כבר ביצענו עיבוד מקדים בסיסי של הנתונים כדי לקבץ את הרכישות לפי יום. נשתמש בחילוץ CSV מטבלת BigQuery. העמודות בקובץ ה-CSV הן:

  • ds: התאריך
  • y: סכום כל הרכישות באותו יום בדולרים
  • holiday: ערך בוליאני שמציין אם התאריך הוא חג בארה"ב
  • id: מזהה של סדרת נתונים עיתיים (כדי לתמוך בכמה סדרות נתונים עיתיים, למשל לפי חנות או לפי מוצר). במקרה הזה, אנחנו פשוט נחזה את הרכישות הכוללות בסדרת זמן אחת, ולכן המזהה מוגדר כ-0 בכל שורה.

3. ייבוא נתונים

שלב 1: מעבר אל Vertex AI Datasets

בתפריט Vertex AI בסרגל הניווט הימני של מסוף Cloud, לוחצים על מערכי נתונים.

d8f26bfce50bfdb5.png

שלב 2: יצירת מערך נתונים

יוצרים מערך נתונים חדש, בוחרים באפשרות Tabular Data (נתונים בטבלה) ואז בסוג הבעיה Forecasting (תחזיות). בוחרים את השם iowa_daily או שם אחר שרוצים.

4efeaebfd7845b9c.png

שלב 3: ייבוא נתונים

השלב הבא הוא לייבא נתונים למערך הנתונים. בוחרים באפשרות 'בחירת קובץ CSV מ-Cloud Storage'. לאחר מכן, עוברים לקובץ ה-CSV בדלי של AutoML Demo Alpha ומדביקים את automl-demo-240614-lcm/iowa_liquor/iowa_daily.csv.

4. דגם רכבת

שלב 1: הגדרת תכונות המודל

אחרי כמה דקות, AutoML ישלח לכם הודעה שהייבוא הסתיים. בשלב הזה, אפשר להגדיר את התכונות של המודל.

  • בוחרים את העמודה של מזהה סדרת הזמן ומשנים אותה ל-id. יש לנו רק סדרת זמן אחת במערך הנתונים, אז זה רק עניין פורמלי.
  • בוחרים את העמודה Time (זמן) ומשנים את הפורמט ל-ds.

לאחר מכן, בוחרים באפשרות יצירת נתונים סטטיסטיים. בסיום התהליך יוצגו הנתונים הסטטיסטיים Missing % ו-Distinct values. התהליך הזה עשוי להימשך כמה דקות, לכן אפשר להמשיך לשלב הבא.

שלב 2: אימון המודל

בוחרים באפשרות אימון המודל כדי להתחיל בתהליך האימון. מוודאים שהאפשרות AutoML נבחרה ולוחצים על המשך.

5028ec6f242dfa6a.png

שלב 3: הגדרת המודל

  • בוחרים את עמודת היעד y. זה הערך שאנחנו חוזים.
  • אם לא הגדרתם את העמודה Series identifier (מזהה הסדרה) לערך id ואת Timestamp column (עמודת חותמת הזמן) לערך ds בשלב מוקדם יותר, עכשיו צריך לעשות זאת.
  • מגדירים את Data Granularity לערך Days ואת Forecast horizon לערך 7. בשדה הזה מצוין מספר התקופות שהמודל יכול לחזות לגביהן בעתיד.
  • מגדירים את חלון ההקשר ל-7 ימים. המודל ישתמש בנתונים מ-30 הימים הקודמים כדי ליצור תחזית. יש יתרונות וחסרונות לפרקי זמן קצרים וארוכים, ובדרך כלל מומלץ לבחור ערך שהוא בין פי 1 לבין פי 10 מאופק התחזית.
  • מסמנים את התיבה Export test dataset to BigQuery (ייצוא מערך נתוני בדיקה ל-BigQuery). אפשר להשאיר את השדה הזה ריק, ואז המערכת תיצור באופן אוטומטי מערך נתונים וטבלה בפרויקט (או לציין מיקום לבחירתכם).
  • לוחצים על המשך.

8d2f34779ba49bb1.png

שלב 4: הגדרת אפשרויות ההדרכה

בשלב הזה אפשר לציין פרטים נוספים על אופן האימון של המודל.

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

9557c92be32a1987.png

שלב 5: התחלת האימון

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

שלב 6: הערכת המודל

תהליך ההדרכה יכול להימשך שעה עד שעתיים (כולל זמן ההגדרה הנוסף). נשלח לכם אימייל כשהאימון יסתיים. כשהמודל יהיה מוכן, תוכלו לראות את רמת הדיוק שלו.

5. חיזוי

שלב 1: בדיקת התחזיות בנתוני הבדיקה

עוברים אל מסוף BigQuery כדי לראות את התחזיות לגבי נתוני הבדיקה. בפרויקט שלכם, מערך נתונים חדש נוצר באופן אוטומטי עם סכימת השמות: export_evaluated_data_items + <שם המודל> + <חותמת זמן>. בתוך מערך הנתונים הזה, תוכלו למצוא את הטבלה evaluated_data_items כדי לבדוק את התחזיות.

בטבלה הזו יש כמה עמודות חדשות:

  • predicted_on_[date column]: התאריך שבו בוצע החיזוי. לדוגמה, אם predicted_on_ds הוא 4 בנובמבר ו-ds הוא 8 בנובמבר, אנחנו חוזים 4 ימים קדימה.
  • predicted_[target column].tables.value: הערך החזוי

9800c7c67d93db03.png

שלב 2: ביצוע חיזויים רבים בבת אחת

לבסוף, כדאי להשתמש במודל כדי ליצור תחזיות.

קובץ הקלט מכיל ערכים ריקים לתאריכים שרוצים לחזות, יחד עם נתונים היסטוריים:

ds

holiday

id

y

15/5/20

0

0

1751315.43

16/05/20

0

0

0

17/05/20

0

0

0

‫18.05.20

0

0

1612066.43

‫19/05/20

0

0

1773885.17

20/05/20

0

0

1487270.92

21/5/20

0

0

1024051.76

22/05/20

0

0

1471736.31

23/05/20

0

0

<empty>

‫24/05/20

0

0

<empty>

25/05/20

1

0

<empty>

26/05/20

0

0

<empty>

27.05.2020

0

0

<empty>

28/05/20

0

0

<empty>

29/05/20

0

0

<empty>

אפשר ליצור תחזית חדשה של נתונים בכמות גדולה מהפריט Batch Predictions (תחזיות של נתונים בכמות גדולה) בסרגל הניווט הימני של AI Platform (Unified).

קובץ קלט לדוגמה נוצר בשבילכם כאן בקטגוריית אחסון: automl-demo-240614-lcm/iowa_liquor/iowa_daily_automl_predict.csv

אתם יכולים לספק את המיקום של קובץ המקור. אחרי כן תוכלו לבחור אם לייצא את התחזיות למיקום אחסון בענן כקובץ CSV, או ל-BigQuery. לצורך שיעור ה-Lab הזה, בוחרים באפשרות BigQuery ומזינים את מזהה הפרויקט ב-Google Cloud.

22e808dd5cbd4224.png

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

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

9ead59dcc9ad1521.png

שלב 3: סיכום

הצלחתם לבנות ולאמן מודל חיזוי באמצעות AutoML. בשיעור ה-Lab הזה למדנו איך לייבא נתונים, לבנות מודלים ולבצע חיזויים.

עכשיו אפשר ליצור מודל חיזוי משלכם.