Читать книгу Deep Learning illustriert - Jon Krohn - Страница 31
2.2.3Wortvektor-Arithmetik
ОглавлениеDa bestimmte Bewegungen über den Vektorraum eine effiziente Methode sind, um relevante Wortinformationen im Vektorraum zu speichern, repräsentieren diese Bewegungen bemerkenswerterweise die jeweiligen speziellen Bedeutungen zwischen den Wörtern. Das ist eine verblüffende Eigenschaft.14 Kehren wir zu unserem Würfel aus Abbildung 2–6 zurück. Die braunen Pfeile repräsentieren die Beziehungen zwischen Ländern und ihren Hauptstädten. Das heißt, falls wir die Richtung und den Abstand zwischen den Koordinaten der Wörter Paris und France berechnen und dann diese Richtung und den Abstand von London aus ziehen, sollten wir uns in der Gegend der Koordinaten wiederfinden, die das Wort England darstellt. Als zweites Beispiel können wir Richtung und Abstand zwischen den Koordinaten für man und woman berechnen. Diese Bewegung durch den Vektorraum repräsentiert das Geschlecht und wird durch die grünen Pfeile in Abbildung 2–6 symbolisiert. Falls wir die grüne Richtung und den Abstand von jedem spezifisch männlichen Begriff aus ziehen (z.B. king, uncle), sollten wir bei einer Koordinate nahe dem entsprechenden weiblichen Gegenstück (queen, aunt) landen.
vking - vman + vwoman = vqueen
vbezos - vamazon + vtesla = vmusk
vwindows - vmicrosoft + vgoogle = vandroid
Abb. 2–7 Beispiele für Wortvektor-Arithmetik
Ein Nebenprodukt dieser Fähigkeit, Bedeutungsvektoren (z.B. Geschlecht-, Hauptstadt-Land-Beziehung) von einem Wort im Vektorraum zum anderen zu ziehen, ist die Möglichkeit der Wortvektor-Arithmetik. Das kanonische Beispiel dafür geht folgendermaßen: Falls wir bei vking beginnen, dem Vektor, der king repräsentiert (entsprechend unserem Beispiel aus dem vorigen Abschnitt wird dieser Ort durch [-0.9, 1.9, 2.2] beschrieben), von diesem den Vektor subtrahieren, der man repräsentiert (nehmen wir an, vman =[-1.1, 2.4, 3.0]), und den Vektor addieren, der woman beschreibt (z.B. vwoman =[-3.2, 2.5, 2.6]), dann sollten wir eine Stelle in der Nähe des Vektors finden, der queen darstellt. Wir erledigen diese Berechnung dimensionsweise und schätzen daher den Ort von vqueen, indem wir wie folgt rechnen:
xqueen = xking - xman + xwoman = -0.9 + 1.1 - 3.2 = -3.0
yqueen = yking - yman + ywoman = 1.9 - 2.4 + 2.5 = 2.0
zqueen = zking - zman + zwoman = 2.2 - 3.0 + 2.6 = 1.8
Gleichung 2–1
Nehmen wir dann alle drei Dimensionen zusammen, erwarten wir, vqueen nahe [-3.0, 2.0, 1.8] zu finden.
Abbildung 2–7 bietet weitere unterhaltsame Beispiele für eine Arithmetik durch den Wortvektorraum, die auf einem großen, natürlichsprachigen Textkorpus aus dem Web trainiert wurden. Wie Sie dann in Kapitel 11 in der Praxis beobachten können, ist die Bewahrung dieser quantitativen Bedeutungsbeziehungen zwischen den Wörtern über den Vektorraum ein robuster Ausgangspunkt für Deep-Learning-Modelle innerhalb von NLP-Anwendungen.