Questa pagina fornisce informazioni dettagliate sui parametri utilizzati nell'addestramento del modello di previsione. Per informazioni su come addestrare un modello di previsione, consulta Addestrare un modello di previsione e Addestrare un modello con Flusso di lavoro tabulare per la previsione.
Metodi di addestramento del modello
Puoi scegliere tra i seguenti metodi per addestrare il modello:
TiDE (encoder denso di serie temporali): modello encoder-decoder basato su DNN denso ottimizzato. Ottima qualità del modello con addestramento e inferenza rapidi, soprattutto per contesti e orizzonti lunghi. Scopri di più.
Trasformatore di fusione temporale (TFT): modello DNN basato sull'attenzione progettato per produrre alta precisione e interpretabilità allineando il modello con l'attività di previsione generale su più orizzonti. Scopri di più.
AutoML (L2L): una buona scelta per un'ampia gamma di casi d'uso. Scopri di più.
Seq2Seq+: una buona scelta per la sperimentazione. È probabile che l'algoritmo converge più velocemente di AutoML perché la sua architettura è più semplice e utilizza uno spazio di ricerca più ridotto. Dai nostri esperimenti risulta che Seq2Seq+ ha un buon rendimento con un budget ridotto e su set di dati di dimensioni inferiori a 1 GB.
Tipo di funzionalità e disponibilità al momento della previsione
Ogni colonna utilizzata per l'addestramento di un modello di previsione deve avere un tipo: attribute o covariata. Le covariate vengono ulteriormente definite come disponibili o non disponibili al momento della previsione.
Tipo di serie | Disponibile al momento della previsione | Descrizione | Esempi | Campi API |
---|---|---|---|---|
Attributo | Disponibile | Un attributo è un elemento statico che non cambia nel tempo. | Colore articolo, descrizione del prodotto. | time_series_attribute_columns |
Covariata | Disponibile |
Variabile esogena che si prevede cambi nel tempo. Una covariata disponibile al momento della previsione è un indicatore principale. Devi fornire dati di previsione per questa colonna per ogni punto dell'orizzonte di previsione. |
Festività, promozioni pianificate o eventi. | available_at_forecast_columns |
Covariata | Non disponibile | Una covariata non disponibile al momento della previsione. Quando crei una previsione, non è necessario fornire valori per queste funzionalità. | Meteo effettivo. | unavailable_at_forecast_columns |
Scopri di più sulla relazione tra la disponibilità delle funzionalità e orizzonte di previsione, finestra di contesto e finestra di previsione.
Orizzonte di previsione, finestra di contesto e finestra di previsione
Le funzionalità di previsione si dividono in attributi statici e covariate con varianti temporali.
Quando addestra un modello di previsione, devi specificare quali dati di addestramento covariati sono i più importanti da acquisire. Questo viene espresso sotto forma di finestra di previsione, ovvero una serie di righe composte da quanto segue:
- Il contesto o i dati storici, fino al momento della previsione.
- L'orizzonte o le righe utilizzate per la previsione.
Prese insieme, le righe nella finestra definiscono un'istanza della serie temporale che serve da input del modello: è ciò su cui Vertex AI esegue l'addestramento, la valuta e utilizza per la previsione. La riga utilizzata per generare la finestra è la prima riga dell'orizzonte e identifica in modo univoco la finestra nella serie temporale.
L'orizzonte di previsione determina fino a che punto nel futuro il modello prevede il valore target per ogni riga di dati di previsione.
La finestra di contesto imposta quanto indietro il modello durante l'addestramento (e per le previsioni). In altre parole, per ogni punto dati di addestramento, la finestra di contesto determina quanto indietro nel tempo il modello cerca i pattern predittivi. Scopri le best practice per trovare un buon valore per la finestra di contesto.
Ad esempio, se Finestra di contesto = 14
e orizzonte di previsione = 7
,
ogni esempio di finestra avrà 14 + 7 = 21
righe.
Disponibilità al momento della previsione
Le covariate di previsione possono essere suddivise in quelle disponibili al momento della previsione e in quelle che non sono disponibili al momento della previsione.
Quando si gestiscono le variabili covariate disponibili al momento della previsione, Vertex AI considera i valori covariati sia della finestra di contesto sia dell'orizzonte di previsione per l'addestramento, la valutazione e la previsione. Nel gestire le covariate che sono non disponibili al momento della previsione, Vertex AI prende in considerazione i valori covariati della finestra di contesto, ma esclude esplicitamente i valori covariati dall'orizzonte di previsione.
Strategie per le finestre temporali continue
Vertex AI genera finestre di previsione dai dati di input utilizzando una strategia di finestra temporale continua. La strategia predefinita è Conteggio.
- Conteggio.
Il numero di finestre generate da Vertex AI non deve superare un
massimo fornito dall'utente. Se il numero di righe nel set di dati di input è inferiore al numero massimo di finestre, ogni riga viene utilizzata per generare una finestra.
In caso contrario, Vertex AI esegue un campionamento casuale per selezionare le righe.
Il valore predefinito per il numero massimo di finestre è
100,000,000
. Il numero massimo di finestre non può essere superiore a100,000,000
. - Stride.
Vertex AI utilizza una riga di input su ogni X per generare una finestra,
fino a un massimo di 100.000.000 di finestre. Questa opzione è utile per previsioni
stagionali o periodiche. Ad esempio, puoi limitare la previsione a un solo giorno della settimana impostando il valore della lunghezza passo su
7
. Il valore può essere compreso tra1
e1000
. - Colonna:
Puoi aggiungere ai dati di input una colonna in cui i valori sono
True
oFalse
. Vertex AI genera una finestra per ogni riga di input in cui il valore della colonna èTrue
. I valoriTrue
eFalse
possono essere impostati in qualsiasi ordine, purché il conteggio totale delle righeTrue
sia inferiore a100,000,000
. Sono preferibili i valori booleani, ma sono accettati anche i valori stringa. I valori stringa non fanno distinzione tra maiuscole e minuscole.
Se generi meno finestre 100,000,000
predefinite, puoi ridurre il tempo necessario per la pre-elaborazione e la valutazione del modello. Inoltre, il downsampling delle finestre offre un maggiore controllo sulla distribuzione delle finestre osservate durante l'addestramento.
Se utilizzata correttamente, può portare a risultati migliori e più coerenti.
Come vengono utilizzati la finestra di contesto e l'orizzonte di previsione durante l'addestramento e le previsioni
Supponi di avere dati raccolti mensilmente, con una finestra di contesto di cinque mesi e un orizzonte di previsione di cinque mesi. L'addestramento del modello con 12 mesi di dati determina il seguente insieme di input e previsioni:
[1-5]:[6-10]
[2-6]:[7-11]
[3-7]:[8-12]
Dopo l'addestramento, il modello può essere utilizzato per prevedere i mesi dal 13 al 17:
[8-12]:[13-17]
Il modello utilizza solo i dati che rientrano nella finestra di contesto per eseguire la previsione. Tutti i dati forniti che non rientrano nella finestra di contesto vengono ignorati.
Dopo essere stati raccolti il 13° mese, i dati possono essere utilizzati per prevedere fino al 18° mese:
[9-13]:[14-18]
Questa procedura può continuare in futuro, a condizione che i risultati ottenuti siano positivi. Alla fine, potrai riaddestrare il modello con i nuovi dati. Ad esempio, se hai riaddestrato il modello dopo aver aggiunto altri sei mesi di dati, questi vengono utilizzati come segue:
[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]
Puoi quindi utilizzare il modello per prevedere i mesi dal 19 al 23:
[14-18]:[19-23]
Obiettivi di ottimizzazione per i modelli di previsione
Quando addestra un modello, Vertex AI seleziona un obiettivo di ottimizzazione predefinito in base al tipo di modello e al tipo di dati utilizzati per la colonna di destinazione. La seguente tabella fornisce alcuni dettagli sui modelli di previsione dei problemi più adatti a:
Obiettivo ottimizzazione | Valore API | Utilizza questo obiettivo se vuoi... |
---|---|---|
RMSE | minimize-rmse |
Riduci al minimo l'errore quadratico medio (RMSE). Acquisisce in modo preciso valori più estremi e presenta meno bias nell'aggregazione delle previsioni. Valore predefinito. |
MAE | minimize-mae |
Riduci al minimo l'errore medio assoluto (MAE). Visualizza i valori estremi come valori anomali con un minore impatto sul modello. |
RMSLE | minimize-rmsle |
Riduci al minimo l'errore di log radice quadrato medio (RMSLE). Penalizza l'errore sulla dimensione relativa anziché sul valore assoluto. Utile quando i valori previsti ed effettivi possono essere grandi. |
RMSPE | minimize-rmspe |
Riduci al minimo l'errore percentuale quadratico medio (RMSPE). Cattura con precisione un'ampia gamma di valori. Simile a RMSE, ma relativo alla grandezza del target. Utile quando l'intervallo di valori è grande. |
WAPE | minimize-wape-mae |
Riduci al minimo la combinazione di errore percentuale ponderato assoluto (WAPE) e errore medio assoluto (MAE). Utile quando i valori effettivi sono bassi. |
Perdita di quantili | minimize-quantile-loss |
Riduci al minimo la perdita di flipper scalati dei quantili definiti per quantificare l'incertezza nelle stime. Le previsioni quantili quantificano l'incertezza delle previsioni. Misurano la probabilità che una previsione rientri in un intervallo. |
Festività relative alle regioni
In alcuni casi d'uso, i dati di previsione possono presentare un comportamento irregolare nei giorni corrispondenti a festività regionali. Se vuoi che il modello tenga conto di questo effetto, seleziona la regione o le regioni che corrispondono ai tuoi dati di input. Durante l'addestramento, Vertex AI crea caratteristiche categoriche delle festività all'interno del modello in base alla data indicata nella colonna dell'ora e alle regioni geografiche specificate.
Di seguito è riportato un estratto delle date e delle caratteristiche categoriche delle festività per gli Stati Uniti. Tieni presente che una funzionalità categorica viene assegnata alla data principale, a uno o più giorni precedenti alle festività e a uno o più giorni post-festività. Ad esempio, la data principale della Festa della mamma negli Stati Uniti nel 2013 era il 12 maggio. Le funzionalità per la Festa della mamma sono assegnate alla data principale, a sei giorni prefestivi e un giorno postfestivo.
Data | Caratteristica categorica per le festività |
---|---|
2013-05-06 | MothersDay |
2013-05-07 | MothersDay |
2013-05-08 | MothersDay |
2013-05-09 | MothersDay |
2013-05-10 | MothersDay |
2013-05-11 | MothersDay |
2013-05-12 | MothersDay |
2013-05-13 | MothersDay |
2013-05-26 | US_MemorialDay |
2013-05-27 | US_MemorialDay |
2013-05-28 | US_MemorialDay |
I valori accettabili per le regioni delle festività includono:
GLOBAL
: rileva le festività per tutte le regioni del mondo.NA
: rileva le festività per il Nord America.JAPAC
: rileva le festività per il Giappone e l'Asia Pacifico.EMEA
: rileva le festività per Europa, Medio Oriente e Africa.LAC
: rileva le festività in America Latina e nei Caraibi.- Codici paese ISO 3166-1: per rilevare le festività per i singoli paesi.
Per visualizzare l'elenco completo delle date delle festività per ogni regione geografica, consulta la tabella holidays_and_events_for_forecasting
in BigQuery. Puoi aprire questa tabella tramite la console Google Cloud seguendo questa procedura:
-
Nella sezione BigQuery della console Google Cloud, vai alla pagina BigQuery Studio.
- Nel riquadro Explorer, apri il progetto
bigquery-public-data
. Se non riesci a trovare questo progetto o per saperne di più, consulta Aprire un set di dati pubblico. - Apri il set di dati
ml_datasets
. - Apri la tabella
holidays_and_events_for_forecasting
.
Di seguito è riportato un estratto della tabella holidays_and_events_for_forecasting
: