Funkcyjne odwzorowanie zależności pomiędzy badanymi zmiennymi.
Cele analizy regresji:
poznawcze - badanie związków przyczynowo-skutkowych
predykcyjne - oszacowanie nieznanej wartości cechy
Model regresji jest tylko przybliżeniem rzeczywistości!
Analiza dwóch cech:
zmienna objaśniana (zależna) oznaczana jako y
zmienna objaśniająca (niezależna) oznaczana jako x
Przykłady:
zależność wielkości sprzedaży od wydatków na reklamę
zależność wynagrodzenia od lat doświadczenia
Zbiór salary zawiera informacje o rocznym wynagrodzeniu (w $) oraz liczbie lat doświadczenia.
Stwórz wykres rozrzutu dla zbioru salary
z wykorzystaniem pakietu ggplot2.
05:00
Weźmy pod uwagę prosty przykład dochodów i wydatków:
wydatki | dochody |
---|---|
2300 | 2600 |
1800 | 2400 |
2400 | 2900 |
2300 | 2800 |
2800 | 3000 |
2000 | 2500 |
2100 | 2700 |
Wykres rozrzutu
Spróbujmy teraz dopasować kilka prostych - mogą one przebiegać na wiele różnych sposobów.
W następnym kroku obliczamy różnice pomiędzy istniejącymi punktami, a odpowiadającym im wartościom na prostej:
Oznaczając yi jako rzeczywista wartość wydatków i ^yi jako wartość leżącą na prostej zależy nam na minimalizowaniu wyrażenia n∑i=1(yi−^yi)2→min. Różnica yi−^yi jest nazywana resztą (ang. residual). Wyznaczając te wartości dla analizowanych przez nas prostych otrzymamy następujące wyniki:
name | suma_kwadratow_reszt |
---|---|
czerwona | 101430 |
zielona | 264300 |
niebieska | 22462143 |
Ogólna postać regresji prostej jest następująca:
^yi=b1xi+b0
gdzie ^y oznacza wartość teoretyczną, leżącą na wyznaczonej prostej.
Wobec tego wartości empiryczne (y) będą opisane formułą:
yi=b1xi+b0+ui
w której ui oznacza składnik resztowy wyliczany jako ui=yi−^yi.
lm(formula = zmienna_zalezna ~ zmienna_niezalezna, data = zbior_danych)
formula
- zdefiniowanie zależności funkcyjnej z wykorzystaniem tyldy
data
- zbiór danych
Domyślnie funkcja lm
zwraca tylko parametry b.
Aby uzyskać szczegółowe informacje na temat modelu należy dodatkowo zastosować funkcję summary()
:
model <- lm(formula = zmienna_zalezna ~ zmienna_niezalezna, data = zbior_danych)summary(model)
Współczynnik kierunkowy b1 informuje o ile przeciętne zmieni się wartość zmiennej objaśnianej y, gdy wartość zmiennej objaśniającej x wzrośnie o jednostkę.
Wyraz wolny b0 to wartość zmiennej objaśnianej y, w sytuacji w której wartość zmiennej objaśniającej x będzie równa 0. Często interpretacja tego parametru nie ma sensu.
Odchylenie standardowe składnika resztowego jest pierwiastkiem z sumy kwadratów reszt podzielonej przez liczbę obserwacji pomniejszoną o 2:
Su= ⎷n∑i=1(yi−^yi)2n−2
Miara ta określa, o ile, przeciętnie biorąc +/−, wartości empiryczne zmiennej objaśnianej odchylają się od wartości teoretycznych tej zmiennej, obliczonej na podstawie funkcji regresji.
Współczynnik determinacji określa, jaki procent wariancji zmiennej objaśnianej został wyjaśniony przez funkcję regresji. R2 przyjmuje wartości z przedziału <0;1> ( <0%;100%> ), przy czym model regresji tym lepiej opisuje zachowanie się badanej zmiennej objaśnianej, im R2 jest bliższy jedności (bliższy 100%)
R2=1−n∑i=1(yi−^yi)2n∑i=1(yi−¯yi)2
Współczynnik determinacji przyjmuje wartości z przedziału <0;1> wyłącznie wtedy, kiedy został wykorzystany model oszacowany metodą najmniejszych kwadratów. W przeciwnym przypadku wartości tego współczynnika mogą być z przedziału (−∞;1>.
Dopasowany współczynnik determinacji ma na celu uwzględnienie i eliminację własności współczynnika determinacji polegającej na automatycznym zwiększaniu wartości R2 przy dodawaniu kolejnych cech do modelu. W tej formule uwzględnia się liczbę obserwacji oraz liczbę cech objaśniających:
¯R2=1−(1−R2)n−1n−p−1 Dopasowany współczynnik determinacji ¯R2 będzie zawsze mniejszy bądź równy wartości R2. Może także przyjmować wartości ujemne.
sprawdzenie istotności parametrów b
sprawdzenie istotności całego wektora parametrów b
Do analizy jakości modelu można także wykorzystać inne miary obliczane na podstawie wartości rzeczywistych oraz predykcji. Te najpopularniejsze zaimplementowane są w pakiecie mlr3measures.
MAE - Mean Absolute Error
MAPE - Mean Absolute Percentage Error
MSE - Mean Squared Error
RMSE - Root Mean Squared Error
W pliku pomocy, dla każdej miary jest określony jej wzór, informacja o możliwych wartościach oraz kierunku pożądnych wartości (minimalizacja czy maksymalizacja).
W celu wykorzystania modelu regresji do prognozowania należy stworzyć lub wczytać zbiór danych z danymi, dla których chcemy uzyskać wartości.
nowe_dane <- data.frame(x=c(10,20,30))predict(object = model, newdata = nowe_dane)
W przypadku istnienia zależności liniowej w czasie, przedstawioną metodę można także wykorzystać do prognozowania wartości cechy w przyszłości.
df_trend <- data.frame(rok=c(2016, 2017, 2018, 2019, 2020), t=1:5, y=c(53, 55, 57, 56, 59))knitr::kable(df_trend)
rok | t | y |
---|---|---|
2016 | 1 | 53 |
2017 | 2 | 55 |
2018 | 3 | 57 |
2019 | 4 | 56 |
2020 | 5 | 59 |
Stwórz model regresji prostej objaśniający zależność sprzedaży od liczby klientów na podstawie sklepu Rossmann. Jaka jest prognozowana sprzedaż dla 300, 700 i 1050 klientów?
10:00
Ogólna postać regresji wielorakiej jest następująca:
^yi=b1x1i+b2x2i+...+bkxki+b0
W tym przypadku nie wyznaczamy prostej tylko k-wymiarową przestrzeń.
Na podstawie zbioru pracownicy zbuduj model objaśniający wysokość bieżącego wynagrodzenia.
Na bazie zbioru pracownicy stwórz nowy zbiór danych, który nie będzie zawierał niepotrzebnych zmiennych oraz braków danych.
05:00
Zamiana zmiennej ilościowej zawierającej k wariantów na k−1 zmiennych zerojedynkowych.
Oryginalny zbiór
id | stanowisko |
---|---|
1 | specjalista |
2 | menedżer |
3 | specjalista |
4 | konsultant |
5 | konsultant |
Zmienna zerojedynkowa
id | menedżer | konsultant |
---|---|---|
1 | 0 | 0 |
2 | 1 | 0 |
3 | 0 | 0 |
4 | 0 | 1 |
5 | 0 | 1 |
Współczynnik b dla zmiennej dychotomicznej informuje o ile przeciętne zmieni się wartość zmiennej objaśnianej y w odniesieniu do kategorii bazowej dychotomicznej zmiennej x.
Przykładowo, przyjmując za kategorię bazową stanowisko specjalista, współczynnik b dla kategorii menedżer poinformuje o ile średnio wartość bieżącego wynagrodzenia jest wyższa lub niższa od specjalisty.
Pakiet corrplot służący do wizualizacji współczynnika korelacji.
Współczynnik korelacji informuje o sile zależności pomiędzy dwoma cechami ilościowymi. Jest wielkością unormowaną, przyjmuje wartości z przedziału r∈<−1;1>.
Jeśli:
Pakiet olsrr zawiera narzędzia do analizy modeli liniowych.
wybór cech do modelu
badanie współliniowości
badanie normalności
analiza wartości odstających
Wyróżnia się trzy podejścia do tego zagadnienia:
ekspercki dobór cech
budowa wszystkich możliwych modeli i wybór najlepszego według określonego kryterium
regresja krokowa
Współczynnik tolerancji wskazuje na procent niewyjaśnionej zmienności danej zmiennej przez pozostałe zmienne objaśniające.
Współczynnik VIF jest obliczany na podstawie wartości współczynnika tolerancji i wskazuje o ile wariancja szacowanego współczynnika regresji jest podwyższona z powodu współliniowości danej zmiennej objaśniającej z pozostałymi zmiennymi objaśniającymi. Wartość współczynnika VIF powyżej 4 należy uznać za wskazującą na współliniowość.
Miara Cooka jest obliczana poprzez usunięcie i-tej obserwacji z danych i ponowne obliczenie parametrów regresji. Podsumowuje, jak bardzo wszystkie wartości w modelu regresji zmieniają się po usunięciu i-tej obserwacji. Każda obserwacja, dla której wartość miary Cooka przekracza próg obliczany jako 4/n jest traktowana jaka wartość odstająca.
Reszty studentyzowane oblicza się, dzieląc resztę przez szacunkowe odchylenie standardowe. Odchylenie standardowe dla każdej reszty jest obliczane z wyłączeniem danej obserwacji. Obserwacje dla których wartość reszty przekracza 3 uznaje się za odstające.
Na podstawie zbioru dotyczącego 50 startupów określ jakie czynniki wpływają na przychód startupów.
Przyda się pakiet janitor i funkcja clean_names()
do uporządkowania nazw kolumn.
10:00
Funkcyjne odwzorowanie zależności pomiędzy badanymi zmiennymi.
Cele analizy regresji:
poznawcze - badanie związków przyczynowo-skutkowych
predykcyjne - oszacowanie nieznanej wartości cechy
Model regresji jest tylko przybliżeniem rzeczywistości!
Keyboard shortcuts
↑, ←, Pg Up, k | Go to previous slide |
↓, →, Pg Dn, Space, j | Go to next slide |
Home | Go to first slide |
End | Go to last slide |
Number + Return | Go to specific slide |
b / m / f | Toggle blackout / mirrored / fullscreen mode |
c | Clone slideshow |
p | Toggle presenter mode |
t | Restart the presentation timer |
?, h | Toggle this help |
Esc | Back to slideshow |