Utilizzare AutoAI per creare un esperimento di serie temporali per prevedere attività future, come i prezzi delle azioni o le temperature, in un intervallo di date o ore specificato.
Panoramica delle serie temporali
Un esperimento di serie temporali è un metodo di previsione che utilizza osservazioni cronologiche per prevedere valori futuri. L'esperimento crea automaticamente molte pipeline utilizzando i modelli di machine learning, come la regressione casuale delle foreste e le SVM (Support Vector Machines), così come i modelli di serie temporali statistici, come ARIMA e Holt - Winters. Quindi, l'esperimento consiglia la migliore pipeline in base alle prestazioni della pipeline valutate su un dataset di holdout o su un dataset di backtest.
A differenza di un esperimento standard AutoAI , che crea una serie di pipeline per il completamento e le classifica. Un esperimento di serie temporale valuta le pipeline prima del processo e completa e verifica solo le pipeline con le migliori prestazioni.
Per i dettagli sulle diverse fasi di addestramento e di test di un esperimento di serie temporali, consultare Dettagli di implementazione di serie temporali.
Utilizzo delle funzionalità di supporto per migliorare le previsioni
Quando si configura un esperimento di serie temporali, è possibile scegliere di specificare funzioni di supporto, note anche come funzioni esogene. Le funzioni di supporto sono funzioni che influenzano o aggiungono un contesto alla destinazione di previsione. Ad esempio, se si stanno prevedendo le vendite di gelati, la temperatura giornaliera sarebbe una funzione logica di supporto che renderebbe la previsione più accurata.
Sfruttare i valori futuri per le funzioni di supporto
Se si conoscono i valori futuri per le funzioni di supporto, è possibile utilizzare tali valori futuri quando si distribuisce il modello. Ad esempio, se si sta formando un modello per prevedere le vendite future di t-shirt, è possibile includere sconti promozionali come funzione di supporto per migliorare la previsione. L'inserimento del valore futuro della promozione rende quindi la previsione più accurata.
Requisiti di dati
Questi sono i requisiti di dati correnti per l'addestramento di un esperimento di serie temporali:
I dati di addestramento devono essere un singolo file in formato CSV.
Il file deve contenere una o più colonne di serie temporali e, facoltativamente, una colonna di data / ora. Per un elenco dei formati di data / ora supportati, consultare AutoAI time series implementation details.
Se l'origine dati contiene una colonna data / ora, verificare che i dati siano campionati con frequenza uniforme. Vale a dire, la differenza nella data / ora delle righe adiacenti è la stessa. Ad esempio, i dati possono essere in incrementi di 1 minuto, 1 ora o un giorno. La data / ora specificata viene utilizzata per determinare la finestra di lookback per migliorare la precisione del modello.
Nota:Se la dimensione del file è maggiore di 1 GB, ordinare i dati in ordine decrescente in base alla data / ora e solo i primi 1 GB vengono utilizzati per addestrare l'esperimento.
Se l'origine dati non contiene una colonna data / ora, assicurarsi che i dati vengano campionati a intervalli regolari e ordinati in ordine crescente in base alla data / ora del campione. Vale a dire, il valore nella prima riga è il più vecchio e il valore nell'ultima riga è il più recente.
Nota: se la dimensione del file è superiore a 1 GB, troncare il file in modo che sia inferiore a 1 GB.Selezionare i dati da utilizzare durante l'addestramento delle pipeline finali. Se si sceglie di includere solo i dati di addestramento, i notebook generati includeranno una cella per il richiamo dei dati di holdout utilizzati per valutare ciascuna pipeline.
Scegliere i dati dal progetto o caricarli dal file system o dal browser degli asset, quindi fare clic su Continua. Fare clic sull'icona Anteprima , dopo il nome dell'origine dati, per rivedere i dati. Facoltativamente, è possibile aggiungere un secondo file come dati di holdout per il test delle pipeline addestrate.
Configurazione di un esperimento di serie temporali
Quando si configurano i dettagli per un esperimento, fare clic su Sì per Abilita serie temporali e completare i dettagli dell'esperimento.
Campo | Descrizione |
---|---|
Colonne di previsione | Le colonne delle serie temporali che si desidera prevedere in base ai valori precedenti. È possibile specificare una o più colonne da prevedere. |
Colonna data/ora | La colonna che indica la data / ora in cui si verificano i valori delle serie temporali. |
Finestra di lookback | Un parametro che indica quanti valori di serie temporali precedenti vengono utilizzati per prevedere il punto temporale corrente. |
Finestra di previsione | L'intervallo che si desidera prevedere in base ai dati nella finestra retrospettiva. |
Il riepilogo della previsione mostra il tipo di esperimento e la metrica selezionata per ottimizzare l'esperimento.
Configurazione delle impostazioni dell'esperimento
Per configurare ulteriori dettagli per l'esperimento di serie temporali, fare clic su Impostazioni esperimento.
Impostazioni generali di previsione
Nel riquadro Generale per le impostazioni di previsione, è possibile modificare facoltativamente la metrica utilizzata per ottimizzare l'esperimento o specificare gli algoritmi da considerare o il numero di pipeline da generare.
Campo | Descrizione |
---|---|
Tipo di previsione | Visualizzare o modificare il tipo di previsione in base alla colonna di previsione per l'esperimento. Per gli esperimenti di serie temporali, l'opzione Previsione serie temporali è selezionata per impostazione predefinita. Nota: se si modifica il tipo di previsione, altre impostazioni di previsione per l'esperimento vengono modificate automaticamente. |
Metrica ottimizzata | Visualizzare o modificare la metrica ottimizzata consigliata per l'esperimento. |
Selezione dell'algoritmo ottimizzata | Non supportato per gli esperimenti di serie temporali. |
Algoritmi da includere | Selezionare gli algoritmi in base ai quali si desidera che l'esperimento crei le pipeline. Gli algoritmi e le pipeline che supportano l'uso delle funzionalità di supporto, sono indicati da un segno di controllo. |
Pipeline da completare | Visualizzare o modificare il numero di pipeline da generare per l'esperimento. |
Dettagli di configurazione delle serie temporali
Nel riquadro Serie temporali per le impostazioni di previsione, configurare i dettagli su come addestrare l'esperimento e generare le previsioni.
Campo | Descrizione |
---|---|
Colonna data/ora | Visualizzare o modificare la colonna data / ora per l'esperimento. |
Finestra di lookback | Visualizzare o aggiornare il numero di valori di serie temporali precedenti utilizzati per prevedere il punto temporale corrente. |
Finestra di previsione | Visualizzare o aggiornare l'intervallo in base al quale si desidera eseguire la previsione. |
Configurazione delle impostazioni dell'origine dati
Per configurare i dati di input, fare clic su Impostazioni esperimento e selezionare Origine dati.
Impostazioni generali dell'origine dati
Sul pannello Generale per le impostazioni dell'origine dati, è possibile modificare il proprio dataset per interpolare i valori mancanti, suddividere il dataset in dati di training e di holdout e funzioni di supporto dell'input.
Campo | Descrizione |
---|---|
Righe duplicate | Non supportato per gli esperimenti di serie temporali. |
Dati di sottocampione | Non supportato per gli esperimenti di serie temporali. |
Progettazione di funzioni di testo | Non supportato per gli esperimenti di serie temporali. |
Set di dati di addestramento finale | Selezionare i dati da utilizzare durante l'addestramento delle pipeline finali: solo i dati di addestramento o i dati di addestramento e di holdout. Se si sceglie di includere solo i dati di addestramento, i notebook generati per questo esperimento includeranno una cella per richiamare i dati di holdout utilizzati per valutare ogni pipeline. |
Funzioni di supporto | Scegliere ulteriori colonne dal dataset come funzioni di supporto per supportare le previsioni e aumentare la precisione del modello. È anche possibile utilizzare i valori futuri per le funzioni di supporto abilitando Utilizza valori futuri delle funzioni di supporto. Nota: è possibile utilizzare solo funzioni di supporto con gli algoritmi e le pipeline selezionati. Per ulteriori informazioni sugli algoritmi e sulle pipeline che supportano l'utilizzo delle funzioni di supporto, vedi Dettagli di implementazione delle serie temporali. |
Imputazione dei dati | Utilizzare l'assegnazione dei dati per sostituire i valori mancanti nel dataset con valori sostituiti. Abilitando questa opzione, Š possibile specificare il modo in cui i valori mancanti devono essere interpolati nei dati. Per ulteriori informazioni sull'assegnazione dei dati, vedere Assegnazione dei dati negli esperimenti AutoAI . |
Dati di training e holdout | Scegliere di riservare alcuni dati dal dataset di addestramento per testare l'esperimento. In alternativa, caricare un file separato di dati di holdout. Il file di dati di controllo deve corrispondere allo schema dei dati di addestramento. |
Configurazione dei dati delle serie temporali
Per configurare i dati delle serie temporali, è possibile modificare le impostazioni per i dati delle serie temporali relativi al backtest dell'esperimento. Il backtest fornisce un mezzo per convalidare un modello di serie temporali utilizzando i dati cronologici.
In un tipico esperimento di machine learning, puoi trattenere parte dei dati in modo casuale per testare l'accuratezza del modello risultante. Per convalidare un modello di serie temporali, è necessario preservare la relazione dell'ordine temporale tra i dati di addestramento e quelli di test.
I seguenti passi descrivono il metodo backtest:
- La lunghezza dei dati di addestramento viene determinata in base al numero di backtest, alla lunghezza dello spazio e alla dimensione di holdout. Per ulteriori informazioni su questi parametri, vedi Creazione di un esperimento di serie temporali.
- Partendo dai dati più vecchi, l'esperimento viene addestrato utilizzando i dati di addestramento.
- L'esperimento viene valutato sul primo dataset di convalida. Se la lunghezza della distanza è diversa da zero, i dati nella distanza vengono ignorati.
- La finestra dei dati di addestramento è avanzata aumentando la dimensione di holdout e la lunghezza del divario per formare un nuovo insieme di addestramento.
- Un nuovo esperimento viene addestrato con questi nuovi dati e valutato con il successivo dataset di convalida.
- Le due fasi precedenti vengono ripetute per i rimanenti periodi di backtest.
Per modificare la configurazione di backtest:
- Aprire Impostazioni esperimento.
- Da Origini dati, fare clic su Serie temporali.
- (Facoltativo): Regolare le impostazioni come mostrato nella tabella.
Campo | Descrizione |
---|---|
Numero di backtest | Il backtest è simile a una convalida incrociata per i periodi di data/ora. Facoltativamente, personalizza il numero di backtest per il tuo esperimento. |
Holdout | La dimensione della serie di controllo e ciascuna serie di convalida per il backtest. La lunghezza di convalida può essere modificata modificando la lunghezza di holdout. |
Lunghezza gap | Il numero di punti temporali tra il dataset di addestramento e il dataset di convalida per ciascun backtest. Quando il valore del parametro è diverso da zero, i valori della serie temporale nel divario non verranno utilizzati per addestrare l'esperimento o valutare il backtest corrente. |
La visualizzazione delle impostazioni di configurazione illustra il flusso di backtest. Il grafico è interattivo, in modo da poter manipolare le impostazioni dal grafico o dai campi di configurazione. Ad esempio, regolando la lunghezza del divario, è possibile visualizzare i risultati di convalida del modello su periodi di tempo precedenti dei dati senza aumentare il numero di backtest.
Interpretazione dei risultati dell'esperimento
Dopo aver eseguito l'esperimento di serie temporali, è possibile esaminare le pipeline risultanti per ottenere informazioni dettagliate sui dettagli dell'esperimento. Le pipeline che utilizzano funzioni di supporto sono indicate dalla tag di miglioramento SUP per distinguerle dalle pipeline che non utilizzano queste funzioni. Per visualizzare i dettagli:
- Passa con il mouse sui nodi nella visualizzazione per ottenere i dettagli sulle pipeline mentre vengono generate.
- Passare alla vista Mappa avanzamento per visualizzare una vista diversa del processo di formazione. È possibile passare con il mouse su ciascun nodo nel processo per i dettagli.
- Una volta completate e scritte le pipeline finali nella classifica, è possibile fare clic su una pipeline per visualizzare i dettagli delle prestazioni.
- Fare clic su Visualizza pipeline scartate per visualizzare gli algoritmi utilizzati per le pipeline non selezionate come migliori.
- Salvare il codice dell'esperimento come notebook che è possibile esaminare.
- Salvare una particolare pipeline come notebook che è possibile esaminare.
Guardate questo video per vedere come eseguire un esperimento sulle serie temporali e creare un modello in un taccuino Jupyter utilizzando dati di addestramento e di attesa.
Questo video fornisce un metodo visivo per apprendere i concetti e le attività in questa documentazione.
Passi successivi
- Seguire un'esercitazione dettagliata per preparare un modello di serie temporali univariato per prevedere le temperature minime utilizzando i dati di esempio.
- Segui un'esercitazione dettagliata per addestrare un esperimento di serie temporali con funzioni di supporto.
- Informazioni sul calcolo del punteggio di un modello di serie temporali distribuito.
- Imparate a usare l'API per gli esperimenti sulle serie temporali AutoAI.
Ulteriori risorse
- Per un'introduzione alle previsioni con gli esperimenti AutoAI sulle serie temporali, vedere il post del blog Right on time(series): Introduzione alle serie temporali AutoAI di Watson Studio.
- Per ulteriori informazioni sulla creazione di un esperimento sulle serie temporali, vedere questo post del blog sulla creazione di un nuovo esperimento sulle serie temporali.
- Leggete un post del blog sull'aggiunta di funzioni di supporto a un esperimento sulle serie temporali.
- Esaminare un quaderno di esempio per un esperimento sulle serie temporali con caratteristiche di supporto.
- Leggete un post del blog sull'aggiunta di funzioni di supporto a un esperimento sulle serie temporali utilizzando l'API.
Passi successivi
- Esercitazione: AutoAI esperimento di serie temporali univariata
- Esercitazione: AutoAI che supporta l'esperimento di serie temporali
- Dettagli dell'implementazione dell'esperimento di serie temporali
- Calcolo del punteggio di un modello di serie temporali
Argomento principale AutoAI