Das kleine Beispiel aus dem Abschnitt zuvor lässt bereits erahnen, dass zur realistischen Sentimentanalyse durchaus große Datenmengen benötigt werden (wie bei eigentlich allen Anwendungen der Künstlichen Intelligenz). Daher diskutieren wir nun ein Beispiel mit einer durchaus ausreichend großen Datengrundlage:
Anhand der Kritiken zur Bewertung von Unterkünften soll entschieden werden, ob es sich um eine positive oder negative Bewertung handelt.
Um genauer zu sein: Wir nutzen Daten, die auf der Plattform TripAdvisor zur Bewertung von Hotels eingegeben wurden. Neben den Erfahrungsberichten wurden die Unterkünfte jeweils mit ein bis fünf Sternen bewertet (je mehr Sterne, desto besser die Bewertung).
Derartige Daten stellt uns das HotelReviews-Datenpaket zur Verfügung (mit Bewertungen in englischer Sprache). Dieses beinhaltet Trainingsdaten bestehend aus 5000 Datensätzen sowie weiteren 1000 Datensätzen zum Testen. Die genaue Referenz zum Datenpaket findest du hier:
Unter Verwendung der Trainingsdaten erhalten wir ein Bag-of-Words bestehend aus insgesamt 26244 Wörtern bzw. Token. Um davon einen Eindruck zu gewinnen, zeigt die folgende Tabelle die Wörter, die in den 5000 Bewertungen des Trainingsumfangs insgesamt am häufigsten genannt werden:
Wort | Häufigkeit |
hotel | 12056 |
not | 9708 |
room | 9586 |
great | 4295 |
good | 4165 |
did | 4104 |
staff | 3858 |
stay | 3820 |
Bevor wir im nachfolgenden Abschnitt das zugehörige neuronale Netz zur Sentimentanalyse besprechen, wollen wir zunächst einige Erfahrungen mit den Daten des HotelReviews-Datenpakets sammeln.