LDA vs. perceptron


9

Sto cercando di capire come si adatta l'LDA ad altre tecniche di apprendimento supervisionato. Ho già letto alcuni dei post in stile LDA su LDA. Conosco già il percettrone, ma sto solo imparando la LDA ora.

In che modo la LDA si adatta alla famiglia di algoritmi di apprendimento supervisionato? Quali potrebbero essere i suoi svantaggi rispetto a quegli altri metodi e per cosa potrebbe essere usato meglio? Perché usare LDA, quando uno potrebbe usare, per esempio, il percettrone per esempio?


1
Penso che potresti essere confuso su cosa sia l'apprendimento supervisionato. K-means è un algoritmo di clustering di apprendimento senza supervisione. Perceptron è un algoritmo di classificazione dell'apprendimento supervisionato che tenta di trovare un iperpiano che separa le osservazioni negative da quelle positive. LDA è un metodo che può essere utilizzato per la classificazione supervisionata ma è più comunemente usato per la selezione delle funzioni supervisionate. Vedi la risposta di @ AdamO per i presupposti del classificatore LDA.
Bitwise,

@Bitwise Oops! Non so perché ho inserito K-mean. Sì, è un algoritmo senza supervisione. Lo rimuoverò in una modifica.
Creatron,

@Bitwise Per quanto riguarda quello che hai detto su LDA e Perceptron, sì, questo è ciò che mi confonde. LDA cerca di trovare un iperpiano su cui proiettare i dati, in modo tale da massimizzare la varianza tra cluster, minimizzando al contempo la varianza all'interno del cluster. Quindi al confine, hai un classificatore. Perceptron fa qualcosa di simile, in quanto cerca anche di trovare un iperpiano ottimale per disgiungere i dati etichettati. Quindi perché usarne uno sopra l'altro?
Creatron,

Risposte:


15

Come suggerisce AdamO nel commento sopra, non puoi davvero fare di meglio che leggere il capitolo 4 di The Elements of Statistical Learning (che chiamerò HTF) che confronta LDA con altri metodi di classificazione lineare, fornendo molti esempi, e discute anche dell'uso della LDA come tecnica di riduzione dimensionale nella vena della PCA che, come sottolinea ttnphns, è piuttosto popolare.

Dal punto di vista della classificazione, penso che la differenza chiave sia questa. Immagina di avere due classi e di volerle separare. Ogni classe ha una funzione di densità di probabilità. La migliore situazione possibile sarebbe se conoscessi queste funzioni di densità, perché in questo modo potresti prevedere a quale classe appartiene un punto valutando le densità specifiche della classe in quel punto.

Alcuni tipi di classificatore funzionano trovando un'approssimazione alle funzioni di densità delle classi. LDA è uno di questi; presuppone che le densità siano multivariate normali con la stessa matrice di covarianza. Questo è un presupposto forte, ma se è approssimativamente corretto, ottieni un buon classificatore. Anche molti altri classificatori adottano questo tipo di approccio, ma cercano di essere più flessibili di assumere la normalità. Ad esempio, vedere pagina 108 di HTF.

D'altra parte, a pagina 210, HTF avvisa:

Se la classificazione è l'obiettivo finale, allora imparare bene le densità di classe separate potrebbe non essere necessario e in realtà può essere fuorviante.

Un altro approccio è semplicemente quello di cercare un confine tra le due classi, che è ciò che fa il percettrone. Una versione più sofisticata di questo è la macchina vettoriale di supporto. Questi metodi possono anche essere combinati con l'aggiunta di funzionalità ai dati usando una tecnica chiamata kernelization. Questo non funziona con LDA perché non preserva la normalità, ma non è un problema per un classificatore che sta solo cercando un iperpiano di separazione.

La differenza tra LDA e un classificatore che cerca un iperpiano di separazione è come la differenza tra un test t e un'alternativa non parametrica nelle statistiche ordinarie. Il secondo è più robusto (per i valori anomali, per esempio) ma il primo è ottimale se i suoi presupposti sono soddisfatti.

Un'ultima osservazione: potrebbe valere la pena ricordare che alcune persone potrebbero avere ragioni culturali per l'utilizzo di metodi come LDA o regressione logistica, che possono rivelare in modo obbligatorio tabelle ANOVA, test di ipotesi e cose rassicuranti del genere. LDA è stata inventata da Fisher; il percettrone era originariamente un modello per un neurone umano o animale e non aveva alcuna connessione con le statistiche. Funziona anche nell'altro modo; alcune persone potrebbero preferire metodi come le macchine di supporto vettoriale perché hanno il tipo di credito hipster all'avanguardia che i metodi del ventesimo secolo non riescono a eguagliare. Non significa che stanno meglio. (Un buon esempio di questo è discusso in Machine Learning for Hackers , se ricordo bene.)


