AVDAT Nelineární regresní model Josef Tvrdík Katedra informatiky ˇ Pˇrírodovedecká fakulta Ostravská univerzita
Nelineární regresní model
Eyi = f (xi , β) ˇ ˇ kde xi je k -ˇclenný vektor vysvetlujících promenných (xTi je i-tý ˇrádek matice regresoru˚ X, matice X je typu n × k ) a β je p-ˇclenný vektor parametru. ˚ Základní úlohou nelineární regrese je pro daná data [y, X] a daný tvar funkce f (xi , β) odhadnout hodnoty parametru˚ β tak, ˇ aby model co nejlépe vysvetloval pozorované hodnoty náhodného vektoru y.
Nelineární regresní model
Zda je model opravdu nelineární v parametrech poznáme podle parciálních derivací ∂f (xi , β) gj = ∂βj Pokud gj = const
pro všechna j = 1, 2, . . . , p
tzn. parciální derivace nejsou závislé na βj , pak model je lineární v parametrech, pokud alesponˇ pro jeden z parametru˚ βj podmínka neplatí, je model nelineární. ˇ Pokud podmínka není splnena pro žádný z parametru˚ modelu, ˇríkáme, že model je neseparabilní.
Nelineární regresní model
To je napˇr. následující model s jedním regresorem (k = 1) f (xi , β) = exp(β1 xi ) + exp(β2 xi ). ˇ ˇ Pokud pro nekteré parametry je podmínka splnena, je model separabilní, napˇr. f (xi , β) = β1 + β2 exp(β3 xi ). To je model, který je nelineární jen vzhledem k parametru β3 .
Nelineární regresní model
Aditivní model pro náhodnou složku yi = f (xi , β) + εi Pˇredpokládejme, že pro i = 1, 2, . . . , n εi jsou vzájemneˇ nezávislé náhodné veliˇciny (nejsou korelovány), E(εi ) = 0, hodnoty yi náhodneˇ kolísají okolo prokládané plochy, stˇrední hodnota tohoto kolísání je nulová, var εi = σ 2 , tzn. mají konstantní rozptyl σ 2 .
Nelineární regresní model Potom souˇcet cˇ tvercu˚ rozdílu˚ pozorovaných a modelových hodnot vyjádˇrený jako funkce parametru˚ je Q(β) =
n X
[yi − f (xi , β)]2
i=1
Odhad metodou nejmenších cˇ tvercu˚ znamená nalézt takové odhady βˆ parametru˚ β, aby Q(β) bylo minimální. Zderivujeme-li Q(β) podle βj , j = 1, 2, . . . , p a položíme-li derivace rovny nule, dostaneme soustavu p rovnic n h i X ˆ ∂f (xi , β) |β = βˆ = 0 yi − f (xi , β) ∂βj i=1
Nelineární regresní model
Na rozdíl od lineární regresní funkce, kdy je soustava normálních rovnic lineární (parciální derivace jsou konstantní) a Q(β) eliptický paraboloid s minimem v bodeˇ βˆ = b, které lze jednoznaˇcneˇ urˇcit, je u nelineárního modelu soustava normálních rovnic nelineární. Její ˇrešení je nároˇcné, nebot’ nemusí vždy existovat ˇ navíc je nutno užívat iterativních metod, které jednoznaˇcne, nezaruˇcují nalezení globálního minima funkce.
Nelineární regresní model Numerické metody odhadu regresních parametru˚ minimalizují ˇ Vycházejí z poˇcáteˇcního „nástˇrelu“ hodnot Q(β) iterativne. ˇ parametru. ˚ Rešení probíhá po krocích β (0) , β (1) , . . . , β (H) . ˇ Zmena mezi jednotlivými iteraˇcními kroky – pˇriˇctení pˇrírustkového ˚ vektoru ∆h β (h+1) = β (h) + ∆h , ˇ splnovat ˇ pˇri cˇ emž iteraˇcní proces by mel podmínku: Q(β (h+1) ) < Q(β h ) Pˇrírustkový ˚ vektor ∆h = αh vh ˇ Jednotlivé algoritmy se liší ve volbeˇ smerového vektoru vh a ˇ zpusobu ˚ adaptace koeficientu αh behem výpoˇctu.
Nelineární regresní model – pˇríklad
Proložit tuto závislost funkcí, která bude mít vlastnosti: v cˇ ase t = 0 má mít koncentrace hodnotu rovnou nule f (0) = 0 v cˇ ase t → ∞ má mít koncentrace hodnotu rovnou jedné funkce má dobˇre prokládat empirickou závislost
Nelineární regresní model – pˇríklad Poˇcáteˇcní (rostoucí) cˇ ást závislosti i za ní následující prudký pokles bychom mohli vystihnout souˇcinem dvou funkcí: závislosti procházející poˇcátkem, napˇr. ve tvaru y = A t, ˇ kde A je neznámý parametr nebo funkcí s dvema B parametry y1 = A t , která umožní rychlost rustu ˚ ˇ aproximovat pružneji. exponenciální funkce ve tvaru y2 = exp(C t), která muže ˚ dobˇre prokládat klesající cˇ ást závislosti koncentrace na ˇ parametr modelu. (Exponenciální závislost cˇ ase, C je opet y2 klesá rychleji než roste y1 ). Pak nám ješteˇ zbývá vyˇrešit to, aby s rostoucím cˇ asem se funkce blížila hodnoteˇ jedna. Potˇrebujeme pˇriˇcíst funkci y3 , která má malé hodnoty pˇri malých hodnotách t a lim y3 (t) = 1 pro t → ∞. Tomuto požadavku vyhovuje napˇr. funkce ve tvaru y3 = 1 −
1 exp(D t)
Nelineární regresní model – pˇríklad
Empirickou závislost tedy mužeme ˚ zkusit modelovat funkcí f (t) = y1 × y2 + y3 = A t B exp(C t) + 1 −
1 , exp(D t)
kde A, B, C, D jsou cˇ tyˇri neznámé parametry, jejichž hodnoty odhadneme z dat metodou nejmenších cˇ tvercu. ˚ Je duležité ˚ vhodneˇ volit jejich poˇcáteˇcní „nástˇrely“ a dovolený obor hodnot, tj. minimum a maximum. Pˇri tom musíme vzít ˇ v úvahu jak tvar funkce, tak i obor hodnot nezávisle promenné t.
Nelineární regresní model – pˇríklad
U parametru A je to snadné: hodnoty koncentrace jsou nezáporné, i hodnota A musí být nezáporná. Hodnoty koncentrace jsou menší než 4, maximální hodnota parametru A nemuže ˚ být pˇríliš velká, interval [0, 20] a startovací hodnota A = 1 muže ˚ být dobrá volba. U parametru B musíme uvážit, jak rychle má funkce rust. ˚ Pokud by B = 1, pak by rust ˚ podle y2 byl lineární, pro B < 1 pomalejší, pro B > 1 rychlejší. Poˇcáteˇcní hodnota B = 1 a hodnoty z intervalu [0, 2].
Nelineární regresní model – pˇríklad
ˇ U parametru˚ C a D musíme být opatrnejší. Oba parametry jsou v exponentu, navíc v souˇcinu s veliˇcinou t z intervalu [0, 160], numerické problémy – pˇreteˇcení. Hodnoty C a D musí být kladné, ale malé. Tedy zkusíme C = 0.01 a D = 0.01 a interval pro oba parametry [0, 0.1] ˇ a zjistíme, že v prub ˚ ehu iterací došlo k pˇreteˇcení ˇ (overflow). Zmeníme-li nástˇrel na D = 0.001, iteraˇcní proces konverguje po 25 krocích a dostaneme následující výsledky:
Nelineární regresní model – pˇríklad
Model conc = (A ∗ T B ) ∗ EXP(−C ∗ T ) + 1 − 1/EXP(D ∗ T ) R-Squared 0.963863 Iterations 25 Estimated Model ((1.685585) ∗ (T )( .5552467)) ∗ EXP(−(5.248904E − 02) ∗ (T )) +1 − 1/EXP((2.545075E − 02) ∗ (T ))
Nelineární regresní model – pˇríklad