Kon š truovanie predpoved í

Preview:

DESCRIPTION

Kon š truovanie predpoved í. - PowerPoint PPT Presentation

Citation preview

KonKonšštruovanie predpovedtruovanie predpovedíí

Jeden z hlavných dôvodov analýzy časových radov – predpovedanie budúcich hodnôt časového radu. Predpovedná technika spočíva v rozšírení minulých skúseností do budúcnosti. Predpokladom je, že vonkajšie podmienky pôsobiace na vývoj časového radu ostanú nezmenené - princíp ceteris paribus. Predpoveď bude presná do tej miery, do akej je splnená táto podmienka (pokiaľ nie je predpoveď modifikovaná rozhodnutím prognostika).

Pretože predpovedné techniky pracujú s údajmi, ktoré vznikli v minulosti, predpovedný proces pozostáva z nasledujúcich krokov:

zber údajov a ich redukcia zostavenie modelu vyhodnotenie modelu prognóza.

Jednou z najdôležitejších častí predpovedného procesu je získavanie vhodných a overených údajov. Ak sú údaje nevhodné alebo nesprávne, prognóza bude nepresná.

Typická stratégia vyhodnocovania rôznych predpovedných metód obsahuje nasledujúce kroky:

1: Na základe analýzy modelu minulých dát sa vyberie predpovedná metóda

2: Súbor dát sa rozdelí do dvoch častí: vstupná (inicializačná, testovacia) a skúšobná časť

3: Zvolená predpovedná metóda sa overí na údajoch vstupnej časti

4: Model sa použije na predpovedanie hodnôt skúšobnej časti; vypočítajú a vyhodnotia sa chyby predpovedí

5: Urobí sa rozhodnutie o modele (prijatie modelu v jeho súčasnej podobe, modifikácia modelu, použitie iného modelu a porovnanie výsledkov, zamietnutie modelu)

6: Použitie vybraného predpovedného modelu na prognózu budúcich hodnôt časového radu.

Skutočná prognóza by mala byť kvantitatívna aj kvalitatívna. Predpovedný model poskytne kvantitatívnu hodnotu; posúdenie inžiniera poskytne príslušné kvalitatívne ohodnotenie.

KonKonšštruovanie bodovtruovanie bodovýých predpovedch predpovedíí

Predpokladajme, že máme časový rad {x1, x2, …, xn} ako realizáciu stochastického procesu {Xt, t = 1, 2, ...}. Ďalej predpokladajme, že sme našli vhodný lineárny model ARMA(p, q):

Xt - 1 Xt-1 - ... - p Xt-p = Zt + 1 Zt-1 + ... + q Zt-q

Symbolom budeme označovať predpoveď hodnoty xt+k kon-štruovanú v čase t, ktorú nazývame predpoveď v čase predpoveď v čase tt o o kk krokov krokov dopredudopredu (k-kroková predpoveď v čase t).

tx kt

Hodnotu budeme konštruovať ako lineárnu predpoveď, ktorá bu-de lineárnou funkciou hodnôt xt, xt-1, ... alebo ekvivalentne (predpokladáme stacionárny a invertibilný stochastický proces ARMA(p, q) ) lineárnou funkciou hodnôt zt, zt-1 ...

tx kt

Chceme zostrojiť predpoveď, ktorá má v triede všetkých lineárnych predpovedí najmenšiu strednú kvadratickú chybu (MSE – Mean Square Error) definovanú:

2ktkt

2 txxEket

t. j. ako podmienenú strednú hodnotu Xt + k pri daných hodnotách Xt = xt,

Xt – 1 = xt – 1, ... .

Platí:

tk1t1k1kt1ktkt zzzztx

Ak budeme hľadať predpoveď v tvare:

1t1ktkkt zztx

hľadáme vlastne koeficienty , ktoré minimalizujú výraz: ,, 1kk

.1 2z

kj

2jj

21k

21

Tento výraz nadobúda minimálnu hodnotu pre :

... 1,k k, j ,jj

Odvodili sme:

1t1ktkkt zztx

resp.

,X,X|XEtx 1ttktkt

Chyba predpovedi:

txxte ktktkt 1t1k1kt1ktktktkt zzztxxte

Platí:

0teE kt

2z

21k

21kt 1teD

Špeciálne:

tttt z1txx1te

Praktický výpočetPraktický výpočet:

Platí:

xt + k = 1 xt + k - 1 + ... + p xt + k - p + zt + k + 1 zt + k - 1 + ... + q zt + k - q

kde:

0 j pre xx

0 j pre ,X,X|XEtxx

jtjt

1ttjtjtjt

(2a)

0. j pre 1-jtx-xzz

0 j pre 0,X,X|ZEz

jtjtjtjt

