Trzy wersje analizy dyskryminacyjnej: różnice i sposób ich użycia


26

Czy ktoś może wyjaśnić różnice i podać konkretne przykłady wykorzystania tych trzech analiz?

  • LDA - liniowa analiza dyskryminacyjna
  • FDA - Analiza dyskryminacyjna Fishera
  • QDA - Kwadratowa analiza dyskryminacyjna

Szukałem wszędzie, ale nie mogłem znaleźć prawdziwych przykładów z prawdziwymi wartościami, aby zobaczyć, jak te analizy są wykorzystywane i obliczane dane, tylko wiele wzorów, które trudno zrozumieć bez prawdziwych przykładów. Kiedy próbowałem zrozumieć, trudno było rozróżnić, które równania / formuły należały do ​​LDA, a które do FDA.

Powiedzmy na przykład, że istnieją takie dane:

x1 x2 class
1  2  a
1  3  a
2  3  a
3  3  a
1  0  b
2  1  b
2  2  b

I powiedzmy kilka danych testowych:

x1 x2
2  4
3  5
3  6

Jak więc korzystać z takich danych we wszystkich tych trzech podejściach? Najlepiej byłoby zobaczyć, jak obliczyć wszystko ręcznie, bez korzystania z jakiegoś pakietu matematycznego, który oblicza wszystko za kulisami.

PS Znalazłem tylko ten samouczek: http://people.revoledu.com/kardi/tutorial/LDA/LDA.html#LDA . Pokazuje, jak korzystać z LDA.

Odpowiedzi:


23

„Analiza dyskryminacyjna Fishera” to po prostu LDA w sytuacji 2 klas. Gdy są tylko 2 klasy, możliwe są ręczne obliczenia, a analiza jest bezpośrednio związana z regresją wielokrotną. LDA jest bezpośrednim rozszerzeniem pomysłu Fishera na sytuację dowolnej liczby klas i do obliczeń wykorzystuje urządzenia algebry macierzowej (takie jak skład eigend). Termin „analiza dyskryminacyjna Fishera” można dziś uznać za przestarzały. Zamiast tego należy zastosować „liniową analizę dyskryminacyjną”. Zobacz także . Analiza dyskryminacyjna z klasami 2+ (wieloklasowa) jest kanoniczna według swojego algorytmu (wyodrębnia dikryminanty jako wariacje kanoniczne); rzadki termin „kanoniczna analiza dyskryminacyjna”

Fisher wykorzystał coś, co wtedy nazwano „funkcjami klasyfikacji Fishera”, aby sklasyfikować obiekty po obliczeniu funkcji dyskryminacyjnej. Obecnie w procedurze LDA stosuje się bardziej ogólne podejście Bayesa do klasyfikacji obiektów.

Na prośbę o wyjaśnienia LDA mogę przesłać ci następujące odpowiedzi: wyodrębnienie w LDA , klasyfikacja w LDA , LDA wśród powiązanych procedur . Także to , to , to pytania i odpowiedzi.

Podobnie jak ANOVA wymaga założenia równych wariancji, LDA wymaga założenia macierzy równych wariancji-kowariancji (między zmiennymi wejściowymi) klas. To założenie jest ważne na etapie klasyfikacji analizy. Jeśli matryce zasadniczo się różnią, obserwacje będą miały tendencję do przypisywania do klasy, w której zmienność jest większa. Aby rozwiązać ten problem, opracowano QDA . QDA jest modyfikacją LDA, która pozwala na powyższą heterogeniczność macierzy kowariancji klas.

Jeśli masz heterogeniczność (jak wykryto na przykład w teście Boxa M) i nie masz pod ręką QDA, nadal możesz używać LDA w trybie używania indywidualnych macierzy kowariancji (zamiast macierzy zbiorczej) dyskryminatorów podczas klasyfikacji . To częściowo rozwiązuje problem, choć mniej skutecznie niż w QDA, ponieważ - jak już wskazano - są to matryce między dyskryminatorami, a nie między pierwotnymi zmiennymi (które matryce różniły się).

