Domanda

Sto cercando di classificare un esempio, che contiene le caratteristiche discrete e continue. Inoltre, l'esempio rappresenta i dati sparsi, quindi, anche se il sistema può essere stato addestrato su 100 funzioni, l'esempio può avere solo 12.

Quale sarebbe il miglior algoritmo di classificazione da utilizzare per raggiungere questo obiettivo? Ho cercato a Bayes, Maxent, Albero decisionale, e KNN, ma non sono sicuro che qualsiasi misura la fattura esattamente. Il punto critico più grande che ho trovato è che la maggior parte delle implementazioni non supportano set di dati sparsi e caratteristiche sia discreti e continui. Qualcuno può raccomandare un algoritmo e di attuazione (preferibilmente in Python) che si adatta a questi criteri?

Le biblioteche che ho guardato finora includono:

  1. Arancione (Per lo più accademica. Implementazioni non particolarmente efficiente o pratico.)
  2. NLTK (anche accademico, anche se ha una buona implementazione Maxent, ma non gestisce funzioni continue. )
  3. Weka (ancora la ricerca di questo. Sembra grado di supportare un'ampia gamma di algoritmi, ma ha la documentazione scarsa, quindi non è chiaro ciò che sostiene ogni implementazione.)
È stato utile?

Soluzione

Weka (Java) soddisfa tutti voi requisiti:

Dai un'occhiata a questo Pentaho wiki per un elenco di link alle documentazioni, guide, tutorial video, ecc ...

Altri suggerimenti

Support Vector Machines ? libsvm può essere usato da Python, ed è abbastanza veloce.

Maniglie ingressi vettore sparse, e non mente se alcune delle caratteristiche sono continui, dove altri sono solo -1 / + 1. (Se hai un n-way funzione discreta, la cosa normale da fare è espanderlo in caratteristiche n binari.)

scikit-learn , supportate da una modulo di apprendimento automatico Python stocastico Gradient Descent e support vector machines per i dati sparsi.

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