{"id":4102,"date":"2021-03-10T08:00:34","date_gmt":"2021-03-10T08:00:34","guid":{"rendered":"https:\/\/lamarr-institute.org\/blog\/kontextabhaengige-einbettungsvektoren\/"},"modified":"2025-11-12T14:52:33","modified_gmt":"2025-11-12T14:52:33","slug":"kontextabhaengige-einbettungsvektoren","status":"publish","type":"blog","link":"https:\/\/lamarr-institute.org\/de\/blog\/kontextabhaengige-einbettungsvektoren\/","title":{"rendered":"Die Bedeutung von Worten durch Vektoren erfassen"},"content":{"rendered":"\n<p>Die Bedeutung eines Wortes kann man meist nicht allein aus seiner Schreibweise erschlie\u00dfen. Beispielsweise sind Sofa und Couch beides gepolsterte Sitzm\u00f6bel f\u00fcr mehrere Personen, sie unterscheiden sich aber stark in ihrer Schreibweise. Damit der Computer die Bedeutung von Worten erfassen kann, wird daher eine andere Darstellung als durch Buchstaben ben\u00f6tigt. Diese Bedeutungsdarstellung kann durch <em>Einbettungsvektoren<\/em> erfolgen. Einbettungsvektoren haben eine vorgegebene L\u00e4nge und enthalten zum Beispiel 100 reelle Zahlen. Die Idee ist nun, f\u00fcr jedes Wort der Sprache einen eigenen Einbettungsvektor zu konstruieren. Dabei sollen sich die Einbettungsvektoren von Worten mit \u00e4hnlicher Bedeutung \u2013 zum Beispiel Sofa und Couch &#8211; nur wenig unterscheiden. Dieser Bedeutungsunterschied zwischen zwei Worten kann zum Beispiel durch die Euklidische Distanz, ein geometrisches Abstandsma\u00df, der zugeh\u00f6rigen Einbettungsvektoren bewertet werden. Ist die Bedeutung jedes Wortes durch Einbettungsvektoren dargestellt, so kann der Computer hieraus auf die Bedeutung des ganzen Textes schlie\u00dfen.<\/p>\n\n\n\n<p>Es wurden sehr leistungsf\u00e4hige Verfahren zur Bestimmung dieser Einbettungsvektoren entwickelt, zum Beispiel <a href=\"https:\/\/arxiv.org\/abs\/1301.3781\" target=\"_blank\" rel=\"noopener\">Word2Vec<\/a> (siehe auch den Beitrag <a href=\"https:\/\/machinelearning-blog.de\/anwendung\/automatisierte-stichwortvergabe-fuer-kurze-texte\/\" target=\"_blank\" rel=\"noopener\">Automatisierte Stichwortvergabe f\u00fcr kurze Texte<\/a>). Allerdings gibt es viele W\u00f6rter mit mehreren Bedeutungen, wie etwa die Maus, welche ein Computerzeigeger\u00e4t oder aber auch ein Nagetier sein kann. Einfache Wortvektoren offenbaren hier die Einschr\u00e4nkung, dass bei derartigen Worten nur ein einziger Einbettungsvektor berechnet wird, in dem sich die Bedeutungen \u00fcberlagern.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span style=\"font-size: 18pt;\">Ber\u00fccksichtigung der Nachbarworte bei der Berechnung kontextabh\u00e4ngiger Einbettungsvektoren<\/span><\/h2>\n\n\n\n<p>Offenkundig bestimmen die Nachbarworte von Maus, ob es sich um eine Nagetiermaus (Die Maus frisst K\u00e4se.) oder die Computermaus (Klicke die Taste der Maus.) handelt. Als Alternative kann man daher Einbettungsvektoren konstruieren, die nicht nur von dem Wort selbst, sondern von den Nachbarworten abh\u00e4ngen. Der relative Einfluss der Nachbarworte und des Wortes selbst kann \u00fcber <em>Assoziationsmodule<\/em> ber\u00fccksichtigt werden. Die folgende Grafik zeigt ein solches <a href=\"https:\/\/arxiv.org\/abs\/1810.04805\" target=\"_blank\" rel=\"noopener\">Assoziationsmodul<\/a>, welches ein spezielles Neuronales Netz ist.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/lamarr-institute.org\/wp-content\/uploads\/assoziationsmodul.gif\" alt=\"- Lamarr Institute for Machine Learning (ML) and Artificial Intelligence (AI)\" class=\"wp-image-25746\" title=\"\"><figcaption class=\"wp-element-caption\">\u00a9 ML2R <br>Bestimmung einer kontextabh\u00e4ngigen Einbettung f\u00fcr ein Wort durch ein Assoziationsmodul. Es wird die Assoziation des Query-Aspekts des Zielwortes \u201efrisst\u201c mit den Key-Aspekten aller W\u00f6rter berechnet. Die neue Einbettung wird aus der mit den Assoziationen gewichteten Summe der Value-Aspekte aller Worte gebildet.<\/figcaption><\/figure>\n\n\n\n<p>Ausgehend von dem Satz \u201eDie Maus frisst K\u00e4se\u201c soll eine neue Einbettung f\u00fcr das Wort \u201efrisst\u201c berechnet werden. F\u00fcr jedes Wort der Eingabe wird nun ein gegebener Einbettungsvektor verwendet, der zu Beginn mit Zufallszahlen gef\u00fcllt wird. Um die Wortreihenfolge zu repr\u00e4sentieren, muss auch noch eine Markierung der Wortposition hinzugef\u00fcgt werden. Anschlie\u00dfend werden die Eingabevektoren mit den Matrizen &nbsp;multipliziert, deren Werte am Anfang ebenfalls als Zufallszahlen gew\u00e4hlt werden.<\/p>\n\n\n\n<p>Dies erzeugt neue Vektoren (Aspekte), die <em>Query, Key<\/em> und <em>Value<\/em> genannt werden. Diese <em>Aspekte<\/em> des Einbettungsvektors konzentrieren sich daher auf unterschiedliche Eigenschaften des Einbettungsvektors und unterscheiden sich f\u00fcr die verschiedenen Assoziationsmodule. Die Assoziation des <em>Query<\/em>-Vektors von \u201efrisst\u201c und der <em>Key<\/em>-Vektoren aller Worte werden nun durch ein Skalarprodukt berechnet. Die sich ergebenden Werte werden auf Anteile normiert, welche sich zu 1.0 aufaddieren. Im Beispiel haben \u201efrisst\u201c und \u201eMaus\u201c die st\u00e4rkste Assoziation mit \u201efrisst\u201c bez\u00fcglich des aktuellen Assoziationsmoduls. Schlie\u00dflich werden die <em>Value<\/em>-Vektoren aller Worte mit diesen Gewichten aufaddiert und es ergibt sich ein neuer Einbettungsvektor f\u00fcr das Wort \u201efrisst\u201c. Dieser Einbettungsvektor ist kontextabh\u00e4ngig, weil er die Kontextworte, zum Beispiel \u201eMaus\u201c und \u201eK\u00e4se\u201c, und deren Einbettungen mit der urspr\u00fcnglichen Einbettung \u201everschmolzen\u201c hat.<\/p>\n\n\n\n<p>Die nachfolgende Grafik zeigt die Berechnung der Assoziationen zwischen dem Wort \u201ethe\u201c und den W\u00f6rtern des Satzes \u201ethe cat sat on the mat\u201c. Hierbei werden der&nbsp; <em>Query<\/em> und die jeweiligen <em>Key<\/em>-Vektoren elementweise miteinander multipliziert und das elementweise Produkt aufsummiert. Die starken Assoziationen sind durch eine intensivere Blauf\u00e4rbung gekennzeichnet. Wie in der Grafik erkennbar, weist das Wort \u201eon\u201c die st\u00e4rkste Assoziation mit dem Wort \u201ethe\u201c in diesem Satz auf.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/lamarr-institute.org\/wp-content\/uploads\/\/Assoziation1-1-1-1024x220.jpg\" alt=\"- Lamarr Institute for Machine Learning (ML) and Artificial Intelligence (AI)\" class=\"wp-image-24525\" title=\"\"><figcaption class=\"wp-element-caption\">\u00a9 Jesse Vig<br><a href=\"https:\/\/debug-ml-iclr2019.github.io\/cameraready\/DebugML-19_paper_2.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">Berechnung der Assoziation<\/a>&nbsp;zwischen dem Query-Vektor von \u201cthe\u201d und den Key-Vektoren des Satzes. Die Gr\u00f6\u00dfe der Werte in den Vektoren werden durch die Farben blau (negativ) bis orange (positiv) dargestellt.<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Aussagekr\u00e4ftige Einbettungsvektoren ben\u00f6tigen viele komplement\u00e4re Assoziationsmodule<\/h2>\n\n\n\n<p>Allerdings hat sich gezeigt, dass ein einziges Assoziationsmodul nicht ausreicht, um qualitativ hochwertige Einbettungsvektoren zu bestimmen. Daher konstruiert man ein umfassendes Modell, welches in einer Ebene mehrere Assoziationsmodule parallel verwendet. Hierbei hat jedes Assoziationsmodul unterschiedliche Matrizen <em>Q,K,V<\/em> und kann sich dadurch auf unterschiedliche Aspekte der Einbettungsvektoren konzentrieren. Durch die Verkettung der Einbettungsvektoren der Ebene und eine nachfolgende Transformation ergeben sich dann neue Einbettungsvektoren f\u00fcr jedes Wort des Eingabetextes. Es werden mehrere dieser Ebenen \u00fcbereinandergestapelt und produzieren schlie\u00dflich die Einbettungsvektoren der letzten Schicht.<\/p>\n\n\n\n<p>Es wird hierf\u00fcr jedoch noch eine Prognoseaufgabe ben\u00f6tigt, welche das Training der unbekannten Parameter des Modells erm\u00f6glicht. Wie genau die Wahrscheinlichkeit des ersetzen Wortes prognostiziert wird, erfahrt Ihr in unserem Blog-Beitrag: <a href=\"https:\/\/machinelearning-blog.de\/forschung\/bert\/\" target=\"_blank\" rel=\"noreferrer noopener\">\u201eBERT: Wie beschreiben Vektoren treffend den Sinngehalt von W\u00f6rtern?\u201c<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Der Sinngehalt von Worten l\u00e4sst sich durch numerische Vektoren darstellen, die auch die Nachbarschaftsworte einbeziehen. Dadurch lassen sich syntaktische und semantische Zusammenh\u00e4nge der Sprache erfassen und zur Interpretation von Bedeutungen verwenden.<\/p>\n","protected":false},"author":9,"featured_media":3928,"template":"","meta":{"_acf_changed":false,"footnotes":""},"blog-category":[1416,390,1418],"blog-tag":[1452,1482],"class_list":["post-4102","blog","type-blog","status-publish","has-post-thumbnail","hentry","blog-category-alle-blogbeitraege","blog-category-grundlagen","blog-category-sprachtechnologien","blog-tag-bert-de","blog-tag-einbettungsvektoren"],"acf":[],"publishpress_future_workflow_manual_trigger":{"enabledWorkflows":[]},"_links":{"self":[{"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/blog\/4102","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/users\/9"}],"version-history":[{"count":0,"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/blog\/4102\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/media\/3928"}],"wp:attachment":[{"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/media?parent=4102"}],"wp:term":[{"taxonomy":"blog-category","embeddable":true,"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/blog-category?post=4102"},{"taxonomy":"blog-tag","embeddable":true,"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/blog-tag?post=4102"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}