Klasyfikacja i regresja: co potrafią modele bez sieci
🎯 Po co Ci to?
Cała ta książka prowadzi w stronę sieci neuronowych i wielkich modeli — ale gdybyśmy poprzestali na nich, dostałbyś obraz fałszywy. Wiele realnych problemów rozwiązuje się dziś modelami, które da się zrozumieć w kwadrans, narysować na kartce i wytrenować na laptopie w kilka sekund. Ta jednostka pokazuje trzy takie modele. Ma też drugi cel, ważniejszy: jeden z nich — regresja liniowa — okaże się dosłownie tym samym, co pojedynczy sztuczny neuron z Działu 10. Zrozumiesz go tutaj, a za chwilę rozpoznasz w środku sieci.
✅ Czego się nauczysz
Po tej lekcji potrafisz:
- rozróżnić klasyfikację i regresję oraz przypisać zadanie do właściwego typu;
- wyjaśnić działanie metody k najbliższych sąsiadów i przewidzieć jej wynik ręcznie;
- odczytać i zbudować proste drzewo decyzyjne oraz wskazać jego zaletę wobec sieci;
- wyjaśnić, czym jest regresja liniowa i dlaczego jest zapowiedzią sztucznego neuronu;
- uzasadnić wybór modelu prostszego niż sieć w konkretnej sytuacji.
🔁 Przypomnij sobie
Z Jednostki 9.1: uczenie nadzorowane to uczenie z par (dane, poprawna odpowiedź). Z Jednostki 9.2: dane opisujemy wektorem cech, a odpowiedź nazywamy etykietą. Teraz zapytamy, jakiego rodzaju bywa ta odpowiedź — i jak najprościej można ją przewidzieć.
📘 Wyjaśnienie
Dwa zadania nadzorowane
Uczenie nadzorowane rozpada się na dwa typy, w zależności od tego, co jest etykietą.
Klasyfikacja — etykieta jest jedną z wyliczonej listy możliwości. Czy e-mail jest spamem (2 klasy)? Która to cyfra od 0 do 9 (10 klas)? Który z 1000 rodzajów obiektów jest na zdjęciu? Odpowiedź modelu to wskazanie klasy — najczęściej wraz ze stopniem pewności dla każdej możliwości.
Regresja — etykieta jest liczbą z pewnego zakresu. Ile będzie kosztować to mieszkanie? Jaka będzie temperatura o 18:00? Ile dni zajmie dostawa? Tu nie ma „trafienia" ani „pomyłki", jest odległość od prawdy — dlatego mierzymy ją miarami MAE i RMSE z Jednostki 9.4.
Ta sama sytuacja może być postawiona jako jedno albo drugie, w zależności od tego, co nas interesuje: „ile stopni będzie jutro?" to regresja, ale „czy będzie mróz?" to już klasyfikacja. Wybór między nimi to decyzja projektowa, nie właściwość świata.
📐 DEFINICJA — klasyfikacja i regresja:
- Klasyfikacja — zadanie, w którym etykieta należy do skończonego zbioru klas.
- Regresja — zadanie, w którym etykieta jest wartością liczbową z pewnego zakresu.
Po ludzku: klasyfikacja odpowiada na pytanie „które z?", regresja na pytanie „ile?". Czym to NIE jest: podział ten nie dotyczy modelu, ale zadania — tę samą sieć neuronową da się użyć do jednego i do drugiego, zmieniając wyjście i funkcję straty.
Metoda k najbliższych sąsiadów: „powiedz mi, kim są twoi sąsiedzi"
Najprostszy sensowny model uczący się, jaki można wymyślić. Zasada w jednym zdaniu: nowy przypadek zaklasyfikuj tak samo, jak k najbardziej podobnych przypadków, które już znasz.
Działa to tak: zapamiętujemy cały zbiór treningowy. Gdy pojawia się nowy przykład, liczymy jego odległość do wszystkich zapamiętanych, wybieramy k najbliższych i przeprowadzamy wśród nich głosowanie (dla regresji — uśredniamy ich wartości).
słodkość
^
9 | P P P = pomarańcza
| X J = jabłko
8 | P X = nowy przypadek
|
7 | J
|
6 | J
|
5 | J
+-------------------------> masa [g]
150 170 190 210
Ciekawostka, która zaskakuje: w tej metodzie nie ma treningu. Nie ma czego dostrajać — model to po prostu zapamiętany zbiór danych. Cała praca dzieje się w chwili odpowiadania na pytanie, dlatego mówi się tu o „uczeniu leniwym". Konsekwencja praktyczna: metoda jest darmowa w uczeniu i kosztowna w użyciu (przy milionie zapamiętanych przykładów każde pytanie wymaga miliona porównań).
Dwie rzeczy potrafią ją wywrócić. Po pierwsze wybór k: przy k = 1 model powtarza etykietę najbliższego sąsiada, więc jeden błędnie opisany przykład tworzy wokół siebie wysepkę bzdury; przy k zbyt dużym głos przegłosowują liczniejsze klasy i model traci wrażliwość. Po drugie skala cech: jeśli jedna cecha jest wyrażona w gramach (setki), a druga w skali 1–10, to pierwsza całkowicie zdominuje odległość. Dlatego cechy przed użyciem zwykle normalizujemy — sprowadzamy do wspólnego zakresu.
Drzewo decyzyjne: ciąg pytań tak/nie
Drugi klasyczny model, tym razem uczący się czegoś, co człowiek potrafi przeczytać. Drzewo decyzyjne to seria pytań o cechy; każda odpowiedź prowadzi do kolejnego pytania albo do decyzji.
czy pada deszcz?
/ \
TAK NIE
/ \
zostaję w domu temperatura > 5°C?
/ \
TAK NIE
/ \
idę pobiegać czy mam czapkę?
/ \
TAK NIE
/ \
idę pobiegać zostaję w domu
Uczenie polega na wybieraniu pytań: algorytm szuka takiej cechy i takiego progu, które najlepiej rozdzielają przykłady na jednorodne grupy, potem powtarza to samo w każdej gałęzi. Cały model powstaje sam z danych — ale wynik da się wydrukować i pokazać człowiekowi.
To ostatnia właściwość jest bezcenna i nazywa się wyjaśnialnością. Gdy bank odmawia kredytu, a prawo wymaga uzasadnienia decyzji, drzewo odpowiada: „dochód poniżej X i staż pracy poniżej Y". Sieć neuronowa nie odpowiada nic — ma sto milionów wag i żadna z nich nie znaczy osobno niczego (do tego problemu wrócimy w Jednostkach 12.4 i 20.3).
Wada drzew: pojedyncze, głębokie drzewo bardzo łatwo się przeucza (Jednostka 9.3) — potrafi zadać tyle pytań, że dla każdego przykładu treningowego zbuduje osobną ścieżkę. Lekarstwem okazało się coś nieoczekiwanego: zbudować wiele niedoskonałych drzew i pozwolić im głosować. Tak działa las losowy (setki drzew uczonych na losowych podzbiorach danych i cech) oraz wzmacnianie gradientowe (drzewa dokładane kolejno, każde naprawiające błędy poprzedników). Warto to zapamiętać: na danych tabelarycznych — takich jak tabela mieszkań czy dokumentacja medyczna — metody oparte na drzewach do dziś regularnie wygrywają z sieciami neuronowymi. Uczenie głębokie zdominowało obrazy, dźwięk i tekst, nie tabele.
Regresja liniowa: model, który jest neuronem
Trzeci model wygląda najskromniej, a jest najważniejszy dla dalszej lektury. Regresja liniowa przewiduje liczbę jako sumę cech pomnożonych przez wagi:
cena = w₁ · metraż + w₂ · piętro + w₃ · rok_budowy + w₄ · odległość_od_centrum + b
Wagi w₁…w₄ mówią, ile każda cecha „waży" w wyniku (waga dodatnia — podnosi cenę, ujemna — obniża), a b to wyraz wolny, przesuwający cały wynik. Uczenie polega na znalezieniu takich wag, przy których przewidywania są średnio najbliższe rzeczywistym cenom — dokładnie w sensie miary RMSE z Jednostki 9.4.
Przeczytaj teraz jeszcze raz ten wzór i zapamiętaj jego kształt: suma ważonych wejść plus przesunięcie. To dosłownie to, co robi pojedynczy sztuczny neuron z Jednostki 10.1 — z jedną dodatkową rzeczą: neuron przepuszcza tę sumę jeszcze przez funkcję aktywacji, która pozwala mu wyrażać zależności nieliniowe. Sieć neuronowa jest więc, patrząc od tej strony, gęstwiną tysięcy regresji liniowych ułożonych warstwami, z nieliniowością wciśniętą między nie. Nic magicznego — ale ta drobna dobudówka zmienia wszystko, jak zobaczysz w Dziale 10.
💭 Pomyśl: Mała przychodnia ma dane 300 pacjentów (12 wyników badań każdy) i chce przewidywać ryzyko powikłania. Lekarz musi umieć uzasadnić każdą decyzję pacjentowi. Czy zaproponujesz sieć neuronową z milionem parametrów?
Sprawdź odpowiedź
Nie. Trzy powody, każdy sam wystarczający. Po pierwsze dane: 300 przykładów o 12 cechach to bardzo mało — model z milionem parametrów zapamięta te 300 przypadków (przeuczenie z Jednostki 9.3) i zawiedzie na nowych pacjentach. Po drugie wyjaśnialność: wymóg uzasadnienia decyzji praktycznie wyklucza model, który nie potrafi wskazać powodu — drzewo decyzyjne albo regresja logistyczna dają czytelne „decyduje poziom kreatyniny powyżej X". Po trzecie koszt i utrzymanie: prosty model wytrenujesz w sekundę, sprawdzisz walidacją krzyżową i wdrożysz bez specjalistycznego sprzętu. Reguła praktyczna: sieci sięgamy po danych surowych i obfitych (obrazy, dźwięk, tekst); przy małych, tabelarycznych i wymagających uzasadnienia — po modelach prostych.
⚠️ Uwaga, pułapka
Powszechne jest przekonanie, że modele prostsze to „modele gorsze", etap przejściowy na drodze do uczenia głębokiego. To nieprawda i kosztowna pomyłka. Prostszy model bywa lepszym rozwiązaniem tego samego problemu: uczy się z mniejszej liczby przykładów, trudniej go przeuczyć, można go wyjaśnić człowiekowi i sądowi, kosztuje groszowe pieniądze, działa na telefonie bez połączenia z chmurą. Odwrotna pułapka jest równie realna: nie ma sensu ręcznie wymyślać cech obrazu, gdy sieć konwolucyjna zrobi to lepiej. Właściwe pytanie nie brzmi „który model jest najlepszy?", ale: jakie mam dane, ile ich mam, i czy muszę umieć wytłumaczyć decyzję?
🌍 Powiązania
Regresja liniowa jest bezpośrednim wstępem do Jednostki 10.1 (sztuczny neuron) — ten sam wzór, plus funkcja aktywacji. Skłonność drzew do przeuczenia to zastosowanie Jednostki 9.3, a wybór między precyzją i czułością przy klasyfikacji — Jednostki 9.4. Wątek wyjaśnialności modelu wraca dwa razy: technicznie przy sieciach konwolucyjnych (12.4) i prawnie przy AI Act (20.3).
📐 Definicje tej lekcji
- Klasyfikacja — zadanie, w którym etykieta należy do skończonego zbioru klas.
- Regresja — zadanie, w którym etykieta jest liczbą.
- k najbliższych sąsiadów (kNN) — klasyfikacja przez głosowanie k najbardziej podobnych zapamiętanych przykładów.
- Normalizacja cech — sprowadzenie cech do wspólnego zakresu, by żadna nie zdominowała odległości.
- Drzewo decyzyjne — model w postaci ciągu pytań o cechy, prowadzących do decyzji.
- Las losowy — zbiór wielu drzew uczonych na losowych podzbiorach, głosujących nad wynikiem.
- Wzmacnianie gradientowe — dokładanie kolejnych drzew, z których każde naprawia błędy poprzednich.
- Regresja liniowa — przewidywanie liczby jako sumy cech pomnożonych przez wagi, plus wyraz wolny.
- Wyjaśnialność — możliwość wskazania człowiekowi powodu, dla którego model podjął daną decyzję.
📌 Najważniejsze w pigułce
- Klasyfikacja odpowiada „które z?", regresja — „ile?". To cecha zadania, nie modelu.
- kNN nie ma treningu: zapamiętuje dane i głosuje wśród k najbliższych sąsiadów. Wymaga normalizacji cech.
- Drzewo decyzyjne jest czytelne dla człowieka, ale samo łatwo się przeucza; lasy losowe i wzmacnianie gradientowe naprawiają to głosowaniem wielu drzew.
- Na danych tabelarycznych metody drzewiaste do dziś bywają lepsze od sieci neuronowych.
- Regresja liniowa = suma ważonych cech + wyraz wolny. To dokładnie sztuczny neuron bez funkcji aktywacji (Dział 10).
- Wybór modelu zależy od ilości i rodzaju danych oraz wymogu uzasadnienia decyzji, nie od mody.
🎒 Zadania
Zadanie 9.5.1. Zbiór treningowy opisuje owoce dwiema cechami — masą [g] i słodkością [1–10]: A (150; 6) jabłko, B (170; 5) jabłko, C (160; 7) jabłko, D (205; 9) pomarańcza, E (190; 8) pomarańcza, F (210; 9) pomarańcza. Nowy owoc X ma masę 180 g i słodkość 8. Metodą kNN z odległością euklidesową wskaż etykietę X dla k = 1, k = 3 i k = 5. Co z tego wynika?
Pokaż rozwiązanie
Odległości od X (180; 8) — liczymy √((Δmasa)² + (Δsłodkość)²):
| przykład | Δmasa | Δsłodkość | odległość |
|---|---|---|---|
| E (190; 8) pomarańcza | 10 | 0 | 10,00 |
| B (170; 5) jabłko | 10 | 3 | 10,44 |
| C (160; 7) jabłko | 20 | 1 | 20,02 |
| D (205; 9) pomarańcza | 25 | 1 | 25,02 |
| F (210; 9) pomarańcza | 30 | 1 | 30,02 |
| A (150; 6) jabłko | 30 | 2 | 30,07 |
- k = 1: najbliższy jest E → pomarańcza.
- k = 3: E (pomarańcza), B (jabłko), C (jabłko) → 2 : 1 → jabłko.
- k = 5: E, B, C, D, F → pomarańcza, jabłko, jabłko, pomarańcza, pomarańcza → 3 : 2 → pomarańcza.
Wniosek: ten sam przykład dostaje różne etykiety w zależności od k. Wartość k nie jest szczegółem technicznym, tylko hiperparametrem (Jednostka 9.3), który trzeba wybrać na zbiorze walidacyjnym. Dodatkowo widać tu problem skali: masa różni się o dziesiątki, słodkość o jednostki, więc o odległości decyduje prawie wyłącznie masa — po normalizacji cech wyniki mogłyby wyjść inaczej.
Zadanie 9.5.2. Dla każdego zadania rozstrzygnij, czy to klasyfikacja, czy regresja: (a) przewidywanie liczby rowerów wypożyczonych w mieście w najbliższą sobotę; (b) rozpoznawanie języka, w którym napisano wiadomość; (c) ocena, czy transakcja jest oszustwem; (d) przewidywanie, ile minut spóźni się pociąg; (e) ocena zdjęcia zmiany skórnej w skali ryzyka od 0 do 100.
Pokaż rozwiązanie
(a) Regresja — etykietą jest liczba (choć całkowita, więc zakres jest dyskretny, to porządek i odległości mają sens: pomyłka o 5 rowerów jest mniejsza niż o 500). (b) Klasyfikacja — skończony zbiór klas (lista języków), między którymi nie ma porządku. (c) Klasyfikacja dwuklasowa — tu szczególnie ważna jest analiza precyzji i czułości z Jednostki 9.4. (d) Regresja — liczba minut. (e) Zależy od sformułowania i to jest sedno zadania: jeśli model ma zwrócić wartość ryzyka i tak ma być używana, to regresja. Jeśli jednak liczba 0–100 jest tylko sposobem wyrażenia pewności modelu, a decyzja brzmi „skierować do biopsji czy nie", to mamy klasyfikację ze progiem decyzyjnym (Jednostka 9.4). Ta sama liczba na wyjściu, dwa różne zadania — różnica leży w tym, do czego wynik posłuży.
Zadanie 9.5.3. Zbuduj (narysuj albo opisz) drzewo decyzyjne o co najwyżej trzech poziomach pytań, decydujące, czy uczeń powinien iść dziś spać wcześniej. Użyj co najmniej trzech różnych cech. Następnie wskaż, w którym miejscu Twoje drzewo mogłoby się przeuczyć, gdyby powstało automatycznie z danych o 40 dniach.
Pokaż rozwiązanie
Przykładowe drzewo:
czy jutro sprawdzian?
/ \
TAK NIE
/ \
czy materiał czy jestem
przerobiony? niewyspany?
/ \ / \
TAK NIE TAK NIE
| | | |
spać uczyć się spać mogę zostać
wcześniej jeszcze wcześniej dłużej
Cechy: „sprawdzian jutro", „materiał przerobiony", „poziom niewyspania".
Gdzie mogłoby dojść do przeuczenia: przy zaledwie 40 dniach obserwacji algorytm mógłby wybrać cechę, która przypadkowo dobrze rozdziela te konkretne dni, ale nie ma nic wspólnego z sensem sprawy — na przykład „czy dzień tygodnia to czwartek" albo „czy była lekcja WF-u", jeśli w tych 40 dniach akurat tak wyszło. Im głębsze drzewo i im mniej danych, tym większe ryzyko, że kolejne pytania opisują już nie regułę, a przypadek — dlatego drzewom ogranicza się głębokość i minimalną liczbę przykładów w liściu, a wynik sprawdza się na zbiorze walidacyjnym (Jednostka 9.3).
🔍 Sprawdź, czy umiesz
- [ ] Odróżnić klasyfikację od regresji i przypisać zadanie do właściwego typu.
- [ ] Wyznaczyć wynik kNN ręcznie dla różnych wartości k.
- [ ] Wyjaśnić, po co normalizuje się cechy przed liczeniem odległości.
- [ ] Odczytać drzewo decyzyjne i wskazać jego zaletę wobec sieci neuronowej.
- [ ] Zapisać wzór regresji liniowej i wskazać, czym różni się od sztucznego neuronu.
- [ ] Uzasadnić wybór modelu prostszego niż sieć w podanej sytuacji.