Pozwól mi odejść, analizując twoje przykładowe dane dla siebie.


Odpowiedz na odpowiedź i komentarze @ zyxue

LDA jest tym, co zdefiniowałeś FDA jest w twojej odpowiedzi. LDA najpierw wyodrębnia konstrukty liniowe (zwane dyskryminatorami), które maksymalizują odstęp między do wewnątrz, a następnie wykorzystuje je do przeprowadzenia klasyfikacji (gaussowskiej). Gdyby (jak mówisz) LDA nie było związane z zadaniem wyodrębnienia dyskryminujących, LDA wydawałoby się być tylko klasyfikatorem gaussowskim, żadna nazwa „LDA” nie byłaby wcale potrzebna.

Jest to etap klasyfikacji, w którym LDA zakłada zarówno normalność, jak i jednorodność kowariancji wariancjiS.wS.ws są takie same, wspomniane kowariancje wewnątrz klasy są takie same, tożsamość; to prawo do korzystania z nich staje się absolutne).

Klasyfikator Gaussa (drugi etap LDA) wykorzystuje regułę Bayesa do przypisywania obserwacji do klas przez dyskryminujących. Ten sam wynik można osiągnąć za pomocą tak zwanych liniowych funkcji klasyfikacji Fisher, które bezpośrednio wykorzystują oryginalne cechy. Jednak podejście Bayesa oparte na dyskryminatorach jest nieco ogólne, ponieważ pozwoli na użycie oddzielnych macierzy kowariancji dyskryminacji odrębnych klas, oprócz domyślnego sposobu użycia jednej, połączonej. Pozwoli to również oprzeć klasyfikację na podzbiorze osób dyskryminujących.

Gdy są tylko dwie klasy, oba etapy LDA można opisać razem w jednym przejściu, ponieważ „ekstrakcja utajonych” i „klasyfikacja obserwacji” sprowadzają się do tego samego zadania.


Wydaje mi się, że pamiętam na moim kursie uczenia maszynowego, że klasa 2 gaussowskiego LDA przyjęła gęstość gaussowską i stosuje zasadę Bayesian MPE, podczas gdy LDA Fishera nie przyjmuje założenia gaussowskiego i zmienia kryterium optymalizacyjne na maksymalizację SNR. Czy to odpowiada twojej odpowiedzi?
Austin

1
@Jake Zainteresowany również tym, w tej odpowiedzi: stats.stackexchange.com/questions/87975/… , stwierdzono, że wynik jest taki sam. Komentarze?
Dole

Czy jesteś pewien, że „Analiza dyskryminacyjna Fishera” to po prostu LDA w sytuacji 2 klas ”?
zyxue

@zyxue, 95% pewności, ale i tak uważam ten termin za przestarzały. Proszę zobaczyć mój przypis w stats.stackexchange.com/q/190806/3277 .
ttnphns

@ ttnphns, fyi, według youtu.be/hGKt0yy9q_E?t=3010 , FDA i LDA są często pomieszane w literaturze. Jednym ze sposobów ich rozróżnienia jest FDA to metoda ekstrakcji cech, podczas gdy LDA i QDA to technika klasyfikacji.
zyxue

1

Trudno mi zgodzić się, że FDA to LDA dla dwóch klas, jak sugerował @ttnphns.

Polecam dwa bardzo pouczające i piękne wykłady na ten temat autorstwa profesora Ali Ghodsi:

  1. LDA i QDA . Ponadto na stronie 108 książki Elementy statystycznego uczenia się ( pdf ) znajduje się opis LDA zgodny z wykładem.
  2. FDA

Dla mnie LDA i QDA są podobne, ponieważ oba są technikami klasyfikacji z założeniami Gaussa. Główną różnicą między nimi jest to, że LDA zakłada, że ​​macierze kowariancji cech obu klas są takie same, co skutkuje liniową granicą decyzji. W przeciwieństwie do tego, QDA jest mniej surowa i pozwala na różne macierze kowariancji cech dla różnych klas, co prowadzi do kwadratowej granicy decyzji. Zobacz poniższy rysunek ze scikit-learn, aby dowiedzieć się, jak wygląda kwadratowa granica decyzji.

