T-61.3040 Signaalien tilastollinen mallinnus, (5 op) syksy 2006 Luennot: Laskuharjoitukset: Petteri Pajunen Ville Viitaniemi 1
Luento 1: 12.9.2006 Yleisiä asioita Johdanto Matematiikan kertausta 2
Luennot ti 14-16 salissa T1 luennoitsija: Petteri Pajunen (Petteri.Pajunen@hut.fi,t613040@cis.hut.fi) vastaanotto: ke 14-15, huone B309, tietotekniikan talo 3
Laskuharjoitukset ke 14-16 salissa T3 (sali T2 II-periodilla), 1. harjoitukset 20.9.2006 tehtävien laskeminen suositeltavaa, kurssin asiat ovat vaikeasti omaksuttavissa ilman tehtävien itsenäistä ratkaisemista pistetehtävien itsenäisestä ratkaisemisesta on mahdollista saada hyvityspisteitä tenttiin harjoitukset pitää DI Ville Viitaniemi 4
Tiedottaminen http://www.cis.hut.fi/opinnot/t-61.3040: mahdolliset muutokset luento- ja harjoitusaikoihin, harjoitustyöohje tiedotuksia mahdollisesti myös uutisryhmässä opinnot.tik.informaatiotekniikka tenttitulokset: infolabran ilmoitustaulu (kansio) sekä news kurssin email-osoite: t613040@cis.hut.fi 5
Kurssin tavoitteita ymmärtää havaintojen mallintamisen perusteet ymmärtää havaintojen tarkastelu satunnaislukuina (satunnaisprosessit) oppia joitakin perusmenetelmiä mallintamiseen (lähinnä lineaariset mallit signaalien yhteydessä) sekä näiden sovelluksia muuta: satunnaisprosessin tehospektrin estimointi, adaptiivisen suodatuksen perusideat (LMS-suodin) 6
Sovelluksia esimerkkejä sovelluksista: moottorin vikadiagnoosi käynnin aikana - perustuu tehospektrin estimointiin pienestä määrästä havaintoja finanssimatematiikka, ekonometria - finanssiaikasarjat satunnaisprosesseina sonar - vedenalaisten signaalien havaitseminen ja suunnanmääritys tehospektrin avulla monet tietoliikennesovellukset 7
Esitiedot perusmatematiikka (matriisit, tn-laskenta), digitaalisen signaalinkäsittelyn perusteet MATLAB, harjoitustyötä varten kurssin kotisivulla prujuja, joissa luetellaan lyhyesti tarvittavia asioita lineaarialgebrasta ja DSP:stä 8
Suorittaminen suorittaminen = harjoitustyö+tentti ilmoittautuminen: http://webtopi.hut.fi 1. tentti joulukuussa 2006, viimeinen syyskuussa 2007 harjoitustyö voimassa viimeiseen syksyn 2006 luentoihin perustuvaan tenttiin saakka joulukuun tenttiä lukuunottamatta tenttiin osallistuminen edellyttää hyväksyttyä harjoitustyötä 9
Harjoitustyö harjoitustyöohje ilmestyy kurssin kotisivulle lokakuun loppuun mennessä toteutetaan MATLAB-kielellä joitakin kurssiin sisältyviä asioita tuloksista kirjoitetaan raportti, joka palautetaan assistentille deadline ilmoitetaan myöhemmin 10
Kurssimateriaali kurssikirja: Monson H. Hayes: Statistical Digital Signal Processing and Modeling, Wiley 1996 kirja sisältää suurimman osan kurssin asioista (n. 90 prosenttia), mutta myös kurssiin kuulumatonta asiaa lisäksi käydään läpi signaalien mallinnuksen näkökulmasta estimointiteorian perusteita kirjan ulkopuolelta. Näistä ja mahdollisesti muista asioista materiaalia kurssin kotisivulla 11
luentokalvot tulevat kurssin kotisivulle kurssin aikana PDF-muodossa kurssista ei ole varsinaista luentomonistetta: luentokalvot ovat laadittu luennolla esitettäväksi opetusmonisteisiin tulevat laskarit ratkaisuineen sekä harjoitustyöohje laskariratkaisut ja työohje tulevat myös kurssin kotisivulle kurssin aikan 12
Kurssin sisältö lyhyesti keskeistä tilastollinen näkökulma mallintamiseen mallintamisen kohteena ovat digitaaliset signaalit poikkeaa DSP:stä tarkastelemalla signaaleja satunnaisprosesseina estimointiteoriaa kurssin tarpeiden laajuudessa 13
tehdään prosesseista yksinkertaistavia oletuksia tästä seuraa, että prosessit voidaan mallintaa lineaaristen siirtoinvarianttien systeemien vasteina mallin muodostavat systeemin parametrit sekä syöteprosessi [ ] syöte [ ] LSI [ ] vaste kun tiedetään syöte sekä LSI-systeemi, niin vaste voidaan muodostaa suodattamalla syötettä 14
signaalien mallintamisen sovelluksena saadaan Wiener-suodin poistaa kohinaa havaitusta prosessista optimaalisesti tietyn kriteerin suhteen suodin tekee kompromissin kohinan vaimentamisen ja signaalin säilyttämisen välillä: vaimennetaan eri taajuuksia sen mukaan kuinka paljon kohinaa on suhteessa signaaliin kompromissi syntyy automaattisesti optimointitehtävän ratkaisuna, toisin kuin esim. ideaalisessa kaistanpäästösuotimessa 15
DSP:ssä signaaleja tarkastellaan usein taajuustasossa Fourier-muunnoksen avulla satunnaisprosessi voidaan esittää tehospektrin avulla taajuustasossa tehospektri voidaan estimoida havainnoista Fourier-muunnoksen avulla tarkastellaan myös Fourier-muunnosta tehokkaampaa tehospektrin estimointia 16
kurssin lopuksi tarkastellaan mm. adaptiivista suodatusta soveltuu tilanteeseen, jossa prosessin ominaisuudet muuttuvat vähitellen ajan funktiona keskitytään perusasioihin, erityisesti LMS-suotimeen joka käyttää gradienttimenetelmää suotimen parametrien adaptiiviseen ratkaisemiseen 17
Johdanto mikä on signaali? a detectable physical quantity or impulse (as a voltage, current, or magnetic field strength) by which messages or information can be transmitted ; Merriam-Webster s Collegiate Dictionary esim. puhe välittyy ilmanpaineen vaihteluina signaalin ei tarvitse olla fyysinen suure, havaittavuus riittää 18
mikä on digitaalinen signaali? signaali = havaittavissa oleva suure käytännössä signaali on eri ajanhetkinä t havaittu suure x(t) kun rajoitutaan havaitsemaan suure x(t) tiettyinä ajanhetkinä (yleensä tasavälisinä, esim. tasatunnein), saadaan diskreettiaikainen signaali koska signaali koostuu havainnoista diskreetteinä ajanhetkinä 19
digitaalinen signaali saa lisäksi diskreetin arvon joka hetkellä t eli x(t) ei ole jatkuva-arvoinen käytännössä kutsumme signaalia digitaaliseksi kun se on havaittu diskreeteillä ajanhetkillä t 1, t 2,... (miksi?) 20
mikä on tilastollinen signaali? kun havaitaan digitaalinen signaali niin tuloksena on yleensä jono reaalilukuja x(0), x(1), x(2),... tällaista signaalia kutsutaan deterministiseksi, koska jokainen x(t) on joku tietty lukuarvo esim. joulukuun keskilämpötila Helsingin Kaisaniemessä vuosina 1900-1999 on sinänsä deterministinen signaali 21
tilastollinen signaali tarkoittaa sitä, että jokainen x(t) on satunnaismuuttuja tehdään oletus: joulukuun keskilämpötila Kaisaniemessä on normaalijakautunut ja tämä jakauma ei muutu eri vuosina esim. x(t) N(µ, σ 2 ) on oletuksen mukainen tilastollinen signaali µ ja σ 2 voitaisiin estimoida havaituista arvoista: näin tulisi mallinnettua lämpötila Kaisaniemessa 22
tilastollista signaalia kutsutaan yleisemmin satunnaisprosessiksi (tai stokastiseksi prosessiksi) em. Kaisaniemen lämpötila on esimerkki satunnaisprosessista hieman mielenkiintoisempiin satunnaisprosesseihin päädytään mm. suodattamalla yksinkertaisia prosesseja, joiden tilastolliset ominaisuudet tunnetaan useimmat kurssilla käsitellyt menetelmät perustuvat tällaisiin satunnaisprosesseihin 23
jatkossa käsitellään satunnaisprosesseja x(n) joiden aikaindeksi valitaan yksinkertaisuuden vuoksi kokonaisluvuksi nämä prosessit ovat satunnaismuuttujajonoja x(0), x(1), x(2),... jos alkuperäinen prosessi on havaittu tasavälisin ajanhetkin, niin aikaindeksin muuttaminen em. tavalla ei aiheuta ongelmia (paitsi aikaskaalan häviämisen) 24
mitä on tilastollinen mallintaminen? suureen θ arvoa ei tunneta tunnetaan havainnot D mitä D kertoo θ:sta? tarvitaan tilastollista mallia 25
voiko havainnoista oppia ilman mallia? ei voi: on oletettava jotakin D:n ja θ:n riippuvuudesta esimerkki: ilmaston lämpeneminen sovitetaan dataan joko suora tai 10. asteen polynomi vaikka käytössä on samat havainnot, niin ennusteet eroavat pelkät havainnot eivät kerro kumpi malli on parempi 26
mikä on tilastollinen malli? esitetään havaintojen riippuvuus θ:sta todennäköisyysjakauman avulla oleellista tuntea havaintojen D jakauma, kun oletetaan θ tunnetuksi esimerkki: θ = Kaisaniemen keskilämpötila (oletetaan varianssiksi σ 2 = 9) havaittu keskilämpötila on x(n) N(θ, 9) θ:n voi estimoida esimerkiksi laskemalla havaittujen lämpötilojen keskiarvon keskiarvo on todennäköisesti lähellä arvoa θ 27
jos havaintojen jakauma ei riippuisi θ:sta niin keskiarvon laskeminen olisi hyödytöntä ilman mallia ei siis voida estimoida θ:n arvoa 28
yleisemmin jakaumaa p(d θ) kutsutaan uskottavuusfunktioksi, mikäli se ajatellaan θ:n funktioksi sen avulla voidaan estimoida θ (ts. valitaan sellainen arvo että tuloksena saatu jakauma sopii hyvin havaintoihin) tällä kurssilla ei käsitellä mallintamista yleisesti, vaan keskitytään satunnaisprosesseihin kuitenkin perusajatus menetelmien taustalla on sama kuin yllä esitettiin 29
Yhtälöryhmät muotoa Ax = b, halutaan ratkaista x 1. A on neliömatriisi: A = 0: yksi ratkaisu x = A 1 b ( A on A:n determinantti) A = 0: joko nolla tai ääretön määrä ratkaisuja 30
2. A matala ja leveä (vähemmän yhtälöitä kuin tuntemattomia): yleensä ääretön määrä ratkaisuja, voidaan valita esim. ratkaisu jolla on pienin normi 3. A kapea ja korkea (enemmän yhtälöitä kuin tuntemattomia): yleensä ei ratkaisua, valitaan esim. min b Ax 2 demo: lineq.r 31
Funktion ääriarvoista jatkossa minimoidaan usean muuttujan reaaliarvoisia funktioita minimoitava funktio on keskimääräinen neliöllinen virhe (määritellään myöhemmin) funktion argumentit ovat kompleksiarvoisia muuttujia 32
olkoon f (z) reaaliarvoinen, missä z on kompleksiarvoinen parametri jos f (z) voidaan derivoida z:n suhteen niin ääriarvot löytyvät derivaatan nollakohdista ääriarvo ei välttämättä ole funktion f (z) maksimi tai minimi, edes lokaali sellainen minimit ja maksimit ovat kuitenkin ääriarvoja ellei ole rajoitusehtoja (reunapisteet tms.) 33
kompleksisen derivaatan määritelmä on tuttu: lim δz 0 f (z + δz) f (z) δz = f (z) jos raja-arvo on olemassa ja äärellinen, niin f (z):aa kutsutaan analyyttiseksi 34
kompleksikonjugaatti z ei ole analyyttinen (derivoituva) z:n funktio monet optimontitehtävät tällä kurssilla ovat muotoa min e(a 1, a 2,... ) 2, missä e(a 1,... ) = x(n) + a 1 x(n 1) +... koska z 2 = zz niin derivoitavassa lausekkeessa esiintyy argumenttien kompleksikonjugaatteja 35
minimoitavan funktion e(a 1,... ) 2 argumentit ovat kompleksiarvoiset muuttujat a k, a k, k = 1, m voidaan osoittaa seuraava tulos: oletus: f (z, z ) on reaaliarvoinen sekä analyyttinen z:n ja z :n suhteen mikäli ne tulkitaan riippumattomiksi muuttujiksi silloin f :n ääriarvot saadaan derivoimalla f jommankumman argumentin suhteen ja asettamalla derivaatta nollaksi esim. derivoitaessa z :n suhteen z tulkitaan vakioksi 36
monen muuttujan reaaliarvoiselle funktiolle f (z 1, z1, z 2, z2,..., z n, z n) pätee vastaava tulos: ol: f R on analyyttinen argumenttiensa suhteen mikäli ne tulkitaan riippumattomiksi muuttujiksi ääriarvot derivoimalla esim. z1,..., z n:n suhteen ja asettamalla derivaatat nolliksi 37
yhteenveto: kurssilla yleensä minimoidaan reaaliarvoista funktiota muotoa e(z) 2, missä z on kompleksiarvoinen muuttuja derivoidaan z :n suhteen pitäen z:aa vakiona ja asetetaan derivaatta nollaksi yleensä vain yksi derivaatan nollakohta: tämä on globaali minimi koska e(z) 2 on jatkuva, ei-negatiivinen ja kasvaa rajatta kun e(z) kasvaa 38
Luento 2: 19.9.2006 Todennäköisyyslaskentaa Estimointiteoriaa 39
Todennäköisyyslaskentaa satunnaisprosessi on jono satunnaismuuttujia x(0), x(1), x(2),... satunnaismuuttuja x on joukko arvoja Ω todennäköisyyksineen Pr[S] [0, 1] missä S Ω voi olla diskreetti (kolikonheitto), jatkuva-arvoinen tai sekoitus näistä satunnaismuuttujan x jakauma on F(a) = Pr[x a] 40
satunnaismuuttujalla voi myös olla tiheysfunktio p(a) = F(a) a jakaumaa voidaan kuvata jakauman parametreillä useimmat voidaan laskea odotusarvon E(x) avulla 41
korvaamalla x jollakin sen funktiolla g(x) voidaan laskea useita parametrejä koska x on satunnaismuuttuja niin myös g(x) on satunnaismuuttuja sen odotusarvo saadaan seuraavasti (olettaen tiheysfunktion p(a) olemassaolo): E(g(x)) = g(a)p(a)da 42
esimerkkejä: var(x) = E(x E(x)) 2, varianssi r xy = E(xy ), korrelaatio J = E(x ˆx) 2, keskimääräinen neliöllinen virhe (MSE) viimeinen esimerkki liittyy estimointiin, missä halutaan löytää sellainen ˆx joka on mahdollisimman lähellä satunnaismuuttujaa x 43
satunnaisprosessin jakauma ei määräydy pelkästään muuttujien x(0), x(1),... jakaumista usein x(n) ja x(n k) riippuvat toisistaan, tämä riippuvuus ei näy x(n):n ja x(n k):n jakaumissa satunnaismuuttujien x 1 ja x 2 yhteisjakauma ja tiheysfunktio: F(a, b) = Pr[x 1 a, x 2 b], p(a, b) = 2 F(a, b) a b useamman muuttujan yhteisjakauma vastaavalla tavalla 44
satunnaisprosessi voitaisiin mallintaa arvioimalla muuttujien x(0), x(1),..., x(n 1) yhteisjakauma vaikkapa histogrammin avulla jos jokainen muuttuja x(n) diskretoidaan kymmeneen eri arvoon niin yhteisjakaumassa on 10 N lokeroa esim. arvolla N = 20 lokeroita on 10 20, mikä on varsin suuri luku havaintoja ei ole yleensä tarpeeksi tällaisen histogrammin laskemiseksi 45
yksinkertaisempaa tarkastella yhteisjakaumaa kuvaavia parametrejä satunnaismuuttujien x ja y korrelaatio on r xy = E(xy ) ja kovarianssi on c xy = Cov(x, y) = E ([x E(x)][y E(y)] ) = E(xy ) E(x) E(y ) kun E(x) = E(y) = 0 niin r xy = c xy 46
x ja y ovat (tilastollisesti) riippumattomat jos p xy (a, b) = p x (a)p y (b) jos satunnaisprosessin arvot x(n) ovat toisistaan riippumattomia, niin em. histogrammiesimerkissä tarvitaan N kappaletta 10-lokeroista histogrammia samantyyppinen mutta heikompi oletus on korreloimattomuus x ja y ovat korreloimattomat jos E(xy ) = E(x)E(y ) 47
riippumattomuus korreloimattomuus korreloimattomuus riippumattomuus x ja y ovat ortogonaaliset jos E(xy ) = 0 kun E(x) = E(y) = 0 niin ortogonaalisuus korreloimattomuus 48
normaalijakautuneen satunnaismuuttujan tiheysfunktio on p(t) = 1 { σ 2π exp (t m x) 2 } 2σ 2 normaalijakauman ominaisuuksia, x ja y yhdessä normaalijakautuneet: lineaarikombinaatio ax + by on norm. jakautunut riippumattomuus korreloimattomuus optimaalinen neliövirheen minimoiva estimaattori ŷ = f (x) on lineaarinen x:n funktio gauss.r 49
Estimointiteoriaa mallintamisen tavoitteena on saada tietoa tuntemattomasta suureesta θ datan D avulla yleensä θ:n arvoa ei voida ratkaista tarkkaan D:n avulla usein on käytännöllistä (mutta epätäsmällistä) valita jokin yksittäinen arvo θ:lle todennäköisyysmallin ja havaintojen avulla tämä voidaan tehdä estimoimalla θ:n arvo havainnoista 50
estimointi tehdään estimaattorin avulla: se on jokin funktio havainnoista, jotka ajatellaan satunnaismuuttujiksi estimaattori on myös satunnaismuuttuja estimaattorin toivotaan olevan jossakin mielessä lähellä estimoitavaa parametria θ 51
estimaattorilla on jakauma sekä jakaumasta johdettavia tunnuslukuja (esim. odotusarvo ja varianssi) estimaatti: estimaattori, jossa satunnaiset havainnot on korvattu havaituilla lukuarvoilla ts. estimaatti on estimaattorin realisaatio (lukuarvo) kuinka valitaan hyvä estimaattori? 52
ei oikeastaan mitenkään, mikäli ei ole muuta tietoa kuin tn-malli ja havainnot tämä johtuu siitä, että yhden tietyn arvon valitseminen on aina väärä vastaus mikäli θ:lla voi olla useita eri arvoja parhaan väärän vastauksen valitseminen vaatii muutakin tietoa kuin tilastollisen mallin tällä kurssilla tyydytään valitsemaan estimaattorit tietyn kustannusfunktion avulla 53
esimerkki: mallinnetaan satunnaisprosessi x(n) = A + v(n), n = 0, 1,..., N 1, missä v(n) N(0, σ 2 ) kuinka A voidaan estimoida havainnoista x(n)? vaikka näin:  = x(5) + 3. Tämä on estimaattori, koska se on havaintojen funktio Huom! x(5) on tässä satunnaismuuttuja, joten myös  on satunnaismuuttuja 54
 = x(5) + 3 ei taida olla hyvä estimaattori havaintoon lisätty vakio 3 vie estimaattoria turhaan pois oikeasta arvosta entä  = x(5)? Nyt on voimassa E(Â) = E(x(5)) = A vaikuttaa paremmalta koska estimaattori saa keskimäärin oikean arvon 55
