2017-08-25 5 views
0

Ich verwende und TextBlob, um die Stimmung der Schlagzeilen mit gemischten Ergebnissen zu analysieren: viele Schlagzeilen, die ich als leicht negativ empfinden würde, werden als neutral gewertet. Hier sind ein paar Beispiele:Wie könnte ich die Genauigkeit der Stimmungsanalyse von Schlagzeilen verbessern?

Who wants to live in an artificially intelligent future? 
# Vader: {'compound': 0.4588, 'pos': 0.273, 'neu': 0.727, 'neg': 0.0} 
# TextBlob: Sentiment(polarity=0.2840909090909091, subjectivity=0.40625) 

The internet and social media provide huge opportunities for the coming generation, but there’s a dark side from which it must be protected. 
# Vader: {'compound': 0.743, 'pos': 0.278, 'neu': 0.722, 'neg': 0.0} 
# TextBlob: Sentiment(polarity=0.09444444444444448, subjectivity=0.45555555555555555) 

For three months I’ve lived without tech and now realise we need to question its ever-encroaching invasion – before we end up in bed with a sex robot. 
# Vader {'compound': 0.0, 'pos': 0.0, 'neu': 1.0, 'neg': 0.0} 
# TextBlob Sentiment(polarity=0.0, subjectivity=0.0) 

Ich denke, der erste Satz so oder so gelesen werden kann, die letzten beiden Abschnitte haben definitiv negative Elemente zu ihnen: „Es gibt eine dunkele Seite“ und „seine ständig vordringenden Invasion“, Ich bin überrascht, dass Vader sowohl eine negative Wunde von 0 als auch TextBlob gibt, um eine Polarität von 0 oder höher zu erhalten.

Sind diese Art von Texten für Sentimentanalysealgorithmen grundlegend schwierig, oder gibt es einen anderen Ansatz, den ich berücksichtigen könnte?

Die Attraktivität der Bibliotheken, die ich erwähnt habe, ist, dass ich keinen eigenen Klassifikationsdatensatz erstellen muss, aber ich würde es vielleicht berücksichtigen, wenn ich wahrscheinlich bessere Ergebnisse erzielen würde.

Antwort

1

Der grundlegende Unterschied besteht darin, dass die meisten aktuellen Tools an einem Stimmungsindex einzelner Wörter arbeiten. Zum Beispiel wird das Finden von "Gefällt mir" oder "Ausgezeichnet" überall im Text eine positive Bewertung signalisieren. Ihre Beispiele hängen mehr von einem "Verständnis" der Phrasen ab und erfordern ein minimales Parsen. Dies ist ein detaillierterer Prozess, der ein tieferes Verständnis der Sprachsemantik erfordert.

Ein Weg, den Sie könnte angreifen das ist, um das Lexikon mit indizierten Phrasen (als Wörter eingefügt) sowie Wörter zu füllen. Dann verarbeiten Sie die Eingabe vor, um diese Phrasen zu jeder beliebigen Indikation zu konvertieren, die Sie im Lexikon verwendet haben. Zum Beispiel, verbinden Sie diese Sätze mit Unterstrichen - und "dark_side" ist in Ihrem Lexikon mit einem negativen Index.

Ich hoffe, dies gibt Ihnen einen Schub in eine nützliche Richtung.

+0

Vielen Dank für Ihre Antwort, schätzen meine Frage ist sehr vage! Ich werde darüber nachdenken, Begriffe in das Lexikon von Vader oder TextBlob einzufügen ... Für zukünftige Googler habe ich [diese Seite] (http://senttiment.christopherpotts.net/lexicon/textscores_results/) v hilfreich gefunden, um zu beurteilen, wie verschiedene Lexika wird einen Text behandeln. – user2950747

Verwandte Themen