2017-04-02 5 views
-1

Ich versuche eine Textklassifizierung Aufgabe, wo ich Trainingsdaten von rund 500 Restaurant Bewertungen haben, die in 12 Kategorien gekennzeichnet sind. Ich verbrachte mehr Zeit damit, TF.IDF und Kosinusähnlichkeit für die Klassifizierung von Testdaten zu implementieren, nur um einige sehr schlechte Ergebnisse zu erhalten (0.4 F-measure). Mit der Zeit nicht auf meiner Seite, muss ich etwas wesentlich effektiveres implementieren, das keine steile Lernkurve hat. Ich überlege, die TF.IDF-Werte in Verbindung mit Naive Bayes zu verwenden. Klingt das sinnvoll? Ich weiß, wenn ich meine Daten im richtigen Format bekomme, kann ich das mit Scikit lernen. Gibt es noch etwas, das Sie empfehlen, denke ich?Textklassifizierung. TFIDF und Naive Bayes?

Vielen Dank.

+0

Mit Vektoren tf.idf Werte unter Verwendung von die Trainingsdaten, wie würde ich einen Klassifikator trainieren? – user3058703

Antwort

1

Sie sollten versuchen, fasttext zu verwenden: https://pypi.python.org/pypi/fasttext. Es kann verwendet werden, um Text wie folgt zu klassifizieren:

(vergessen Sie nicht, vortrainierte Modell hier https://s3-us-west-1.amazonaws.com/fasttext-vectors/wiki.en.zip durch Ändern der Sprache zum Download, wenn es nicht Englisch ist)

import fasttext 

model = fasttext.load_model('wiki.en.bin') # the name of the pretrained model 

classifier = fasttext.supervised('train.txt', 'model', label_prefix='__label__') 

result = classifier.test('test.txt') 
print ('[email protected]:', result.precision) 
print ('[email protected]:', result.recall) 
print ('Number of examples:', result.nexamples) 

Jede Zeile in der Trainings- und Testsätze sollte wie folgt sein:

__label__classname blah Ihr Restaurant Bewertung bla bla für jede Kategorie

+0

Danke @Vinzee - Ich gebe das eine Chance. Gibt es ein kleineres Modell, das ich verwenden kann? Universitätscomputer haben nicht genug Kapazität ... – user3058703

+0

'result.precision' und' result.recall' geben NaN zurück und 'result.nexamples' gibt 0 zurück. In der Facebook-Gruppe für FastText scheint dies ein häufiger Fehler zu sein . Irgendeine Idee, warum es passiert? – user3058703

+0

Bitte kontaktieren Sie [email protected], wenn Sie wissen, was vor sich geht – user3058703

Verwandte Themen