2009-07-02 10 views
46

Ho cercato di comprendere le nozioni di base di Support Vector Machines e ho scaricato e letto molti articoli online. Ma ancora non riesco a coglierlo.Puntatori ad un buon tutorial SVM

Vorrei sapere, se ci sono alcuni

  • bel tutorial
  • codice
  • di esempio che può essere utilizzato per comprendere

o qualcosa, che si può pensare, e che mi consentirà di apprendere facilmente i concetti base SVM.

PS: in qualche modo sono riuscito a imparare PCA (Principal Component Analysis). BTW, voi ragazzi avreste immaginato che sto lavorando su Machine Learning.

+3

riguardo alla chiusura di questa "domanda", capisco che non sta seguendo le "regole" di StackOverflow, ma S.O. ha bisogno di riconoscere che è diventato così grande e onnipresente che la comunità lo usa per molti scopi. Non esiste un forum di qualità equivalente in cui Alphaneo avrebbe potuto fare la sua richiesta. Forse Quora? Ma davvero, S.O. è il mio "go-to" per la vera competenza, non Quora. –

+0

L'apprendimento automatico non è particolarmente ben servito da qualsiasi comunità di controllo qualità, ma penso che stats.stackexhange.com o metaoptimize.com/qa siano ora migliori siti da utilizzare rispetto a stackoverflow.com – Stompchicken

+0

@MikeWilliamson Che ne è di Cross-convalidato? Si rivolge esattamente a questo tipo di domanda. –

risposta

42

Il consiglio standard per un tutorial in SVM è A Tutorial on Support Vector Machines for Pattern Recognition di Christopher Burges. Un altro buon posto per conoscere SVM è il Machine Learning Course a Stanford (gli SVM sono trattati nelle lezioni 6-8). Entrambi questi sono abbastanza teorici e pesanti sulla matematica.

Come per il codice sorgente; SVMLight, libsvm e TinySVM sono tutti open-source, ma il codice non è molto facile da seguire. Non li ho guardati da vicino, ma la fonte di TinySVM è probabilmente la più facile da capire. Esiste anche un'implementazione pseudo-codice dell'algoritmo SMO in this paper.

+0

Vorrei solo poterti dare 2 voti positivi. Un tutorial molto bello, sono già sulla mia strada ... grazie. – Alphaneo

+0

Questo link per l'articolo di Christopher Burges è obsoleto, ma StompChicken ha fornito abbastanza dettagli per trovarlo in una ricerca. È un articolo IMPRESSIONANTE; entrambi estremamente "dettagliati e completi", ma anche molto facilmente comprensibili. Christopher Burges ha fatto un ottimo lavoro. Ottima lettura per chiunque sia interessato a SVM. –

+0

@MikeWilliamson Grazie per aver segnalato il collegamento interrotto. L'ho puntato su un URL nuovo e, si spera, più permanente. – Stompchicken

5

Supponendo che si conoscano le nozioni di base (ad es. Classificatori di margine massimo, costruzione di un kernel), risolvere Problem Set 2 (handout #5) di quel corso di apprendimento automatico di stanford. Ci sono le chiavi di risposta & che ti tiene per mano attraverso l'intero processo. Utilizzare Lecture notes 3 & video #7-8 come riferimento.

Se non conosci le nozioni di base, guarda i video precedenti.

+0

Il set di problemi sembra una risorsa eccellente. Grazie! –

3

Vorrei prendere una copia di R, installare il pacchetto e1071 che avvolge perfettamente libsvm e tenta di ottenere buoni risultati sui propri set di dati preferiti.

Se hai appena capito PCA, potrebbe essere informativo a guardare i dati con molte più predittori di casi (ad esempio, profili di espressione genica microarray, serie temporali, spettri dalla chimica analitica, etc.) e confrontare regressione lineare sulla Predittori PCA con SVM sui predittori non elaborati.

Ci sono molti ottimi riferimenti nelle altre risposte, ma penso che ci sia un valore nel giocare con la scatola nera prima di leggere cosa c'è dentro.

+1

Sono d'accordo, è bello "giocare con la scatola nera prima di entrare nelle basi" ... – Alphaneo

17

Si tratta di esercitazione un ottimo principiante su SVM:

SVM explained

Ho sempre pensato esercitazione raccomandato di StompChicken era un po 'di confusione nel modo in cui saltano destra in parlando di limiti e statistiche VC e cercando di trova la macchina ottimale e così via. Va bene se comprendi già le basi, però.

+0

Questo è sicuramente un materiale introduttivo molto semplice e intuitivo per i principianti. –

+2

^^ per neofiti con uno sfondo molto forte in "calcolo, geometria vettoriale e moltiplicatori di lagrange", che mi sembra che se già lo possiedi, allora qualsiasi introduzione "matematica pesante" sarebbe più adatta. –

+0

Grazie. È brillante! – stealthspy