1ttjtjt

(2b)

qktq1kt1ktpktp1kt1kt zzzxxtx

Potom:

(1)

Zásady pre praktický výpočetZásady pre praktický výpočet :

1. Postupujeme rekurentne, t. j. najprv vypočítame predpovede

,1qx,qx 2q1q

2. V každom kroku dosadíme do vzorca (1) vzťahy (2a) a (2b).

3. Pred začiatkom rekurentného výpočtu položíme z1 = z2 = ... = zq = 0.

V systéme Mathematica: BestLinearPredictorBestLinearPredictor[[dáta, model, kdáta, model, k]]

Výstupom je k jednokrokových predpovedí a im odpovedajúce MSE v tvare:

1knxMSE,,nxMSE,1knx,,nx kn1nkn1n

KonKonšštruovanie truovanie intervalovýchintervalových predpoved predpovedíí

95%-ný predpovedný interval konštruovaný v čase t pre predpoveď 95%-ný predpovedný interval konštruovaný v čase t pre predpoveď

o k krokov dopredu (ak uvažujeme stacionárny a invertibilný ARMA o k krokov dopredu (ak uvažujeme stacionárny a invertibilný ARMA

model)model):

te2tx;te2tx ktktktkt

Keď dosadíme za smerodajnú odchýlku (et+k(t)):

1k

1j

2jzkt

1k

1j

2jzkt 12tx;12tx

Pri výpočte bodových aj intervalových predpovedí dosadzujeme do

príslušných vzorcov odhadnuté hodnoty parametrov. Tieto vzorce však

nie sú veľmi citlivé na chyby, ktoré vznikli pri výpočte odhadov

parametrov.

Meranie chýb predpovedí

Metódy na meranie chýb, ktorých sa dopustíme použitím príslušného predpovedného modelu, sa v podstate skladajú z výpočtu predpove-dí pre skúšobnú časť údajov a porovnania týchto predpovedaných hodnôt so skutočnými hodnotami. Rozdiel medzi predpovedanou (odhadovanou) a pozorovanou hodnotou je podobný reziduálnemu členu v regresnej analýze. Na výpočet chyby pre každé predpovedné obdobie sa používa nasledujúca rovnica:

eT = xT - FT

kdeeT chyba predpovede v časovom období T

xT skutočná hodnota v časovom období T

FT predpovedaná hodnota v časovom období T.

Označme P počet časových úsekov, na ktoré robíme prognózu

Druhá odmocnina z aritmetického priemeru druhých mocnín odchýliek (root mean squared error) RMSE:

P

FX

RMSE

P

TTT

1

2

MAE (mean absolute error):

P

Fx

MAE

P

TTT

1

Aritmetický priemer druhých mocnín odchýliek (mean squared error) MSE:

P

Fx

MSE

P

TTT

1

2

1. testovacia časť vzorky (rozsah 1 až M, M < n)

Metódy na výpočet predpovedí v časových radoch

2. skúšobná časť vzorky (P je počet hodnôt jednokrokovej pred-povede, n + 1= M + P)

Uvažujme časový rad xt,  t = 1, …, n + 1. Dáta sa rozdelia na dve časti:

Hodnota predpovedanej premennej , t = M, …, n, je genero-vaná pomocou parametrického modelu g( ), ktorý treba najskôr odhadnúť.

1tx

West a McCracken navrhli tri schémy pre výpočet predpovede

1. rekurzívna metódarekurzívna metóda: predpovede sa generujú na základe

modelu, ktorého parametre sa upravujú a odhadujú postupne

pomocou všetkých hodnôt časového radu pribúdajúcich s jednotli-

vými krokmi predpovede

Prvá predpovedaná hodnota gM+1( ) sa vypočíta na základe

parametrov modelu odhadnutých pomocou členov radu x1 až

xM, druhá predpoveď gM+2( ) sa vypočíta na základe paramet-

rov odhadnutých pomocou členov x1 až xM+1, atď.

Všeobecne pre t = M, …, n, predpoveď gt+1( ) hodnoty xt+1 sa

vyčísli na základe parametrov modelu odhadnutých pomocou

členov x1 až xt .

M

M

1Mˆ

1Mˆ

t

t

West a McCracken navrhli tri schémy pre výpočet predpovede

2. Metóda rolujúceho horizontu Metóda rolujúceho horizontu : predpovede sa generujú na

základe modelu, ktorého parametre sa odhadujú postupne vždy

pomocou posledných M hodnôt časového radu

Prvá predpovedaná hodnota gM+1( ) sa vypočíta na základe

parametrov modelu odhadnutých pomocou členov radu x1 až

xM, druhá predpoveď gM+2( ) sa vypočíta na základe paramet-

