Szeregi czasowe w SQL Server 2008
Analizy szeregów czasowych należą do najbardziej popularnych technik data mining. Dlatego też w SQL Server 2005 developerom udostępniono algorytm Microsoft Time Series, oparty o pracę naukowców z Microsoft Research. Dokładniej rzecz biorąc, zaimplementowany algorytm to ARTXP - drzewa autoregresyjne (ang. Autoregressive Trees).
Niestety, o ile algorytm ARTXP sprawdza się całkiem dobrze przy predykcji następnego kroku, takie podejście nie zdaje egzaminu gdy chcemy predykować bardziej odległe elementy szeregu.
Dlatego też w SQL Server 2008 Microsoft Time Series to tak naprawdę dwa algorytmy - ARTXP właśnie i ARIMA. ARIMA (ang. Autoregressive Integrated Moving Average) to algorytm dobrze znany w środowisku związanym z eksploracją danych, jego implementacje znajdziemy m.in. w pakiecie SAS. W przypadku gdy prognozujemy “długofalowo”, algorytm ten zachowuje się lepiej niż zwykłe drzewa autoregresyjne.
Ciekawy jest sposób, w jaki generowany jest wynik. Otóż budowany jest model dla obu algorytmów, zaś wynik końcowy zależy od obydwu wyników cząstkowych. Oczywiście, użytkownik ma wpływ na ten proces - poprzez użycie odpowiednich parametrów:
- FORECAST_METHOD – decyduje, który algorytm będzie użyty. Domyślnie – MIXED – czyli hybryda ARTXP i ARIMA.
- PREDICTION SMOOTHING – pozwala na kontrolowanie względnych wag wyników. Wartości bliskie 0 faworyzują wyniki ARTXP, wartości bliskie 1 większą wagę przypisują wynikom uzyskanym przez ARIMA.
