Inleiding tot kwadratische discriminantanalyse


Wanneer we een reeks voorspellende variabelen hebben en we een responsvariabele in een van de twee klassen willen classificeren, gebruiken we doorgaans logistische regressie .

Wanneer een responsvariabele echter meer dan twee mogelijke klassen heeft, gebruiken we doorgaans lineaire discriminantanalyse , ook wel LDA genoemd.

LDA gaat ervan uit dat (1) de waarnemingen in elke klassenormaal verdeeld zijn en (2) de waarnemingen in elke klasse dezelfde covariantiematrix delen. Met behulp van deze aannames vindt LDA vervolgens de volgende waarden:

  • μ k : Het gemiddelde van alle trainingswaarnemingen van de k- de klasse.
  • σ 2 : Het gewogen gemiddelde van de steekproefvarianties voor elk van de k- klassen.
  • π k : Het aandeel trainingswaarnemingen dat tot de k- de klasse behoort.

LDA stopt deze getallen vervolgens in de volgende formule en wijst elke waarneming X = x toe aan de klasse waarvoor de formule de grootste waarde oplevert:

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

LDA heeft lineair in zijn naam omdat de waarde die door de bovenstaande functie wordt geproduceerd, voortkomt uit het resultaat van lineaire functies van x.

Een uitbreiding van lineaire discriminantanalyse is kwadratische discriminantanalyse , vaak QDA genoemd.

Deze methode is vergelijkbaar met LDA en gaat er ook van uit dat de waarnemingen van elke klasse normaal verdeeld zijn, maar gaat er niet van uit dat elke klasse dezelfde covariantiematrix deelt. In plaats daarvan gaat QDA ervan uit dat elke klasse zijn eigen covariantiematrix heeft.

Met andere woorden, er wordt van uitgegaan dat een waarneming van de k -de klasse de vorm X ~ N( μk , Σk ) heeft.

Met behulp van deze aanname vindt QDA vervolgens de volgende waarden:

  • μ k : het gemiddelde van alle trainingswaarnemingen van de k- de klasse.
  • Σ k : de covariantiematrix van de k- de klasse.
  • π k : Het aandeel trainingswaarnemingen dat tot de k- de klasse behoort.

QDA stopt deze getallen vervolgens in de volgende formule en wijst elke waarneming X = x toe aan de klasse waarvoor de formule de grootste waarde oplevert:

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

Merk op dat QDA kwadratisch in zijn naam heeft, omdat de waarde die door de bovenstaande functie wordt geproduceerd afkomstig is van het resultaat van kwadratische functies van x.

LDA versus QDA: wanneer moet u het een of het ander gebruiken?

Het belangrijkste verschil tussen LDA en QDA is dat LDA ervan uitgaat dat elke klasse een covariantiematrix deelt, waardoor het een veel minder flexibele classificator is dan QDA.

Dit betekent inherent dat het een lage variantie heeft, dat wil zeggen dat het hetzelfde zal presteren op verschillende trainingsdatasets. Het nadeel is dat als de veronderstelling dat K- klassen dezelfde covariantie hebben onjuist is, LDA aan een hoge bias kan lijden.

QDA heeft over het algemeen de voorkeur boven LDA in de volgende situaties:

(1) De trainingsset is groot.

(2) Het is onwaarschijnlijk dat K- klassen een gemeenschappelijke covariantiematrix delen.

Wanneer aan deze voorwaarden wordt voldaan, presteert QDA doorgaans beter omdat het flexibeler is en zich beter aan de gegevens kan aanpassen.

Gegevens voorbereiden voor QDA

Zorg ervoor dat uw gegevens aan de volgende vereisten voldoen voordat u er een QDA-model op toepast:

1. De responsvariabele is categorisch . QDA-modellen zijn ontworpen om te worden gebruikt voor classificatieproblemen , dat wil zeggen wanneer de responsvariabele in klassen of categorieën kan worden geplaatst.

2. De waarnemingen in elke klasse volgen een normale verdeling . Controleer eerst of de verdeling van waarden in elke klasse ongeveer normaal verdeeld is. Als dat niet het geval is, kunt u ervoor kiezen om eerst de gegevens te transformeren om de verdeling normaler te maken.

3. Houd rekening met extreme uitschieters. Zorg ervoor dat u controleert op extreme uitschieters in de dataset voordat u LDA toepast. Normaal gesproken kunt u visueel op uitschieters controleren door eenvoudigweg boxplots of spreidingsdiagrammen te gebruiken.

QDA in R en Python

De volgende tutorials bieden stapsgewijze voorbeelden van het uitvoeren van kwadratische discriminantanalyse in R en Python:

Kwadratische discriminantanalyse in R (stap voor stap)
Kwadratische discriminantanalyse in Python (stap voor stap)

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert