Ein vor allem in der Social Media Forschung vielerprobtes Text Mining Verfahren ist die sogenannte Sentiment-Analyse. Dabei sollen Texte möglichst automatisiert auf die in ihnen ausgedrückten Stimmungen, Haltungen oder auch Emotionen ausgewertet werden. Unternehmen nutzen dieses Verfahren gerne (oder lassen es sich gerne von anderen Unternehmen verkaufen), um z.B. zu erfahren, ob sich die Twittersphäre eher positiv oder eher negativ über ihre Produkte äußern.

Ein relativ simpler Zugang ist der lexikonbasierte Ansatz. Es werden vorab Listen mit Wörtern erstellt, die typischerweise positive oder negative Haltungen ausdrücken. Und je nach Stärkegrad wird den Wörtern ein sog. Sentiment Score zwischen +1 und -1 zugewiesen. Diese Listen lassen sich leicht mit Textkorpora matchen, für die dann auch ein durchschnittlicher Sentiment Score errechnet werden kann.

In seiner Einfachheit ist das Verfahren natürlich fehleranfällig. Schon mit Negationen hat man seine liebe Mühe, erst recht mit impliziten Bewertungen oder Ironie. Auf einzelne, kurze Texte wie etwa Tweets bezogen sind Irrtümer eigentlich vorprogrammiert. Das typische Nutzungsszenario richtet sich aber genau aus diesem Grund auch eher auf große Textmengen und Durchschnittswerte. Und hier funktioniert es eben doch ganz gut.

Fußballeinzelkritiken als Testmaterial

In meinen Korpora zur Fußballlinguistik schlummert im nicht-öffentlichen Bereich auch ein Korpus mit 29570 Einzelkritiken (1,48 Mio. Tokens) von sportal.de (textidentisch zu den berühmten Einzelkritiken auf spox.com). Das sind kurze Texte, in denen die Leistungen aller Spieler eines Bundesligaspieltags bewertet werden, und zusätzlich wird noch eine Schulnote vergeben. Die Noten lassen sich als Metadaten auffassen, welche sich mit den im Text sprachlich ausgedrückten Bewertungen korrelieren lassen. Ideales Material also für ein paar Testläufe in Sachen Sentiment-Analyse.

Gemacht habe ich das mit SentiWS, ein an der Universität Leipzig entwickeltes und frei verfügbares deutschsprachiges Sentiment-Lexikon. Erstellt wurde es, wie man hier nachlesen kann, einerseits auf der Grundlage von klassischen Wörterbüchern, andererseits basierend auf einem Korpus von Produkt-Ratings (Amazon oder sowas in der Art), die mit der Kombination von Text und vergebenen Sternen ganz ähnlich strukturiert sind wie meine Einzelkritiken. In der Anwendung von SentiWS auf eben diese Einzelkritiken kann ich also schauen, ob man in einer thematisch anderen Domäne das wieder aus dem Lexikon rausholen kann, was vorher hineingelegt wurde.

Ich habe also für jeden Text den Sentiment Score berechnet (Summe der Scores / Anzahl der eingegangenen Wörter) und die Ergebnisse gruppiert nach Noten aggregiert. Und siehe da, das Ergebnis ist gut: Eine Sortierung nach durchschnittlichen Sentiment Scores entspricht vollständig der Sortierung nach Noten:

NoteSentiment Score
10.07213812
1.50.07052414
20.06700567
2.50.05505059
30.02731389
3.5-0.0164272
4-0.0542471
4.5-0.0917573
5-0.1115546
5.5-0.1627656
6-0.202931

Die Streuung ist zwar riesig (wie man hier sehen kann), aber mit den Mittelwerten haut es wirklich gut hin.

Ein ähnlich gutes Ergebnis bekomme ich, wenn ich zuerst Subkorpora nach Noten bilde und dann gleiche für diese einen Sentiment Score berechne:

NoteSentiment Score
10.07724109
1.50.06087368
20.06061081
2.50.04930563
30.02152049
3.5-0.0158618
4-0.0553988
4.5-0.0883849
5-0.1123418
5.5-0.1557033
6-0.1725323

Mit der nötigen Distanz zum Einzeltext scheint SentiWS also auch für Fußballeinzelkritiken eine geeignete Ressource zu sein. Oder anders herum: Auch die Autor*innen von Einzelkritiken drücken sich so aus, wie es von SentiWS sozusagen vorhergesagt ist.

Sentiments auf Wortebene

Aber zoomen wir doch noch einmal näher an die Texte heran. Ich habe mal für die ersten 250 Texte die Ergebnisse ausgeben lassen, also den Sentiment Score und – farblich hervorgehoben – die in die Berechnung eingegangen Wörter. Hier sind die Ergebnisse (über diesen Link als eigene Seite aufrufbar):

Die Probleme des Ansatzes werden hier schnell offenkundig: Manchmal wird nur ein einziges Wort berücksichtigt und fällt deshalb wohl zu stark ins Gewicht. In anderen Fällen fallen Negationen unter den Tisch. Vor allem aber sieht man, dass man eigentlich ein domänenspezifisches Lexikon bräuchte, um mit einigen lexikalisch-semantischen Besonderheiten umgehen zu können. Weder aggressiv noch Angriff können im Fußball als negativ gelten. Andererseits werden klar wertende Wörter wie Matchwinner gar nicht berücksichtigt.