rov odhadnutých pomocou členov x2 až xM+1, atď.

Všeobecne pre t = M, …, n, predpoveď gt+1( ) hodnoty xt+1 sa

vyčísli na základe parametrov modelu odhadnutých pomocou

členov xt M +1 až xt .

M

M

1Mˆ

1Mˆ

t

t

West a McCracken navrhli tri schémy pre výpočet predpovede

3. fixná metódafixná metóda: všetky predpovede sa generujú na základe

jedného modelu, ktorého parametre sa odhadnú pomocou prvých

M členov časového radu

Odtiaľ vyplýva, že pre každú predpoveď hodnoty xt+1 sú parametre

modelu rovnaké gt+1( ) = gt+1( ), pre t = M, …, n.

Predpoveď sa vyčísli na základe toho istého modelu s

parametrami = odhadnutými pomocou členov x1 až xM .M

Mt

t

Diebold - Marianov testDiebold - Marianov test

Diebold a Mariano (1995) sa zaoberali rôznymi štatistikami, ktoré je možné použiť na porovnanie, či chyby MSE dvoch alternatívnych schém sú navzájom štatisticky významne odlišné.Tento test sa v súčasnosti všeobecne používa na vyhodnotenie bodových predpovedí dvoch porovnávaných modelov a je

hodnotený ako jedna z najlepších diagnostických mier.

Uvažujme dve h-krokové predpovede časového radu xt, označené

ako počítané pre t = M + h, …, M + P + h - 1

(t. j. celkovo P predpovedí), kde M je počet dát v testovacej časti

vzorky. Nulová hypotéza je, že obidva modely dávajú rovnako

presné predpovede.

a htx t,1 htx t,2

Postup pri testovaní:

Určí sa „stratová“ (loos) funkcia g , kde je odpo-vedajúca chyba pre h-krokovú predpoveď, t. j. , i = 1, 2.

hte t,i hte t,i htxxhte t,itt,i

Vypočíta sa rozdiel dt , pre ktorý pri rov-nakej

presnosti predpovedí platí E[ dt ] = 0.

hteghteg t,2t,1

Za predpokladu kovariančnej stacionarity časového radu dt je

asymptotické rozdelenie výberového priemeru

dané vzťahom , kde

1hPM

hMttd

P

1d~

dV,0Ndn

1h

1ii0 2

P

1dV

Testovacia štatistika DM pre H0: E[ dt ] = 0 má za predpokladu platnosti H0 asymptoticky normálne rozdelenie N(0, 1). Definovaná je vzťahom:

DM = kde je konzistentný odhad založený na výberových autokovarianciách

dV

d

dV dV

1hPR

ihRtitti dddd

P

Výsledky testu sa zapisujú do tabuľky, ktorá má v riadkoch aj

stĺpcoch uvažované modely.Prvok v i-tom riadku a j-tom stĺpci tejto tabuľky je rovný a) 11 b) -1-1 c) 00ak je kvalita predikcie modelu v riadku i v porovnaní s modelom v stĺpci j a) štatistickyštatisticky významne lepšíavýznamne lepšía b) štatistickyštatisticky významne horšíavýznamne horšía c) nie je medzi nimi štatisticky významný rozdiel.nie je medzi nimi štatisticky významný rozdiel.

test[d1_, d2_, d3_, P_, h_]:= Module[{E1, E2, d, dp, V, DM, nr, qh, qd}, g[x_]:=x^2; E1 = d1 - d2; E2 = d1 - d3; d = g[E1] - g[E2]; dp = Mean[d]; g[i_]:=1/P*Sum[(d[[t - (h - 1)]] - dp) (d[[t -(h - 1) - i]] - dp), {t, h + i, P + h -1}]; V = g[0] + 2*Sum[g[i], {i, h - 1}]; DM = dp/Sqrt[Abs[V/P]]; nr =NormalDistribution[0,1]; qh=Quantile[nr,0.975]; qd=Quantile[nr,0.025]; TS = Which[DM<qd,1,qd DM qh, 0, True, -1]]

k=h;Ma[1]=model1[k]; Ma[2]=model2[k]; ...; Ma[pocet]=modelx[k];

Apom={}; Do[If[I == j, Apom = Append[Apom, "x"],

Apom = Append[Apom,test[sv,Ma[i],Ma[j],Np,k]]],{i, pocet},{j, pocet}];

A = Partition[Apom, pocet];TableForm[A, TableHeadingsAutomatic]

Diebold - Mariano dvojstranny test (a = 0.05)Diebold - Mariano dvojstranny test (a = 0.05)

H0: H1:0ee 22

21 0ee 2

221

pocet – počet modelov, h – krok predpovede, sv – skúšobná vzorka,

Np - počet predpovedí

Recommended