Lineáris függvényillesztés 2018. március 19.
Illesztett paraméterek hibája Eddig azt néztük, hogy a mérési hiba hogyan propagál az illesztett paraméterekbe, ha van egy konkrét függvényünk. a hibaterjedés végigszámolása bonyolult esetben nem lehetséges főleg, ha a modell nem analitikus a kovarianciákat nehéz megbecsülni Mégis hogyan lehet jellemezni az illesztett paraméterek megbízhatóságát? Két lehetőség adódik: az illesztett modellparamétereket kicsit megváltoztatva mennyire rontjuk el az illesztést a mérést az illesztett paraméterekkel újraszimulálva, majd mennyire szórnak az illesztett értékek újraillesztve
Az illesztés jósága: redukált χ 2 A χ 2 definíció szerint: χ 2 = i σ 2 i [y i y(x i a)] 2 Ez függ a mérési pontok számától, ezért két méréssorozat illesztésének jóságát nem fogjuk tudni összehasonĺıtani vele. Kérdés: miként kell normálni? N a mérési pontok száma, és M az illesztett paraméterek száma definiáljuk a szabadsági fokok számát: ν = N M
Redukált χ 2 ha az illesztett modell az a paraméterekben lineáris, akkor belátható, hogy χ 2 eloszlása a minimum körül azonos az ún. ν szabadsági fokú χ 2 eloszlással ez ν egymástól független normális eloszlású véletlen változó összegének eloszlása, aminek a várható értéke is ν normáljunk tehát a szabadsági fokok számával! Normáljuk χ 2 -et ν = N M-mel, a szabadsági fokok számával. Ekkor az egész jó illesztés feltétele: χ 2 ν 1
Aszimptotikus hiba Egyszerű módszer a paraméterek bizonytalanságának becslésére, ha a modell analitikus alakja ismert. Tekintsük χ 2 viselkedését a minimum körül: χ 2 kvadratikus kifejezés, de nem mindegy a görbülete a minimumhelyen az első derivált definíció szerint 0 a második derivált pozitív, a nagysága jellemzi, hogy mennyire stabil a minimum M változó esetén parciális második deriváltakat kell nézni: Hesse-mátrix
A Hesse-mátrix inverze Egy többváltozós függvény görbületét jellemzi. Írjuk fel a χ2 -re: 2 α kl = 2 χ 2 a k a l Álĺıtás: az α kl mátrix inverze jellemzi az illesztett paraméter standard hibáját az átlós elemekben σk 2 jelenik meg a nem diagonális elemekben a k. és l. paraméterek kovarianciája Normál eloszlású mérési hibák és lineáris illesztés esetén ez egzaktul belátható, nem lineáris függvényillesztés esetén csak (jó) közeĺıtés.
A paraméterek hibájának becslése más módon A Hesse-mátrix csak analitikus modell esetében használható. Más modellek esetében próbálkozhatunk numerikus deriválással. Egy jellegében más módszer: nézzük az illesztett paraméterek stabilitását úgy, hogy variáljuk a pontokat, amikre illesztünk erre a nagy ágyú módszer a Monte Carlo, de az bonyolult Két egyszerűbb módszer: Jackknife módszer Bootstrapping
Jackknife 1 módszer Tekintsük a mérési pontokat, de minden lépésben hagyjunk ki egyet az illesztésből hagyjuk ki az i. pontot illesszük a modellt N 1 pontra legyen az illesztett paraméterek vektora θ i Minden egyes mérési pontra megismételve összesen N különböző paramétervektort kapunk ezek átlaga lesz a becsült paramétervektor θ jack = 1 N ezek szórása az illesztett paraméterek standard hibája 1 jackknife = bicska σ 2 jack = N 1 N i θ i (θ i θ jack ) 2 i
Bootstrapping Most válasszunk ki véletlenszerűen valamennyit az eredeti mérési pontokból, és illesszünk csak azokra ez elvileg ( n k) módon megtehető, de nem kell ennyit végignézni Az eljárás ugyanaz, mint az előző meghatározzuk a θ i paramétervektorokat kiszámítjuk az átlagot és a szórást minden paraméterre Mindkét módszer esetében számolhatjuk a paraméterek kovarianciáját is.
Konfidenciatartományok
Kilógó pontok Egy mérés során becsúszhatnak rossz mérések ezeken nem jellemzi a mérési hiba valami miatt nem a mérési előírás szerint mérünk valamilyen ritka, nem várt esemény hatására A modellillesztés során a kilógó pontoktól érdemes valamilyen módon megszabadulni. Példa: egy távcső CCD detektorát a fotometriai mérés során egy nagy energiájú kozmikus részecske éri el, és nagy számú extra elektront gerjeszt
Kilógó pontok 12 10 8 f(x) 6 4 2 0-2 0 2 4 6 8 10 x
Kilógó pontok 12 10 8 g(x) = 1.02 x + -0.12 f(x) 6 4 2 0-2 f(x) = 0.90 x + 0.14 0 2 4 6 8 10 x
Kilógó pontok kezelése Léteznek szofisztikált robusztus becslő módszerek, ezek bonyolultak. ezek a mérések hibáját nem normális eloszlásúnak, hanem hosszú farkúnak tételezik fel Helyette nézzünk egy gyakori iteratív módszert illesszük a modellt a mérési pontokra számoljuk ki a mérési pontoktól vett eltérések szórását dobjuk ki azokat a pontokat, amik 3σ-n kívül esnek ismételjük meg az illesztést A módszer kevés kilógó ponttal elbánik arra számítunk, hogy egy idő után nem lesz 3σ-n kívüli pont
Egyenes illesztése Ismert: x 1, x 2,..., x i mérési pontok, ezeknek nincs hibájuk y 1, y 2,..., y i mért értékek σ 1, σ 2,..., σ i becsült hibák Feladat: illesszünk a pontokra egyenest χ 2 módszerrel. modell: y(x) = y(x a, b) = a + bx Az optimalizálandó költségfüggvény: χ 2 = i ( yi y(x i a, b) σ i ) 2 = i ( yi a bx i ) 2 σ i Milyen a és b mellett lesz χ 2 minimális?
A minimum megkeresése A költségfüggvény: ( yi a bx i ) 2 χ 2 (a, b) = i σ i A minimumhelyen a parciális deriváltak eltűnnek: 0 = χ2 a = 2 i 0 = χ2 b = 2 i y i a bx i σ 2 i x i (y i a bx i ) σ 2 i Tudnivalók: Ez egy lineáris egyenletrendszer a-ra és b-re, csak ki kell bogarászni az együtthatókat. Biztos, hogy minimumhelyet találunk, mert χ 2 kifejezése pozitív kvadratikus.
Új jelölések Jelölések: S = i 1 σ 2 i S x = i x i σ 2 i S y = i y i σ 2 i S xx = i xi 2 σi 2 S xy = i x i y i σ 2 i
Lineáris egyenletrendszer a-ra és b-re Az új jelölésekkel az egyenletrendszer a-ra és b-re: Sa + S x b = S y S x a + S xx b = S xy Az egyenletrendszer determinánsa: = S S xx S 2 x Az egyenletrendszer megoldása: a = S xx S y S x S xy b = S S xy S x S y
A megoldás hibájának meghatározása Itt most azt nézzük, hogy az y i mért értékek hibája mennyire befolyásolja a kapott a és b paraméterek bizonytalanságát. A hibaterjedés törvénye szerint egy függvény értékének hibája: ( f ) 2 σ 2 f = i σ 2 i y i Nekünk most az a és b paraméterek hibáját kell tekintenünk az y i mért értékek függvényében, tehát: Behelyettesítve: a y i = S xx S x x i σ 2 i σ 2 a = S xx b y i = Sx i S x σ 2 i σ 2 b = S Kiszámolható a kovariancia is: cov ab = S x /
A Hesse-mátrix inverzével A χ 2 parciális deriváltjait a és b szerint már kiszámoltuk a minimum keresésekor: χ 2 a = 2 i y i a bx i σ 2 i χ 2 b = 2 i x i (y i a bx i ) σ 2 i A második parciális deriváltakból alkotott Hesse-mátrix a korábbi jelölésekkel: 2 α = 2 χ 2 2 χ 2 a 2 a b 2 χ 2 b a 2 χ 2 b 2 = 2 S Az α mátrixot invertálva kapjuk a hibákat és a kovarianciákat: α 1 = σ2 a cov ab = 1 S xx S x cov ab S x S σ 2 b S x S x S xx
Általános lineáris függvényillesztés Nem csak az egyenesillesztés lineáris probléma. Keressük a modellt az általános f (x a j ) alakban. x lehet vektor is, de most nem írunk neki indexet ha x indexet kap, az a mérési pontokra vonatkozik majd a az M darab illesztendő paraméter ekkor χ 2 = χ 2 (a) is függeni fog a paraméterektől és persze y i -ktől és σ i -ktől is Tekintsük a χ 2 parciális deriváltjaira a minimumban teljesülő feltételeket. χ 2 a j = 0
Elvégezve a parciális deriválást χ 2 korábbi definíciója alapján a deriváltakra adódó feltétel: χ 2 N = 2 f (x i a) y i f (x a) a j σi 2 = 0 a j i=1 x=xi Eddig a pontig nem tettünk fel semmit f (x a) konkrét alakjáról nem is tudunk egyszerű megoldást adni a f (x a) a j derivált lehet nagyon bonyolult Ötlet: korlátozzuk a problémát olyan esetekre, amikor a parciális derivált nem függ az a j paraméterektől.
A lineáris probléma Keressük f (x a)-t a következő alakban: f (x a) = M a j f j (x), ahol f j (x) tetszőleges ún. bázisfüggvény, ami már nem függ az a j -ktől. j=1 A probléma lineáris, mert a teljes f (x a) a különböző f j (x)-ek lineárkombinációja. Az f j (x)-ek konkrét alakja tetszőleges. Így már el tudjuk végezni a parciális deriválást: hiszen f (x a) a k (a j f j (x)) a k = f k (x), = δ jk f j (x)
A megoldandó lineáris egyenletrendszer Behelyettesítve az f tetszőleges függvények lineárkombinációjából álló alakját a következő adódik: χ 2 (a j ) a j = 2 [ N 1 i=1 σ 2 i ( M ) ] a k f k (x i ) y i f j (x i ) = 0 k=1 A szögletes zárójelen belüli szorzat harmadik tagjában azért nincsen már, mert a Kronecker-δ elvitte a többi tagot. Vegyük észre, hogy ez már lineáris egyenletrendszer az a k együtthatókra.
A tervmátrix 2 A probléma innentől már csak egy lineáris egyenletrendszer megoldása. Az átláthatóság kedvéért vezessük be a következőket: X ij = f j(x i ) σ i b i = y i σ i X ij az úgynevezett tervmátrix: az M oszlopa a bázisfüggvényeknek felel meg az N sora a mérési pontoknak a mátrixelemek a j. bázisfüggvény x i helyeken vett értékei 2 design matrix
A tervmátrix és a b i vektor felépítése X ij = f 1 (x 1 ) σ 1 f 2 (x 1 ) σ 1... f 1 (x 2 ) σ 2 f 2 (x 2 ) σ 2..... f 1 (x N ) σ N f 2 (x N ) σ N..... f M (x 1 ) σ 1 f M (x 2 ) σ 2.. f M (x N ) σ N y 1 σ 1 y 2 σ 2 b i =.. y N σ N
A lineáris illesztés normálegyenletei A parciális deriváltakra feĺırt egyenletek ezzel: [( N M ) ] a k X ik b i X ij = 0, i=1 k=1 ami indexes írásmóddal: X ik a k X ij = X ij b i Kibogozva az indexet a következő mátrixegyenletet kapjuk: X T Xa = X T b, ahol X egy N M-es mátrix, tehát végső soron M darab M ismeretlenes egyenletet kell megoldani, például Gauss-eliminációval.
Az Hesse-mátrix (Xa y) i = j x (j 1) i a j y i χ 2 = i j χ 2 = 2 a k i j 2 χ 2 = 2 [ a k a l i ( x (j 1) x (k 1) i ) i a j y i x (k 1) i x (j 1) i ] x (l 1) i 2 a j x (k 1) i y i
Az illesztett paraméterek hibája A második parciális deriváltakból álló Hesse-mátrix valójában egyszerűen α = X T X Ennek az inverze adja a kovarianciamátrixot: C = α 1 az átlós elemek a varianciákat tartalmazzák: σ 2 k = C kk a többi a kovarianciákat: cov kl = C kl Az illesztés aszimptotikus hibájának általában a redukált χ 2 -tel szorzott varianciát vesszük.
Többváltozós polinomillesztés Ha az x i mérési pontok maguk is x (k) i K-dimenziós vektorok, akkor a többdimenziós polinomillesztés modellje a következő: f (k) M K j (x) = a p x j 1, p=1 a probléma immár összesen M K ismeretlent fog tartalmazni de ebben még nincsenek vegyes tagok a p index a j és k indexekből képzett rendezett párok halmazán (Descartes-szorzat) fut a probléma ugyanúgy oldható meg, mint az előző a végén M K M K méretű mátrixot kell invertálni
Példa: parabola illesztése 5 pontra Mivel öt megadott pont esetében a parabolaillesztés túlhatározott, a legkisebb négyzetek módszerét használjuk. Legyenek a mérési adatok a következők (valójában oszlopvektorok): x = { 2, 1, 0, 1, 2 } y = { 5.1, 1.9, 1.1, 2.1, 4.9} A modell három ismeretlenes: f (x) = a 0 + a 1 x + a 2 x 2, azaz f 1 (x) = 1, f 2 (x) = x és f 3 (x) = x 2. Ezzel: X = 1 2 4 1 1 1 1 0 0 1 1 1 1 2 4 X T X = 5 0 10 0 10 0 10 0 34 X T y = 15.1 0.2 44.0
A függvényillesztés eredménye Az X T Xa = X T y egyenletet a-ra megoldva: a = Az illesztés jósága: 1.049 0.020 0.986 χ 2 = (Xa y) 2 = 0.0411 8 7 6 5 4 3 2 χ 2 NDF = 0.0411 1 5 3 = 0.0206 0-2 -1 0 1 2
A konkrét példában Az illesztett modell: A kovarianciamátrix: 5 0 10 (X T X) 1 = 0 10 0 10 0 34 f (x) = 1.049 0.020x + 0.986x 2 1 = 0.49 0 0.14 0 0.10 0 0.14 0 0.07 Vagyis az egyes paraméterek szórása és kovarianciája: σ 0 = 0.70 σ 1 = 0.32 σ 2 = 0.27 cov 02 = 0.14 χ 2 /NDF-fel szorozva az aszimptotikus hibák: σ 0 = 0.1000 σ 1 = 0.0454 σ 2 = 0.0384