Zum Inhalt springen

Worteinbettung

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Word embedding)

Bei einer Worteinbettung (englisch word embedding) handelt es sich um eine Einbettung, bei der Wörter oder andere Symbole jeweils einem Vektor v mit zugeordnet werden. Dies kommt vor allem beim maschinellen Lernen zum Einsatz. Das Ziel ist hierbei, eine abstrakte (vergleichbarere) Darstellung der Bedeutung der Wörter bzw. Symbole bei gleichzeitiger Dimensionen-Reduzierung zu erhalten.[1]

Bag-of-Words[2] ist die einfachste Form der Worteinbettung. Hierbei wird jedem Symbol s ein zufälliger diskreter Wert v mit zugeordnet. Beispielsweise kann eine Aussage wie

„Der grüne Frosch springt in den See.“

in eine Folge von Zahlen übersetzt werden

Hiermit kann z. B. ein Textkorpus nach Stichwörtern durchsucht werden, indem eine Suchabfrage mit einem Index der enthaltenen Wörter verglichen wird.

Hierbei gilt es zu beachten, dass Synonyme auch denselben Wert erhalten müssen. Beispielsweise „Geldautomat“ und „Bankomat“ oder „Auto“ und „PKW“, sowie von einem Wortstamm abgeleitete oder modifizierte Wörter wie „Grün“, „grüner“, „Gruen“ etc. Ein solches Mapping kann über Wörterbücher erfolgen, was jedoch einen erheblichen manuellen Aufwand bedeutet. Zudem gibt es keine Unterscheidungsmöglichkeit bei Homonymen. Der Begriff „Bank“ im Sinne eines Geldinstituts erhält denselben Wert wie der Begriff „Bank“ im Sinne einer Parkbank.

Word2Vec[3], auch als Continuous Bag-of-Words (CBOW) oder Skip-Gram bezeichnet, erweitert das Prinzip von Bag-of-Words, indem einem Symbol s ein mehrdimensionaler und kontinuierlicher Wert zugeordnet wird. Dieser Wert wird derart festgelegt, dass die Wahrscheinlichkeit P des Wertes v an der Stelle t in Abhängigkeit von den n davorstehenden und n dahinterstehenden Wörtern maximiert wird.

Beispielsweise kann in dem Satz

„Der grüne Frosch [???] in den See.“

das Wort „springt“ vorhergesagt werden, indem berechnet wird, wie hoch die Wahrscheinlichkeit ist, dass das Wort „springt“ vorkommt, während davor die Wörter „der“, „grüne“ und „Frosch“ und dahinter die Wörter „in“, „den“ und „See“ stehen.

Bei der Skip-Gram-Variante (englisch: skip-gram model) von Word2Vec maximiert man das Produkt (bzw. die Summe der Logarithmen) der Wahrscheinlichkeiten, dass die einzelnen Kontextwörter korrekt vorhergesagt werden, gegeben das Zielwort :

Eine typische Form für lautet:

wobei man oft zwischen Eingabe-Embeddings und Ausgabe-Embeddings unterscheidet. Bei der CBOW-Variante (englisch: continuous bag-of-words) werden zuerst die Vektoren der (mehreren) Kontextwörter zu einem einzelnen Vektor aggregiert; aus diesem wird anschließend das Zielwort vorhergesagt:

wobei beispielsweise das arithmetische Mittel der Embeddings der Kontextwörter sein kann. In beiden Varianten sorgt die Softmax-Funktion dafür, dass die Summe aller Wahrscheinlichkeiten über alle möglichen Wörter (also über das Gesamtvokabular) gleich 1 ist.

Die Vektoren v, welche die Symbole oder Wörter abbilden, werden mittels des Gradientenverfahrens berechnet, sodass die Wahrscheinlichkeit, ein falsches Wort vorherzusagen, minimiert wird. Um die Wahrscheinlichkeit zu berechnen, werden große Textsammlungen als Trainingsdaten benötigt.

Der Vorteil dieses Verfahrens besteht darin, dass die resultierenden Vektoren die Wortbedeutung repräsentieren und auf dieser Wortbedeutung logische Aussagen und Ähnlichkeitsaussagen getroffen werden können. Beispielsweise ergibt die Berechnung der Vektorkomposition v(„König“) − v(„Mann“) + v(„Frau“) = v(„Königin“). Zudem werden Synonyme korrekt abgebildet, etwa v(„Geldautomat“) = v(„Bankomat“).

Problematisch an diesem Verfahren ist, dass Homonyme nicht korrekt bestimmt werden können. v(„Bank“) ergibt daher einen Vektor, welcher zwischen den Vektoren v(„Geldinstitut“) und v(„Parkbank“) liegt, jedoch keine dieser Bedeutungen aus den Kontext einer Aussage klar abbildet. Weitere Probleme können sich aus Trainingsdaten mit einem Bias ergeben, welche zu Verzerrungen des Vektorraums führen und z. B. eine Vektorkomposition wie v(„Arzt“) − v(„Mann“) + v(„Frau“) = v(„Krankenschwester“) anstatt von v(„Ärztin“) ergibt.[4] Ein weiterer Nachteil ist, dass dieses Verfahren nicht geeignet ist, um den Inhalt längerer Aussagen korrekt abbilden zu können, da nur die einem Symbol nahestehenden Symbole als Kontext berücksichtigt werden.

