Quiz: Powiedz klasyfikatorowi według granicy decyzji

17

Podano 6 granic decyzji poniżej. Granice decyzyjne to fioletowe linie. Kropki i krzyżyki to dwa różne zestawy danych. Musimy zdecydować, który z nich jest:

  • Liniowy SVM
  • Jądro SVM (jądro wielomianowe rzędu 2)
  • Perceptron
  • Regresja logistyczna
  • Sieć neuronowa (1 ukryta warstwa z 10 rektyfikowanymi jednostkami liniowymi)
  • Sieć neuronowa (1 ukryta warstwa z 10 jednostkami tanh)

Chciałbym mieć rozwiązania. Ale co ważniejsze, zrozum różnice. Na przykład powiedziałbym, że c) jest liniowym SVM. Granica decyzji jest liniowa. Ale możemy również ujednolicić współrzędne liniowej granicy decyzji SVM. d) Ziarnowany SVM, ponieważ jest to wielomianowy rząd 2. f) rektyfikowana sieć neuronowa z powodu „szorstkich” krawędzi. Może a) regresja logistyczna: jest to również klasyfikator liniowy, ale oparty na prawdopodobieństwach.

Granice decyzji

Miau Piau
źródło
1
Dodaj [self-study]tag i przeczytaj jego wiki . Podamy wskazówki, które pomogą Ci się odblokować.
Gung - Przywróć Monikę
Ale to nie ćwiczenie muszę się poddać. Czytam post do samodzielnej nauki, ale myślę, że mój post jest w porządku? Zamieściłem własną myśl i również o niej pomyślałem. Myślę, że może ten przykład jest również interesujący dla innych.
Miau Piau,
1
Dziękujemy za dodanie tagu. Nie musi to być ćwiczenie, aby zastosować się do naszych zasad. To dobre pytanie; Poparłem to i nie głosowałem za zamknięciem.
Gung - Przywróć Monikę
1
Może to pomóc wyjaśnić, co pokazują wykresy. Myślę, że punkty są dwoma zestawami danych, które są używane do treningu, a linia jest granicą między obszarami, w których nowy punkt zostałby sklasyfikowany w jednej lub drugiej grupie. Czy to prawda?
Andy Clifton,
1
To prawdopodobnie najlepsze pytanie, jakie widziałem na jakiejkolwiek płycie Stackoverflow / Stackexchange w ciągu ostatnich 5 lat. O dziwo, na Stackoverflow istnieliby dżokeje kodu JavaScript, którzy zamknęliby to pytanie za „zbyt szerokie”.
stackoverflowuser2010

Odpowiedzi:

9

Naprawdę podoba mi się to pytanie!

Najpierw przychodzi mi na myśl podział na klasyfikatory liniowe i nieliniowe. Trzy klasyfikatory są liniowe (liniowa svm, perceptron i regresja logistyczna), a trzy wykresy pokazują liniową granicę decyzyjną ( A , B , C ). Zacznijmy od nich.

Liniowy

Najbardziej rozsądnym wykresem liniowym jest wykres B, ponieważ ma linię ze spadkiem. Jest to dziwne w przypadku regresji logistycznej i svm, ponieważ mogą bardziej poprawić swoje funkcje strat poprzez bycie płaską linią (tj. Będąc dalej od (wszystkich) punktów). Zatem wykres B jest perceptronem. Ponieważ wyjście perceptronu wynosi 0 lub 1, wszystkie rozwiązania, które oddzielają jedną klasę od drugiej, są równie dobre. Dlatego już się nie poprawia.

Różnica między polem _A) a C jest bardziej subtelna. Granica decyzja jest nieznacznie niższa w plot A . SVM jako stała liczba wektorów pomocniczych, podczas gdy funkcja straty regresji logistycznej jest określana we wszystkich punktach. Ponieważ jest więcej czerwonych krzyżyek niż niebieskich kropek, regresja logistyczna pozwala uniknąć czerwonych krzyżyków bardziej niż niebieskich kropek. Liniowy SVM po prostu próbuje być tak daleko od czerwonych wektorów nośnych, jak od niebieskich wektorów nośnych. Dlatego wykres A stanowi granicę decyzyjną regresji logistycznej, a wykres C jest wykonywany przy użyciu liniowego SVM.

