Sentimentanalysen mittels Künstlicher Intelligenz und Statistik

Die Sentimentanalysis, um die es heute geht, wird im Marketing oder in anderen Disziplinen eingesetzt, die darauf angewiesen sind, auf Stimmungen Rücksicht zu nehmen.

Animiert von einem Artikel, der die Stimmungen des neuen US-Präsidenten analysiert, habe ich mir die Verfahren näher angesehen.

Sentiment Analysis

Der Artikel „Poor Donald – his tweets keep getting more negative“ (Referenz am Artikelende) stammt aus dem Blog der „R-bloggers“ und beschreibt ein konkretes Verfahren, um eine Sentiment-Analyse mit Hilfe von Twitter Daten durchzuführen.

Bekanntlich korrespondiert der US Präsident gerne über den Kurznachrichtendienst Twitter. Es ist grundsätzlich möglich, seine Tweets auszulesen, um diese kleinen Textnachrichten weiterzuverarbeiten. Z.B kann man Textanalyseverfahren einsetzen, um diese Tweets näher zu analysieren. Eine solche Textanalyse klassifiziert die einzelnen Textabschnitte und Worte anhand der Stimmung, die darin zum Ausdruck kommt.

Vermutlich ist Ihnen selbst schon aufgefallen, dass manche Texte melancholisch wirken, und andere fröhlich. Eine solche Textwirkung läßt sich messen, indem man z.B die Emotionalität der einzelnen Worte mißt, und dies läßt Rückschlüsse auf die Stimmung des Autors zu.

Der Artikel leitet aus einer solchen Analyse die Stimmungsschwankungen her, denen der US Präsident unterliegt. Er zeigt z.B (siehe die Grafik weiter unten in diesem Artikel), daß dieses Staatsoberhaupt zum Zeitpunkt der Wahl sehr gut gelaunt war, oder auch zum Zeitpunkt der Inauguration. In letzter Zeit scheint seine Stimmung aber schlechter zu werden.

Auch gibt es wohl Stimmungsunterschiede zwischen den Tweets, die er am Computer schreibt, und den Texten, die er über sein Mobilphone absetzt. Die mobilen Tweets sind offenbar weitaus aufgeregter im Ton.

Der erwähnte Artikel stammt von Statistikexperten, und ist daher sehr technisch. Neben den gemessenen Stimmungen erfährt man dort auch, wie man grundsätzlich eine solche einfache Analyse mit Hilfe des Statistikpaketes „R“ durchführt.

  • Zunächst importiert und normalisiert man die Daten.
  • Anschliessend berechnet und klassifiziert man die Stimmungen der Worte, indem man sich ein Wörterbuch zur Hand nimmt, dessen Worte klassifiziert sind (hier wird ein Wörterbuch mit dem Namen AFINN verwendet – siehe hierzu „AFINN: A new word list for sentiment analysis on Twitter“ weiter unten).
  • Die so bewerteten Daten werden grafisch dargestellt und mit Hilfe anderer Verfahren weiter analysiert

Twitter und Finanzmärkte

Twitter selbst hat mehrere Artikel zu den Verfahren veröffentlicht, wie z.B „Twitter Data and the Financial Markets: Sentiment Analysis, Volatility & Other Indicators“.

Die dort beschriebene Anwendung zeigt zunächst, daß es unterschiedliche Verfahren gibt, um die Stimmungen eines Textes zu ermitteln. Oben war es Statistik. Man kann allerdings auch künstliche Intelligenz einsetzen, oder linguistische Verfahren. Der Artikel behandelt dann die Anwendung der Sentiment Analyse um Vorhersagen zu den Kursen an den Börsen zu treffen:

„Sentiment analysis can use natural language processing, artificial intelligence, text analysis and computational linguistics to identify the attitude of a writer with respect to a topic. It’s an important cornerstone of behavioral finance, where theorists believe that markets are irrational and that asset prices are driven by human emotion (e.g., fear, greed, hope and overconfidence, among others).“

Echtzeit Analysen

Microsoft beschreibt in „Twitter-Stimmungsanalyse in Echtzeit mit Stream Analytics“ eine Anwendung, die auf Echtzeitverarbeitung angewiesen ist. Zum Beispiel wäre es prinzipiell möglich eine gezielte Campagne mit Lesern durchzuführen, indem man in Echtzeit misst, was diese Leser interessiert, um darauf dann mit Inhalten zu reagieren:

„Ein Unternehmen, das über eine Nachrichtenwebsite verfügt, ist daran interessiert, sich durch Seiteninhalte mit direkter Relevanz für die Leser gegenüber der Konkurrenz einen Vorteil zu verschaffen. Das Unternehmen verwendet eine Analyse sozialer Medien für Themen mit Relevanz für Leser und führt dazu Standpunktanalysen von Twitter-Daten in Echtzeit durch. Insbesondere benötigt das Unternehmen Echtzeitanalysen des Tweet-Umfangs und der Stimmung im Hinblick auf wichtige Themen, um zu erkennen, welche Themen sich auf Twitter in Echtzeit zu Trendthemen entwickeln.“

Deep Learning

Stanford zeigt in dem Paper „Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank„, wie man künstliche Intelligenz einsetzen kann, um die Echtzeitanalyse noch genauer zu machen. Darüberhinaus kann man sich dort eine live Demo ansehen.

Der eingangs erwähnte Artikel verwendet die Stimmungen der einzelnen Worte, um die Emotionen zu berechnen. Dabei geht der Satzzusammenhang vollkommen unter. Stanford benutzt nun Deep Learning Algorithmen, um genau diesen Sinnzusammenhang in die Analyse mit einbeziehen zu können.

Die Analyse kann hierbei beliebig kompliziert und genau werden, wie das folgende Zitat zeigt, und kann sogar einen komplexen Satzaufbau entdecken:

„It pushes the state of the art in single sentence positive/negative classification from 80% up to 85.4%. The accuracy of predicting fine-grained sentiment labels for all phrases reaches 80.7%, an improvement of 9.7% over bag of features baselines. Lastly, it is the only model that can accurately capture the effect of contrastive conjunctions as well as negation and its scope at various tree levels for both positive and negative phrases.“

Weiterführende Informationen

Das Original dieses Artikels ist auf Der Produktmanager erschienen (©Andreas Rudolph). Folgeartikel zum Thema gibt es über die (→Mailingliste), oder indem Sie →mir auf Twitter folgen.

Das Artikelfoto stammt von der „Messe München“.

In der Online Version des Artikels finden Sie hier die versprochenen weiterführenden Links:

Comments are closed.