Regresja liniowa: strata

Strata to dane liczbowe opisujące, jak błędne są prognozy modelu. Funkcja straty mierzy odległość między prognozami modelu a rzeczywistymi etykietami. Celem trenowania modelu jest zminimalizowanie straty do możliwie najniższej wartości.

Na poniższym obrazie straty są przedstawione jako strzałki biegnące od punktów danych do modelu. Strzałki wskazują, jak daleko odbiegają prognozy modelu od rzeczywistych wartości.

Rysunek 9. Linie strat łączą punkty danych z modelem.

Rysunek 9. Strata jest mierzona od rzeczywistej wartości do przewidywanej wartości.

Odległość od utraty

W statystyce i uczeniu maszynowym strata mierzy różnicę między prognozowanymi a rzeczywistymi wartościami. Strata skupia się na odległości między wartościami, a nie na kierunku. Jeśli na przykład model przewiduje wartość 2, ale rzeczywista wartość to 5, nie interesuje nas, że strata wynosi -3 zł (2 – 5 = –3). Ważniejsza jest dla nas odległość między wartościami, która wynosi 3 zł. Dlatego wszystkie metody obliczania straty pomijają znak.

Oto 2 najczęstsze metody usuwania znaku:

  • Oblicz bezwzględną wartość różnicy między rzeczywistą wartością a prognozą.
  • Kwadrat różnicy między rzeczywistą wartością a prognozą.

Rodzaje strat

W regresji liniowej występują 4 główne typy strat, które opisano w tabeli poniżej.

Typ straty Definicja Równanie
Strata L1 Suma wartości bezwzględnych różnic między prognozowanymi a rzeczywistymi wartościami. $ ∑ | rzeczywista\ wartość – prognozowana\ wartość | $
Średni błąd bezwzględny (MAE) Średnia wartość L1 w zbiorze przykładów. $ \frac{1}{N} ∑ | rzeczywista\ wartość - przewidywana\ wartość | $
L2 loss Suma kwadratów różnicy między wartościami prognozowanymi a rzeczywistymi. $ ∑(actual\ value - predicted\ value)^2 $
Błąd średniokwadratowy (MSE) Średnia wartość L2 w przypadku zbioru przykładów. $ \frac{1}{N} ∑ (actual\ value - predicted\ value)^2 $

Różnica funkcjonalna między funkcją straty L1 a L2 (lub między MAE a MSE) polega na kwadratowaniu. Jeśli różnica między prognozą a etykietą jest duża, kwadrat tej różnicy powoduje jeszcze większą stratę. Gdy różnica jest niewielka (mniejsza niż 1), kwadrat powoduje jeszcze mniejszą stratę.

Podczas przetwarzania wielu przykładów naraz zalecamy uśrednianie strat we wszystkich przykładach, niezależnie od tego, czy używasz MAE, czy MSE.

Przykład obliczenia strat

Korzystając z poprzedniej linii najlepszego dopasowania, obliczyliśmy utratę jakości L2 dla pojedynczego przykładu. Na podstawie linii najlepszego dopasowania uzyskaliśmy następujące wartości wagi i uśrednienia:

  • $ \small{Weight: -3.6} $
  • $ \small{Bias: 30} $

Jeśli model przewiduje, że ważący 10 kg samochód zużywa 9,5 l paliwa na 100 km, ale w rzeczywistości zużywa 9,7 l paliwa na 100 km, obliczamy stratę L2 w ten sposób:

Wartość Równanie Wynik
Prognoza

$\small{bias + (weight * feature\ value)}$

$\small{30 + (-3.6*2.37)}$

$\small{21.5}$
Rzeczywista wartość $ \small{ label } $ $ \small{ 24 } $
Strata L2

$ \small{ (prediction - actual\ value)^2} $

$\small{ (21.5 - 24)^2 }$

$\small{6.25}$

