Quale classificatore è più preciso per una classificazione SVM?


10

Sto imparando la classificazione SVM e ho riscontrato un problema. Non sono sicuro che questo dilemma abbia una sua terminologia.

Supponiamo che vorremmo classificare il paziente per SVM dati i campioni di persone sane (di entrambi i sessi) e persone con cancro al fegato (di entrambi i sessi). Se etichettiamo le persone sane che campionano come classe 1 e le persone con cancro come classe 2, possiamo formare un SVM binario e ottenere un classificatore 1 per predire qualsiasi nuovo paziente. Ora, immagina un altro scenario. Supponiamo che prima dividiamo tutti i campioni per genere prima della classificazione SVM. Per ogni genere, etichettiamo ancora pazienti sani contro pazienti cancerosi in 2 classi e formiamo un SVM binario per ottenere rispettivamente il classificatore 2 e il classificatore 3 per campioni femminili e maschili. La domanda è se esiste una nuova paziente, quale classificatore, 1 o 2, dovrebbe essere usato per ottenere una previsione più accurata? Ecco il dilemma per gli argomenti che ho

(1) Quando il numero di campioni è elevato, la previsione dovrebbe essere più accurata. Sulla base di questo argomento, il classificatore 1 sembra una buona scelta.

(2) Tuttavia, se dividiamo prima i campioni in gruppi femminili e maschili, il classificatore 2 sembra una scelta migliore poiché il nuovo paziente (campione sconosciuto) è femmina.

Questo tipo di dilemma ha una terminologia o qualcuno conosce ulteriori informazioni o come risolvere un problema del genere? Non sono nemmeno sicuro che si tratti di una domanda legittima e mi scuso per l'ingenua domanda in anticipo. Grazie


4
Non è possibile rispondere a questa domanda in generale. Forse se sapessimo quanto il genere influenza il cancro e quanti campioni hai, quale funzione di perdita usi ecc. Probabilmente è molto più facile sperimentare usando la validazione incrociata.
— adrianN,

Grazie. Ha senso. Immagino che non ci dovrebbe essere una regola generale.
— Cassie

questo suona come una domanda ML generale su "come devo usare ML per risolvere questo problema". non esiste una risposta standard. è importante / accettato / standard per provare approcci diversi e vedere quali strategie portano a risultati di previsione più accurati. l'intestazione generale è qualcosa come "rappresentazione del problema del mondo reale nel quadro astratto ML" o approssimativamente "modellistica" ed è coperta da buoni riferimenti standard
— vzn

Risposte:


2

Dovresti dare un'occhiata alla selezione delle funzionalità e agli algoritmi che automatizzano questo processo. Va bene se sei nuovo in ML e non capisci l'intero processo di selezione delle funzionalità, ottieni solo l'intuizione corretta e quindi puoi utilizzare una libreria per automatizzare il processo.

L'idea fondamentale di avere un algoritmo di apprendimento è così che si possa trovare i modelli ... il più che si può fare, è aiutare gli out, fornendo un sacco di dati (non ridondanti) e avere un buon pre-elaborazione fase, che di solito comporta roba come la selezione delle funzioni e la normalizzazione .

Da un punto di vista amichevole, quando si implementano algoritmi di apprendimento, non si dovrebbe provare a modificare il proprio set di dati semplicemente "guardandolo", a meno che non si disponga di metriche concrete che dimostrino che necessita di modifiche, molte volte, è stato il caso che l'apprendimento l'algoritmo pone una forte propensione per le caratteristiche che non sembrano nemmeno essere "legate" in remoto al processo di classificazione. Prova sempre a fare una fase di selezione delle funzionalità prima di provare qualsiasi modifica ai tuoi dati.


1

un'intestazione generale per questo tipo di passaggio del processo di apprendimento automatico è la preelaborazione dei dati che Wikipedia afferma include "pulizia, normalizzazione, trasformazione, estrazione e selezione di funzionalità, ecc.".

un altro aspetto dell'apprendimento automatico è "la creazione del modello". ciò implica decisioni, ad esempio su quante classi verranno rilevate, quali saranno le "dimensioni" o le "dimensioni" della struttura ML (ad es. "quanti kernel includerà l'SVM" ecc., approssimativamente analogo alla scelta del numero di neuroni in una NN modello). sfortunatamente alcuni ref tendono a saltare o "sorvolare" questo passaggio. ma nota che è comune con le statistiche e alcuni libri statistici avranno una buona descrizione.

negli approcci di tipo ML è convenzionale che esiste un forte processo iterativo / feedback / evolutivo per determinare sia la preelaborazione che la modellizzazione efficaci. lo sperimentatore prova varie idee di preelaborazione e modellazione e si muove nella direzione di quelle di maggior successo. la regola generale è "migliori sono le previsioni, più uno è correttamente [e presumibilmente anche realisticamente ] pre-elaborazione e modellistica", ma anche dato che l' eccessivo adattamento è accuratamente escluso.

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.