פרמטרים של אימון למודלים של תחזיות

בדף הזה מפורט מידע על הפרמטרים שמשמשים לאימון מודלים של תחזיות. מידע על אימון מודל לחיזוי זמין במאמרים אימון מודל לחיזוי ואימון מודל באמצעות Tabular Workflow for Forecasting.

שיטות לאימון מודלים

בוחרים אחת מהשיטות הבאות לאימון המודל:

Time series Dense Encoder (TiDE): מודל מקודד-מפענח מבוסס DNN צפוף שעבר אופטימיזציה. איכות מודל גבוהה עם אימון והסקת מסקנות מהירים, במיוחד בהקשרים ארוכים ובאופקים רחבים. מידע נוסף

Temporal Fusion Transformer (TFT): מודל DNN מבוסס-תשומת לב שנועד להפיק תחזיות מדויקות וניתנות לפירוש על ידי התאמת המודל למשימת התחזית הכללית לטווח ארוך. מידע נוסף

AutoML (L2L): בחירה טובה למגוון רחב של תרחישי שימוש. מידע נוסף

Seq2Seq+‎: בחירה טובה לניסויים. האלגוריתם צפוי להתכנס מהר יותר מ-AutoML כי הארכיטקטורה שלו פשוטה יותר והוא משתמש במרחב חיפוש קטן יותר. הניסויים שלנו מראים ש-Seq2Seq+‎ פועל היטב עם תקציב זמן קטן ועם מערכי נתונים קטנים מ-1 GB.

סוג התכונה והזמינות שלה בתחזית

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

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

משתנה חיצוני שצפוי להשתנות לאורך זמן. משתנה מסביר (covariate) שזמין בזמן התחזית הוא אינדיקטור מוביל.

צריך לספק נתוני הסקה לעמודה הזו לכל נקודה באופק התחזית.

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

מידע נוסף על הקשר בין זמינות התכונות לבין טווח התחזית, חלון ההקשר וחלון התחזית

אופק החיזוי, חלון ההקשר וחלון החיזוי

תכונות החיזוי הן מאפיינים סטטיים או משתנים תלוים שמשתנים עם הזמן. סוג התכונה והזמינות בתחזית

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

  • ההקשר או הנתונים ההיסטוריים, עד למועד ההסקה.
  • האופק או השורות שמשמשים להסקת מסקנות.

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

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

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

לדוגמה, אם חלון ההקשר = 14 וטווח התחזית = 7, כל דוגמה של חלון תכלול 14 + 7 = 21 שורות.

זמינות בתחזית

אפשר לחלק את המשתנים המשפיעים על התחזית למשתנים שזמינים בזמן התחזית ולמשתנים שלא זמינים בזמן התחזית.

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

שיטות חלון נע

‫Vertex AI יוצרת חלונות של תחזיות מנתוני הקלט באמצעות אסטרטגיה של חלון נע. שיטת ברירת המחדל היא ספירה.

  • מספר יחידות. מספר החלונות שנוצרו על ידי Vertex AI לא יכול לחרוג מהמספר המקסימלי שצוין על ידי המשתמש. אם מספר השורות במערך נתוני הקלט קטן ממספר החלונות המקסימלי, כל שורה משמשת ליצירת חלון. אחרת, Vertex AI מבצע דגימה אקראית כדי לבחור את השורות. ערך ברירת המחדל של המספר המקסימלי של חלונות הוא 100,000,000. מספר החלונות המקסימלי לא יכול לעלות על 100,000,000.
  • Stride. ‫Vertex AI משתמש בשורה אחת מכל X שורות קלט כדי ליצור חלון, עד למקסימום של 100,000,000 חלונות. האפשרות הזו שימושית להסקת מסקנות עונתית או תקופתית. לדוגמה, אפשר להגביל את התחזיות ליום אחד בשבוע על ידי הגדרת הערך 7 לאורך הפסיעה. הערך יכול להיות בין 1 ל-1000.
  • עמודה. אתם יכולים להוסיף עמודה לנתוני הקלט שבה הערכים הם True או False. ‫Vertex AI יוצר חלון לכל שורת קלט שבה הערך של העמודה הוא True. אפשר להגדיר את הערכים True ו-False בכל סדר, כל עוד המספר הכולל של השורות True קטן מ-100,000,000. מומלץ להשתמש בערכים בוליאניים, אבל אפשר להשתמש גם בערכי מחרוזת. ערכי מחרוזת לא תלויי-רישיות.

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

איך משתמשים בחלון ההקשר ובאופק התחזית במהלך האימון והתחזיות

נניח שיש לכם נתונים שנאספים מדי חודש, עם חלון הקשר של 5 חודשים ואופק תחזית של 5 חודשים. אימון המודל עם נתונים של 12 חודשים יניב את קבוצות התשומות והתחזיות הבאות:

  • [1-5]:[6-10]
  • [2-6]:[7-11]
  • [3-7]:[8-12]

אחרי האימון, אפשר להשתמש במודל כדי לחזות את החודשים 13 עד 17:

  • [8-12]:[13-17]

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

