Pienimmän neliösumman menetelmä Keijo Ruotsalainen Division of Mathematics
Funktion sovitus Datapisteet (x 1,...,x n ) Annettu data y i = f(x i )+η i, missä f(x) on tuntematon funktio ja η i mittaukseen liittyvä virhe Approksimaation kantafunktiot ψ k (x), k = 1,...,m Approksimaatio f m (x) = m k=1 a kψ k (x) Pienimmän neliösumman menetelmä: min a R m n y i f m (x i ) 2 i=1 Keijo Ruotsalainen Matematiikan jaos 2 / 23
Normaaliyhtälö Funktio F(a) = n y i i=1 m a j ψ j (x i ) 2 j=1 on alhaalta rajoitettu, jatkuvasti differentioituva ja koersiivinen, ts. lim a F(a) =. Minimi gradientin nollakohdassa: F a 1 n m = 2 [y i a j ψ j (x i )]ψ 1 (x i ) = 0 i=1 j=1. =. F = 2 a n n [y i i=1 m a j ψ j (x i )]φ m (x i ) = 0. j=1 Keijo Ruotsalainen Matematiikan jaos 3 / 23
Normaaliyhtälö n i=1 ψ n 1(x i )ψ 1 (x i ) i=1 ψ 1(x i )ψ m (x i ) n i=1 ψ a 1 n 2(x i )ψ 1 (x i ) n i=1 ψ 2(x i )ψ m (x i ) a 2 i=1..... n i=1 ψ. = y iψ 1 (x i ). m n m(x i )ψ 1 (x i ) i=1 ψ m(x i )ψ m (x i ) a i=1 y iψ m (x i ) m Keijo Ruotsalainen Matematiikan jaos 4 / 23
Normaaliyhtälö Määritellään matriisi ψ 1 (x 1 ) ψ 2 (x 1 ) ψ m (x 1 ) ψ 1 (x 2 ) ψ 2 (x 2 ) ψ m (x 2 ) A =...... ψ 1 (x n ) ψ 2 (x n ) ψ m (x n ) Normaaliyhtälö (A T A)a = A T y, missä datavektori y = [y 1,y 2,...,y n ] T Keijo Ruotsalainen Matematiikan jaos 5 / 23
Polynomi-approksimaatio Esim. Polynomien kantafunktioiksi voidaan valita esimerkiksi funktiot φ j (x) = x j 1, j = 1,2,3,...,m+1. Tällöin normaaliyhtälön kerroinmatriisin alkiot ovat A i,j = n k=1 ja oikean puolen vektorin alkiot ovat b i = n k=1 x i+j 2 k, f(x k )x i 1 k. Keijo Ruotsalainen Matematiikan jaos 6 / 23
Ratkeavuus Lause 5.1 Normaaliyhtälöllä on yksikäsitteinen ratkaisu, jos matriisin ψ 1 (x 1 ) ψ 2 (x 1 ) ψ m (x 1 ) ψ 1 (x 2 ) ψ 2 (x 2 ) ψ m (x 2 ) A =...... ψ 1 (x n ) ψ 2 (x n ) ψ m (x n ) sarakevektorit ovat lineaarisesti riippumattomia. Tällöin lisäksi matriisi AA T on symmetrinen ja positiivisesti definiitti. Funktiot {ψ j (x), j = 1,...,m} ovat lineaarisesti riippumattomat, jos m a j ψ j (x) = 0, x [a, b] a j = 0, j = 1,...,n j=1 Keijo Ruotsalainen Matematiikan jaos 7 / 23
Yleisimpiä kantafunktioita Polynomit (erityisesti ortogonaaliset polynomit); Trigonometriset polynomit (Fourier-approksimaatio); Spline-funktiot; Aalloke-kantafunktiot (tavallisesti käytetään spline-pohjaisia aallokkeita); Ilmeisesti ainakin polynomifunktiot ja trigonometriset funktiot ovat lineaarisesti riippumattomia. Keijo Ruotsalainen Matematiikan jaos 8 / 23
Diskreetti Fourier-approksimaatio pisteet: x k = 2πk N, k = 0,...,N 1. Datavektori: y = [y 0, y 1,..., y N 1 ] Kantafunktiot: ψ j (x) = e ijx, j = 0,...,m 1(m N) Fourier-matriisi (w = e 2πi/N ) F N = [e i 2πkj N ] k = 0,...,N 1 j = 0,...,m 1 1 1 1 1 1 w w 2 w m 1 = 1 w 2 w 4 w 2(m 1).... 1 w N 1 w 2(N 1) w (m 1)(N 1) Keijo Ruotsalainen Matematiikan jaos 9 / 23
Paras Fourier-approksimaatio Matriisin transponoinnin sijasta muodostetaan myös alkioiden kompleksikonjugaatti: F H N = [e i 2πjk N ] j = 0,...,m 1 k = 0,...,N 1 FN HF N = NI m m Normaaliyhtälö: FN HF Nc = FN H y, ts. Fourier-kertoimet c l = 1 N N 1 k=0 y k e 2πikl N, l = 0,...,m 1. Keijo Ruotsalainen Matematiikan jaos 10 / 23
DFT-esimerkki Datavektori: Poimitaan funktiosta y(x) = sin(50x) + sin(120x) N = 1024 näytettä välillä [0, 2π], joihin lisätään normaalijakautunutta kohinaa varianssina 0.25. Datavektori Matlab-muodossa: >> N = 1024; >> x = [0 : 2 pi/n : 2 pi (N 1)/N]; >> y = sin(50 x)+0.6 sin(120 x)+0.5 randn(size(x)); >> plot(x, y) 3 data1 2 1 0 1 2 3 0 1 2 3 4 5 6 7 Keijo Ruotsalainen Matematiikan jaos 11 / 23
Fourier-approksimaatio l. taajuusanalyysi Fourier-kertoimet (m = N = 1024): c = 1 N FH N c Matlabissa: >> c = 1/N fft(y); Piirretään Fourier-kertoimien itseisarvot 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 100 200 300 400 500 600 Keijo Ruotsalainen Matematiikan jaos 12 / 23
Normi l. funktioiden etäisyys Määritelmä Funktion f(x) normi f on ei-negatiivinen luku, jolle on voimassa seuraavat ominaisuudet: 1. f = 0 jos ja vain jos f = 0; 2. Kaikille λ R: λf = λ f ; 3. Kolmioepäyhtälö: f + g f + g. Maksiminormi Suljetulla ja rajoitetulla välillä määritellyn jatkuvan funktion f(x) maksimi-normi f = max a x b f(x). Keijo Ruotsalainen Matematiikan jaos 13 / 23
L 2 -normi L 2 -normi Neliöintegroituville funktioille määritellään L 2 -normi b f 2 = a f(x) 2 dx. Sisätulo L 2 -normin yhteydessä on syytä määritellä funktioiden sisätulo (f,g) = Tällöin f 2 = (f,f). b a f(x)g(x)dx. Keijo Ruotsalainen Matematiikan jaos 14 / 23
L 2 -approksimaatio Approksimaatioavaruuden kantafunktiot {ψ j (x) j = 1,...,m} Approksimoitava funktio f(x) välillä [a, b] neliöintegroituva Approksimaatio-ongelma Määrää kertoimet a j R, j = 1,...,m siten, että funktio f m (x) = m a j ψ j (x) j=1 minimoi L 2 -normin f f m = { b a f(x) f m (x) 2 dx} 1 2. Keijo Ruotsalainen Matematiikan jaos 15 / 23
Normaaliyhtälö Minimoidaan L 2 -normin neliötä, F(a 1,...,a m ) = b a f(x) m a j ψ j (x) 2 dx j=1 Funktio F(a 1,...,a m ) on alhaalta rajoitettu, jatkuvasti differentioituva ja koersiivinen, ts. lim a F(a 1,...,a m ) =. Minimi gradientin nollakohdassa: F a 1 = 2. =. F = 2 a m b a b a [f(x) [f(x) m a j ψ j (x)]ψ 1 (x)dx = 0 j=1 m a j ψ j (x)]ψ m (x)dx = 0. j=1 Keijo Ruotsalainen Matematiikan jaos 16 / 23
Normaaliyhtälö Normaaliyhtälö: K a = b, ts. b a ψ b 1(x)ψ 1 (x)dx a ψ 1(x)ψ m (x)dx b a ψ a 1 b 2(x)ψ 1 (x)dx a ψ 2(x)ψ m (x)dx a 2...... = b a ψ b m(x)ψ 1 (x)dx a ψ m(x)ψ m (x)dx a m b a f(x)ψ 1(x)dx.. b a f(x)ψ m(x)dx Keijo Ruotsalainen Matematiikan jaos 17 / 23
Ratkeavuus Lause Mikäli kantafunktiot ovat lineaarisesti riippumattomia, niin normaaliyhtälöllä K a = b on yksikäsitteinen ratkaisu. Approksimaatio-avaruus tulisi valita siten, että yhtälöryhmän ratkaisu olisi numeerisesti stabiili, ts. kerroinmatriisin ehtoluku olisi siedettävä. ja että approksimaatioavaruuden funktioilla olisi voimassa Approksimaatio-ominaisuus lim min f m a m a j ψ j = 0. j=1 Keijo Ruotsalainen Matematiikan jaos 18 / 23
Polynomi-approksimaatio Esim. Tarkastellaan funktion approksimointia m-asteisella polynomifunktiolla välillä [0, 1]. Polynomifunktioiden kantafunktioiksi voidaan valita esimerkiksi funktiot ψ j (x) = x j 1, j = 1,2,3,...,m+1. Tällöin normaaliyhtälön kerroinmatriisin alkiot ovat K i,j = 1 0 x i+j 2 dx = ja oikean puolen vektorin alkiot ovat b i = 1 0 1, i,j = 1,..., m+1 i + j 1 f(x)x i 1 dx, i = 1,...,m+1. Keijo Ruotsalainen Matematiikan jaos 19 / 23
Fourier-approksimaatio Approksimoitava funktio f(x): periodinen; f(x + 2π) = f(x), x R. paloittain jatkuva: Epäjatkuvuuskohdissa on toispuoleiset raja-arvot, ts. lim h 0 + f(x 0 ± h) = y ± 0, < y± 0 <. Approksimaatio-ongelma Etsi kertoimet a k ja b k s.e. g n (x) = 1 2 a 0 + minimoi lausekkeen n {a k cos(kx)+b k sin(kx)} k=1 min g n f 2 = π π g n (x) f(x) 2 dx. Keijo Ruotsalainen Matematiikan jaos 20 / 23
Ortogonaalisuus Lause Trigonometriset funktiot ovat L 2 sisätulon suhteen pareittain ortogonaaliset: π π π π π π cos(jx) cos(kx)dx = sin(jx) sin(kx)dx = 0, j k 2π, j = k = 0 π, j = k > 0 { 0, j k π, j = k > 0 sin(jx)cos(kx)dx = 0, j,k > 0. Keijo Ruotsalainen Matematiikan jaos 21 / 23
Normaaliyhtälö Ortogonaalisuusrelaatio Kerroinmatriisi diagonaalinen Fourier-kertoimet K j,j = K j,j = K 0,0 = 2π 0 2π 0 2π 0 cos 2 (jx)dx = π sin 2 (jx)dx = π 1 4 dx = π 2 a k b k = 1 π = 1 π π π π π f(x) cos(kx)dx f(x) sin(kx)dx. Keijo Ruotsalainen Matematiikan jaos 22 / 23
Approksimaatiotulos Lause Olkoon f(x) paloittain jatkuva 2π periodinen funktio. Silloin sen Fourier-approksimaatio suppenee pisteittäin kohti funktioita f sen jatkuvuuskohdissa, ja epäjatkuvuuskohdissa lim g n(x 0 ) = 1 n 2 [y+ 0 + y 0 ]. Keijo Ruotsalainen Matematiikan jaos 23 / 23
Virhe-arviot Lause Olkoon f(x) 2π-periodinen ja jatkuvasti derivoituva funktio. Tällöin funktion Fourier-approksimaation neliöllinen virhe on 2 1 π f g n L 2 ( π,π) f (x) 2 dx. π n π Lause Olkoon f(x) 2π-periodinen ja m-kertaa jatkuvasti derivoituva. Silloin Fourier-approksimation virhe on f g n L 2 ( π,π) c n m π π f (m) (x) 2 dx. Keijo Ruotsalainen Matematiikan jaos 24 / 23