Techniki Optymalizacji: Metody regresji Wojciech Kotłowski Instytut Informatyki Politechniki Poznańskiej email: imię.nazwisko@cs.put.poznan.pl pok. 2 (CW) tel. (61)665-2936 konsultacje: piątek 15:10-16:40 Slajdy dostępne pod adresem: http://www.cs.put.poznan.pl/wkotlowski/to/ 6.11.2018 1 / 29
Spis treści 1 Problem regresji 2 Metody regresji liniowej 3 Minimalizacja kwadratów błędów 4 Minimalizacja sumy wartości bezwzględnych błędów 5 Przykład: wycena domów 2 / 29
Spis treści 1 Problem regresji 2 Metody regresji liniowej 3 Minimalizacja kwadratów błędów 4 Minimalizacja sumy wartości bezwzględnych błędów 5 Przykład: wycena domów 3 / 29
Problem regresji Przewidywania/wyjaśnienie zmian jednej zmiennej (Y ) pod wpływem zmian innych zmiennych (X). Powód: zmienne X zwykle łatwe do pozyskania, Y trudne lub niemożliwe do pozyskania 4 / 29
Problem regresji Przewidywania/wyjaśnienie zmian jednej zmiennej (Y ) pod wpływem zmian innych zmiennych (X). Powód: zmienne X zwykle łatwe do pozyskania, Y trudne lub niemożliwe do pozyskania Przykłady X ceny akcji w ostatnim tygodniu, Y cena akcji jutro. X wyniki testów medycznych, Y poziom zaawansowania choroby. X wielkość programu, Y czas pisania programu. X warunki na drodze, czas, lokalizacja, Y średnia prędkość samochodów. X cechy domu Y cena domu. 4 / 29
Regresja liniowa Modelujemy zmienną Y jako funkcję liniową X. dla jednej zmiennej: dla wielu zmiennych: Ŷ = w 1 X + w 0 Ŷ = w 1 X 1 +... + w m X m + w 0 = w X + w 0 5 / 29
Regresja liniowa Modelujemy zmienną Y jako funkcję liniową X. dla jednej zmiennej: dla wielu zmiennych: Ŷ = w 1 X + w 0 Ŷ = w 1 X 1 +... + w m X m + w 0 = w X + w 0 Model liniowy jest ogólniejszy niż myślicie! Przykład: regresja wielomianowa to regresja liniowa! Mając X, wprowadzamy zmienne: X 1 = X, X 2 = X 2, X 3 = X 3,... Ŷ = w 1 X+w 2 X 2 +...+w 0 = Ŷ = w 1X 1 +w 2 X 2 +...+w 0 5 / 29
Jak to się zwykle robi Otrzymujemy zbiór danych historycznych, na którym znane są wartości Y : (x 11, x 12,..., x 1m, y 1 ) (x 1, y 1 ) (x 21, x 22,..., x 2m, y 2 ) (x 2, y 2 )... lub w skrócie... (x n1, x n2,..., x nm, y n ) (x n, y n ) 6 / 29
Jak to się zwykle robi Otrzymujemy zbiór danych historycznych, na którym znane są wartości Y : (x 11, x 12,..., x 1m, y 1 ) (x 1, y 1 ) (x 21, x 22,..., x 2m, y 2 ) (x 2, y 2 )... lub w skrócie... (x n1, x n2,..., x nm, y n ) (x n, y n ) Wyznaczamy współczynniki w 0, w 1,..., w m na danych. 6 / 29
Jak to się zwykle robi Otrzymujemy zbiór danych historycznych, na którym znane są wartości Y : (x 11, x 12,..., x 1m, y 1 ) (x 1, y 1 ) (x 21, x 22,..., x 2m, y 2 ) (x 2, y 2 )... lub w skrócie... (x n1, x n2,..., x nm, y n ) (x n, y n ) Wyznaczamy współczynniki w 0, w 1,..., w m na danych. Testujemy nasz model na osobnym zbiorze testowym (również ze znanymi wartościami Y ) 6 / 29
Jak to się zwykle robi Otrzymujemy zbiór danych historycznych, na którym znane są wartości Y : (x 11, x 12,..., x 1m, y 1 ) (x 1, y 1 ) (x 21, x 22,..., x 2m, y 2 ) (x 2, y 2 )... lub w skrócie... (x n1, x n2,..., x nm, y n ) (x n, y n ) Wyznaczamy współczynniki w 0, w 1,..., w m na danych. Testujemy nasz model na osobnym zbiorze testowym (również ze znanymi wartościami Y ) 6 / 29
Przykład: szacowanie czasu pracy programistów X Y Rozmiar programu Oszacowany czas 186 130 699 650 132 99 272 150 291 128 331 302 199 95 1890 945 788 368 1601 961 7 / 29
Przykład: szacowanie czasu pracy programistów X Y Rozmiar programu Oszacowany czas x 1 = 186 y 1 = 130 x 2 = 699 y 2 = 650 x 3 = 132 y 3 = 99 x 4 = 272 y 4 = 150 x 5 = 291 y 5 = 128 x 6 = 331 y 6 = 302 x 7 = 199 y 7 = 95 x 8 = 1890 y 8 = 945 x 9 = 788 y 9 = 368 x 10 = 1601 y 10 = 961 7 / 29
Przykład: szacowanie czasu pracy programistów X Y Rozmiar programu Oszacowany czas x 1 = 186 y 1 = 130 x 2 = 699 y 2 = 650 x 3 = 132 y 3 = 99 x 4 = 272 y 4 = 150 x 5 = 291 y 5 = 128 x 6 = 331 y 6 = 302 x 7 = 199 y 7 = 95 x 8 = 1890 y 8 = 945 x 9 = 788 y 9 = 368 x 10 = 1601 y 10 = 961 czas [h] 200 400 600 800 500 1000 1500 rozmiar programu [linie kodu] 7 / 29
Przykład: szacowanie czasu pracy programistów X Y Rozmiar programu Oszacowany czas x 1 = 186 y 1 = 130 x 2 = 699 y 2 = 650 x 3 = 132 y 3 = 99 x 4 = 272 y 4 = 150 x 5 = 291 y 5 = 128 x 6 = 331 y 6 = 302 x 7 = 199 y 7 = 95 x 8 = 1890 y 8 = 945 x 9 = 788 y 9 = 368 x 10 = 1601 y 10 = 961 czas [h] 200 400 600 800 500 1000 1500 rozmiar programu [linie kodu] w 0 = 45.93, w 1 = 0.5273 7 / 29
Spis treści 1 Problem regresji 2 Metody regresji liniowej 3 Minimalizacja kwadratów błędów 4 Minimalizacja sumy wartości bezwzględnych błędów 5 Przykład: wycena domów 8 / 29
Jak wyznaczyć współczynniki? Problem optymalizacji Mając zbiór danych (x 1, y 1 ),..., (x n, y n ), wyznacz współczynniki w 0, w 1,..., w m tak, aby wartości przewidywane przez model: ŷ i = w 1 x i1 +... + w m x im + w 0 = w x i + w 0 na wszystkich danych (i = 1,..., n) były jak najbliżej prawdziwych wartości y i. 9 / 29
Jak wyznaczyć współczynniki? Problem optymalizacji Mając zbiór danych (x 1, y 1 ),..., (x n, y n ), wyznacz współczynniki w 0, w 1,..., w m tak, aby wartości przewidywane przez model: ŷ i = w 1 x i1 +... + w m x im + w 0 = w x i + w 0 na wszystkich danych (i = 1,..., n) były jak najbliżej prawdziwych wartości y i. Uwaga: zwykle dodajemy jeszcze jedną zmienną wejściową X 0 stale równą 1 i chowamy współczynnik w 0 do wektora w, otrzymując: ŷ i = w 0 x i0 + w 1 x i1 +... + w m x im = w x i 9 / 29
Odchylenia (błędy) na danych Y price [1000EUR] 200 250 300 350 80 100 120 140 160 180 200 area size [sq.m] X 2 FIGURE statistical 3.1. learning. Linear least squares fitting with X IR 2. We seek the linear function of X that minimizes the sum of squared residuals from Y. X 1 Źródło: Hastie, Tibshirani, Friedman, Elements of 10 / 29
Odchylenia (błędy) na danych Y price [1000EUR] 200 250 300 350 80 100 120 140 160 180 200 area size [sq.m] X 2 X 1 Źródło: Hastie, Tibshirani, Friedman, Elements of FIGURE statistical 3.1. learning. Linear least squares fitting with X IR 2. We seek the linear function of X that minimizes the sum of squared residuals from Y. Odchylenie (błąd) na danym x i to różnica między prawdziwą wartością y i, a wartością przewidywaną przez model ŷ i (punkt na prostej): δ i = y i ŷ i = y i w x i 10 / 29
Odchylenia (błędy) na danych Y price [1000EUR] 200 250 300 350 80 100 120 140 160 180 200 area size [sq.m] X 2 X 1 Źródło: Hastie, Tibshirani, Friedman, Elements of FIGURE statistical 3.1. learning. Linear least squares fitting with X IR 2. We seek the linear function of X that minimizes the sum of squared residuals from Y. Odchylenie (błąd) na danym x i to różnica między prawdziwą wartością y i, a wartością przewidywaną przez model ŷ i (punkt na prostej): δ i = y i ŷ i = y i w x i Jak zmierzyć sumaryczny błąd? 10 / 29
Trzy kryteria 11 / 29
Trzy kryteria Minimalizacja sumy kwadratów błędów/odchyleń (least squares LS) min : z = δi 2 = (y i ŷ i ) 2 11 / 29
Trzy kryteria Minimalizacja sumy kwadratów błędów/odchyleń (least squares LS) min : z = δi 2 = (y i ŷ i ) 2 Minimalizacja sumy wartości bezwzględnych błędów/odchyleń (least absolute deviations LAD) min : z = δ i = y i ŷ i 11 / 29
Trzy kryteria Minimalizacja sumy kwadratów błędów/odchyleń (least squares LS) min : z = δi 2 = (y i ŷ i ) 2 Minimalizacja sumy wartości bezwzględnych błędów/odchyleń (least absolute deviations LAD) min : z = δ i = y i ŷ i Minimalizacja największego z błędów (minimax MM) min : z = max,...,n δ i = max y i ŷ i,...,n 11 / 29
Zalety i wady LS LAD MM optymalizacja analityczny wzór progr. liniowe progr. liniowe stabilność rozwiązania stabilne niestabilne niestabilne wartości odstające nieodporna odporna bardzo nieodporna Zwykle wybór między LS a LAD. MM nie nadaje się do stosowania w regresji! (poza wyjatkowymi przypadkami). 12 / 29
Odporność na wartości odstające Najprostszy przypadek: Brak X, tylko Y. Model zawiera tylko stałą: ŷ = w 0. 13 / 29
Odporność na wartości odstające Najprostszy przypadek: Brak X, tylko Y. Model zawiera tylko stałą: ŷ = w 0. Dane: 100 punktów, y 1 = y 2 =... = y 99 = 1 oraz jedna przypadkowo źle wpisana wartość y 6 = 1000. Współczynniki wyznaczone na danych: 13 / 29
Odporność na wartości odstające Najprostszy przypadek: Brak X, tylko Y. Model zawiera tylko stałą: ŷ = w 0. Dane: 100 punktów, y 1 = y 2 =... = y 99 = 1 oraz jedna przypadkowo źle wpisana wartość y 6 = 1000. Współczynniki wyznaczone na danych: Minimalizacja { kwadratów błędów (LS): min 99 (w 0 1) 2 + (w 0 1000) 2} w 0 13 / 29
Odporność na wartości odstające Najprostszy przypadek: Brak X, tylko Y. Model zawiera tylko stałą: ŷ = w 0. Dane: 100 punktów, y 1 = y 2 =... = y 99 = 1 oraz jedna przypadkowo źle wpisana wartość y 6 = 1000. Współczynniki wyznaczone na danych: Minimalizacja { kwadratów błędów (LS): min 99 (w 0 1) 2 + (w 0 1000) 2} = w 0 = avg(y) = 10.99 w 0 13 / 29
Odporność na wartości odstające Najprostszy przypadek: Brak X, tylko Y. Model zawiera tylko stałą: ŷ = w 0. Dane: 100 punktów, y 1 = y 2 =... = y 99 = 1 oraz jedna przypadkowo źle wpisana wartość y 6 = 1000. Współczynniki wyznaczone na danych: Minimalizacja { kwadratów błędów (LS): min 99 (w 0 1) 2 + (w 0 1000) 2} = w 0 = avg(y) = 10.99 w 0 Minimalizacja wartości bezwzględnych (błędów) (LAD): min w 0 { 99 w0 1 + w 0 1000 } 13 / 29
Odporność na wartości odstające Najprostszy przypadek: Brak X, tylko Y. Model zawiera tylko stałą: ŷ = w 0. Dane: 100 punktów, y 1 = y 2 =... = y 99 = 1 oraz jedna przypadkowo źle wpisana wartość y 6 = 1000. Współczynniki wyznaczone na danych: Minimalizacja { kwadratów błędów (LS): min 99 (w 0 1) 2 + (w 0 1000) 2} = w 0 = avg(y) = 10.99 w 0 Minimalizacja wartości bezwzględnych (błędów) (LAD): min w 0 { 99 w0 1 + w 0 1000 } = w 0 = median(y) = 1 13 / 29
Odporność na wartości odstające Najprostszy przypadek: Brak X, tylko Y. Model zawiera tylko stałą: ŷ = w 0. Dane: 100 punktów, y 1 = y 2 =... = y 99 = 1 oraz jedna przypadkowo źle wpisana wartość y 6 = 1000. Współczynniki wyznaczone na danych: Minimalizacja { kwadratów błędów (LS): min 99 (w 0 1) 2 + (w 0 1000) 2} = w 0 = avg(y) = 10.99 w 0 Minimalizacja wartości bezwzględnych (błędów) (LAD): min w 0 { 99 w0 1 + w 0 1000 } = w 0 = median(y) = 1 Minimalizacja największego błędu (MM): min w 0 max { w 0 1, w 0 1000 } 13 / 29
Odporność na wartości odstające Najprostszy przypadek: Brak X, tylko Y. Model zawiera tylko stałą: ŷ = w 0. Dane: 100 punktów, y 1 = y 2 =... = y 99 = 1 oraz jedna przypadkowo źle wpisana wartość y 6 = 1000. Współczynniki wyznaczone na danych: Minimalizacja { kwadratów błędów (LS): min 99 (w 0 1) 2 + (w 0 1000) 2} = w 0 = avg(y) = 10.99 w 0 Minimalizacja wartości bezwzględnych (błędów) (LAD): min w 0 { 99 w0 1 + w 0 1000 } = w 0 = median(y) = 1 Minimalizacja największego błędu (MM): min w 0 max { w 0 1, w 0 1000 } = w 0 = middle(y) = 500.5 13 / 29
Odporność na wartości odstające Najprostszy przypadek: Brak X, tylko Y. Model zawiera tylko stałą: ŷ = w 0. Dane: 100 punktów, y 1 = y 2 =... = y 99 = 1 oraz jedna przypadkowo źle wpisana wartość y 6 = 1000. Współczynniki wyznaczone na danych: Minimalizacja { kwadratów błędów (LS): min 99 (w 0 1) 2 + (w 0 1000) 2} = w 0 = avg(y) = 10.99 w 0 Minimalizacja wartości bezwzględnych (błędów) (LAD): min w 0 { 99 w0 1 + w 0 1000 } = w 0 = median(y) = 1 Minimalizacja największego błędu (MM): min w 0 max { w 0 1, w 0 1000 } = w 0 = middle(y) = 500.5 Gdy są X, prosta regresji dla LS i MM będzie przyciągana zbyt mocno do wartości odstających! (szczególnie MM: tragedia!) 13 / 29
Spis treści 1 Problem regresji 2 Metody regresji liniowej 3 Minimalizacja kwadratów błędów 4 Minimalizacja sumy wartości bezwzględnych błędów 5 Przykład: wycena domów 14 / 29
Optymalizacja Metoda najmniejszych kwadratów min : L(w) = (y i w x i ) 2 w 15 / 29
Optymalizacja Metoda najmniejszych kwadratów min : L(w) = (y i w x i ) 2 w Funkcja wypukła, kwadratowa. 15 / 29
Optymalizacja Metoda najmniejszych kwadratów min : L(w) = (y i w x i ) 2 w Funkcja wypukła, kwadratowa. Rozwiązanie poprzez przyrównanie pochodnych po wszystkich w j do 0: ( ) 1 ( w LS = x i x i y i x i ), 15 / 29
Metoda najmniejszych kwadratów 16 / 29
Metoda najmniejszych kwadratów Funkcja celu: L(w) = (y i w x i ) 2 16 / 29
Metoda najmniejszych kwadratów Funkcja celu: L(w) = (y i w x i ) 2 Pochodne: L(w) w j = 2(y i w x i )x ij 16 / 29
Metoda najmniejszych kwadratów Funkcja celu: L(w) = (y i w x i ) 2 Pochodne: L(w) w j = 2(y i w x i )x ij Przyrównanie do zera: 2(y i w x i )x ij = 0 = y i x ij = m w k x ik x ij k=1 16 / 29
Metoda najmniejszych kwadratów Funkcja celu: L(w) = (y i w x i ) 2 Pochodne: L(w) w j = 2(y i w x i )x ij Przyrównanie do zera: 2(y i w x i )x ij = 0 = y i x ij = m w k x ik x ij k=1 Wektorowo: ( y i x i = x i x i ) ( w = w = x i x i ) 1 ( y i x i ). 16 / 29
MNK jako metoda Newtona-Raphsona 17 / 29
MNK jako metoda Newtona-Raphsona Funkcja celu: L(w) = (y i w x i ) 2 17 / 29
MNK jako metoda Newtona-Raphsona Funkcja celu: L(w) = (y i w x i ) 2 Pochodne: L(w) w j = 2(y i w x i )x ij 17 / 29
MNK jako metoda Newtona-Raphsona Funkcja celu: L(w) = (y i w x i ) 2 Pochodne: Gradient: L(w) w j = 2(y i w x i )x ij L (w) = 2 (y i w x i )x i 17 / 29
MNK jako metoda Newtona-Raphsona Funkcja celu: L(w) = (y i w x i ) 2 Pochodne: Gradient: L(w) w j = 2(y i w x i )x ij L (w) = 2 (y i w x i )x i Drugie pochodne: 2 L(w) w j w k = 2x ik x ij 17 / 29
MNK jako metoda Newtona-Raphsona Funkcja celu: L(w) = (y i w x i ) 2 Pochodne: Gradient: L(w) w j = 2(y i w x i )x ij L (w) = 2 (y i w x i )x i Drugie pochodne: 2 L(w) w j w k = 2x ik x ij Hesjan: H L (w) = 2x i x i 17 / 29
MNK jako metoda Newtona-Raphsona Gradient: Hesjan: L (w) = 2 (y i w x i )x i H L (w) = 2x i x i 18 / 29
MNK jako metoda Newtona-Raphsona Gradient: Hesjan: L (w) = 2 (y i w x i )x i H L (w) = 2x i x i Rozwiązanie początkowe: w 0 = 0. L (w 0 ) = 2 y i x i, H L (w 0 ) = 2x i x i 18 / 29
MNK jako metoda Newtona-Raphsona Gradient: Hesjan: L (w) = 2 (y i w x i )x i H L (w) = 2x i x i Rozwiązanie początkowe: w 0 = 0. L (w 0 ) = 2 y i x i, H L (w 0 ) = 2x i x i Krok metodą Newtona-Rapshona: w 1 = w 0 H 1 L (w 0) L (w 0 ) 18 / 29
MNK jako metoda Newtona-Raphsona Gradient: Hesjan: L (w) = 2 (y i w x i )x i H L (w) = 2x i x i Rozwiązanie początkowe: w 0 = 0. L (w 0 ) = 2 y i x i, H L (w 0 ) = 2x i x i Krok metodą Newtona-Rapshona: ( w 1 = w 0 H 1 L (w 0) L (w 0 ) = x i x i ) 1 ( ) y i x i 18 / 29
MNK jako metoda Newtona-Raphsona Gradient: Hesjan: L (w) = 2 (y i w x i )x i H L (w) = 2x i x i Rozwiązanie początkowe: w 0 = 0. L (w 0 ) = 2 y i x i, H L (w 0 ) = 2x i x i Krok metodą Newtona-Rapshona: ( w 1 = w 0 H 1 L (w 0) L (w 0 ) = x i x i ) 1 ( ) y i x i Newton-Rapshon rozwiązuje MNK w jednym roku! 18 / 29
Metoda Levenberga-Marquada Co jeśli hesjan H L jest osobliwy (nieodwracalny)? 19 / 29
Metoda Levenberga-Marquada Co jeśli hesjan H L jest osobliwy (nieodwracalny)? Dodajemy do hesjanu macierz jednostkową I przemnożoną przez (małą) stałą λ: 1 w = x i x i + λi y i x i. 19 / 29
Metoda Levenberga-Marquada Co jeśli hesjan H L jest osobliwy (nieodwracalny)? Dodajemy do hesjanu macierz jednostkową I przemnożoną przez (małą) stałą λ: 1 w = x i x i + λi y i x i. Czy istnieje modyfikacja problemu regresji, które rozwiązaniem jest jeden krok Levenberga-Marquada? 19 / 29
Metoda Levenberga-Marquada Co jeśli hesjan H L jest osobliwy (nieodwracalny)? Dodajemy do hesjanu macierz jednostkową I przemnożoną przez (małą) stałą λ: 1 w = x i x i + λi y i x i. Czy istnieje modyfikacja problemu regresji, które rozwiązaniem jest jeden krok Levenberga-Marquada? = Regresja grzbietowa. 19 / 29
Regresja grzbietowa Funkcja celu: L(w) = (y i w x i ) 2 + λ w 2. 20 / 29
Regresja grzbietowa Funkcja celu: L(w) = Pochodne: L(w) w j = (y i w x i ) 2 + λ w 2. 2(y i w x i )x ij + 2λw j 20 / 29
Regresja grzbietowa Funkcja celu: L(w) = Pochodne: L(w) w j = (y i w x i ) 2 + λ w 2. 2(y i w x i )x ij + 2λw j Przyrównanie pochodnych do zera daje: m y i x ij = w k x ik x ij + λw j k=1 20 / 29
Regresja grzbietowa Funkcja celu: L(w) = Pochodne: L(w) w j = (y i w x i ) 2 + λ w 2. 2(y i w x i )x ij + 2λw j Przyrównanie pochodnych do zera daje: m y i x ij = w k x ik x ij + λw j Wektorowo: ( y i x i = x i x i k=1 ( = w = x i x i ) ( w + λw = x i x i ) + λi w ) 1 ( + λi y i x i ). 20 / 29
Spis treści 1 Problem regresji 2 Metody regresji liniowej 3 Minimalizacja kwadratów błędów 4 Minimalizacja sumy wartości bezwzględnych błędów 5 Przykład: wycena domów 21 / 29
Optymalizacja Minimalizacja sumy wartości bezwzględnych błędów (LAD): min : L(w) = y i w x i. w 22 / 29
Optymalizacja Minimalizacja sumy wartości bezwzględnych błędów (LAD): min : L(w) = y i w x i. w Sprowadzamy do problemu programowania liniowego: Dla każdego i = 1,..., n wprowadzamy dwie zmienne σ i +, σ i 0 takie, że y i w x i = σ i + σi. 22 / 29
Optymalizacja Minimalizacja sumy wartości bezwzględnych błędów (LAD): min : L(w) = y i w x i. w Sprowadzamy do problemu programowania liniowego: Dla każdego i = 1,..., n wprowadzamy dwie zmienne σ i +, σ i 0 takie, że y i w x i = σ i + σi. Zauważmy, że wtedy: y i w x i σ + i + σ i, 22 / 29
Optymalizacja Minimalizacja sumy wartości bezwzględnych błędów (LAD): min : L(w) = y i w x i. w Sprowadzamy do problemu programowania liniowego: Dla każdego i = 1,..., n wprowadzamy dwie zmienne σ i +, σ i 0 takie, że y i w x i = σ i + σi. Zauważmy, że wtedy: y i w x i σ + i + σ i, czyli L(w) σ i + + σi, 22 / 29
Optymalizacja Minimalizacja sumy wartości bezwzględnych błędów (LAD): min : L(w) = y i w x i. w Sprowadzamy do problemu programowania liniowego: Dla każdego i = 1,..., n wprowadzamy dwie zmienne σ i +, σ i 0 takie, że y i w x i = σ i + σi. Zauważmy, że wtedy: y i w x i σ + i + σ i, czyli L(w) σ i + + σi, i równość zachodzi dokładnie gdy dla każdego i = 1,..., n, jedno z σ + i, σ i jest równe 0. 22 / 29
Optymalizacja Rozwiązujemy problem: min L (w, σ +, σ ) = σ + i + σ i p.o. y i w x i = σ i + σi i = 1,..., n σ i +, σ i 0 i = 1,..., n. 23 / 29
Optymalizacja Rozwiązujemy problem: min L (w, σ +, σ ) = σ + i + σ i p.o. y i w x i = σ i + σi i = 1,..., n σ i +, σ i 0 i = 1,..., n. Minimalizujemy górne ograniczenie funkcji L(w). Wiemy, że w optimum dokładnie jedno z σ + i, σ i jest równe 0. 23 / 29
Optymalizacja Rozwiązujemy problem: min L (w, σ +, σ ) = σ + i + σ i p.o. y i w x i = σ i + σi i = 1,..., n σ i +, σ i 0 i = 1,..., n. Minimalizujemy górne ograniczenie funkcji L(w). Wiemy, że w optimum dokładnie jedno z σ + i, σ i jest równe 0. Dowód: jeśli oba σ + i, σ i > 0, to możemy oba zmniejszyć o δ, zachowując ograniczenia, a zmniejszając funkcję celu o 2δ sprzeczność! 23 / 29
Optymalizacja Rozwiązujemy problem: min L (w, σ +, σ ) = σ + i + σ i p.o. y i w x i = σ i + σi i = 1,..., n σ i +, σ i 0 i = 1,..., n. Minimalizujemy górne ograniczenie funkcji L(w). Wiemy, że w optimum dokładnie jedno z σ + i, σ i jest równe 0. Dowód: jeśli oba σ + i, σ i > 0, to możemy oba zmniejszyć o δ, zachowując ograniczenia, a zmniejszając funkcję celu o 2δ sprzeczność! Wniosek: W optimum L (w, σ +, σ ) = L(w), więc rozwiązaliśmy problem LAD. 23 / 29
Spis treści 1 Problem regresji 2 Metody regresji liniowej 3 Minimalizacja kwadratów błędów 4 Minimalizacja sumy wartości bezwzględnych błędów 5 Przykład: wycena domów 24 / 29
Wycena domów Den Bosch ( s-hertogenbosch), Holandia 119 domów. X Y living area sale price x 1 385 788 x 2 156 449 x 3 90 169 x 4 86 269 x 5 73 225 x 6 125 298...... 200 400 600 800 200 400 600 800 1000 area size [sq.m] price [1000EUR] 25 / 29
Wycena domów 119 domów, opisanych 9 cechami wejściowymi (X) i 1 wyjściową (Y ). DISTR type of district, four categories ranked from bad (1) to good (4) AREA total area including garden BEDR number of bedrooms TYPE apartment (1), row house (2), corner house (3), semidetached (4), detached (5), villa (6) VOL volume of the house STOR number of storeys GARD type of garden, four categories ranked from bad to good GARG no garage (1), normal garage (2), large garage (3) YEAR build year PRICE selling price 26 / 29
Wycena domów Zbiór danych: X 1 X 2 X 3 X 4 X 5 X 6 X 7 X 8 X 9 Y DISTR AREA BEDR TYPE VOL STOR GARD GARG YEAR PRICE x 1 4 385 5 6 775 3 3 3 1934 788 x 2 3 156 2 1 350 1 1 1 1996 449 x 3 4 90 3 1 200 1 1 1 1950 169 x 4 3 86 3 2 410 3 2 1 1966 269 x 5 1 73 3 2 330 3 3 1 1950 225 x 6 3 125 2 1 300 2 1 2 1950 298.............................. 27 / 29
Ilustracyjny przykład Weźmy tylko jedną zmienną X = X 2 (AREA) dla zilustrowania wyników na płaszczyźnie. Wykres Y =PRICE w funkcji X =AREA: 200 400 600 800 200 400 600 800 1000 area size [sq.m.] price [1000EUR] 28 / 29
Ilustracyjny przykład Weźmy tylko jedną zmienną X = X 2 (AREA) dla zilustrowania wyników na płaszczyźnie. Metoda najmniejszych kwadratów (LS): 200 400 600 800 200 400 600 800 1000 area size [sq.m.] price [1000EUR] 28 / 29
Ilustracyjny przykład Weźmy tylko jedną zmienną X = X 2 (AREA) dla zilustrowania wyników na płaszczyźnie. Minimalizacja sumy wartości bewzględnych (LAD): 200 400 600 800 200 400 600 800 1000 area size [sq.m.] price [1000EUR] 28 / 29
Ilustracyjny przykład Weźmy tylko jedną zmienną X = X 2 (AREA) dla zilustrowania wyników na płaszczyźnie. Minimalizacja największego błędu (MM): 200 400 600 800 200 400 600 800 1000 area size [sq.m.] price [1000EUR] 28 / 29
Koniec na dzisiaj :) 29 / 29