harha = estimaattorin systemaattinen virhe odotusarvon mielessä edellä estimaattorin  = x(5) + 3 antamat estimaatit poikkeavat keskimäärin 3:lla oikeasta arvosta parametrin θ estimaattori on harhaton jos E( ˆθ) = θ esimerkissä  = x(5) on harhaton estimaattori 56
kun estimaattori ˆθ N on muodostettu N:n havainnon funktiona ja lim E( ˆθ N ) = θ N niin estimaattori ˆθ N on asymptoottisesti harhaton huom! ei ole mitään yleistä perustetta harhattoman estimaattorin paremmuudelle. Joskus harhainen estimaattori voi olla parempi kuin harhaton. 57
onko harhaton  = x(5) hyvä estimaattori? varianssi var(â) = var(x(5)) = σ 2 on suuri muodostetaan harhaton estimaattori varianssi on nyt σ 2 /N  = 1 N N 1 i=0 x(i) 58
estimaattorin ˆθ keskimääräinen neliöllinen virhe (MSE): E( ˆθ θ) 2 se voidaan kirjoittaa muotoon var( ˆθ) + [E( ˆθ) θ] 2 = varianssi + (harha) 2 harhattomalle estimaattorille MSE on sama kuin varianssi 59
MSE sisältää näppärästi sekä harhan että varianssin valitaanko aina estimaattori, joka minimoi MSE:n? ei, sillä MSE:n minimoiva estimaattori voi riippua estimoitavasta parametrista. Tällöin estimaattori ei ole toteutettavissa lisäksi MSE:n minimoiva estimaattori on usein epälineaarinen 60
estimaattori, joka minimoi MSE:n on ehdollinen odotusarvo eli E(θ x), missä x symboloi havaintoja yleisesti tämä on vaikea laskea ja voi olla mahdoton toteuttaa erikoistapaus: mikäli θ:n ja x:n yhteisjakauma on normaalijakauma niin silloin ehdollisella odotusarvolla on tiettyjä ominaisuuksia 61
F(θ, x) normaalijakauma = E(θ x) on 1. harhaton 2. pienin varianssi kaikista estimaattoreista 3. lineaarinen x:n funktio 4. normaalijakautunut 5. yksikäsitteinen 62
normaalijakaumaoletus on harvoin järkevä voidaan myös tarkastella kaikkia lineaarisia estimaattoreita ja valita niistä se, joka minimoi MSE:n jatkossa päädytään samoihin menetelmiin riippumatta siitä kumpi oletus tehdään yksinkertaisuuden vuoksi merkinnät noudattavat normaalijakaumaoletusta, mitä ilman kaikki merkinnät eivät pidä paikkaansa! 63
Uskottavuusfunktio havaitaan muuttuja x = A + v, missä v N(0, σ 2 ) x:n tiheysfunktio on normaalijakauman tiheys p(x A) = N(x A, σ 2 ) p(x 0 A) kertoo likimäärin suhteellisen todennäköisyyden tapahtumalle x 0 ɛ x x 0 + ɛ parametrin A funktiona p(x A) on uskottavuusfunktio 64
havaitaan x = x 0 ja lasketaan p(x 0 A) jollakin A:n arvolla pieni p(x 0 A): epätodennäköistä että olisi havaittu x 0 tällä A:n arvolla suuri p(x 0 A): todennäköistä että on havaittu x 0 vertailu pitäisi suorittaa eri arvojen x 0 välillä samalla A:n arvolla 65
käytännössä A vaihtelee, mutta x 0 ei vaihtele esim. arvoa p(x 0 A) pitää verrata esim. arvoon p(x 0 A 1 ) siksi puhutaan uskottavuudesta eikä todennäköisyydestä: kyseessä ei ole muuttujan A tn-jakauma uskottavuusfunktion p(x A):n muoto kertoo estimoinnin tarkkuudesta terävä piikki tekee useimmat A:n arvot epäuskottaviksi like.r 66
toinen derivaatta kertoo funktion kaarevuudesta: log p(x A) = log 2πσ 2 1 (x A)2 2σ2 log p(x A) A = 1 (x A) σ2 log p(x A) AA = 1 σ 2 pieni σ 2 tarkkuus = suuri kaarevuus ja estimoinnin 67
koska estimaattorin  = x varianssi on σ 2 niin saadaan σ 2  = 1 E{ 2 log p(x A) A 2 } odotusarvo johtuu siitä, että yleisesti kaarevuuden lauseke riippuu havainnoista jotka ovat satunnaismuuttujia ylläoleva esimerkki havainnollisti sen, että parhaan estimaattorin varianssi voitiin kirjoittaa kaarevuuden avulla 68
harhattoman estimaattorin varianssi σ on rajoitettu 2ˆθ alhaalta. Alaraja on Cramer-Raon alaraja: σ 2ˆθ 1 E{ 2 log p(x θ) θ 2 } Derivaatta lasketaan parametrin θ todellisessa arvossa, odotusarvo otetaan p(x θ):n suhteen. alarajassa esiintyvä nimittäjä E{ 2 log p(x θ) } on θ 2 Fisher-informaatio, jonka kasvaessa CR-alaraja pienenee 69
uskottavuusfunktiota voi käyttää suoraan estimointiin valitaan θ niin että uskottavuusfunktio maksimoituu tämä θ:n arvo tekee havainnot mahdollisimman todennäköisiksi valitun mallin mukaan tätä menetelmää kutsutaan suurimman uskottavuuden menetelmäksi ja vastaavaa estimaattoria ML-estimaattoriksi 70
yleisemmin voidaan ajatella, että tilastollinen malli on yhteisjakauma p(θ, x) riittää valita p(x θ) sekä priori p(θ) MAP-estimaattori on se θ joka maksimoi posteriorijakauman p(θ x) = p(x θ)p(θ) p(x) ero ML-estimaattoriin on siinä, että uskottavuusfunktio kerrotaan priorilla p(θ) 71
Ortogonaalisuusperiaate satunnaismuuttujat voidaan ajatella vektoreiksi sisätuloavaruudessa: 1. satunnaismuuttujien lineaarikombinaatiot ovat satunnaismuuttujia 2. sisätuloksi kelpaa x y = E(xy ) MSE voidaan ajatella vektorin x ˆx sisätuloksi itsensä kanssa,koska se on (x ˆx) (x ˆx) = E( x ˆx 2 ) 72
miten vektoriavaruudet liittyvät estimointiin? ortogonaalisuusperiaate antaa hyvin käyttökelpoisen tavan ratkaista ongelmia joissa minimoidaan MSE:tä se pätee yleisesti sisätuloavaruuksissa (vektoriavaruus, jossa on sisätulo) 73
olkoon vektorit x 1,..., x k jossakin vektoriavaruudessa jossa on sisätulo x i x j havaitaan y = i=1 k a ix i + e ortogonaalisuusperiaate sanoo, että jos minimoidaan virheen normin neliö e e niin silloin virhe on ortogonaalinen jokaisen vektorin x i kanssa siis min e e = e x i = 0 kaikilla i = 1, 2,..., k 74
sovelletaan tilastolliseen malliin y = k i=1 a i x i + e estimoidaan ŷ = i=1 k a ix i ratkaistaan kertoimet a i niin että MSE E( y ŷ 2 ) minimoituu silloin E((y ŷ)xi ) = 0 kaikilla i = 1, 2,..., k kun kertoimet a i on valittu edellisen kohdan mukaan 75
esimerkki: estimoidaan muuttujaa y estimaattorilla ŷ = f (x) halutaan löytää hyvä estimaattori y= suure joka halutaan mallintaa x= suure joka voidaan havaita ŷ=suure joka voidaan laskea, kun x on havaittu 76
valitaan hyvä, niin että minimoidaan odotusarvoa E((y ŷ) 2 ), MSE rajoitutaan tarkastelemaan lineaarista estimaattoria ŷ = ax + b silloin E((y ŷ) 2 ) = E((y ax b) 2 ) 77
ratkaistaan a ja b neliövirheen derivaatan nollakohdista: J a = 2 E((y ax b)x) = 0 E((y ŷ)x) = 0 J b = 2 E(y ax b) = 0 E(y) = E(ŷ) nämä yhtälöt voidaan tulkita ortogonaalisuusehdoiksi: virhe y ŷ on ortogonaalinen niiden muuttujien (x ja vakio 1) kanssa joiden avulla yritetään mallintaa y ts. E(ex) = 0 ja E(e1) = 0, missä e = y ŷ 78
ortogonaalisuusehdot voidaan ratkaista ja saadaan MSE:n minimoiva estimaattori jatkossa kurssilla törmätään usein tilanteeseen jossa voidaan soveltaa ortogonaalisuusperiaatetta aina selviää kuitenkin derivoimalla, mutta ortogonaalisuusperiaatteen käyttö on huomattavasti helpompaa lin.r 79
Luento 3: 26.9.2006 Johdanto ARMA-prosesseihin 80
Johdanto ARMA-prosesseihin tarkastellaan ARMA-prosesseja esimerkkien avulla opetellaan samalla tarvittavia laskutekniikoita jatkossa perustellaan ARMA-prosessien käyttö tarkemmin 81
Kohina satunnaisprosessi v(n), jota on vaikea ennustaa oletetaan aluksi kohina normaalijakautuneeksi: v(n) N(0, σ 2 ), n = m = v(n), v(m) korreloimattomia erikoistapaus valkoisesta kohinasta, yleisesti ei tarvitse olla normaalijakautunut 82
v(n) on siis jono korreloimattomia, normaalijakautuneita satunnaismuuttujia tärkeä ominaisuus: havaitut arvot v(n 1), v(n 2),... eivät auta ennustamaan arvoa v(n) tämä johtuu korreloimattomuudesta ja normaalijakautuneisuudesta pelkkä korreloimattomuus = kohina on lineaarisesti ennustamatonta (laskaritehtävä) 83
ehdollinen jakauma: p(v(n) v(n 1), v(n 2),... ) tulkinta: miten v(n) on jakautunut, kun tunnetaan arvot v(n 1), v(n 2),... normaalijakautuneelle kohinalle p(v(n) v(n 1),... ) = p(v(n)) 84
ehdollisista jakaumista voidaan laskea parametreja kuten ehdollinen odotusarvo ja varianssi normaalijakautuneen kohinan v(n) ehdollinen jakauma voidaan esittää odotusarvon ja varianssin avulla: E(v(n) v(n 1),... ) = E(v(n)) = 0 var(v(n) v(n 1),... ) = var(v(n)) = σ 2 85
kohinan arvoja voidaan laskea yhteen ja muodostaa summaprosessi se toteuttaa ehdon M(n) = n v(i) i=0 E(M(n) M(n 1), M(n 2),... ) = M(n 1) tämän ehdon totetuttavia prosesseja voidaan käyttää sovelluksissa, joissa paras arvaus tulevasta arvosta on viimeisin havainto (finanssiaikasarjat) 86
AR-prosessi yleensä halutaan ennustaa tulevia arvoja havaintojen avulla (kohina ei siis kelpaa) määritellään satunnaisprosessi differenssiyhtälönä x(n) = ax(n 1) + v(n), v(n) norm. kohinaa tämä määrää satunnaisprosessin x(n), n = 0, 1, 2,... (sovitaan x( 1) = 0) 87
prosessia voidaan simuloida seuraavasti: 1. valitaan alkuarvo x( 1) = 0 ja asetetaan n = 0 2. arvotaan kohinan arvo v(n) 3. lasketaan x(n) = ax(n 1) + v(n) (x(n 1) on laskettu aiemmin) 4. asetetaan n := n + 1 ja jatketaan kohdasta 1 88
em. prosessi on esimerkki AR-prosessista valitaan muutamia parametrin a arvoja ja simuloidaan vastaavat AR(1)-prosessit erikoistapauksena arvolla a = 0 saadaan tulokseksi kohinaprosessi demo: ar_1.r 89
yleisemmin AR(p)-prosessi voidaan kirjoittaa x(n) = p k=1 a(k)x(n k) + v(n), v(n) norm. kohinaa p on prosessin asteluku (käytännössä p <, mutta periaatteessa voi olla p = ) AR(p) simuloidaan kuten AR(1), mutta tarvitaan useampi alkuarvo (x(n) = 0 kun n < 0) 90
termi AR tulee sanasta autoregressive prosessin arvo x(n) muodostetaan lineaarisena regressiona p:stä edellisestä arvosta AR-prosessia vastaava malli on lineaarinen aiempien arvojen suhteen 91
MA-prosessi lineaarinen malli voidaan myös muodostaa aiempien kohinan arvojen suhteen esimerkki: x(n) = b(0)v(n) + b(1)v(n 1) onko hyödyllistä laskea kohinan arvoja yhteen? ts. onko myös x(n) kohinaa? 92
tarkistetaan asia prosessille x(n) = v(n) v(n 1) on selvää, että x(n) on normaalijakautunut odotusarvolla nolla lasketaan peräkkäisten arvojen korrelaatio (tarkista itse välivaiheet): E(x(n)x (n 1)) = σ 2 < 0 prosessi x(n) ei siis ole kohinaa 93
termi MA tulee sanoista moving average: lasketaan liukuvaa keskiarvoa kohinasta yleisesti MA(q)-prosessi on x(n) = q b(k)v(n k) k=0 missä v(n) on valkoista kohinaa simulointi helppoa: simuloi kohinaa ja laske x(n) demo: ma_1.r 94
lineaarisesti voi yhdistellä samaan aikaan sekä aiempia arvoja että kohinaa saadaan ARMA(p, q)-prosessi x(n) = p k=1 a(k)x(n k) + q b(l)v(n l), v(n) norm. kohinaa l=0 malli on lineaarinen parametrien a(k) ja b(l) suhteen demo: arma_11.r 95
Esitys z-tasossa signaalinkäsittelyssä tarkasteltiin z-muunnosta prosessin arvon x(n) kertominen z k :llä vastaa viivettä aikatasossa: z 1 x(n) = x(n 1). z k x(n) = x(n k) tulkitaan z k :t symboleina, jotka suorittavat prosessin viivästämisen 96
z k :n avulla voidaan kirjoittaa MA- ja AR-prosessit lyhyesti: x(n) = B(z)v(n) = (b(0) + b(1)z 1 + + b(q)z q )v(n) A(z)x(n) = v(n) (1 + a(1)z 1 + + a(p)z p )x(n) = v(n) 97
ARMA(p,q)-prosessi voidaan kirjoittaa x(n) = B(z) A(z) v(n) tämä on hieman epätäsmällistä, koska z k tulkittiin vain symboliksi, jolla kertominen aiheuttaa prosessiin viiveen esitys B(z)/A(z) voidaan perustella z-muuntamalla ARMA-prosessin differenssiyhtälö 98
polynomit A(z) ja B(z) määräytyvät parametreistä a(1),..., a(p), b(0),..., b(q) kun parametrit tunnetaan, niin vastaava ARMA-prosessi on täysin määrätty (jos kohina on normaalijakautunutta) ovatko eri parametrien määräämät ARMA-prosessit aina eri satunnaisprosesseja? eivät ole: prosesseja voidaan muuntaa niin, että parametrien arvot muuttuvat mutta prosessi ei muutu 99
esimerkki: muunnetaan AR(1)-prosessi x(n) = a(1)x(n 1) + v(n) (1) yhtälöön (1) voidaan sijoittaa x(n 1) = a(1)x(n 2) + v(n 1) saadaan x(n) = a 2 (1)x(n 2) a(1)v(n 1) + v(n) 100
toistamalla sama k kertaa saadaan ARMA(k, k 1)-prosessi x(n) = ( a(1)) k x(n k) + ( a(1)) k 1 v(n k + 1) + ( a(1)) k 2 v(n k + 2) + + v(n) jos a(1) on itseisarvoltaan alle yksi niin x(n) = ( a(1)) k v(n k) k=0 joka voidaan tulkita MA( )-prosessiksi 101
muunnoksen AR(1) MA( ) voi tehdä myös suoremmin kirjoitetaan AR(1)-prosessi polynomin A(z) avulla: x(n) = 1 A(z) v(n) = 1 v(n) 1 + a(1)z 1 termi 1 1+a(1)z 1 voidaan kehittää sarjaksi z 1 suhteen 102
helpohkosti saadaan 1 1 + a(1)z 1 = 1 + ( a(1))z 1 + ( a(1)) 2 z 2 +... silloin saadaan kirjoitettua AR(1)-prosessi muodossa x(n) = ( a(1)) k v(n k) k=0 kuten edellä 103
monimutkaisemmat muunnokset vaativat hankalampia laskutoimituksia joista esimerkki laskareissa oleellista on se, että AR-prosessi voidaan vaihtaa MA-prosessiksi ja päinvastoin tosin parametrien lukumäärä yleisesti vaihtuu äärellisestä äärettömäksi 104
voivatko ARMA-prosessin parametrit olla mitä tahansa lukuja? demo: x(n) = 1.1x(n 1) + v(n) (ar_infty.r) prosessi räjähtää kohti ääretöntä, koska prosessi ei ole väljässä mielessä stationäärinen (tarkemmin jatkossa) AR-prosessin määräävä systeemi 1/A(z) ei ole stabiili, koska sillä on napa yksikköympyrän ulkopuolella: z = 1.1 105
stabiilius ei seuraa siitä, että parametrien itseisarvot ovat ykköstä pienempiä demo: x(n) = 0.7x(n 1) + 0.6x(n 2) + v(n) (ar_infty2.r) myöhemmin nähdään, että laaja joukko satunnaisprosesseja voidaan aina esittää stabiilina ARMA-prosessina 106
eri malleilla on tiettyjä etuja: AR: helppo ratkaista parametrit MA: helppo laskea prosessin statistiikkoja ARMA: usein pienin parametrien lukumäärä mikäli jossakin sovelluksessa voidaan olettaa, että jokin ylläolevista malleista on sopiva niin muunnosesimerkit osoittivat että periaatteessa mallin voi valita näistä vapaasti 107
Sinisignaali ARMA-prosessien lisäksi jatkossa käsitellään sinisignaaleja nämä ovat satunnaisprosesseja sopivasti määriteltynä yksinkertaisin sinisignaali on prosessi x(n) = A sin(nω + φ) mikä tästä tekee satunnaisprosessin? 108
jos amplitudi A, taajuus ω ja vaihe φ ovat vakioita niin kyseessä ei ole satunnaisprosessi oletetaan amplitudi ja taajuus vakioiksi sensijaan vaihe φ oletetaan tasajakautuneeksi välillä [0, 2π) huom! vaihe on satunnaisuudesta huolimatta sama joka hetkellä n 109
yksi realisaatio saadaan simuloimalla φ:n arvo kerran ja laskemalla x(n) = A sin(nω + φ) simuloitu sinisignaali näyttää siis tarkalleen deterministiseltä sinisignaalilta vaiheen satunnaisuus ainoastaan siirtää siniä aika-akselilla 110
kompleksinen sinisignaali on x(n) = A exp(jnω), A = A exp(jφ) A on kompleksiluku joka sisältää vaiheen φ sekä reaalisen amplitudin A käytetään aina kompleksisia sinisignaaleja, koska reaalinen sini voidaan kirjoittaa sin(ω) = 1 [exp(jω) exp( jω)] 2j 111
siis yhtä reaalista sinisignaalia taajuudella ω vastaa kaksi kompleksista siniä taajuuksilla ±ω myöhemmin nähdään, kuinka voidaan estimoida kompleksisten sinisignaalien taajuuksia kun taajuudet tunnetaan niin amplitudit ja vaiheet on vielä ratkaistava ratkaisu kompleksisille sinisignaaleille riittää 112
oletetaan, että havaitaan x(n) = A cos(nω + φ) + v(n) ja että taajuus ω tunnetaan ratkaistaan amplitudi ja vaihe minimoimalla n [x(n) A cos(nω + φ)] 2 vaihe φ on kosinifunktion sisällä, joten ei saada suoraan lineaarista ratkaisua (paitsi jos lasketaan kosini auki) 113
voidaan kirjoittaa x(n) = 1 2 A exp(jnω) + 1 2 A exp( jnω) + v(n) nyt on minimoitava n [ x(n) 1 2 A exp(jnω) 1 ] 2 2 A exp( jnω) tuntematon kompleksiarvoinen muuttuja A voidaan ratkaista tästä lineaarisesti 114
useimmiten tarkastellaan sinisignaalien summaa johon on lisätty valkoista kohinaa: x(n) = L k=1 A k exp(jnω k ) + v(n) jokainen vaihe φ k (sisältyy amplitudiin A k = A k exp(jφ k )) on tasajakautunut ja riippumaton muista vaiheista mallin tekee mielenkiintoiseksi useat sovellukset joissa taajuuksien estimointi ei onnistu riittävän hyvin Fourier-muunnokseen perustuvilla menetelmillä 115
Luento 4: 3.10.2006 Autokorrelaatio Ergodisuus 116
Satunnaisprosessin jakauma esimerkki: normaalijakautunut valkoinen kohina x(n) N(0, σ 2 ) x(m), x(n) korreloimattomia kun m = n simulointi: x(n) normaalijakaumasta N(0, σ 2 ) välittämättä aiemmista arvoista x(n 1),... 117
toinen prosessi y(n) = a, missä a N(0, σ 2 ) simulointi: arvotaan a kerran ja asetetaan y(n) = a kaikilla n jakaumat p(x(n)) ja p(y(n)) ovat samat kuitenkin prosessit ovat hyvin erilaisia (y(n):n realisaatio on vakio) 118
Satunnaisprosessin määräävät yhteisjakaumat jotta prosessi on täysin määrätty, niin on tiedettävä jokaisen joukon {x(n 1 ), x(n 2 ),..., x(n k )} yhteisjakauma, missä k 1 ja n 1,..., n k ovat kokonaislukuja diskreettiaikainen prosessi määräytyy em. yhteisjakaumista yksikäsitteisesti 119
yhteisjakaumien suora käsittely hankalaa (histogrammiesimerkki aiemmin) käytännössä tehdään yksinkertaistavia oletuksia, kuten kohinan tapauksessa korreloimattomuus ARMA, sinisignaalit: parametrinen malli prosessille, jolloin riittää tarkastella parametrien arvoja 120
tehdään hieman yleisempi oletus: prosessin on oltava tilastollisilta ominaisuuksiltaan samanlainen joka hetkellä n tehdään oletus täsmällisesti ensi viikolla oletuksen avulla voidaan perustella mm. ARMA-prosessien käyttö keskeinen tarvittava prosessia kuvaava tunnusluku on autokorrelaatio 121
Autokorrelaatio autokorrelaatio on korrelaatio prosessin arvojen välillä eri hetkillä se määritellään odotusarvona r x (k, l) = E(x(k)x (l)) kuvaa prosessin arvojen keskinäistä riippuvuutta eri ajanhetkillä 122
yleisemmin voidaan määritellä autokovarianssi c x (k, l) = E[x(k) E(x(k))][x(l) E(x(l))] sama kuin autokorrelaatio jos E(x(n)) = 0 huom! Kirjallisuudessa autokorrelaatioksi kutsutaan joskus jotain muuta kuin r x (k, l):ää luennoilla ja kurssikirjassa r x (k, l) on autokorrelaatio 123
eri prosesseille x(n) ja y(n) voidaan myös määritellä niiden välistä riippuvuutta kuvaava statistiikka ristikorrelaatio: r xy (k, l) = E(x(k)y (l)) r xy (k, l) = 0 kaikilla k, l merkitsee että prosessit x(n) ja y(n) ovat korreloimattomat 124
autokorrelaatiot määräävät täysin nollakeskiarvoisen normaalijakautuneen prosessin tosin edelleen ongelma: lukuja r x (k, l) on liikaa koska ei voida estimoida odotusarvoa E(x(k)x (l)) havainnoista tämä siksi että on havaittu vain yksi x(k) ja yksi x(l)! 125
autokorrelaatio r x (k, l) kertoo miten k l aikayksikön päässä olevat arvot riippuvat toisistaan jos k ja l muuttuvat yhtä paljon, niin riippuvuus voi yleisesti muuttua mielivaltaisesti esim. r x (10, 5):lla ja r x (5, 0):lla ei tarvitse olla mitään yhteyttä 126
usein on luontevaa olettaa, että prosessin arvojen välinen riippuvuus määräytyy siitä kuinka kaukana arvot ovat aika-akselilla valitaan aikavälin suuruudeksi esim. 5 silloin r x (5, 0), r x (10, 5), r x (42, 37) kertovat kaikki jotakin samasta asiasta oletetaan tämä eksplisiittisesti: oletetaan, että kaikilla k, l on voimassa r x (k, l) = r x (k + m, l + m) kun m on mielivaltainen kokonaisluku 127
oletuksen mukaan autokorrelaatio on määrätty kun tunnetaan aikaväli k l silloin voidaan kirjoittaa lyhyesti r x (k) = r x (k, 0) oletusta tarvitaan ARMA-prosessin autokorrelaatioiden laskemiseksi 128
Valkoisen kohinan autokorrelaatio normaalijakautunut valkoinen kohina: v(n) N(0, σ 2 ) 0 kun k = l r v (k, l) = var(v(k)) = σ 2 kun k = l autokorrelaatio määräytyy vain erotuksesta k l 129
ARMA-prosessi on suodatettua valkoista kohinaa kohina suodatetaan lineaarisen siirtoinvariantin systeemin läpi tästä nähdään helposti että myös ARMA-prosessin autokorrelaatio r x (k, l) määräytyy erotuksesta k l ARMA-prosessille riittää siis laskea autokorrelaatio r x (k) = r x (k, 0) = r x (k + l, l) 130
lasketaan MA(q)- ja AR(p)-prosessien autokorrelaatiot yleisen ARMA(p, q)-prosessin autokorrelaatiot on johdettu kirjassa: tulokset katsotaan myöhemmin huom! Oletetaan kohinan varianssiksi σ 2 = 1 ARMA-prosesseille tämä ei ole rajoitus koska MA-kertoimilla b(0), b(1),... saadaan varianssi mielivaltaiseksi 131
MA-prosessin autokorrelaatio MA( )-prosessin differenssiyhtälö on x(n) = b(l)v(n l) l=0 asettamalla kertoimet b(l) nolliksi kun l > q tämä sisältää kaikki MA(q)-prosessit kerrotaan differenssiyhtälö oikealta arvolla x (n k) ja otetaan odotusarvo 132
uusi differenssiyhtälö: x(n)x (n k) = b(l)v(n l)x (n k) l=0 odotusarvon laskeminen on helppoa lineaarisuuden ansiosta: E(x(n)x (n k)) = b(l) E(v(n l)x (n k)) l=0 kaikki odotusarvot ovat korrelaatioita 133
tulos: r x (k) = b(l)r vx (k l) l=0 muistisääntö: kun syötteenä on r vx (k) ja vasteena r x (k) niin nämä toteuttavat saman differenssiyhtälön kuin v(n) ja x(n) 134
lasketaan ristikorrelaatio: r vx (k l) = E(v(n + k l)x (n)) = E(v(n + k l)[ = m=0 b (m)v (n m)]) b (m) E(v(n + k l)v (n m)) m=0 kohinan v(n) ainoa nollasta poikkeava autokorrelaatio on r v (0) = σ 2 = 1 saadaan r vx (k l) = b (l k) 135
silloin r x (k) = b(l)b (l k) l=0 jos kyseessä on MA(q)-prosessi niin saadaan r x (k) = q l=k b(l)b (l k) = q k l=0 b(l + k)b (l) 136
AR-prosessin autokorrelaatio kerrotaan AR(p)-prosessin differenssiyhtälö x(n) = p l=1 a(l)x(n l) + b(0)v(n) oikealta arvolla x (n k) ja otetaan odotusarvo tuloksena saadaan r x (k) + p l=1 a(l)r x (k l) = b(0)r vx (k) saadaan jälleen sama differenssiyhtälö, syötteenä r vx 137
ja vasteena r x 138
koska r vx (k) = E(v(n)x (n k)), niin tämä on nolla kun k > 0 johtuu siitä että kohina v(n) ei korreloi aiempien arvojen kanssa voidaan ajatella AR-prosessia kausaalisena systeeminä: v(n) arvotaan hetkellä n eikä tulokseen vaikuta mikään aiemmin tapahtunut 139
koska r vx (0) = E(v(n)x (n)) = b (0) niin saadaan b(0) 2 kun k = 0 r x (k) + a(l)r x (k l) = 0 kun k > 0 p l=1 tämä kaava ja vastaava MA( )-prosessin kaava ovat erikoistapauksia Yule-Walker yhtälöistä jotka käsitellään myöhemmin 140
AR-prosessilla on äärettömän monta nollasta poikkeavaa autokorrelaatiota esim. AR(1): r x (k) = a(1)r x (k 1) kun k > 0 toisaalta MA(q)-prosessin autokorrelaatioista korkeintaan q + 1 kappaletta poikkeavat nollasta demo: arma_rx.r 141
miksi autokorrelaatio r x (k) on tärkeä? nollakeskiarvoinen normaalijakautunut prosessi x(n) määräytyy täysin autokorrelaatioista oletetaan, että r x (k, l) riippuu vain erotuksesta k l silloin x(n) on täysin määrätty kun tunnetaan autokorrelaatiojono r x (0), r x (1), r x (2),... 142
Autokorrelaatiomatriisi kun oletetaan, että r x (k, l) riippuu vain erotuksesta k l niin tarvitaan r x (k) = r x (k, 0) nämä luvut kootaan usein autokorrelaatiomatriisiin: r x (0) r x ( 1)... r x ( M) r x (1) r x (0)... r x ( M + 1) R x =.... r x (M) r x (M 1)... r x (0) 143
voidaan myös kirjoittaa r x (0) r x(1)... r x(m) r x (1) r x (0)... r x(m 1) R x =.... r x (M) r x (M 1)... r x (0) jos merkitään prosessin arvoja vektorina x = [x(0),..., x(m)] T niin autokorrelaatiomatriisi on R x = E(xx H ) 144
R x :n ominaisuuksia: R x on hermiittinen, eli [R x ] ij = ([R x ] ji ) koska r x (i j) = E(x(i)x (j)) = E(x (j)x(i)) = r x(j i) R x on Toeplitz-matriisi eli [R x ] ij riippuu vain erotuksesta i j (seuraa suoraan autokorrelaation oletetusta ominaisuudesta) R x on positiivisemidefiniitti (laskareissa) 145
Ergodisuus satunnaismuuttujien tunnusluvut, kuten odotusarvo ja autokorrelaatio, määritellään otoskeskiarvoina eli esim. m x = E(x(n)) otoskeskiarvo lasketaan muuttujan x(n) jakaumasta nimen otoskeskiarvo selitys: voidaan ajatella, että on käytettävissä monta otosta prosessin arvosta x(n) näistä voidaan laskea keskiarvo, joka estimoi odotusarvoa E(x(n)) 146
nämä kuvitteelliset otokset hetkellä n ovat satunnaismuuttujan x(n) realisaatioita otoskeskiarvoina laskettavat parametrit ovat x(n):n jakauman funktioita ergo1.r 147
otoksia ei käytännössä ole olemassa, havaitaan vain yksi x(n) yhden havainnon avulla on vaikea estimoida parametreja toisaalta havaitaan prosessista arvot x(0), x(1),... prosessin parametrit täytyy estimoida aikakeskiarvoina havainnoista 148
esimerkki: odotusarvon E(x(n)) = m x estimointi, kun oletetaan että E(x(n)) on sama kaikilla n ˆm x (n) = L 1 L i=1 x i(n), otoskeskiarvo, sama hetki n ˆm x (N) = N 1 N 1 n=0 x(n), aikakeskiarvo, eri hetket n aikakeskiarvo ei välttämättä suppene kohti todellista arvoa m x kun N kasvaa! 149
esimerkki: x(n) = Av(n), v(n) N(0, 1) p(a = 1) = p(a = 2) = 0.5 varianssin otoskeskiarvo on 5/2 varianssin aikakeskiarvo suppenee kohti lukua 1 tai 4 150
esimerkki: x(n) = A missä p(a = 1) = p(a = 1) = 0.5 otoskeskiarvo on nolla, mutta aikakeskiarvo on ±1. arvotaan nyt A(n) uudestaan joka hetki (kolikonheitto) otoskeskiarvo on nolla ja aikakeskiarvo lähestyy nollaa kun N. ergo_est.r 151
havainnoista saadaan aikakeskiarvo, mutta halutaan tietää otoskeskiarvo tässä yhteydessä sitä ominaisuutta, että aikakeskiarvo suppenee otoskeskiarvoon kutsutaan ergodisuudeksi ergodisuuden toteaminen on käytännössä vaikeaa teoriassa ergodisuuslauseiden avulla 152
oletukset: x(n) normaalijakautunut, E(x(n)) = m x kaikilla n, r x (k, l) riippuu vain erotuksesta k l aikakeskiarvo: ˆm x (N) = 1 N N 1 n=0 x(n) otoskeskiarvo: m x ˆm x (1), ˆm x (2),... on jono satunnaismuuttujia prosessi x(n) on ergodinen odotusarvon suhteen jos lim E ˆm x(n) m x 2 = 0 N 153
Ergodisuuslauseet x(n) kuten edellä ja c x (k) on sen autokovarianssi 1. Ergodisuuslause 1: satunnaisprosessi x(n) on ergodinen odotusarvon suhteen jos ja vain jos lim N 1 N N 1 k=0 c x (k) = 0 2. Ergodisuuslause 2: satunnaisprosessi x(n) on ergodinen odotusarvon suhteen jos lim c x(k) = 0 k 154
oleelliset muistettavat asiat ergodisuudesta: aikakeskiarvot eivät aina toimi ergodisuuslauseiden ja esimerkkien mukaan aikakeskiarvot eivät toimi kun ajallisesti kaukana olevat prosessin arvot korreloivat liian voimakkaasti käytännössä ergodisuuden varmistaminen lienee mahdotonta havaintojen avulla 155
Luento 5: 10.10.2006 Stationäärisyys Satunnaisprosessien suodatus Tehospektri 156
Stationäärisyys ARMA-prosesseilla on seuraavat ominaisuudet: odotusarvo E(x(n)) = 0 (esim. MA( )-esityksen avulla) autokorrelaatio r x (n, n k) on sama kaikilla n kun k pysyy vakiona odotusarvo ja autokorrelaatio eivät riipu ajanhetkestä n 157
prosessi x(n) on täysin määrätty kun tunnetaan jokaisen joukon {x(n 1 ),..., x(n k )} jakauma mitä tapahtuu jos siirretään hetkiä n 1,..., n k aika-akselilla saman verran? yleisesti mitä tahansa: ei ole mitään syytä, että uudella jakaumalla olisi mitään tekemistä vanhan kanssa 158
joissakin sovelluksissa on luontevaa olettaa, ettei jakauma muutu oletus: jos valitaan mitkä tahansa ajanhetket n 1,..., n k niin kaikkien joukkojen {x(n 1 + m),..., x(n k + m)}, m N jakauma on sama tätä oletusta kutsutaan tiukassa mielessä stationäärisyydeksi (SSS, strict-sense stationary) 159
esimerkiksi normaalijakautunut valkoinen kohina on SSS-prosessi nimensä mukaisesti SSS on vahva oletus ARMA-prosessit voidaan perustella hieman heikompien oletusten avulla nämä oletukset koskevat prosessin odotusarvoa ja autokorrelaatioita 160
prosessi x(n) on väljässä mielessä stationäärinen (WSS, wide sense stationary) jos 1. odotusarvo on vakio: E(x(n)) = m x 2. autokorrelaatio ei riipu ajasta: r x (n, m) = r x (n + k, m + k) kaikilla k N 3. kovarianssi on äärellinen: c x (0) < 161
nollakeskiarvoiselle prosessille c x (0) = r x (0) jos x(n) on WSS-prossesi ja E(x(n)) = 0 niin r x (k) r x (0) = c x (0) < kaikki autokorrelaatiot ovat siis äärellisiä ja itseisarvoltaan pienempiä kuin prosessin varianssi r x (0) 162
vaikka SSS on vahva oletus, niin aina ei päde SSS = WSS WSS: äärellinen kovarianssi, SSS: voi olla ääretön kovarianssi on selvää ettei myöskään WSS = SSS normaalijakautuneelle prosessille WSS SSS 163
mitkä ARMA-prosessit x(n) ovat WSS-prosesseja? riittää todeta, että r x (0) < aloitetaan MA( )-prosessista x(n) = b(k)v(n k) k=0 koska kohina v(n) on korreloimatonta, niin varianssi on r x (0) = b 2 (k) k=0 164
saadaan siis ehto MA-prosessin WSS-ominaisuudelle: b 2 (k) < k=0 kaikki MA(q)-prosessit ovat WSS-prosesseja kun q < johtuu siitä, että äärellinen määrä kertoimia tekee em. summasta äärellisen 165
kaikki AR(p)-prosessit eivät ole WSS vaikka p < esim. AR(1)-prosessi x(n) = 1.1x(n 1) + v(n) on MA-prosessina x(n) = (1.1) k v(n k) k=0 silloin b(k) = (1.1) k joten k=0 b2 (k) = 166
AR(p)-prosessi on WSS, jos polynomin A(z) nollat ovat yksikköympyrän sisällä seuraa siitä, että silloin systeemin 1/A(z) navat ovat yksikköympyrän sisällä kirjoittamalla 1/A(z) = b(0) + b(1)z 1 + b(2)z 2 +... saadaan z 1 :n polynomi, jonka suppenemisalueeseen kuuluu yksikköympyrä DSP: LSI-systeemille pätee stabiilisuus yksikköympyrä kuuluu suppenemisalueeseen stabiilisuus tarkoittaa, että k b(k) < 167
edelleen seuraa k b 2 (k) <, koska b 2 (k) < b(k) kun b(k) < 1. Jostakin indeksistä alkaen on oltava b(k) < 1, muuten summa k b(k) ei suppene siis AR(p) on WSS, jos A(z):n nollat ovat yksikköympyrän sisällä 168
ARMA(p, q)-prosessi on WSS jos A(z):n nollat ovat yksikköympyrän sisällä ja q < perustelu: A(z):n ehdosta seuraa, että polynomin 1/A(z) = b(0) + b(1)z 1 +... kertoimet suppenevat itseisesti silloin myös polynomin B(z)/A(z) kertoimet suppenevat itseisesti, joten prosessi on WSS polynomin B(z) yksikköympyrän ulkopuoliset nollat voidaan peilata kuvauksella z 1/z kuten DSP:ssä, kun halutaan minimivaiheinen systeemi 169
Satunnaisprosessien suodatus ARMA-prosessin tulkinta: suodatetaan valkoista kohinaa suodatin on lineaarinen ja siirtoinvariantti aiemmin laskettiin ARMA-prosessin autokorrelaatiot nähtiin, että tietyt korrelaatiot toteuttavat saman differenssiyhtälön kuin ARMA-prosessi 170
oletetaan, että h(n) on LSI-suotimen impulssivaste deterministisen signaalin x(n) vaste voidaan laskea konvoluutiona y(n) = x(n) h(n) = k= h(k)x(n k) jos suodin on stabiili niin silloin k= h(k) < 171
voidaan myös suodattaa satunnaisprosessi x(n) LSI-systeemin h(n) avulla oletetaan, että systeemi h(n) on stabiili jos syöte on satunnaisprosessi, niin myös vaste on satunnaisprosessi jokainen prosessin x(n) realisaatio suodattuu prosessin y(n) realisaatioksi tämä määrää prosessin y(n) jakauman 172
oletetaan, että prosessi x(n) on WSS-prosessi WSS-prosessin mielenkiintoiset parametrit ovat odotusarvo E(x(n)) = m x ja autokorrelaatio r x (k) jos prosessi on lisäksi normaalijakautunut, niin prosessi määräytyy täysin tarkastellaan siis mitä odotusarvolle ja autokorrelaatiolle tapahtuu LSI-suodatuksessa 173
suodatetun prosessin y(n) = x(n) h(n) odotusarvo on m y = E(y(n)) = E( = k= k= h(k) E(x(n k)) h(k)x(n k)) k= = m x k= h(k) = m x h(k) exp( j0k) = m x H(exp(j0)) Fourier-muunnoksen avulla 174
stabiilisuusoletus h(k) < tarvitaan jotta summa k h(k) suppenisi edellä nähtiin, että jos ARMA-prosessin systeemin navat ovat yksikköympyrän sisällä ja q < niin systeemin impulssivaste suppenee itseisesti eli on stabiili 175
vastaavasti voidaan laskea autokorrelaation suodattuminen eri tavoin: r yx (k) = h(k) r x (k) (1) r y (k) = h(k) r xy (k) (2) r y (k) = h(k) h ( k) r x (k) (3) 1 ja 2: lasketaan vasen puoli odotusarvona, sijoitetaan y = h x ja viedään odotusarvo konvoluutiosumman sisään 3 saadaan kaavojen 1 ja 2 avulla 176
yhteenvetona saadaan rx(k) h(k) ryx(k) h*(-k) ry(k) rh(k)=h(k)*h*(-k) 177
Satunnaisprosessit taajuustasossa deterministinen signaali voidaan Fourier-muuntaa (tai z-muuntaa) ja siirtyä taajuustasoon signaali voidaan silloin esittää taajuuden funktiona muunnos kertoo jotakin signaalin sisältämistä taajuuksista 178
esim. sinisignaalin muunnos on taajuuden suhteen lokalisoitunut tämä voidaan tulkita siten, että signaali sisältää täsmälleen yhtä taajuutta ajassa lokalisoidun signaalin muunnos on taajuustasossa leveä eli se sisältää useita taajuuksia demo: fouriersignals.r 179
satunnaisprosessi voidaan Fourier-muuntaa, mutta tuloksena on uusi satunnaisprosessi jos Fourier-muunnetaan lukujono r x (k) niin satunnaisuus häviää, mutta oleellinen informaatio säilyy ainakin nollakeskiarvoisille normaalijakautuneille WSS-prosesseille jos prosessi ei ole WSS-prosessi, niin jono r x (k) ei ole riittävä kuvaus prosessista 180
autokorrelaation avulla voidaan määritellä WSS-prosessin tehospektri P x (exp(jω)) = r x (k) exp( jkω) k= mikä on autokorrelaatiofunktion diskreettiaikainen Fourier-muunnos koska muunnetaan determinististä signaalia r x (k) niin muunnoksen tulos on myös deterministinen px.r 181
ominaisuuksia: koska r x (k) = r x( k) niin P x (exp(jω)) = Px (exp(jω)), (P x on reaaliarvoinen) jos x(n) on reaaliarvoinen niin r x (k) = r x ( k) ja P x (exp(jω)) = P x (exp( jω)), (P x on symmetrinen) 182
mitä LSI-suodatus tekee tehospektrille? konvoluutioteoreema = konvoluutiot muuttuvat tuloiksi taajuustasossa Fourier-muunnetaan r y (k) = r x (k) h(k) h ( k) tulokseksi saadaan (tarkista, DSP:stä tuttua) P y (exp(jω)) = P x (exp(jω)) H(exp(jω)) 2 183
impulssivasteen muunnos H(exp(jω)) on taajuusvaste suuri arvo H 2 >> 1 taajuudella ω 0 tarkoittaa, että vaste y(n) sisältää enemmän tehoa taajuuden ω 0 ympäristössä kuin syöte x(n) pieni arvo H 2 << 1 kertoo luonnollisesti päinvastaista 184
valkoisen kohinan v(n) tehospektri: olkoon silloin tehospektri on var(v(n)) = r v (0) = σ 2 P v (exp(jω)) = k r v (k) = 0 kun k = 0 r v (k) exp( jωk) = r v (0) exp( jω0) = σ 2 185
valkoinen kohina sisältää saman verran tehoa kaikilla taajuuksilla tästä tulee nimi valkoinen kohina, koska valkoinen valo sisältää tavallaan kaikkia värejä tasaisesti muita kohinoita: P x ω 2 Brown noise P x ω 1 Pink noise P x ω Blue noise P x ω 2 Purple noise 186
ARMA-prosessin x(n) tehospektri saadaan kaavan r x (k) = h(k) h ( k) r v (k) avulla syöte v(n) on valkoista kohinaa varianssilla 1 ARMA-prosessin x(n) tehospektri on P x (exp(jω)) = H(exp(jω)) 2 P v (exp(jω)) = H(exp(jω)) 2 = B(exp(jω))/A(exp(jω)) 2 px3.r 187
tehospektriä kutsutaan myös spektritiheydeksi (PSD, power spectral density) nimitys johtuu siitä, että integroimalla tehospektri jonkin taajuuskaistan yli saadaan luku joka kertoo kaistan sisältämän tehon valitaan H ideaaliseksi kaistanpäästösuotimeksi kaistalla [ω 1, ω 2 ] 188
tavoitteena on suodattaa kaistan ulkopuolinen osuus pois x(n):stä ja laskea suodattuneen prosessin teho halutaan siis vasteen y(n) = h(n) x(n) teho: E( y(n) 2 ) = r y (0) koska tehospektri on jonon r y (k) Fourier-muunnos niin käänteismuunnoksella saadaan r y (0) = 1 2π 2π 0 P y (exp(jω))dω 189
kirjoitetaan teho x(n):n tehospektrin avulla: r y (0) = 1 2π 2π 0 H 2 P x (exp(jω))dω koska H 2 = 1 päästökaistalla niin nähdään, että teho päästökaistalla on integraali r y (0) = 1 2π ω2 ω 1 P x (exp(jω))dω siis integroimalla kaistan yli tehospektriä voidaan laskea prosessin teho ko. kaistalla 190
Yule-Walker yhtälöt aiemmin laskettiin yhteys AR- ja MA-prosessien autokorrelaatioiden ja prosessien parametrien välille yleinen ARMA-prosessi jäi käsittelemättä tässä tapauksessa yhtälöiden johtaminen on hankalampaa ohitetaan suurin osa johdosta ja nojataan aiempiin tuloksiin 191
oletetaan, että h(n) on stabiilin ARMA(p, q)-prosessin impulssivaste kohinan v(n) vasteena saatavan ARMA(p, q)-prosessin differenssiyhtälö: x(n) + p k=1 a(k)x(n k) = q b(l)v(n l) l=0 kuten aiemmin saadaan sama yhtälö korrelaatioille: r x (k) + p m=1 a(m)r x (k m) = q b(l)r vx (k l) l=0 192
AR- ja MA-tapauksissa ristikorrelaatio r vx (k) yksinkertaistui saatiin helposti yksinkertaistettua nyt ei yksinkertaistu kovin paljon, mutta jotakin voidaan tehdä differenssiyhtälön oikea puoli voidaan kirjoittaa muotoon c q (k) = q k l=0 tämä on nolla, kun k > q b(l + k)h (l) 193