Lezione 4: Creazione di stime basate su serie temporali con DMX
In questa lezione e nella lezione seguente si useranno le estensioni DMX (Data Mining Extensions) per creare diversi tipi di stime in base ai modelli time series creati nella lezione 1: Creazione di un modello di data mining time series e struttura di data mining e lezione 2: Aggiunta di modelli di data mining alla struttura di data mining Time Series.
Con un modello Time Series si dispone di numerose opzioni per l'esecuzione di stime:
Utilizzare gli schemi e i dati esistenti nel modello di data mining.
Utilizzare gli schemi esistenti nel modello di data mining, ma fornire nuovi dati.
Aggiungere nuovi dati al modello o aggiornare il modello.
La sintassi per effettuare questi tipi di stima è riportata di seguito:
Stima basata su serie temporali predefinita
Utilizzare PredictTimeSeries (DMX) per restituire il numero specificato di stime dal modello di data mining sottoposto a training.
Ad esempio, vedere PredictTimeSeries (DMX) o Esempi di query del modello Time Series.
EXTEND_MODEL_CASES
Usare PredictTimeSeries (DMX) con l'argomento EXTEND_MODEL_CASES per aggiungere nuovi dati, estendere la serie e creare stime basate sul modello di data mining aggiornato.
Questa esercitazione contiene un esempio dell'utilizzo di EXTEND_MODEL_CASES.
REPLACE_MODEL_CASES
Usare PredictTimeSeries (DMX) con l'argomento REPLACE_MODEL_CASES per sostituire i dati originali con una nuova serie di dati e quindi creare stime in base all'applicazione dei modelli nel modello di data mining alla nuova serie di dati.
Per un esempio di come usare REPLACE_MODEL_CASES, vedere Lezione 2: Compilazione di uno scenario di previsione (esercitazione intermedia sul data mining).
Argomenti della lezione
In questa lezione verranno eseguite le attività seguenti:
- Creare una query per ottenere le stime predefinite sulla base dei dati esistenti.
Nella lezione successiva verranno eseguite le attività correlate seguenti:
- Creare una query per fornire nuovi dati e ottenere stime aggiornate.
Oltre a creare manualmente query usando DMX, è anche possibile creare stime usando il generatore di query di stima in SQL Server Data Tools (SSDT).
Semplice query di stima basata su serie temporali
Il primo passaggio consiste nell'utilizzare l'istruzione SELECT FROM
insieme alla funzione PredictTimeSeries
per creare stime basate su serie temporali. I modelli Time Series supportano una sintassi semplificata per la creazione di stime: non è necessario fornire alcun input, ma è sufficiente specificare il numero di stime da creare. Di seguito è riportato un esempio generico dell'istruzione da utilizzare:
SELECT <select list>
FROM [<mining model name>]
WHERE [<criteria>]
L'elenco di selezione può contenere colonne dal modello, ad esempio il nome della linea di prodotto per cui si stanno creando le stime o le funzioni di stima, ad esempio Lag (DMX) o PredictTimeSeries (DMX), che sono specificamente per i modelli di data mining delle serie temporali.
Per creare una semplice query di stima basata su serie temporali
In Esplora oggetti fare clic con il pulsante destro del mouse sull'istanza di Analysis Services, scegliere Nuova query e quindi fare clic su DMX.
Verrà avviato l'editor di query con una nuova query vuota.
Copiare l'esempio generico dell'istruzione nella query vuota.
Sostituire quanto segue:
<select list>
con:
[Forecasting_MIXED].[ModelRegion], PredictTimeSeries([Forecasting_MIXED].[Quantity],6) AS PredictQty, PredictTimeSeries ([Forecasting_MIXED].[Amount],6) AS PredictAmt
La prima riga consente di recuperare il valore del modello di data mining che identifica la serie.
La seconda e terza riga utilizzano la funzione
PredictTimeSeries
. Ogni riga stima un attributo diverso,[Quantity]
o[Amount]
. I numeri dopo i nomi degli attributi stimabili specificano il numero di intervalli temporali da stimare.La clausola
AS
viene utilizzata per fornire un nome per la colonna restituita da ogni funzione di stima. Se non si fornisce un alias, per impostazione predefinita entrambe le colonne vengono restituite con l'etichettaExpression
.Sostituire quanto segue:
[<mining model>]
con:
[Forecasting_MIXED]
Sostituire quanto segue:
WHERE [criteria>]
con:
WHERE [ModelRegion] = 'M200 Europe' OR [ModelRegion] = 'M200 Pacific'
L'istruzione completa dovrebbe risultare analoga alla seguente:
SELECT [Forecasting_MIXED].[ModelRegion], PredictTimeSeries([Forecasting_MIXED].[Quantity],6) AS PredictQty, PredictTimeSeries ([Forecasting_MIXED].[Amount],6) AS PredictAmt FROM [Forecasting_MIXED] WHERE [ModelRegion] = 'M200 Europe' OR [ModelRegion] = 'M200 Pacific'
Scegliere Salva DMXQuery1.dmx Con nome dal menu File.
Nella finestra di dialogo Salva con nome passare alla cartella appropriata e assegnare al file
SimpleTimeSeriesPrediction.dmx
il nome .Sulla barra degli strumenti fare clic sul pulsante Esegui .
La query restituisce sei stime per ognuna delle due combinazioni di prodotto e area specificate nella clausola
WHERE
.
Nella lezione successiva verrà creata una query che fornisce nuovi dati al modello e confronta i risultati di tale stima con quella appena creata.
Attività successiva della lezione
Lezione 5: Estensione del modello Time Series
Vedere anche
PredictTimeSeries (DMX)
Lag (DMX)
Time Series Model Query Examples
Lezione 2: Compilazione di uno scenario di previsione (Esercitazione intermedia sul data mining)