Kontextabhängige Worteinbettung

[Bearbeiten | Quelltext bearbeiten]

Das Ziel der kontextabhängigen Worteinbettung (engl. Contextual Word Embedding) ist es, dass homonyme Bedeutungen korrekt dargestellt werden können. Hierbei wird ein rekurrentes neuronales Netz (RNN) oder Convolutional Neural Network (CNN) mittels unüberwachtem Lernen trainiert, anhand einer gegebenen Menge an Symbolen das nächste Symbol in einer Sequenz vorherzusagen. Das RNN kann diese Vorhersage auch bei langen Symbolfolgen anhand eines internen Zustands (hidden state) durchführen. Der interne Zustand bildet konzeptionell den Kontext des Symbols ab und ist nicht auf den aktuell berücksichtigten Ausschnitt der Symbolfolge begrenzt.

Die erste Version dieses Verfahrens stellt TagLM dar[5]. Dieses nutzt zwei Long-short-term-memory-Netzwerke (LSTM), wobei eine LSTM die Symbolfolge in einen internen Zustand codiert und das zweite LSTM den internen Zustand in eine Symbolfolge dekodiert. Der interne Zustand ergibt sich hierbei aus einer Verknüpfung des Word2Vec-Vektors eines Symbols mit einem Token, welches die Position des Symbols repräsentiert, und die Konvolution der entsprechenden Werte.

Eine Weiterentwicklung von TagLM ist Embeddings from Language Models (ELMo).[6] Anstatt Wörter als Vektoren zu verarbeiten, werden hierbei einzelne Zeichen (z. B. Buchstaben) verarbeitet. Hierdurch entfallen Word2Vec-basierte Verfahren.

Transformer[7] lösen die Problematik, dass LSTMs auf Basis von rekurrenten Netzen nur sehr langsam trainiert werden können und das Training nur schwer parallelisiert werden kann.[1] Die Konvolution wird hierbei von einem Aufmerksamkeits-Mechanismus abgelöst. Die Aufmerksamkeit bestimmt hierbei, welche Symbole einer Folge als Kontext berücksichtigt werden sollen. Transformer verwenden mehrere Aufmerksamkeits-Mechanismen parallel (Multi-Head-Attention), um eine Menge aus mehreren Symbolen als Kontext berücksichtigen zu können. Um Abhängigkeiten eines Symbols von entfernten Symbolen berücksichtigen zu können, können mehrere Transformer-Blöcke in Serie geschaltet werden. Beispielsweise lassen sich so in der Aussage

„Der grüne [???] springt in den [???].“

sowohl die Begriffe „Frosch“ als auch „See“ ermitteln, da der Gesamt-Kontext zur Berechnung der Symbolwahrscheinlichkeiten berücksichtigt wird.

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. a b Antonio Lopardo: Word2Vec to Transformers. Towards Data Science Inc., 7. Januar 2020, abgerufen am 8. Dezember 2020 (englisch).
  2. Yin Zhang, Rong Jin, Zhi-Hua Zhou: Understanding Bag-of-Words Model: A Statistical Framework. In: International Journal of Machine Learning and Cybernetics. Springer, 28. August 2020, abgerufen am 8. Dezember 2020.
  3. Tomas Mikolov, Ilya Sutskever, Kai Chen, Grec Corrado, Jeffrey Dean: Distributed Representations of Words and Phrases and their Compositionality. (PDF) Google Inc., 2013, abgerufen am 8. Dezember 2020 (englisch).
  4. Tommaso Buonocore: Man is to Doctor as Woman is to Nurse: the Gender Bias of Word Embeddings. Towards Data Science Inc., 8. März 2019, abgerufen am 8. Dezember 2020 (englisch).
  5. Matthew E. Peters, Waleed Ammar, Chandra Bhagavatula, Russell Power: Semi-supervised sequence tagging with bidirectional language models. (PDF) Allen Institute for Artificial Intelligence, 29. April 2017, abgerufen am 8. Dezember 2020 (englisch).
  6. Mathew E. Peters, Mark Neumann, Mohit Iyver, Matt Gardner, Christopher Clark, Kenton Lee, Luke Zettelmoyer: Deep contextualized word representations. (PDF) Allen Institute for Artificial Intelligence, Paul G. Allen School of Computer Science & Engineering – University of Washington, 22. März 2018, abgerufen am 8. Dezember 2020 (englisch).
  7. Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, Illia Polosukhin: Attention Is All You Need. In: arxiv. Google Brain, 12. Juni 2017, abgerufen am 8. Dezember 2020 (englisch).