W tym przykładzie utrata L2 dla pojedynczego punktu danych wynosi 6, 25.

Wybieranie strat

Decyzja, czy użyć MAE czy MSE, może zależeć od zbioru danych i sposobu, w jaki chcesz przetwarzać określone prognozy. Większość wartości cech w zbiorze danych zwykle mieści się w określonym zakresie. Na przykład samochody ważą zwykle od 2000 do 5000 funtów i zużywają od 8 do 50 mil na galon. Samochód o masie 3600 kg lub samochód,który zużywa 3,8 l/100 km, wykracza poza typowy zakres i zostanie uznany za wyjątkowy.

Wyjątkiem może być też odchylenie prognoz modelu od rzeczywistych wartości. Na przykład 3000 funtów to typowa waga samochodu, a 40 mil na galon to typowe spalanie. Jednak samochód o masie 3000 funtów, który spala 40 mil na galon, byłby wartością odstającą od prognozy modelu, ponieważ model przewiduje, że samochód o masie 3000 funtów spala 18–20 mil na galon.

Wybierając najlepszą funkcję utraty, zastanów się, jak model ma traktować wartości odstające. Na przykład MSE przesuwa model bardziej w kierunku wartości odstających, a MAE – nie. Strata L2 powoduje znacznie wyższą karę za wartości odstające od reszty niż strata L1. Na przykład na poniższych obrazach widać model wytrenowany za pomocą MAE i model wytrenowany za pomocą MSE. Czerwona linia reprezentuje w pełni przeszkolony model, który będzie używany do tworzenia prognoz. Wartości odstające są bliższe modelowi wytrenowanemu z użyciem MSE niż modelowi wytrenowanemu z użyciem MAE.

Rysunek 10. Model jest bardziej zorientowany na wartości skrajne.

Rysunek 10. Model trenowany z użyciem MSE zbliża się do wartości odstających.

Rysunek 11. Model jest odchylony od wartości odstających.

Rysunek 11. Model wytrenowany z użyciem MAE jest dalej od wartości odstających.

Zwróć uwagę na związek między modelem a danymi:

  • MSE. Model jest bliższy wartościom odstającym, ale dalszy od większości innych punktów danych.

  • MAE. Model jest oddalony od wartości skrajnych, ale bliższy większości innych punktów danych.

Sprawdź swoją wiedzę

Rozważ te 2 wykresy:

Wykres 10 punktów
      Linia biegnie przez 6 punktów. 2 punkty znajdują się 1 jednostkę ponad linią, a 2 inne – 1 jednostkę pod linią. Wykres 10 punktów Linia przebiega przez 8 punktów. 1 punkt znajduje się 2 jednostki powyżej linii, a drugi – 2 jednostki poniżej linii.
Który z 2 zbiorów danych widocznych na poprzednich wykresach ma wyższą średnią kwadratową błędu (MSE)?
Zbiór danych po lewej stronie.
6 przykładów na tej linii ma łączną utratę równą 0. Cztery przykłady, które nie znajdują się na linii, nie są od niej bardzo odległe, więc nawet kwadrat ich przesunięcia nadal daje niską wartość: $MSE = \frac{0^2 + 1^2 + 0^2 + 1^2 + 0^2 + 1^2 + 0^2 + 1^2 + 0^2} {10} = 0.4$
Zbiór danych po prawej stronie.
Osiem przykładów na tej linii powoduje łączną utratę 0. Mimo że tylko 2 punkty wykraczają poza linię, oba te punkty są dwa razy dalej od linii niż punkty odstające na rysunku po lewej stronie. Strata kwadratowa zwiększa te różnice, dlatego przesunięcie o 2 powoduje stratę 4 razy większą niż przesunięcie o 1: $MSE = \frac{0^2 + 0^2 + 0^2 + 2^2 + 0^2 + 0^2 + 0^2 + 2^2 + 0^2 + 0^2} {10} = 0.8$