Zastosowanie komputerów
Michał Ścibor-Rylski
Analiza regresji
Zajęcia 9-10
Kurs zaawansowany
Do czego służy analiza regresji?
Poznane niedawno przeróżne analizy wariancji służyły do porównywania średnich.
Analiza regresji liniowej jest metodą, która bada związki pomiędzy zmiennymi,
pozwala na podstawie kilku zmiennych (predyktorów) przewidywać wyniki innej
zmiennej (zależnej).
Pamiętajmy, że w analizie regresji wszystkie zmienne powinny być na skalach
ilościowych.
Uważni studenci zwrócą pewnie uwagę, że już poznaliśmy jedną metodę, któa
bada związek liniowy pomiędzy dwoma zmiennymi. Jest to
korelacja
. Regresja z
wykorzystaniem dwóch zmiennych (jeden predyktor i jedna zmienna zależna) nie
różni się od analizy korelacji. W przypadku większej liczby zmiennych ma jednak
nad nią przewagę – pozwala zbadać jednoczesny wpływ kilku predyktorów na
zmienną zależną. Mówimy wtedy o wpływie danego predyktora przy kontroli
innych zmiennych.
Zmienne niezależne (predyktory) są zwykle ze sobą w jakimś stopniu
skorelowane. Po uwzględnieniu tego faktu, pierwotne korelacje ze zmienną
zależną mogą ulec modyfikacji – predyktor istotny w danym modelu może
przestać być istotny po dodaniu kolejnego, silniejszego predyktora. Może się
okazać, że długość brody jest dobrym predyktorem sprawności fizycznej (związek
ujemny), ale po dodaniu do modelu zmiennej „wiek”, przestaje nim być.
Dlaczego? Ponieważ oba predyktory są silnie ze sobą związane i „wygrywa”
silniejszy.
Jak działa analiza regresji?
Przypomnijmy sobie wykresy rozrzutu dla korelacji. W przypadku silnego związku
nasze punkty układały się wzdłuż linii, narysowanej tak, by odchylenia od niej
były jak najmniejsze. Ta linia to linia regresji. Na jej podstawie możemy szacować
wyniki zmiennej zależnej. Oto wykres:
Im bliżej linii leżą punkty, tym
przewidywanie
jest
bardziej
dokładne. Odległość punków od
linii to tzw. reszta regresyjna. Im
mniejsze są reszty tym lepiej –
bardziej istotny jest nasz model.
Linię regresji można wyznaczyć za
pomocą równania funkcji liniowej:
y = bx + a
Gdzie „y” to wartość zmiennej
zaleznej, „x” – wartość predyktora,
„b” to stopień nachylenia linii do
osi x, a „a” to miejsce przecięcia
linii z osią y.
Na podstawie równania regresji
dokonujemy predykcji wartości
zmiennej zależnej – o tym później.
Przykład
Chcemy sprawdzić w jakim stopniu ilość wypitego alkoholu (40%) wpływa na
szybkość reakcji na czerwone światło na skrzyżowaniu. Ilość alkoholu mierzyliśmy
w mililitrach, a szybkość reakcji w milisekundach. Oto wyniki:
ALKOHOL:
100, 20, 10, 15, 50, 80, 45, 13, 5, 20, 50, 10
CZAS REAKCJI:
850, 300, 270, 200, 500, 550, 400, 280, 220, 300, 470, 290
Możemy wpisać dane. Pamiętajmy, że wpisujemy ja tak, jak
w schemacie wewnątrzobiektowym – każda osoba ma dwa
pomiary. Ważna jest też kolejność: pierwsza osoba wypiła
100 ml alkoholu, a jej reakcja trwała 850 ms. Korelacja
pomiędzy tymi zmiennymi jest wysoka, dodatnia i istotna:
r = 0,96; p < 0,001
Im
więcej
alkoholu
pijemy, tym dłuższe są
nasze reakcje.
Przykład
Wiemy, jaki jest współczynnik korelacji pomiędzy zmiennymi. Wykonajmy analizę
regresji:
analiza – regresja – liniowa
Czas reakcji jest zmienną zależną,
alkohol – predyktorem.
W „statystykach można zaznaczyć
„statystyki opisowe, żeby poznać
średnie i odchylenia standardowe
badanych
zmiennych,
a
także
uzyskać
informacje
na
temat
korelacji między nimi.
Naciskamy OK i pojawia się raport –
patrz kolejny slajd.
Raport
Najpierw patrzymy na tabelę z analizą wariancji – mówi nam ona, czy nasz model
jest istotny – stosunek wariancji wyjaśnionej do wariancji reszt jest korzystny.
Analiza wariancji jest istotna:
F
(1,10)
= 121,82; p < 0,001
Jest to sygnał, że możemy dalej
zagłębiać się w analizę regresji.
Kolejna tabela zawiera informacje o współczynniku R
2
, mówiącego nam jaki
procent wariancji zmiennej zależnej wyjaśnia model.
R
2
wynosi 0,92, a więc nasz model,
złożony z jednego predyktora wyjaśnia
92% wariancji zmiennej zależnej. To
bardzo dużo.
Skorygowane
R
2
służy
głównie
do
porównywania różnych modeli o różnej
liczbie predyktorów. R2 jest korygowane ze
względu na liczbę predyktorów. Jeśli w
modelu jest ich wiele, lepiej patrzeć na tę
wartość.
R
jest
wielokrotną
korelacją
predyktorów ze zmienną zależną. W
tym przypadku jest to po prostu
znana już nam korelacja pomiędzy
dwoma zmiennymi.
Raport
Ostatnia jest tabela ze współczynnikami:
Przy predyktorze mamy dwa współczynniki: „b” i jego wystandaryzowany
odpowiednik „Beta”.
„B”
mówi nam, o ile wzrośnie wartość zmiennej zależnej, jeżeli zwiększymy
wartość predyktora o jedną jego jednostkę. W tym przypadku wraz z każdym
mililitrem wypitego alkoholu czas reakcji rośnie o 5,79 milisekundy.
„Beta”
informuje o sile predyktora, jego wpływie na zmienną zależną. Przy
jednym predyktorze jest to po prostu współczynnik korelacji. Mówi nam, o ile
odchyleń standardowych wzrośnie wartość zmiennej zależnej, jeżeli zwiększymy
wartość predyktora o jedno odchylenie standardowe. Beta pozwala porównywać
predyktory pomiędzy sobą.
Istotność
przy predyktorze mówi nam, czy Beta jest istotnie różna od 0 i czy
predyktor jest istotny w modelu.
Zostaje jeszcze
stała
, która mówi nam, ile wynosi wartość zmiennej zależnej, gdy
wartości predyktorów wynoszą 0. Stała musi być także istotna, byśmy włączali ją
do modelu.
Równanie regresji
Znając współczynnik „b” oraz stałą możemy podstawić te wartości do równania
regresji i przewidywać (z dużym prawdopodobieństwem – R
2
wynosił 0,92)
wartości zmiennej zależnej.
Równanie regresji to:
y = bx + a
Czyli w naszym przypadku:
Czas reakcji = b*ilość alkoholu + a
B to współczynnik „b”, „a” to stała. Po podstawieniu odpowiednich wartości
otrzymujemy:
Czas reakcji = 5,79*ilość alkoholu + 184,08
Jeśli ktoś nie pije alkoholu, jego czas reakcji powinien wynosić około 184
milisekund. Wyobraźmy sobie człowieka, który wypił 0,2 l alkoholu. Pamiętajmy o
zmianie jednostek i podstawmy:
Czas reakcji = 5,79*200 + 184,08 =
1342,08
Widać, że czas reakcji znacznie się wydłużył. Dzięki analizie regresji nie musimy
już poić ludzi alkoholem, by sprawdzić jak rośnie czas reakcji przy kolejnych
kolejkach, możemy to obliczyć ze wzoru. Nasza predykcja jest oczywiście
niedoskonała, ale wysoka wartość R
2
pozwala na poważne podejście do naszego
modelu.
Regresja wielozmiennowa
Dotychczas mieliśmy do czynienia z modelem z jednym predyktorem. Analiza
regresji jest przeznaczona jednak do analizowania łącznego wpływu wielu
predyktorów. Spróbujmy do naszego modelu dodać jeszcze zmienną
„samopoczucie” – na skali 1-10, gdzie 10 oznacza najlepsze samopoczucie osób
badanych. Będziemy sprawdzać, na ile ilość alkoholu i samopoczucie wpływają na
czas reakcji. Dane wyglądają następująco:
Wykonujemy korelacje
pomiędzy zmiennymi
Samopoczucie jest wysoko skorelowane z czasem reakcji, a także z alkoholem.
Nie jest to najlepsza sytuacja dla analizy regresji. Zależy nam, aby predyktory nie
były powiązane ze sobą. Jeśli są, unikalny wpływ każdego z nich na zmienną
zależną przy kontroli drugiego jest mniejszy, ograniczony. Kolejny slajd pokaże,
jak oba predyktory będą wyglądały w analizie regresji.
Regresja wielozmiennowa
Wykonujemy analizę regresji:
Analiza wariancji jest istotna:
Model jest dobry, R
2
wysokie:
Warto zwrócić uwagę, że R nie jest już
żadnym ze współczynników korelacji. W tym
modelu, z dwoma predyktorami, oddaje ich
wielokrotną korelację ze zmienną zależną.
Widać, że nie wzrosła ona znacznie w
porównaniu z poprzednim modelem.
Regresja wielozmiennowa
Analizując współczynniki regresji okazuje się, że samopoczucie nie jest istotnym
predyktorem, a Beta dla alkoholu obniżyła się. Jest to właśnie efekt wysokiej
korelacji pomiędzy predyktorami. Alkohol ma tak silny wpływ na czas reakcji, że
samopoczucie nie miało szans na przebicie się. Zwłaszcza, że mamy tu do
czynienia z tak zwaną korelacją pozorną – dobre samopoczucie wiąże się z
wydłużeniem czasu reakcji tylko dlatego, że jest ono wynikiem wypicia dużej
ilości alkoholu.
W równaniu regresji nie uwzględnilibyśmy samopoczucia oraz stałej, która także
okazała się nieistotna. Gdyby jednak istotności wynosiły mniej niż 0,05, równanie
regresji miałoby postać:
y = bx
1
+ bx
2
+ a
Czyli:
Czas reakcji = b*ilość alkoholu + b*samopoczucie + a
Informacje dodatkowe
Analiza regresji jest metodą niezwykle dynamiczną. Każdy dodany do modelu
predyktor może zmienić obraz wyników (w sytuacji korelacji pomiędzy
predyktorami, co trudno całkiem wyeliminować). Analizując model z 10
zmiennymi może okazać się, że bardzo dobry predyktor jest nieistotny, ponieważ
koreluje z kilkoma innymi słabymi predyktorami i jego unikalny wpływ na zmienną
zależną jest ograniczony. Z tego powodu istnieje możliwość ingerencji w kolejność
wprowadzania predyktorów do modelu. Istnieje kilka metod:
SPSS domyślnie korzysta z metody wprowadzania –
wszystkie predyktory w jednym kroku są wprowadzane do
modelu. Możemy jednak zmienić metodę. O każdej z nich
można przeczytać klikają prawym przyciskiem myszy po
wybraniu jej.
Przykładowo, metoda krokowa tworzy pierwszy model z najbardziej istotnym
predyktorem. Kolejny model buduje dorzucając następny pod względem siły
predyktor itd. Jednocześnie, z modelu usuwane są predyktory, które przestały być
istotne. Dzięki temu można wybrać najlepszy model: godząc jego jakość z liczbą
predyktorów. W każdym nowym modelu zmienia się oczywiście R
2
. Aby ocenić,
czy każdy następny model ma sens, możemy obliczyć istotność zmiany R
2
(czy
dodanie nowego predyktora istotnie zwiększa procent wyjaśnianej wariancji).
Musimy tylko zaznaczyć odpowiednie pole w „statystykach”.