"..approach problema di classificazione attraverso la regressione .." per "regressione" Presumo che tu intenda la regressione lineare, e confronterò questo approccio con l'approccio di "classificazione" per adattare un modello di regressione logistica.
Prima di farlo, è importante chiarire la distinzione tra regressione e modelli di classificazione. I modelli di regressione prevedono una variabile continua, come la quantità di pioggia o l'intensità della luce solare. Possono anche prevedere le probabilità, come la probabilità che un'immagine contenga un gatto. Un modello di regressione che prevede la probabilità può essere utilizzato come parte di un classificatore imponendo una regola di decisione - ad esempio, se la probabilità è pari o superiore al 50%, decidere che si tratta di un gatto.
La regressione logistica prevede le probabilità ed è quindi un algoritmo di regressione. Tuttavia, è comunemente descritto come un metodo di classificazione nella letteratura sull'apprendimento automatico, perché può essere (ed è spesso) utilizzato per creare classificatori. Esistono anche algoritmi di classificazione "veri", come SVM, che prevedono solo un risultato e non forniscono una probabilità. Non discuteremo questo tipo di algoritmo qui.
Regressione lineare e logistica su problemi di classificazione
Come spiega Andrew Ng , con la regressione lineare si inserisce un polinomio tra i dati - diciamo, come nell'esempio che segue stiamo adattando una linea retta attraverso il set di campioni {dimensione del tumore, tipo di tumore} :
Sopra, i tumori maligni ottengono e quelli non maligni ottengono e la linea verde è la nostra ipotesi . Per fare previsioni possiamo dire che per ogni data dimensione del tumore , se diventa maggiore di , prevediamo un tumore maligno, altrimenti prevediamo benigno.10h(x)xh(x)0.5
In questo modo possiamo prevedere correttamente ogni singolo campione di set di allenamento, ma ora cambiamo un po 'l'attività.
Intuitivamente è chiaro che tutti i tumori con una certa soglia maggiore sono maligni. Quindi aggiungiamo un altro campione con un'enorme dimensione del tumore ed eseguiamo di nuovo la regressione lineare:
Ora il nostro non funziona più. Per continuare a fare previsioni corrette, dobbiamo cambiarlo in o qualcosa del genere, ma non in questo modo dovrebbe funzionare l'algoritmo.h(x)>0.5→malignanth(x)>0.2
Non possiamo cambiare l'ipotesi ogni volta che arriva un nuovo campione. Invece, dovremmo apprenderlo dai dati del set di addestramento e quindi (usando l'ipotesi che abbiamo appreso) fare previsioni corrette per i dati che non abbiamo mai visto prima.
Spero che questo spieghi perché la regressione lineare non è la soluzione migliore per i problemi di classificazione! Inoltre, potresti voler guardare VI. Regressione logistica. Video di classificazione su ml-class.org che spiega l'idea in modo più dettagliato.
MODIFICARE
chanceislogic ha chiesto cosa farebbe un buon classificatore. In questo esempio particolare probabilmente useresti la regressione logistica che potrebbe apprendere un'ipotesi come questa (sto solo inventando):
Si noti che sia la regressione lineare e regressione logistica dare una linea retta (o un polinomio di ordine superiore), ma quelle linee hanno un significato diverso:
- h(x) per interpolazioni di regressione lineare, o estrapolazioni, l'output e predice il valore per che non abbiamo visto. È semplicemente come collegare una nuova e ottenere un numero non elaborato, ed è più adatto per attività come la previsione, ad esempio il prezzo dell'auto in base a {dimensioni dell'auto, età dell'auto} ecc.xx
- h(x) per la regressione logistica indica la probabilità che appartenga alla classe "positiva". Questo è il motivo per cui è chiamato un algoritmo di regressione: stima una quantità continua, la probabilità. Tuttavia, se si imposta una soglia sulla probabilità, come , si ottiene un classificatore e in molti casi questo è ciò che viene fatto con l'output di un modello di regressione logistica. Ciò equivale a mettere una linea sulla trama: tutti i punti che si trovano sopra la linea del classificatore appartengono a una classe mentre i punti seguenti appartengono all'altra classe.x h ( x ) > 0,5xh(x)>0.5
Quindi, la linea di fondo è che nello scenario di classificazione utilizziamo un ragionamento completamente diverso e un algoritmo completamente diverso rispetto allo scenario di regressione.