Domanda

dire Let ho bisogno di indirizzi alla classificazione in scikit-learn, quindi se voglio che il mio classificatore sia in grado di indirizzi classificare per il nome della via, e post / Cap, devo fare un classificatore OneVsRest, o li separano in due diversi classificatori (per lo stesso insieme di addestramento)?

Ho provato entrambi, e sembra avere più classificatori potrebbe essere una scelta migliore, come ci si sente più veloce per addestrare più classificatori più piccoli. È così che dovrebbe essere fatto?

È stato utile?

Soluzione

Entrambi i metodi sono validi ed entrambi sono comunemente usati. A volte, un classificatore che sostiene di essere multietichetta può solo essere separando le etichette in multipli OneVsRest classificatori sotto il cofano e unendo convenientemente i risultati insieme alla fine.

Tuttavia, ci sono casi in cui i metodi sono fondamentalmente diversi. Per esempio, nella formazione di una rete neurale con bersagli multipli (etichette), è possibile impostare la struttura della rete in modo tale che non v'è struttura condivisa. I nodi condivisi finiranno caratteristiche che sono utili per tutti i target, che potrebbe essere molto utile imparare.

Per esempio, se sei classi (etichette) sono "cat-pet", "cat-grande", e "cane", si può prendere un algoritmo che prima impara a distinguere tra un gatto e un cane, e poi in una successiva impara passo per separare i gatti che sono animali da gatti che sono grandi (come un leone!). Questo si chiama la gerarchia, e se il vostro classificatore può sfruttare la gerarchia si può guadagnare una migliore precisione. Se i corsi sono completamente indipendenti tuttavia, potrebbe non fa alcuna differenza.

Vi suggerisco di iniziare con il metodo che è più facile (cioè OneVsRest), e vedere se la prestazione è adatto alle vostre esigenze, per poi passare a metodi più complicati (multietichetta, metodi gerarchici, ecc) solo una volta è necessario migliorare le prestazioni.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
scroll top