Regresja liniowa
description
Transcript of Regresja liniowa
Regresja liniowa
Dany jest układ punktów
nn y,x
y,x
y,x
22
11
x
y
baxy ii x – zmienna objaśniająca (nie obarczona błędem)
y – zmienna zależna (obarczona błędem)
Naszym zadaniem jest poprowadzenie „najlepszej” prostej przez te punkty.
xay
xxn
yxxyxb
x
yx
xx
yxxy
xxn
yxyxna
b
ba
a
ba
baxyyyba
n
ii
n
ii
n
iii
n
ii
n
ii
n
ii
n
ii
n
ii
n
ii
n
ii
n
iii
n
iii
n
i
oblii
2
11
2
1111
2
222
11
2
111
1
2
1
2
var
,cov
0,
0,
,
Wyznaczanie optymalnych parametrów a i b
Bardziej ogólny przypadek dopasowywania równania prostej: regresja ważona
n
iiii
n
i i
ii baxywbaxy
b,a1
2
12
2
n
i i
in
i i
n
i i
i
n
i i
iin
i i
in
i i
i
yba
x
yxb
xa
x
12
12
12
12
12
12
2
1
Ocena istotności równania regresji
1. Weryfikujemy następującą hipotezę zerową:
H0 : a = 0 wobec H1 : a ≠ 0(jeżeli a = 0 “w granicach błędu” to nie można mówić o regresji)
Przy prawdziwości H0 statystyka:
ma rozkład t Studenta z liczbą stopni swobody równej n - 2.
a
at
-3 -2 -1 0 1 2 3
0.00
0.05
0.10
0.15
0.20
0.25
0.30
0.35
0.40
-tn, t
n,
/2 /21-
Z tablic rozkładu Studenta odczytujemy, dla wcześniej przyjętego poziomu istotności , wartość krytyczną tn-2,. Jeżeli obliczona wartość t znajduje w dwustronnym obszarze krytycznym (-, - tn-2,), (tn-2,, +), to H0 należy odrzucić na korzyść hipotezy H1
n
i
oblii
n
i
oblii
n
ii
n
i
oblii
n
i
oblii
n
ii
yy
yyyyn
n
yy
yyyy
F
1
2
1
2
1
2
1
2
1
2
1
2
2
2
1
2. Zbadanie istotności różnicy pomiędzy różnicą wariancji odpowiadającą wprowadzeniu członu liniowego (ma ona 1 stopień swobody) a wariancją resztową z modelu liniowego (ma ona 2 stopnie swobody) przy pomocy testu F(1,n-2).
3. Można też przeprowadzić analizę współczynnika korelacji lub jego kwadratu (współczynnika determinacji).
2
11
2
2
11
2
2
1 11
1
2
1
2
2
12
2
varvar
,cov
n
ii
n
ii
n
ii
n
ii
n
i
n
iii
n
iii
n
ii
n
ii
n
iii
yynxxn
yxyxn
yyxx
yyxx
yx
yxr
n
iin
ii
n
iiin
ii
n
iii
n
ii
n
i
n
iiii
n
ii
n
iii
n
i
n
i
n
iiiii
oblii
yyrxx
yyxx
yy
yyxxayy
xxayyxxayy
xxayy
xayaxybaxyyy
1
22
1
2
2
1
1
2
1
2
1
2
1 1
222
1
2
1
2
1 1 1
222
1
2
Trochę żonglerki sumamixayb
n
ii
n
iii
xx
yyxxa
1
2
1
2
2
1
2
1
2
1
2
2
12
r
rnF
yy
yyyyr n
ii
n
ii
obli
n
ii
obl
obl
yy
yyr
varvar
,cov
Dla dociekliwych: udowodnić tożsamość
W ten sposób mamy wzór na współczynnik korelacji przenaszalny na regresję wielokrotną a przy okazji potrafimy wyrazić F przez współczynnik korelacji
Linearyzacja
Mamy dopasować funkcję nieliniową
y=f(x,y;a.b)
Przekształcamy funkcję do takiej postaci aby uzyskać postać zlinearyzowaną
=+
Gdzie jest nową zmienną zależną, nową zmienną objaśniającą a a i b są nowymi parametrami, przy czym ogólnie
=(x,y), =(x,y), =(a,b), =(a,b)
Przykład problemu nieliniowego linearyzowalnego: kinetyka reakcji pierwszego rzędu
o
o
o
k
C
k
Ct
ktCtA
ktCtA
BA
ln
ln
lnln
exp
Jeżeli chcemy postępować poprawnie to należy wykonać regresję ważoną, wyliczając wagi poszczególnych przekształconych zmiennych objaśniających zgodnie z rachunkiem błędów.
2
2
2
2
2
ii xi
iy
i
ii xy
W poprzednim przykładzie
2
22ln
2 1AA
A
Inne przykłady linearyzacji:
Równanie Michalisa-Mentena
S
K
SK
S m
m
1
v
1
vv
1vv
maxmax
max
Równanie Hilla
Kpny
yKp
y
y n lnln1
ln1
Obie zmienne są obarczone porównywalnym błędem
x
y x
y
22222
22xyxyy a
x
y
Poprawiona wartość wagi zależy od a, które jest parametrem regresji. Problem liniowy przekształca się w nieliniowy. Problem można obejść przeprowadzając najpierw “zwykłą” regresję i wyznaczyć przybliżone a, następnie wstawić a do wzoru na wagi i przeprowadzić regresję jeszcze raz.
Sposób: regresja ortogonalna
Regresja uogólniona albo analiza konfluentna
**2
*1
1
2*2
2*2
1
2*2
2*2
,,,;,11
11
n
n
iii
yii
x
n
iii
yii
x
xxxbabaxyxx
yyxx
ii
ii
x
y (x,y)
(x*,y*)
3
2
1
321
221
21
1
321
/
expexp1
3
2
1
k
kk
CCytx
tkkk
ktkk
kk
k
C
tC
CB
kkkBA
CA
o
o
k
k
k
p
Przykład problemu nieliniowego nielinearyzowalngo: kinetyka reakcji pierwszego rzędu z produktem przejściowym
Parę słów o macierzach
Macierz mn: tablica m na n (m wierszy n kolumn) liczb (np. tabliczka mnożenia).
Macierz kwadradowa: m=n
Macierz symetryczna (zawsze kwadratowa): aij=aji
Macierz transponowana AT: (AT)ij=aji
Macierz nieosobliwa: macierz o niezerowym wyznaczniku.
Macierz dodatnio określona:
xTAx>0 dla każdego niezerowego wektora x.
Norma euklidesowa macierzy:
Norma spektralna macierzy
Wskaźnik uwarunkowania macierzy
n
i
n
jija
1 1
2A
ii
maxA
1cond AAA
Regresja liniowa wielokrotna
mm
nnmnn
m
m
xpxpxpy
yxxx
yxxx
yxxx
2211
21
222221
111211
Zmienne objaśniające x1,x2,…,xm nie muszą odpowiadać różnym wielkościom lecz mogą być funkcjami tej samej wielkości mierzonej (np. jej kolejnymi potęgami w przypadku dopasowywania wielomianów). Tak więc możemy tu mówić o ugólnym dopasowywaniu krzywych, które można przedstawić jako liniowe funkcje parametrów lub ich kombinacji.
2
22
21
T
1
2
12
1
T
2
1
100
0
01
0
001
1
n
n
i
p
jijji
i
n
i
p
jijji
xpy
xpy
W
XpYWXpY
XpYXpY regresja nieważona
regresja ważona
Podobnie jak w przypadku “zwykłej” regresji minimalizujemy następujące sumy kwadratów odchyleń:
Przypadek szczególny: dopasowywanie wielomianu
nmnn
m
m
mm
yxx
yxx
yxx
xpxppy
1
21
22
11
11
1110
1
1
1
m
iiimm
n
iim
n
iiim
n
iiim
m
iiim
n
iimi
n
ii
n
iii
m
iiim
n
iimi
n
iii
n
ii
yxpxpxxpxx
yxpxxpxpxx
yxpxxpxxpx
11
22
121
11
12
122
1
221
112
11
112
1211
1
21
WYXpWXX
YXpXXTT
TT
n
i
m
jjiji
i
n
i
oblii
ir
n
i
m
jjiji
n
i
obliir
xpymn
yymn
xpymn
yymn
1
2
12
1
2
22
1
2
11
22
1111
11
Macierz wariancji-kowariancji parametrów:
Wariancja resztowa:
12T**
XXpppppD TrE
12T**
WXXpppppD TrE
Odchylenia standardowe poszczególnych parametrów:
iirp
iirp
i
i
1
1
WXX
XX
T
T
Regresja nieważona
Regresja ważona
Regresja nieważona
Regresja ważona
ji
ijij
mm
m
m
mmm
m
m
1
1
1
21
221
112
221
22221
11221
R
D
Macierz wariancji-kowariancji (dyspersji) parametrów
Macierz współczynników korelacji parametrów
1T1TT1T
1TTTYY
T1T
1TTTYY
T1T
T
YT1T
YT1TT
YT1TT1T
T1TT1T
T1T
XXXXIXXXX
XXXεεXXX
XXXεεXXX
εXXXεXXX*pp*pppD
εXXX*YYXXX
YXXXYXXXp*p
YXXXp
22
*
rr
E
E
EE
Wyprowadzenie
Test F dla istotności efektu liniowego
mn
yy
m
yyyy
F n
i
oblii
n
i
oblii
n
ii
1
2
1
2
1
2
1
2
21
21
212 ,
m
mm
mm
mnmmF
Test F dla istotności włączenia nowych parmetrów
m2>m1
F(m2,m1) porównujemy z wartością krytyczną F,m1-m2,n-m2
dla poziomu istotności .
F porównujemy z wartością krytyczną F,m-1,n-m
2
2
1
2
1
2
1
2
2
1 r
rmnF
mnF
F
yy
yyyyr n
ii
n
i
oblii
n
ii
Współczynnik determinacji i jego związek z F
Ocena istotności danego parametru
Weryfikujemy następującą hipotezę zerową:
H0 : pi = 0 wobec H1 : a ≠ 0(jeżeli a = 0 “w granicach błędu” to nie można mówić o regresji)
Przy prawdziwości H0 statystyka:
ma rozkład t Studenta z liczbą stopni swobody równej n - m.
ip
ipt
Przykład dopasowywania wielomianu: rozkład cosinusa kąta rozpraszania mezonów K z protonami (zakładamy że j=sqrt(yj).
j tj=cos(j) yj
1 -0.9 81
2 -0.7 50
3 -0.5 35
4 -0.3 27
5 -0.1 26
6 0.1 60
7 0.3 106
8 0.5 189
9 0.7 318
10 0.9 520
m p1 p2 p3 p4 p5 p6 f F F0.9
1 57.85 9 833.55 -
2 82.66 99.10 8 585.45 3.92 3.458
2 47.27 185.96 273.61 7 36.41 105.55 3.589
4 37.94 126.55 312.02 137.59 6 2.85 70.65 3.776
5 39.62 119.10 276.49 151.91 52.60 5 1.68 3.48 4.060
6 39.88 121.39 273.19 136.58 56.90 16.72 4 1.66 0.05 4.545
n
i i
ii yy
12
2
Ph2
50
0.056)-0.190(
PBI0.195)0.835(-PV0.002)-0.010(
PSA)003.0(016.0)55.0(23.10pIC
Przykład zastosowania regresji wielokrotnej w analizie QSAR
(Leow et al., Bioorganic & Medicinal Chemistry Letters, 17(4), 1025-2032, 2007)
IC50 – stężenie związku potrzebne do połówkowej inhibicji ludzkiej metylotransferazy izopropenylocysteinowej.
pIC50=-log(IC50)
PSA – powierzchnia grup polarnych [A2]
PV – objętość grup polarnych [A3]
PB1 – parametr steryczny podstawionej grupy fenylowej
Ph2 – lipofilowość podstawionego pierścienia fenylowego
Metody rozwiązywania układów równań liniowych
nnnnnn
nn
nn
bxaxaxa
bxaxaxa
bxaxaxa
2211
22222121
11212111
bAx
nnnnn
n
n
b
b
b
aaa
aaa
aaa
2
1
21
22221
11211
bA
0det A
Metody skończone:
• Metoda Gaussa
• Metoda Gaussa-Jordana
• Metody Choleskiego
• Metoda Householdera
• Metoda sprzężonych gradientów
Metody iteracyjne dla dużych układów równań:
• Metoda Jacobiego
• Metoda Gaussa-Seidla
nnnn
nn
nn
cxr
cxrxr
cxrxrxr
22222
11212111
Metoda eliminacji Gaussa z wyborem elementu głównego w kolumnie
Układ równań sprowadzamy do postaci trójkątnej
Układ z macierzą trójkątną można następnie łatwo rozwiązać zaczynając od obliczenia wartości xn z n-tego równania, następnie wstawić xn do równania n-1 i wyliczyć z niego xn-1, następnie wstawić xn oraz xn-1 do równania n-2 i wyliczyć xn-2 aż do dotarcia do równania pierwszego i wyznaczenia x1.
1. Wybieramy równanie i takie, że |ai1| jest największym elementem w pierwszej kolumnie po czym przestawiamy i-te równanie na początek i eliminujemy x1 z równań od 2 do n.
)1()1(22
)1(2
)1(2
)1(22
)1(22
)0(1
)0(12
)0(121
)0(11
nnnn
nn
nn
bxaxa
bxaxa
bxaxaxa
1
1,1
)0(11
)0(1)0(
1)0()1(
)0(11
)0(1)0(
1)0()1(
ia
abbb
kia
aaaa
iii
ikikik
2. Procedurę powtarzamy z macierzą A(1) o rozmiarach (n-1)x(n-1) i wektorem b(1) o rozmiarze n-1, eliminując z nich drugą zmienną i otrzymując macierz A(2) o rozmiarach (n-2)x(n-2) i wektor b(2) o rozmiarze n-2. W ten sam sposób postępujemy z kolejnymi macierzami A(2), A(3),..., A(n-1) oraz wektorami b(2), b(3),..., b(n-1).
jia
abbb
jkjia
aaaa
jjj
jijj
jji
ji
jjj
jijj
jkjik
jik
)1(
)1()1()1()(
)1(
)1()1()1()( ,
Dla j-tego kroku
Po zakończeniu operacji otrzymujemy układ równań z macierzą trójkątną
)1()1(22
)0(11
)1()1(
)2(3
)0(33
)2(33
)1(2
)0(23
)1(232
)1(22
)0(1
)0(13
)0(132
)0(121
)0(11
)1(det
nnn
p
nnn
nnn
nn
nn
nn
aaa
bxa
bxaxa
bxaxaxa
bxaxaxaxa
A
p jest liczbą przestawień wierszy macierzy A podczas sprowadzania układu równań do postaci trójkątnej.
1,...,2,11
)1(
)1(
)1(
)1(
)1(
)1(
nnjxa
a
a
bx
a
bx
k
n
jkjjj
jjk
jjj
jj
j
nnn
nn
n
3. Z otrzymanego układu równań z macierzą trójkątną wyznaczamy po kolei xn, xn-1,..., x1.
Wysiłek obliczeniowy (liczba mnożeń i dzieleń) w metodzie eliminacji Gaussa:
Faktoryzacja macierzy A: n(n2-1)/3 operacji
Przekształcenie wektora b: n(n-1)/2 operacji
Obliczenie x: n(n+1)/2 operacji.
Razem: n3/3+n2-n/3≈n3/3 operacji.
Kod źródłowy metody eliminacji Gaussa.
Metody typu Choleskiego dla macierzy symetrycznych silnie nieosobliwych
TLDLA
LT
L
DL
TLLA klasyczna metoda Choleskiego
tylko dla macierzy dodatnio określonych.
Postępowanie przy rozwiązywaniu układów równań metodą faktoryzacji Choleskiego.
1. Wyznaczenie faktorów L i D. Układ przyjmuje postać
LDLTx=b
2. Obliczenie pomocniczego wektora w.
w=L-1b przez rozwiązanie układu równań Lw=b.
Ponieważ L jest macierzą trójkątną dolną układ ten rozwiązuje się wyliczając kolejno w1, w2,…, wn podobnie jak w koncowym etapie eliminacji Gaussa.
3. Obliczenie z=D-1w (D jest macierzą diagonalną więc po prostu dzielimy wi przez dii. Ten etap nie występuje w klasycznej metodzie Choleskiego.
4. Obliczenie x poprzez rozwiązanie układu równań z macierzą trójkątną górną
LTx=z
Ten etap jest identyczny z ostatnim etapem metody eliminacji Gaussa.
Metoda wymaga ok. n3/6 operacji (2 razy mniej niż metoda eliminacji Gaussa). Uwaga: klasyczna metoda Choleskiego wymaga ponadto n pierwiastkowań.
Klasyczna faktoryzacja Choleskiego (A=LLT)
1
1
1
1
2
11
11
1111
1 i
kjkikij
iiji
i
kjkiiii
jj
llal
l
lal
l
al
al
Faktoryzacja “bezpierwiastkowa” kod źródłowy
1
01
001
1,1
212
1
nnnn ll
l
d
d
d
LD
i
n
kikjkkjijijj
n
knkknnn
i
kkikiii
dlldaldal
ldad
ldadad
1
1111
1
1
2
1
1
2111
/