Kilka komentarzy na temat wątków :

  • Górny wiersz: gdy macierze kowariancji są rzeczywiście takie same w danych, LDA i QDA prowadzą do tych samych granic decyzyjnych.
  • Dolny rząd: gdy macierze kowariancji są różne, LDA prowadzi do złej wydajności, ponieważ jej założenie staje się nieważne, podczas gdy QDA znacznie lepiej przeprowadza klasyfikację.

Z drugiej strony FDA to zupełnie inny gatunek, nie mający nic wspólnego z założeniem Gaussiona. To, co FDA próbuje zrobić, to znaleźć transformację liniową, aby zmaksymalizować średnią odległość między klasami, jednocześnie minimalizując wariancję wewnątrz klasy . Drugi wykład pięknie wyjaśnia ten pomysł. W przeciwieństwie do LDA / QDA, FDA nie dokonuje klasyfikacji, chociaż cechy uzyskane po transformacji znalezione przez FDA mogą być wykorzystane do klasyfikacji, np. Przy użyciu LDA / QDA lub SVM lub innych.


2
Proszę zobaczyć moją odpowiedź na twoją odpowiedź w mojej odpowiedzi. Nie obejrzałem lekcji wideo, do której prowadzi link, więc nie mogę powiedzieć, czy mogę się z tym zgodzić. Nie zgadzam się z interpretacją / definicją (LDA vs FDA), którą podajesz w odpowiedzi. Ale to - definicja dwóch terminów - nie jest dla mnie bardzo ważnym tematem. Ważniejsze jest, aby zrozumieć, jak to wszystko działa.
ttnphns

2
Jeśli rozumiesz FDA doesn't do classification, although the features obtained after transformation found by FDA could be used for classification, to powiedziałbym, że to, co nazywam „fazą ekstrakcji LDA”. Oczywiście te wyodrębnione funkcje (funkcje dyskryminujące) - możesz używać ich tak, jak chcesz. W standardowej klasyfikacji LDA są one stosowane jako klasyfikatory gaussowskie.
ttnphns

Jestem ciekawy, gdzie przeczytałeś, że „ LDA najpierw wyodrębnia konstrukty liniowe (zwane dyskryminatorami)” ? Myślałem, że nazywa się to dyskryminatorem liniowym, ponieważ granica decyzji jest liniowa, co wynika z założenia, że ​​macierz kowariancji cech jest taka sama dla różnych klas. Podobnie QDA ma kwadratową granicę decyzyjną. Są one również pokazane na osadzonych rysunkach. Oprócz powyższych filmów
odwołuję się do

W końcu myślę, że mówimy o tym samym, ale to tylko sposób na nazwanie rzeczy. Myślisz, że LDA = funkcja_wyodrębnianie + klasyfikacja, ale w oparciu o moje referencje, LDA dotyczy tylko klasyfikacji. Część feature_extraction nosi tutaj nazwę FDA. Co ważne , nie ma tu nic wspólnego z liczbą zaangażowanych tutaj klas. Zarówno LDA, jak i FDA mogą poradzić sobie z więcej niż dwiema klasami.
zyxue

Możemy trzymać się definicji, których używamy. W każdym razie należy zauważyć, że „konstrukcje liniowe” i „liniowe granice decyzyjne” są powiązane, w kontekście DA dotyczą one tego samego. Spójrz na swoje zdjęcie z ramką decyzyjną jako linią prostą. Po przekształceniu zbyt klas, elipsy, które mają być kuliste, funkcja dyskryminacyjna będzie dokładnie prostopadła do granicy. W rzeczywistości „podstawową” rzeczą jest tutaj funkcja dyskryminacyjna, zmienna, wymiar, podczas gdy granicą decyzyjną jest granica w przestrzeni zależna od jej kierunku. Granica grudnia jest „wtórna”.
ttnphns
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.