Interessant ist schließlich auch, welche positiven und negativen Sentiment-Wörter im gesamten Korpus besonders häufig vorkommen und wegen ihres Scores besonders ins Gewicht fallen. Ein durch die Brille von SentiWS betrachteter Katalog von Dingen, die in Fußballspielen aus journalistischer Sicht besonders positiv bzw. negativ sind:

Lexemaggregierter Sentiment-ScoreAnzahl
gut4451.76811980
sicher640.20951715
groß637.95381727
besonders372.5181691
wichtig321.4302841
überzeugen250.6248738
gelungen233233
toll211.7588418
Glück207.194845
perfekt185.3946254
Ruhe165.561330
glänzen123.6508364
ruhig117.502308
helfen113.765305
schnell110.8212948
klug89.3596253
überzeugend87.5355195
fein79.5312168
erfolgreich63.597290
strahlen62.5508299
Erfolg62.028180
kreativ58.65100
feiern53.352108
fleißig49.994140
aktiv49.0118538
Schwung47.362199
absolut46.4256192
hervorragend45.949878
wunderbar41.957258
nah41.4861183
gefallen37.381145
souverän36.7587517
klasse34.74100
spielerisch33.2166
großartig32.24270
fair30.841494
mögen29.32585
agil28.9932148
herrlich27.479757
sauber27.358177
bemerkenswert27.0960
ansprechend26.717879
vorbereiten26.5216256
beeindruckend26.241677
wunderschön26.077637
enorm25.6828286
exzellent24.768259
sehenswert23.7697251
scharf21.805697
Vertrauen21.07260
praktisch20.6226201
heben19.97190
zuverlässig19.699296
optimal19.45890
traumhaft19.26134
Engagement18.550286
belohnen18.4851207
glänzend18.321688
glücklich18.285159
verdienen18.0987183
vorbildlich17.852856
Mut17.669729
prima17.29830
tadellos16.37753
Talent16.089648
engagiert15.7289181
stabil15.6464154
effektiv15.536160
unglaublich15.531642
mutig14.42742
heiß14.22840
stark13.3723343
zufrieden13.36234
clever13.009458
fit12.90135
wertvoll12.85236
spannend12.180517
brillant11.949639
lieb11.6493103
verdient11.558432
Freude11.053417
riesig10.929624
Hoffnung10.597652
schenken10.40451
freundlich10.237417
eindrucksvoll10.203434
freuen9.89145
reichlich9.765927
genial9.486444
ordentlich9.08851245
locker9.047838
überdurchschnittlich9100
vernünftig8.5925
gewinnen8.5162129
mächtig8.424937
hoffen8.344836
motivieren8.317637
wachsen8.296123
Lob7.970611
robust7.840881
Lexemaggregierter Sentiment-ScoreAnzahl
schwach-1548.44921682
gefährlich-1019.19661601
Fehler-893.28961323
Gefahr-854854
schlecht-605.6916786
fehlen-595.5151110
verlieren-565.1341438
Problem-456.071180
unnötig-340.668360
Schuld-318.6694329
unglücklich-237.79790
Ende-230.93281106
Pech-215.1058446
Angriff-213.4841007
fallen-209.4869973
knapp-204.21081003
falsch-194.259255
Schwäche-135.945270
Gegner-126.936369
unterlaufen-120.6738351
machtlos-119.6307357
unsicher-116.5848186
negativ-115.8066234
verletzt-107.1612206
klein-99.0975365
Verletzung-94.0984187
ungenau-93.933189
Unsicherheit-85.92240
Niederlage-83.973230
stören-76.59230
zwingen-76.1175153
verletzen-73.746204
Risiko-72.135105
glücklos-70.1781223
bestrafen-69.7595145
Vorwurf-60.6305119
grob-59.0655169
leider-57.9227121
aggressiv-56.05125
kämpfen-52.6984152
katastrophal-52.1202106
ungeschickt-48.69680
brechen-43.950555
gering-41.712363
schlicht-38.62662
Kampf-37.066869
undankbar-35.9784114
Not-31.4928144
unfair-30.894535
bitter-29.527887
übersehen-29.229657
vorwerfen-27.333684
ausfallen-26.107575
böse-25.934662
hart-24.7661167
auffallen-24.717873
trennen-24.661749
Mangel-23.114763
schließen-22.366106
vermeiden-21.586541
behindern-20.919627
haarsträubend-20.402844
vorzeitig-20.079658
unfreiwillig-19.953859
Unruhe-19.29696
Kritik-19.108836
unterirdisch-18.388539
mangelhaft-16.97550
stoßen-16.389846
Unrecht-15.766631
dumm-15.342626
Missverständnis-14.743631
aussetzen-14.675943
fahrlässig-14.645442
schlagen-13.9842457
Defizit-13.8840
gnadenlos-13.875923
schuldig-13.545617
Ausfall-13.416862
leiden-13.246883
Rückstand-13.167209
ersticken-13.16440
unangenehm-13.134828
überflüssig-12.369624
provozieren-12.128436
riskieren-11.980836
täuschen-11.764819
schlimm-10.91264
ungünstig-10.73814
Verwirrung-10.301331
sorgen-10.2482135
drängen-10.196429
bedenklich-10.011313
ärgerlich-9.955232
nachlässig-9.92130
Verdacht-9.688812
fehlerhaft-9.668727
fragwürdig-9.230219
umständlich-9.066226
kurz-8.76481826

Literatur

Meier, Simon (2019): Einzelkritiken in der Fußballberichterstattung. Evaluativer Sprachgebrauch aus korpuspragmatischer Sicht. In: Muttersprache 129, S. 1–23.