A word embedding is a word turned into a dense vector of numbers — a point in space where meaning becomes geometry. Words that mean similar things sit close together; the directions between them encode relationships.
Where you meet it
- The input layer of every transformer — text becomes math before any attention happens.
- Semantic search and recommendations — rank items by vector similarity, not keyword match.
- Classic NLP pipelines via
word2vec, GloVe and fastText.
What it does
It replaces the one-hot wall — one isolated slot per word, every pair equally distant — with a few hundred learned numbers per word. Now closeness means something: cat and dog land near each other, far from code, because the model has seen how they are used.
A word's vector isn't assigned — it's earned from the company it keeps, until meaning becomes a direction in space.
How it works
Each word maps to a vector in N dimensions (often 100–300), and those numbers are learned, not assigned. The guiding idea is the distributional hypothesis: "a word is known by the company it keeps." word2vec turns this into a prediction task — skip-gram slides a window over text and trains each word's vector to predict the words around it.
# skip-gram, in spirit: predict context from a target word
"the wide road shimmered in the hot sun"
# target = "road" -> context = wide, shimmered, in, the
# each word's vector is nudged to make its real neighbours
# more likely than random "negative" words (negative sampling)
Train this over a large corpus and two things fall out. Similar meaning lands near — measured by cosine similarity, the angle between vectors, so direction (meaning) counts and length doesn't:
cos(a, b) = (a · b) / (|a| · |b|)
# 1 = same direction 0 = unrelated -1 = opposite
And relationships become linear directions you can do arithmetic on — the famous analogy king − man + woman ≈ queen. The "male → female" shift is roughly the same vector everywhere in the space.
Watch out
- Classic embeddings are static — one fixed vector per word, no context. So
bank(river) andbank(money) collapse into a single point. Contextual embeddings from transformers (BERT, GPT) give each occurrence its own vector instead. - They inherit bias from the data. Train on human text and stereotyped associations ride along — analogies like
man:doctor :: woman:nurseare a learned artifact, not a fact. - The dimensions aren't interpretable. No single axis is "royalty" or "gender"; meaning is spread across all of them. The geometry is real, the coordinates are opaque.
- Analogies are a tendency, not a guarantee — they work cleanly for frequent words and break on rare ones.
Go deeper
Ein Word Embedding ist ein Wort als dichter Zahlenvektor — ein Punkt im Raum, in dem Bedeutung zu Geometrie wird. Wörter mit ähnlicher Bedeutung liegen nah beieinander; die Richtungen zwischen ihnen kodieren Beziehungen.
Wo es vorkommt
- Die Eingabeschicht jedes Transformers — Text wird zu Mathematik, bevor irgendeine Attention läuft.
- Semantische Suche und Empfehlungen — sortiert nach Vektor-Ähnlichkeit statt nach Stichwort-Treffer.
- Klassische NLP-Pipelines über
word2vec, GloVe und fastText.
Was es tut
Es ersetzt die One-Hot-Wand — ein isolierter Slot pro Wort, jedes Paar gleich weit entfernt — durch ein paar Hundert gelernte Zahlen pro Wort. Jetzt bedeutet Nähe etwas: cat und dog landen nebeneinander, weit weg von code, weil das Modell gesehen hat, wie sie verwendet werden.
Der Vektor eines Worts wird nicht zugewiesen — er entsteht aus seinem Umfeld, bis Bedeutung zur Richtung im Raum wird.
Wie es funktioniert
Jedes Wort wird auf einen Vektor in N Dimensionen abgebildet (oft 100–300), und diese Zahlen werden gelernt, nicht zugewiesen. Leitidee ist die Distributionshypothese: "Ein Wort erkennt man an seinem Umfeld." word2vec macht daraus eine Vorhersage-Aufgabe — Skip-gram schiebt ein Fenster über den Text und trainiert jeden Wortvektor darauf, seine Nachbarn vorherzusagen.
# Skip-gram, sinngemäß: Kontext aus einem Zielwort vorhersagen
"the wide road shimmered in the hot sun"
# Ziel = "road" -> Kontext = wide, shimmered, in, the
# Jeder Wortvektor wird so verschoben, dass echte Nachbarn
# wahrscheinlicher werden als zufällige "Negative" (Negative Sampling)
Trainiert man das über einen großen Korpus, fallen zwei Dinge heraus. Ähnliche Bedeutung landet nah — gemessen mit der Kosinus-Ähnlichkeit, dem Winkel zwischen Vektoren; es zählt also die Richtung (Bedeutung), nicht die Länge:
cos(a, b) = (a · b) / (|a| · |b|)
# 1 = gleiche Richtung 0 = unverwandt -1 = entgegengesetzt
Und Beziehungen werden zu linearen Richtungen, mit denen man rechnen kann — die berühmte Analogie king − man + woman ≈ queen. Die Verschiebung "männlich → weiblich" ist überall im Raum ungefähr derselbe Vektor.
Worauf achten
- Klassische Embeddings sind statisch — ein fester Vektor pro Wort, kontextlos.
bank(Fluss) undbank(Geld) fallen so in einen einzigen Punkt zusammen. Kontextuelle Embeddings aus Transformern (BERT, GPT) geben jedem Vorkommen stattdessen einen eigenen Vektor. - Sie erben Bias aus den Daten. Trainiert auf menschlichem Text, fahren stereotype Assoziationen mit — Analogien wie
man:doctor :: woman:nursesind ein gelerntes Artefakt, kein Fakt. - Die Dimensionen sind nicht interpretierbar. Keine einzelne Achse ist "Adel" oder "Geschlecht"; Bedeutung verteilt sich über alle. Die Geometrie ist echt, die Koordinaten sind undurchsichtig.
- Analogien sind eine Tendenz, keine Garantie — sie greifen sauber bei häufigen Wörtern und brechen bei seltenen.