Cos'è SVM?
SVM o Support Vector Machine è una tecnica di apprendimento automatico supervisionato per analizzare i dati per la regressione e la classificazione. L'obiettivo dell'algoritmo SVM è di definire il limite o la linea di decisione ottimale in grado di classificare lo spazio n-dimensionale, consentendoci di classificare nuovi punti dati in futuro rapidamente. Questo limite di decisione è noto come iperplano. Ciò consente al tuo modello di ordinare un set di dati etichettato e classificare l'input senza etichetta. È uno degli algoritmi di apprendimento supervisionati più popolari ed è spesso utilizzato per classificare le immagini utilizzando le funzionalità recuperate da una profonda rete neurale convoluzionale.
Supponiamo che tu abbia alcuni punti linearmente separabili nel tuo documento che sono di diversi tipi. L'SVM troverà una linea retta che, per quanto è ragionevolmente possibile, divide quei punti in due categorie. Immagina due paia di punti sdraiati su un aereo. I primi sono rossi, mentre il resto è blu. Al fine di ottimizzare la sua distanza da entrambe le classi di punti, una macchina vettoriale di supporto cerca una linea che divide i punti rossi da quelli blu. Questo è noto come il margine di differenza più grande. È importante misurare la distanza dalla linea ai punti ai bordi dei due punti per determinare il margine con la differenza più grande. Si riferiscono a loro come Supportare i vettori. I punti devono essere separabili da una linea poiché devono essere separati da uno. Il termine per questo è separabilità lineare. Il trucco del kernel è un'aggiunta cruciale all'algoritmo della macchina vettoriale di supporto per superare questa restrizione. Questo sposta i dati in uno spazio a dimensione superiore e utilizza una funzione lineare per separarli lì. Attraverso un cosiddetto kernel, la trasformazione viene eseguita. Ciò è concepibile solo perché il calcolo della funzione lineare per separare i dati dipende dal prodotto DOT dei vettori di supporto/punti ". In poche parole: per evitare di usare una linea per dividere il rosso dai punti blu, mescolali sul piano.
Sollevare quelli rossi, lasciando quelli blu dietro. Ora è ovvio che potresti separare i punti usando un piano. La tecnica del kernel raggiunge questo. Altera i dati in una dimensione più elevata per presumibilmente essere linearmente separabile. Sollevamento ha aggiunto una terza dimensione (tre dimensioni), che ha separato i punti da una linea in tre dimensioni, un piano, mentre i punti sul pavimento (due dimensioni) non erano.
Vantaggi di SVM
Svantaggi di SVM
Implementazione di SVM in Sklearn
Importazione di bibliotecheProduzione
I dati del treno sono [[-2.02514259 0.0291022 -0.47494531… -0.33450124 0.86575519Produzione
I vettori di supporto sono [[-2.02514259 0.0291022 -0.47494531… -0.33450124 0.86575519Conclusione
Abbiamo esaminato la spiegazione di Support Vector Machines (SVM) insieme ai loro pro, contro e implementazione. SVM disegna iperplani tra i punti con il margine più grande e può essere utilizzato per i casi di classificazione e regressione. Abbiamo visto come Sklearn ci fornisce un modo semplice per implementare SVM e ottenere dettagli sui vettori di supporto.