word2vec · words as coordinates
机器看不懂"国王"两个字,它只看得懂数字。词嵌入就是把每个词变成一串数字(向量),让"语义相似"变成"距离相近"。
word2vec 的训练原理很朴素:一个词的向量,应该能预测它周围的词(Skip-gram)。训练完,向量空间里就出现了神奇的几何结构——"国王−男人+女人≈女王","巴黎−法国+中国≈北京"。语义关系,被编码成了向量方向。
下面是词向量降到二维后的投影(真实是 300 维,这里简化)。点一个词,看它和谁最像;点"类比",看 国王−男人+女人 落在哪。
猫、狗、兔 在空间里靠在一起,因为它们出现在相似的上下文里。
"国王→女王"和"男人→女人"是平行向量,性别关系被编码成同一方向。
a−b+c 的最近邻,常给出符合类比的词。这是词嵌入最迷人的能力。
训练语料有性别/种族偏见,向量里就有。嵌入不是中立,是语料的镜子。
词嵌入是现代 NLP 的基石:BERT、GPT 都从嵌入层开始。理解了"词是向量",就理解了为什么大模型能做类比、推理、翻译——它们不是在理解语言,是在向量空间里做几何运算。