Regresja liniowa: strata

Strata to dane liczbowe opisujące, jak bardzo nietrafne są prognozy modelu. Strata mierzy odległość między prognozami modelu a rzeczywistymi etykietami. Celem wytrenowania modelu jest zminimalizowanie straty przez zredukowanie jej do najmniejszej możliwej wartości.

Na poniższym obrazie straty są przedstawione jako strzałki biegnące od punktów danych do modelu. Strzałki pokazują, jak daleko są 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 statystykach i uczeniu maszynowym strata mierzy różnicę między wartościami prognozowanymi a rzeczywistymi. Strata skupia się na odległości między wartościami, a nie na kierunku. Jeśli na przykład model przewiduje wartość 2, a 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ą.

Typy strat

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

Typ straty Definicja Równanie
Utrata L Suma wartości bezwzględnych różnic między wartościami prognozowanymi a wartościami rzeczywistymi. $ ∑ | rzeczywista\ wartość – prognozowana\ wartość | $
Średni błąd bezwzględny (MAE) Średnia strat L1 w zestawie przykładów. $ \frac{1}{N} ∑ | obecna\ wartość – wartość prognozowana | $
L2 loss Suma do kwadratu różnicy między wartościami prognozowanymi a wartościami 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. Gdy różnica między prognozą a etykietą jest duża, kwadrat tej różnicy powoduje jeszcze większą stratę. Gdy różnica jest mała (mniejsza niż 1), kwadrat sprawia, że strata jest jeszcze mniejsza.

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ę L2 dla pojedynczego przykładu. W przypadku linii najlepszego dopasowania mamy te wartości wagi i odchylenia:

  • $ \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{ etykieta } $ $ \small{ 24 } $
Strata L2

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

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

$\small{6.25}$

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

Wybór przegranej

Decyzja, czy użyć MAE czy MSE, może zależeć od zbioru danych i sposobu, w jaki chcesz obsługiwać 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 spala 100 mil na galon, wykracza poza typowy zakres i jest uważany za wyjątek.

Wartość odstająca może też określać, jak bardzo prognozy modelu odbiegają od rzeczywistych wartości. Na przykład samochód o masie 3000 funtów lub samochód, który spala 40 mil na galon,mieści się w typowych zakresach. W prognozach tego modelu samochód o wadze 900 kilogramów osiągający prędkość 40 kilometrów na galon jest jednak czymś odstającym, ponieważ przewidywałby on, że samochód o wadze 900 kilogramów przepuszcza 18–20 kilometrów 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 to 1 jednostka nad linią; 2 inne punkty to 1 jednostka poniżej linii. Wykres 10 punktów. Linia przebiega przez 8 punktów. 1 punkt znajduje się 2 jednostki ponad linią, a drugi – 2 jednostki pod linią.
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, są oddalone od siebie, więc nawet podniesienie ich przesunięcia do kwadratu nadal daje niską wartość: $MSE = \frac{0^2 + 1^2 + 0^2 + 1^2 + 0^2 + 1^2 + 0^2 + 1^2 + 0^2 + 0^2=} {0.4} {10}
Zbiór danych po prawej stronie.
Osiem przykładów na tej linii powoduje łączną utratę 0. Chociaż tylko 2 punkty wyznaczają linię, oba są oddalone 2 razy od linii co punkty odstające na ilustracji 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$