Nieliniowy

Kontynuujmy nieliniowe wykresy i klasyfikatory. Zgadzam się z twoją obserwacją, że wykres F jest prawdopodobnie ReLu NN, ponieważ ma najostrzejsze granice. Jednostka ReLu, ponieważ aktywowana natychmiast, jeśli aktywacja przekracza 0, a to powoduje, że jednostka wyjściowa podąża inną linią liniową. Jeśli wyglądasz naprawdę, naprawdę dobrze, możesz zauważyć około 8 zmian kierunku na linii, więc prawdopodobnie 2 jednostki mają niewielki wpływ na końcowy wynik. Więc wykres F to ReLu NN.

Co do dwóch ostatnich nie jestem tego taki pewien. Zarówno tanh NN, jak i wielomianowy SVM jądra mogą mieć wiele granic. Działka D jest oczywiście sklasyfikowana gorzej. Tanh NN może poprawić tę sytuację, wyginając krzywe w inny sposób i umieszczając więcej niebieskich lub czerwonych punktów w zewnętrznym obszarze. Jednak ta fabuła jest dość dziwna. Wydaje mi się, że lewa górna część jest sklasyfikowana jako czerwona, a prawa dolna część jako niebieska. Ale jak klasyfikuje się środkową część? Powinien być czerwony lub niebieski, ale wtedy nie należy narysować jednej z granic decyzji. Jedyną możliwą opcją jest to, że części zewnętrzne są klasyfikowane jako jeden kolor, a część wewnętrzna jako drugi kolor. To dziwne i bardzo złe. Więc nie jestem pewien co do tego.

Wygląd Chodźmy na działce E . Ma zarówno zakrzywione, jak i proste linie. W przypadku jąderowego SVM stopnia 2 trudno jest (prawie niemożliwe) mieć granicę decyzji w linii prostej, ponieważ kwadratowa odległość stopniowo faworyzuje 1 z 2 klas. Aktywacja funkcji aktywacji tanh może zostać nasycona, tak że stan ukryty składa się z zer i jedynek. W takim przypadku tylko 1 jednostka następnie zmienia swój stan, mówiąc: .5 można uzyskać liniową granicę decyzyjną. Powiedziałbym więc, że wykres E jest tanh NN, a zatem wykres D jest jądrem SVM. Jednak źle dla starej biednej SVM.

Wnioski

A - Regresja logistyczna
B - Perceptron
C - Liniowy SVM
D - Jądro SVM (jądro wielomianowe rzędu 2)
E - Sieć neuronowa (1 ukryta warstwa z 10 jednostkami tanga)
F - Sieć neuronowa (1 ukryta warstwa z 10 prostymi liniowymi jednostkami)

Pieter
źródło
Dziękuję za bardzo miłą odpowiedź. Podoba mi się również pytanie. Daje nowe spojrzenie na klasyfikatory. SVM ma maksymalny margines, więc ma sens, że linia znajduje się w środku danych. Ale dlaczego dotyczy to również regresji logistycznej?
Miau Piau,
Masz na myśli, dlaczego to jest proste? Lub dlaczego jest w środku?
Pieter,
Mówisz „mogą bardziej poprawić swoje funkcje strat poprzez bycie płaską linią” - dlaczego jest tak w przypadku regresji logistycznej?
Miau Piau,
1
Teoretycznie jest to najlepsze rozwiązanie, ponieważ linia nachylona szybciej zmniejsza prawidłowe prawdopodobieństwo bliższej klasy, niż zwiększa prawdopodobieństwo bardziej odległej klasy.
Pieter,