Word embeddings: Unterschied zwischen den Versionen
Aus exmediawiki
C.heck (Diskussion | Beiträge) |
C.heck (Diskussion | Beiträge) |
||
| Zeile 25: | Zeile 25: | ||
==Word2Vec-Algorithmus== | ==Word2Vec-Algorithmus== | ||
Der beliebteste Algorithmus für die Berechnung von Einbettungen. Er besteht im Wesentlichen aus einem mini neuronalen Netzwerk, das versucht, ein Sprachmodell zu lernen. | |||
===CBOW & Skip-Gram=== | |||
[[Datei:cbow-skip.png]] | |||
====Continuous Bag-Of-Words (CBOW)==== | |||
[[Datei:cbow.png]] | |||
Hier geht es darum, ein Netzwerk zu schaffen, das versucht, das Wort in der Mitte bei einigen umgebenden Wörtern vorherzusagen: | |||
[W[-3], W[-2], W[-1], W[1], W[2], W[3]] => W[0] | |||
====Skip-Gram==== | |||
Skip-Gram ist das Gegenteil von CBOW, es versucht, die umgebenden Wörter vorherzusagen, die das Wort in der Mitte enthält: | |||
W[0] =>[W[-3], W[-2], W[-1], W[1], W[2], W[3]]] | |||
'''Die berechneten Netzwerkgewichte sind eigentlich die ''Wort Embeddings''''' | |||
===Word2Vec mit Gensim=== | |||
Wir benutzen in unserem Seminar '''Gensim'''. Diese Bibliothek beinhaltet u.a. eine Implementation des Word2Vec Models | |||
==GloVe== | ==GloVe== | ||
Version vom 13. November 2019, 11:18 Uhr
Der Sammelbegriff für eine Reihe von Sprachmodellierungs- und Feature-Learning-Techniken in der natürlichen Sprachverarbeitung (NLP), bei denen Wörter oder Phrasen aus dem Vokabular auf Vektoren mit reellen Zahlen abgebildet werden:
- ein Vektor, der die Struktur des Wortes in Bezug auf Morphologie widerspiegelt ( Anreichern von Wortvektoren mit Unterwortinformationen ) * eine Wortkontextdarstellung ( word2vec Parameter Learning Explained )
- eine globale Korpusstatistik ( GloVe: Globale Vektoren für Wortdarstellung )
- eine Worthierarchie in Bezug auf die WordNet-Terminologie ( Poincaré-Einbettungen für das Lernen hierarchischer Darstellungen )
- eine Beziehung zwischen einer Reihe von Dokumenten und den Begriffen, die sie enthalten ( latente semantische Indizierung )
- usw. ...
Warum brauchen wir embeddings?
für "meaningful" (Bedutungs-) Repräesentationen eines Wortes in einem Vectorenraum << word vectors
generell gilt, je mehr Dimensionen ein Vektor besitzt, desto mehr Bedeutung können wir in diesen hineinlegen < problem computational grenze
Traditionelle Worteinbettungen
Bag of Words (BOW)
term frequency–inverse document frequency (TFIDF)
Neuronale Einbettungen / pretrained word embeddings
Word2Vec-Algorithmus
Der beliebteste Algorithmus für die Berechnung von Einbettungen. Er besteht im Wesentlichen aus einem mini neuronalen Netzwerk, das versucht, ein Sprachmodell zu lernen.
CBOW & Skip-Gram
Continuous Bag-Of-Words (CBOW)
Hier geht es darum, ein Netzwerk zu schaffen, das versucht, das Wort in der Mitte bei einigen umgebenden Wörtern vorherzusagen:
[W[-3], W[-2], W[-1], W[1], W[2], W[3]] => W[0]
Skip-Gram
Skip-Gram ist das Gegenteil von CBOW, es versucht, die umgebenden Wörter vorherzusagen, die das Wort in der Mitte enthält:
W[0] =>[W[-3], W[-2], W[-1], W[1], W[2], W[3]]]
Die berechneten Netzwerkgewichte sind eigentlich die Wort Embeddings
Word2Vec mit Gensim
Wir benutzen in unserem Seminar Gensim. Diese Bibliothek beinhaltet u.a. eine Implementation des Word2Vec Models