"alcune persone potrebbero preferire metodi come le macchine di supporto vettoriale perché hanno il tipo di credito hipster all'avanguardia che i metodi del ventesimo secolo non riescono a eguagliare". LOL! Così vero. Tra l'altro hai un talento per spiegare le cose in modo molto chiaro e preciso. Grazie! Avevo bisogno di una "mappa" su come le cose si incastrassero e tu l'hai fornita.
Creatron,

2

Per intuizione, considera questo caso:

inserisci qui la descrizione dell'immagine

La linea rappresenta il "limite ottimale" tra le due classi o e x.

LDA cerca di trovare un iperpiano che minimizzi la varianza tra i cluster e massimizzi la varianza tra gli intracluster, e quindi il confine sia ortogonale a quell'iperpiano. Qui, questo probabilmente non funzionerà perché i cluster hanno una grande varianza nella stessa direzione.

Un percettrone, d'altra parte, potrebbe avere maggiori possibilità di trovare un buon iperpiano di separazione.

Nel caso di classi che hanno una distribuzione gaussiana, tuttavia, l'LDA probabilmente farà di meglio, poiché il percettrone trova solo un iperpiano di separazione coerente con i dati, senza fornire garanzie su quale iperpiano sceglie (potrebbe esserci un numero infinito di iperpiani coerenti). Tuttavia, versioni più sofisticate del perceptron possono scegliere un iperpiano con alcune proprietà ottimali, come massimizzare il margine tra le classi (questo è essenzialmente ciò che fanno Support Vector Machines).

Si noti inoltre che sia LDA che perceptron possono essere estesi a limiti di decisione non lineari tramite il trucco del kernel .


1

Una delle maggiori differenze tra LDA e gli altri metodi è che si tratta solo di una tecnica di apprendimento automatico dei dati che si presume siano normalmente distribuiti. Ciò può essere ottimo in caso di dati mancanti o troncamenti in cui è possibile utilizzare l'algoritmo EM per massimizzare le probabilità in circostanze molto strane e / o interessanti. Caveat emptor perché misspecifications modello, come i dati multimodali, può portare a cattive previsioni dello spettacolo in cui K-means avrebbe fatto meglio. I dati multimodali possono anche essere contabilizzati con EM per rilevare variabili latenti o cluster in LDA.

Ad esempio, supponiamo che tu stia cercando di misurare la probabilità di sviluppare una diagnosi positiva di AIDS in 5 anni sulla base del conteggio di CD4. Supponiamo inoltre di non conoscere il valore di uno specifico biomarcatore che influisce notevolmente sulla conta dei CD4 ed è associato a un'ulteriore immunosoppressione. I conteggi di CD4 inferiori a 400 sono al di sotto del limite inferiore di rilevamento nella maggior parte dei saggi a prezzi accessibili. L'algoritmo EM ci consente di calcolare iterativamente l'assegnazione LDA e biomarker e i mezzi e la covarianza per CD4 per il DF non troncato.


Grazie Adam, anche se ora mi trovo più confuso. :-) In che modo la LDA è migliore / peggiore di quella, il Perceptron o altre tecniche di apprendimento supervisionato? Per quanto riguarda l'algo EM, lo stai usando nel senso di poter risolvere l'LDA, usando un algo EM, giusto?
Creatron,

1
@AdamO, vorrei aggiungere per chiarezza che LDA come tecnica di riduzione dei dati non si basa sulla normalità, proprio come non fa PCA. La normalità all'interno dell'ADL è un presupposto per 1) classificazione statistica (test M di Box ecc.), 2) classificazione.
ttnphns,

@ttnphns presupponendo la normalità significa che LDA è una tecnica ML. ML è una buona cosa. Le avvertenze specifiche nell'esempio che ho citato utilizzano ML per risolvere problemi difficili. Tali soluzioni sarebbero possibili solo con sofisticate simulazioni e / o BUG.
AdamO,

@TheGrapeBeyond LDA massimizza la distanza di Mahal tra due gruppi. SLP (perceptron single layer, o nnet) disegna l'iperpiano nello spazio delle caratteristiche che crea la massima precisione di classificazione ... Penso. Un buon punto di partenza è leggere il libro Tibs / Hastie. Potrei aver bisogno di ripassare quello da solo.
AdamO,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.