Bilingual Sentiment Embeddings: Joint Projection of Sentiment Across Languages
Von: Fabian Swoboda, DATEV AI LAB
Da wir uns aktuell mit NLP, insbesondere Sentiment-Analysen beschäftigen, sind wir bei der Recherche auf die Methode der „Bilingual Sentiment Embeddings“ gestoßen. Um die BLSE-Methode erklären zu können, müssen zunächst einige Begriffe und Herausforderungen abgegrenzt werden.
Was sind überhaupt Word Embeddings?
Im Falle von Word Embeddings werden Wörter bereits vortrainiert als Vektoren reeller Zahlen abgebildet. Konzeptionell handelt es sich um eine mathematische Einbettung von einem Raum mit 300 Dimensionen pro Wort in einen kontinuierlichen Vektorraum mit einer viel niedrigeren Dimension. Dadurch sind sogar Kalkulationen mit Wörtern möglich (z.B. Königin — Royal = Frau). Klingt sehr komplex, vereinfacht kann man sich das etwa so vorstellen:
Unterschied zwischen low-resource vs. rich-resource Sprachen
Der Großteil der NLP-Fortschritte wird durch weitverbreitete Sprachen wie Englisch oder Chinesisch vermeldet, da in diesen Sprachen Textkorpora mit Hunderten von Millionen Wörtern vorliegen. Diese Sprachen werden als ressourcenreiche (resource-rich) Sprachen bezeichnet. Allerdings machen diese nur etwa 20 aus etwa 7.000 Sprachen weltweit aus. Daher werden dringend Tools benötigt, um diese Ressourcenbarriere zu überwinden, sodass NLP umfassendere Vorteile ermöglichen kann. Bei der untersuchten Forschungsarbeit wurde mit den low-resource Sprachen katalanisch und baskisch gearbeitet.
Was bedeutet monolingual, bilingual und cross-lingual?
Bilingual bedeutet, zwei Sprachen zu sprechen oder zu verstehen, während monolingual voraussetzt, dass nur eine einzige Sprache gesprochen werden kann.
Bei cross-lingual Analysen, also sprachübergreifenden Ansätzen, wird in unserem Fall versucht, durch die Analyse der “ressourcenreicheren” Sprache, Schlüsse über die “ressourcenärmere” Sprache zu ziehen. In Zuge der Forschungsarbeit wurde versucht, Sentiment-Informationen vom Englischen ins Baskische und Katalanische zu übertragen.
Machine Translation und Multilinguistic Models
Bisherige Herangehensweisen zur Analyse sprachübergreifender Sentiment-Analysen bedienen sich derzeit der Machine Translation (z.B. Google Translator) oder Mehrsprachen-Modellen (Multilinguistic Models). Da sowohl Sentiment-Analysen in englischer Sprache als auch der Google Translator zur Übersetzung von der englischen in die deutsche Sprache gut funktionieren, haben wir zunächst selbst eine Schnittstelle per Google API gebaut. Die Idee dahinter ist nicht nur automatisiert und nahezu in Echtzeit Tausende Sätze vom Englischen ins Deutsche zu übersetzen, sondern eben auch direkt die Sentiments in die Zielsprache zu übertragen. Allerdings werden für die Machine Translation ausreichend große Textkorpora (auch parallele Korpora) vorausgesetzt, um das Übersetzungssystem zu trainieren, was eben nicht immer der Fall ist. Aufgrund dessen haben wir eine Recherche zur Lösung dieses Problems betrieben und sind auf die BLSE-Methode gestoßen.
Neue Möglichkeiten durch Bilingual Sentiment Embeddings
Bilingual Sentiment Embeddings (BLSE) ist eine Methode, welche Informationen über „Sentiments“ (Stimmungen) in einer Ursprungs- und Zielsprache darstellt. Die Sentiment-Analyse ist ein Untergebiet des Text Mining und bezeichnet die automatische Auswertung von Texten mit dem Ziel, eine geäußerte Haltung als positiv oder negativ zu erkennen. Dieses Modell erfordert nur ein kleines zweisprachiges Lexikon, einen Textkorpus in der Ausgangssprache, welcher mit Annotationen versehen ist und einsprachige Word Embeddings für beide Sprachen.
Die Vorgehensweise wird dabei in die Schritte der a) cross-lingualen Projektion, b) Sentiment-Klassifizierung, c) dem gemeinsamen Lernprozess und d) der Zielsprachen-Klassifizierung unterteilt.
a) Cross-linguale Projektion
Voraussetzung sind zwei vorberechnete Vektorräume S = Rv x d und T = Rv’ x d’ für unsere Ursprungs- und Zielsprache, wobei v(v’) die Länge des Ursprungsvokabulars (Zielvokabular) und d(d’) die Dimensionalität der Embeddings ist und zudem ein zweisprachiges Lexikon L der Länge n existiert. Um ein Mapping der ursprünglichen Vektorräumen S und T auf zweisprachige Räume mit gemeinsamer Sentiment-Informationen z und z^ zu erstellen, werden zwei lineare Projektionsmatrizen, M und M’, verwendet (siehe Grafik).
Während des Trainings werden zuerst für jedes Übersetzungspaar in L die zugehörigen Vektoren gesucht, dann auf die zugehörige Projektionsmatrix übertragen und schließlich der mittlere quadratische Fehler (MSE) der beiden projizierten Vektoren minimiert. Die Hinzunahme der zusätzlichen Zielprojektionsmatrix ist daher notwendig, da eine einzelne Projektionsmatrix die Übertragung von Sentiment-Informationen von der Ausgangssprache in die Zielsprache nicht unterstützt.
b) Sentiment-Klassifizierung
Wir fügen ein zweites Trainingsziel hinzu, um die projizierten Ursprungsvektoren zu optimieren und Sentiments vorherzusagen.
Um M zu trainieren, wird ein Korpus in der Ursprungs-Sprache benötigt, bei welchem jeder Satz xi mit einem Label yi assoziiert ist. Zur Klassifizierung wird das „two-layer feedforward averaging network“ herangezogen. Dabei werden für einen Satz xi die Word Embeddings aus den Ursprungs-Embeddings S genommen und zu ai
Rd gemittelt. Anschließend wird dieser Vektor auf den gemeinsamen zweisprachigen Raum zi = ai * M projiziert. Zum Schluss wird zi durch eine Softmax-Schicht P durchgeschickt, um eine Schätzung für ŷ = softmax(zi * P) zu erhalten. Um das Model darauf zu trainieren, Sentiments zu schätzen, wird der Cross-Entropy-Error für die Schätzungen durch H = yi log ŷi — (1 — yi) log(1 — ŷi) minimiert.
c) gemeinsamer Lernprozess:
Um sowohl die Projektionskomponente als auch die Stimmungskomponente gemeinsam zu trainieren, werden beide Verlustfunktionen kombiniert, um die Parametermatrizen M, M’ und P durch die Gleichung J = H(x, y) + (1 — α) * MSE(s, t) zu optimieren , wobei α der Hyperparameter ist, welcher den Sentiment-Loss gegen den Projektion-Loss „wiegt“.
d) Zielsprachen-Klassifizierung:
Letztendlich werden Sätze aus einem Zielsprachenkorpus Ctarget klassifiziert. Wie im Trainingsverfahren werden für jeden Satz die Word Embeddings aus den Ziel-Embeddings T genommen und zu ai gemittelt. Dieser Vektor wird dann auf den gemeinsamen zweisprachigen Raum ẑi = ai * M’ projiziert. Wie auch zuvor bei der Sentiment-Klassifizierung wird schließlich ẑi durch eine Softmax-Schicht P geschickt, um eine Schätzung für ŷ = softmax(ẑi * P) zu erhalten.
Erkenntnisse aus der BLSE-Methode
Alle Datensätze enthielten Hotelbewertungen, die für die Sentiment-Analyse mit Annotationen versehen sind. Die Labels hierfür waren „Stark negativ (−−)“, „Negativ (-)“, „Positiv (+)“ und „Stark Positiv (++)“. Diese vier Klassen (4-class) wurden zudem nochmal binär (binary) in „positiv“ (also + und ++) und „negativ“ (- und — ) gruppiert.
Die grafische Visualisierung zeigt die Makro-F1-Scores für die Sprachen Spanisch (ES), Katalanisch (CA) und Baskisch (EU), für die die Versuche durchgeführt wurden. Im Paper wurden sowohl die Methoden der BLSE und Machine Translation als auch zwei weitere Multilinguale Ansätze „Artexe“ und „Barista“ für alle 4 Klassen (++, +, -, — ) und den gruppierten Klassen (positiv und negativ) angewendet. Die Ergebnisse zeigen, dass BLSE vor allem bei den binären Labels fast so gute Resultate erzielt wie die Machine Translation. Zur Erinnerung, Machine Translation steht eine großer Textkorpus zur Verfügung, der BLSE-Methode allerdings nicht.
Morphologische Herausforderungen
Zwar konnte die BLSE-Methode zusätzliche Informationen zur Machine Translation beisteuern, allerdings schwächelt auch BLSE bei katalanisch und baskisch. Das ist einerseits der Qualität der Word Embeddings geschuldet, andererseits auch der morphologischen Komplexität.
Diesen Herausforderungen stehen wir auch in der deutschen Sprache gegenüber. Eigenheiten der deutschen Sprache, mit denen die Machine Translation nach wie vor zu kämpfen hat, wären beispielsweise: — Syntax,
— Denglisch,
— Kasus (Nominativ, Genetiv, Dativ, Akkusativ),
— Genus (grammatisches Geschlecht) oder
— Redewendungen (Mein Deutsch ist nicht das Gelbe vom Ei = My German is not the yellow of the egg).
Ihr seid ebenso verrückt nach IT, Software und Tech-Themen und habt Lust, Teil unseres Entwickler-Teams zu werden, hier geht´s zu unseren offenen Stellen: https://www.datev.de/web/de/karriere/geschaeftsbereiche/it/.