Ich habe mehr moderne Beiträge über Stimmungseinstufung (Analyse) wie this gelesen.Ist Doc2Vec für die Stimmungsanalyse geeignet?
Unter dem IMDB-Datensatz als Beispiel finde ich, dass ich eine ähnliche Genauigkeit Prozentsatz mit Doc2Vec (88%) erhalte, jedoch ein weit besseres Ergebnis ein einfaches TFIDF vectoriser mit Tri-Gramm zur Merkmalsextraktion (91%) mit . Ich denke, das ist ähnlich zu Tabelle 2 in Mikolov's 2015 paper.
Ich dachte, dass durch die Verwendung eines größeren Datensatzes dies ändern würde. Also habe ich mein Experiment mit einer Aufschlüsselung von 1Mill Training und 1 Mill Test von here wiederholt. Unglücklicherweise stieg in diesem Fall meine tfidf-Vektorisierer-Merkmalsextraktionsmethode auf 93%, doc2vec fiel jedoch auf 85%.
Ich fragte mich, ob das zu erwarten ist und dass andere tfidf überlegen zu Doc2vec sogar für ein großes Korpus sind?
Meine Daten-Reinigung ist einfach: mit 400 und 1200 Features für das Doc2Vec Modell
def clean_review(review):
temp = BeautifulSoup(review, "lxml").get_text()
punctuation = """.,?!:;(){}[]"""
for char in punctuation
temp = temp.replace(char, ' ' + char + ' ')
words = " ".join(temp.lower().split()) + "\n"
return words
Und ich habe versucht:
model = Doc2Vec(min_count=2, window=10, size=model_feat_size, sample=1e-4, negative=5, workers=cores)
Während mein TFIDF vectoriser hat 40.000 max Features:
vectorizer = TfidfVectorizer(max_features = 40000, ngram_range = (1, 3), sublinear_tf = True)
Für die Klassifizierung experimentierte ich mit ein paar linearen Met Hods, fand jedoch einfache logistische Regression OK ...
Das ist sehr hilfreich - ich werde es versuchen! Denken Sie jedoch, dass das Konzept, Kontext zu verwenden, um ähnliche Wörter zu folgern, natürlich Synonyme und Antonyme mischt. Zum Beispiel: "Das ist Film ist gut", "Dieser Film ist schlecht" -> gut und schlecht wird einen hohen Kosinus haben. Dies bedeutet, dass im guten Vektorraum die guten und schlechten Gefühle sehr nahe beieinander liegen und schwerer zu trennen/zu klassifizieren sind. –
Es stimmt, dass Verteilungsmodelle Antonyme häufig als ähnlich betrachten. Und oft sind solche Wörter sehr ähnlich - außer in dem einen Vordergrund, in dem sie sich unterscheiden. Ob dies ein Problem für die Stimmungseinteilung darstellt oder ob noch genügend Kontrast vorhanden ist, müsste experimentell gelöst werden. Der Akt des Trainings induziert immer noch verschiedene Vektoren für Wort-Vecs/Doc-Vecs, die in der Nähe "gut" oder "schlecht" vorhersagen müssen. – gojomo