אחרי איסוף הנתונים בחודש ה-13, אפשר להשתמש בהם כדי לחזות את הביצועים עד חודש 18:

  • [9-13]:[14-18]

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

  • [2-6]:[7-11]
  • [3-7]:[8-12]
  • [4-8]:[9-13]
  • [5-9]:[10-14]
  • [6-10]:[11-15]
  • [7-11]:[12-16]
  • [8-12]:[13-17]
  • [9-13]:[14-18]

לאחר מכן, תוכלו להשתמש במודל כדי לחזות את החודשים 19 עד 23:

  • [14-18]:[19-23]

יעדי אופטימיזציה למודלים של תחזיות

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

יעד האופטימיזציה ערך API כדאי להשתמש ביעד הזה אם רוצים…
RMSE minimize-rmse ממזערים את שורש הטעות הריבועית הממוצעת (RMSE). המודל הזה מתעד ערכים קיצוניים בצורה מדויקת יותר, והוא פחות מוטה כשמצטברים בו נתונים. ערך ברירת המחדל.
MAE minimize-mae ממזערים את השגיאה הממוצעת המוחלטת (MAE). המודל מתייחס לערכים קיצוניים כאל חריגים עם השפעה נמוכה יותר.
RMSLE minimize-rmsle מזעור שורש טעות ריבועית ממוצעת של לוגריתם (RMSLE). העונש ניתן על שגיאה בגודל יחסי ולא על שגיאה בערך מוחלט. המדד הזה שימושי כשגם הערכים הצפויים וגם הערכים בפועל יכולים להיות גדולים.
RMSPE minimize-rmspe מזעור שורש טעות ריבועית ממוצעת באחוזים (RMSPE). מציג טווח רחב של ערכים בצורה מדויקת. דומה ל-RMSE, אבל ביחס לגודל היעד. השימוש בפרמטר הזה מועיל כשיש טווח גדול של ערכים.
WAPE minimize-wape-mae מזעור השילוב של שגיאת אחוזים מוחלטת משוקללת (WAPE) ושגיאה מוחלטת ממוצעת (MAE). הפרמטר הזה שימושי כשהערכים בפועל נמוכים.
Quantile loss minimize-quantile-loss ממזערים את הפסד הפינבול המשוקלל של הכמויות שהוגדרו כדי לכמת את אי-הוודאות בהערכות. הסקת מסקנות על סמך חלוקה לעשירונים מאפשרת לכמת את אי-הוודאות של המסקנות. הם מודדים את הסבירות לכך שהסקת מסקנות תהיה בטווח מסוים.

אזורים עם חגים

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

הקטע הבא הוא קטע מתוך רשימת התאריכים והמאפיינים הקטגוריים של החגים בארצות הברית. חשוב לדעת שתכונה קטגורית מוקצית לתאריך הראשי, ליום אחד או יותר לפני החג וליום אחד או יותר אחרי החג. לדוגמה, התאריך העיקרי של יום האם בארה"ב בשנת 2013 היה 12 במאי. התכונות של יום האם מוקצות לתאריך הראשי, לשישה ימים שלפני החג וליום אחד אחרי החג.

תאריך תכונה קטגורית לחגים
2013-05-06MothersDay
2013-05-07MothersDay
2013-05-08MothersDay
2013-05-09MothersDay
2013-05-10MothersDay
2013-05-11MothersDay
2013-05-12MothersDay
2013-05-13MothersDay
2013-05-26US_MemorialDay
2013-05-27US_MemorialDay
2013-05-28US_MemorialDay

הערכים הקבילים לאזורים שבהם חלים חגים כוללים את האפשרויות הבאות:

  • GLOBAL: מזהה חגים בכל האזורים בעולם.
  • NA: מזהה חגים בצפון אמריקה.
  • JAPAC: מזהה חגים ביפן ובאזור אסיה והאוקיינוס השקט.
  • EMEA: מזהה חגים באירופה, במזרח התיכון ובאפריקה.
  • LAC: מזהה חגים באמריקה הלטינית ובאיים הקריביים.
  • קודי מדינות לפי תקן ISO 3166-1: המערכת מזהה חגים במדינות ספציפיות.

כדי לראות את הרשימה המלאה של תאריכי החגים בכל אזור גיאוגרפי, אפשר לעיין בטבלה holidays_and_events_for_forecasting ב-BigQuery. כדי לפתוח את הטבלה הזו דרך מסוף Google Cloud :

  1. במסוף Google Cloud , בקטע BigQuery, עוברים לדף BigQuery Studio.

    כניסה ל-BigQuery Studio

  2. בחלונית Explorer, פותחים את הפרויקט bigquery-public-data. אם אתם לא מוצאים את הפרויקט הזה או רוצים לקבל מידע נוסף, אפשר לעיין במאמר בנושא פתיחת מערך נתונים ציבורי.
  3. פותחים את מערך הנתונים ml_datasets.
  4. פותחים את הטבלה holidays_and_events_for_forecasting.

הקטע הבא הוא קטע מתוך הטבלה holidays_and_events_for_forecasting:

דוגמה לחגים לתחזית