03 · Nadzorowane · 4 min czytania · Interaktywne · aktualizacja
Czym jest granica decyzyjna klasyfikatora i od czego zależy jej kształt?
W skrócie
Granica decyzyjna to miejsce w przestrzeni cech, gdzie klasyfikator zmienia zdanie. Jej kształt zdradza założenia modelu i jego skłonność do przeuczenia.
Co to jest
Granica decyzyjna to zbiór punktów w przestrzeni cech, w których klasyfikator jest dokładnie „na rozdrożu” — przewidywania dwóch klas są równie silne. Po jednej stronie granicy model przypisuje klasę A, po drugiej klasę B. Każdy klasyfikator dzieli przestrzeń cech na takie obszary, nawet jeśli nigdzie nie zapisuje granicy wprost.
Przy dwóch cechach granicę można narysować: to linia (prosta, łamana albo krzywa) na płaszczyźnie, na której naniesiono dane. Przy trzech cechach to powierzchnia, przy większej liczbie — hiperpowierzchnia, której nie da się zobaczyć, ale która działa tak samo.
Rysowanie granic to jeden z najlepszych sposobów na zrozumienie, czym różnią się modele. Regresja logistyczna kreśli prostą, drzewo decyzyjne — schodki z odcinków równoległych do osi, metoda najbliższych sąsiadów — postrzępioną linię wokół pojedynczych punktów, SVM z jądrem RBF — gładkie krzywe.
Mechanizm — dlaczego tak działa
Kształt granicy wynika bezpośrednio z rodziny funkcji, z której model wybiera. W regresji logistycznej granica to punkty, gdzie ważona suma cech wynosi zero: b₀ + b₁x₁ + b₂x₂ = 0, czyli prosta. Żadne dane nie sprawią, że stanie się krzywą, chyba że dodamy cechy nieliniowe, np. x₁² czy x₁·x₂. Wtedy granica jest prostą w rozszerzonej przestrzeni, a krzywą w oryginalnej.
Drzewo decyzyjne w każdym węźle zadaje pytanie „czy xⱼ ≤ próg?”, więc tnie przestrzeń wyłącznie liniami równoległymi do osi. Ukośną granicę może tylko przybliżać schodkami — i to tym drobniejszymi, im głębsze drzewo. Metoda k najbliższych sąsiadów nie ma żadnej formuły: granica przebiega tam, gdzie zmienia się większość wśród k najbliższych punktów. Dla k = 1 to mozaika obszarów wokół każdego punktu treningowego; większe k wygładza ją.
Elastyczność granicy to bezpośredni obraz kompromisu obciążenie–wariancja. Sztywna granica (prosta) może nie oddać prawdziwego kształtu klas. Bardzo elastyczna otoczy każdy punkt treningowy, łącznie z pomyłkami w etykietach, i będzie się zmieniać przy każdej nowej próbce danych. Sygnał alarmowy: wyspy jednej klasy wewnątrz obszaru drugiej, zbudowane wokół pojedynczych punktów.
Ważne rozróżnienie: granica decyzyjna to nie to samo co próg. Model probabilistyczny wyznacza całą „mapę” prawdopodobieństw, a granica to jedna warstwica tej mapy — zwykle p = 0,5. Zmiana progu na 0,3 przesuwa granicę w stronę klasy negatywnej, nie zmieniając samego modelu.
Ostatnia rzecz: tam, gdzie nie ma danych treningowych, granica jest czystą ekstrapolacją założeń modelu. Dwa modele zgodne na wszystkich przykładach mogą zupełnie inaczej dzielić puste obszary przestrzeni — i nowy przypadek z takiego obszaru zostanie przez nie sklasyfikowany różnie.
Na przykładzie
Palmer Penguins, dwie cechy: długość i głębokość dzioba, trzy gatunki, 342 ptaki. Najpierw jedna cecha i dwa gatunki: regresja logistyczna oddzielająca Adelie od Chinstrap samą długością dzioba stawia granicę w punkcie 44,1 mm (prawdopodobieństwo 0,9 dla Chinstrap osiąga przy 46,2 mm) i poprawnie klasyfikuje 95% z 219 ptaków tych gatunków. W jednym wymiarze granica to po prostu punkt.
Teraz obie cechy, trening na 256 ptakach, test na 86 (podział warstwowy, random_state=0). Regresja logistyczna, kNN z k = 1, kNN z k = 15, pełne drzewo decyzyjne i SVM z jądrem RBF osiągają na teście identyczne 95,3%. Ale na treningu kNN z k = 1 i drzewo mają 100% (otoczyły każdy punkt), a regresja logistyczna 96,5%. Gdy pokryjemy siatką cały prostokąt 32–60 mm × 13–22 mm, modele nie zgadzają się co do klasy na 2,8–13,5% jego powierzchni: kNN z k = 15 i regresja logistyczna różnią się na 2,8%, drzewo i SVM aż na 13,5%. Ta sama trafność, różne mapy — różnice ujawnią się dopiero przy nietypowych pingwinach.
Dane: Palmer Penguins (pingwiny z Antarktydy)
W praktyce
- W scikit-learn granicę narysujesz przez
DecisionBoundaryDisplay.from_estimator(model, X[:, :2]). - Wizualizacja działa tylko dla dwóch cech; dla wielu cech rysuj granicę w rzucie (np. PCA) i pamiętaj, że to uproszczenie.
- Granica w kształcie schodków i wysp wokół pojedynczych punktów to typowy objaw przeuczenia — zwiększ k, ogranicz głębokość drzewa, zmniejsz
gammaw SVM. - Przy metodach opartych na odległości (kNN, SVM) granica zależy od skali cech — zawsze
StandardScalerw potoku. - Prawdopodobieństwa obejrzysz, rysując
response_method="predict_proba"; to więcej niż sama granica.
Najczęstsze pytania
- Czy model z liniową granicą decyzyjną jest gorszy od modelu z krzywą?
- Niekoniecznie. Jeśli klasy są w przybliżeniu rozdzielne liniowo, prosta granica jest stabilniejsza i lepiej uogólnia. W przykładzie z pingwinami regresja logistyczna dorównała najbardziej elastycznym modelom. Krzywe granice opłacają się, gdy prawdziwy podział jest nieliniowy i danych jest wystarczająco dużo.
- Czym różni się granica decyzyjna od progu decyzyjnego?
- Próg to wartość prawdopodobieństwa, powyżej której przypisujemy klasę pozytywną. Granica to miejsce w przestrzeni cech, w którym przewidywane prawdopodobieństwo równa się progowi. Zmiana progu przesuwa granicę, ale nie zmienia jej rodzaju.
- Jak wygląda granica przy więcej niż dwóch klasach?
- Przestrzeń dzieli się na tyle obszarów, ile jest klas, a granice biegną tam, gdzie dwie klasy remisują. W wielomianowej regresji logistycznej (softmax) każda para klas jest oddzielona odcinkiem prostej, więc obszary są wielokątami wypukłymi.
Źródła
- James G., Witten D., Hastie T., Tibshirani R. „An Introduction to Statistical Learning”, 2nd ed., 2021, rozdz. 2.2.3 i 4.
- Hastie T., Tibshirani R., Friedman J. „The Elements of Statistical Learning”, 2nd ed., 2009, rozdz. 2.3 i 4.
- Bishop C. „Pattern Recognition and Machine Learning”, Springer, 2006, rozdz. 4.1.
- Dokumentacja scikit-learn, „DecisionBoundaryDisplay”: https://scikit-learn.org/stable/modules/generated/sklearn.inspection.DecisionBoundaryDisplay.html