Wprowadzenie do kwadratowej analizy dyskryminacyjnej


Kiedy mamy zestaw zmiennych predykcyjnych i chcemy zaklasyfikować zmienną odpowiedzi do jednej z dwóch klas, zazwyczaj używamy regresji logistycznej .

Jeśli jednak zmienna odpowiedzi ma więcej niż dwie możliwe klasy, zazwyczaj stosujemy liniową analizę dyskryminacyjną , często nazywaną LDA.

LDA zakłada, że (1) obserwacje w każdej klasie mają rozkład normalny i (2) obserwacje w każdej klasie mają tę samą macierz kowariancji. Korzystając z tych założeń, LDA znajduje następnie następujące wartości:

  • μ k : Średnia wszystkich obserwacji treningowych k- tej klasy.
  • σ 2 : Średnia ważona wariancji próbki dla każdej z k klas.
  • π k : Proporcja obserwacji uczących należących do k- tej klasy.

LDA następnie wstawia te liczby do następującego wzoru i przypisuje każdą obserwację X = x do klasy, dla której wzór daje największą wartość:

re k (x) = x * (μ k2 ) – (μ k 2 /2σ 2 ) + log(π k )

LDA ma w nazwie liniową , ponieważ wartość wygenerowana przez powyższą funkcję pochodzi z wyniku funkcji liniowych x.

Rozszerzeniem liniowej analizy dyskryminacyjnej jest kwadratowa analiza dyskryminacyjna , często nazywana QDA.

Metoda ta jest podobna do LDA i również zakłada, że obserwacje każdej klasy mają rozkład normalny, ale nie zakłada, że każda klasa ma tę samą macierz kowariancji. Zamiast tego QDA zakłada, że każda klasa ma własną macierz kowariancji.

Innymi słowy zakłada, że obserwacja k- tej klasy ma postać X ~ N(μ k , Σ k ).

Korzystając z tego założenia, QDA znajduje następnie następujące wartości:

  • μ k : Średnia wszystkich obserwacji treningowych k-tej klasy.
  • Σ k : Macierz kowariancji k-tej klasy.
  • π k : Proporcja obserwacji uczących należących do k- tej klasy.

QDA następnie wstawia te liczby do następującego wzoru i przypisuje każdą obserwację X = x do klasy, dla której wzór daje największą wartość:

D k (x) = -1/2*(x-μ k ) T Σ k -1 (x-μ k ) – 1/2*log|Σ k | + log( πk )

Należy zauważyć, że QDA ma w nazwie kwadrat , ponieważ wartość wygenerowana przez powyższą funkcję pochodzi z wyniku funkcji kwadratowych x.

LDA vs QDA: kiedy używać jednego lub drugiego

Główna różnica między LDA i QDA polega na tym, że LDA zakłada, że każda klasa ma wspólną macierz kowariancji, co czyni ją znacznie mniej elastycznym klasyfikatorem niż QDA.

To z natury oznacza, że ma niską wariancję, tj. będzie działać tak samo na różnych zbiorach danych uczących. Wadą jest to, że jeśli założenie, że klasy K mają tę samą kowariancję, jest fałszywe, wówczas LDA może cierpieć z powodu dużego obciążenia .

QDA jest ogólnie preferowana zamiast LDA w następujących sytuacjach:

(1) Zbiór uczący jest duży.

(2) Jest mało prawdopodobne, aby klasy K miały wspólną macierz kowariancji.

Kiedy te warunki są spełnione, QDA zwykle działa lepiej, ponieważ jest bardziej elastyczna i może lepiej dostosować się do danych.

Jak przygotować dane do QDA

Zanim zastosujesz do nich model QDA, upewnij się, że Twoje dane spełniają następujące wymagania:

1. Zmienna odpowiedzi ma charakter kategoryczny . Modele QDA są przeznaczone do stosowania w problemach klasyfikacyjnych , to znaczy, gdy zmienną odpowiedzi można umieścić w klasach lub kategoriach.

2. Obserwacje w każdej klasie mają rozkład normalny . Najpierw sprawdź, czy rozkład wartości w każdej klasie ma w przybliżeniu rozkład normalny. Jeśli nie, możesz najpierw przekształcić dane, aby rozkład był bardziej normalny.

3. Uwzględnij skrajne wartości odstające. Przed zastosowaniem LDA upewnij się, że w zbiorze danych znajdują się skrajne wartości odstające. Zwykle można wizualnie sprawdzić wartości odstające, korzystając po prostu z wykresów pudełkowych lub wykresów rozrzutu.

QDA w R i Pythonie

Poniższe samouczki zawierają szczegółowe przykłady przeprowadzania kwadratowej analizy dyskryminacyjnej w językach R i Python:

Kwadratowa analiza dyskryminacyjna w R (krok po kroku)
Kwadratowa analiza dyskryminacyjna w Pythonie (krok po kroku)

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *