Pregunta Prepare los datos para la clasificación de texto usando Scikit Learn SVM


Intento aplicar SVM de Scikit para clasificar los tweets que recopilé. Entonces, habrá dos categorías, nómbrelas A y B. Por ahora, tengo todos los tweets categorizados en dos archivos de texto, 'A.txt' y 'B.txt'. Sin embargo, no estoy seguro de qué tipo de entradas de datos solicita Scikit Learn SVM. Tengo un diccionario con etiquetas (A y B) como sus claves y un diccionario de características (unigrams) y sus frecuencias como valores. Lo siento, soy muy nuevo en el aprendizaje automático y no estoy seguro de qué hacer para que SVM funcione. Y descubrí que SVM usa numpy.ndarray como tipo de entrada de datos. ¿Necesito crear uno basado en mis propios datos? ¿Debería ser algo como esto?

Labels    features    frequency
  A        'book'        54
  B       'movies'       32

Cualquier ayuda es apreciada.


11
2017-12-18 22:46


origen


Respuestas:


Eche un vistazo a la documentación de extracción de la característica de texto.

También eche un vistazo a la ejemplo de clasificación de texto.

También hay un tutorial aquí:

http://scikit-learn.org/stable/tutorial/text_analytics/working_with_text_data.html

En particular, no se centre demasiado en los modelos SVM (en particular, sklearn.svm.SVC eso es más interesante para los modelos kernel y, por lo tanto, no para la clasificación de texto): un simple Perceptron, LogisticRegression o los modelos Bayes ingenuos de Bayoulli podrían funcionar tan bien y ser mucho más rápidos de entrenar.


21
2017-12-18 22:59