浅层 · 一句话:想象一张铺满整个房间的巨大星图,几万个词,每个词是一颗星。意思相近的词被放在一起——"猫""狗""老虎""宠物"挤成一团,"积分""函数""算法"在房间的另一头抱团,而"咖啡""清晨""安静"又自成一片。
这张星图有个正式名字:词嵌入(embedding)——把每个词"嵌入"到一个连续空间里的一个点。这一整页,都在拆这张星图是怎么来的、为什么"位置"竟然能装下"意思",以及它惊艳又危险的地方在哪。
下面每个光点是一个真实的词。把鼠标当成一只手伸进这片空间,靠近的词会被你吸过来——而本就意思相近、彼此连着线的词,会一起被聚拢。这就是 embedding 在做的事:让"近"变得可触摸。
中层 · 它怎么做到:没有人坐下来标注"猫和狗很近"。它靠的是一条朴素到惊人的规律——经常出现在相似上下文里的词,就给它们相近的坐标。"猫"和"狗"周围反复出现"养、喂、可爱、宠物";"积分"和"函数"周围反复是"求、导数、连续"。看谁总和谁一起出现,就把谁放在一起。
语言学里这叫分布式假设(distributional hypothesis):一个词的意思,藏在它常出现的语境里——"观其友,知其人"。模型在整个互联网的文本里数了无数遍"谁和谁同框",数着数着,星图上的位置就自己长了出来。
辅助 · 不必记的细节:所以它学到的"近",是共现意义上的近,不是常识意义上的近。"医生"和"护士"近,因为它们总同框;"医生"和"律师"也颇近,因为都活在"职业、专业、执照"这类语境里。位置背后,全是统计,没有理解。
"坐标"听起来抽象,落到实处它就是一行数字。"猫"这个字进去,出来的是一长串小数;这串数字,就唯一地指向星图上的某一个点。
所以"AI 理解一个词"这句话,翻译成它的语言就是:查出这个词对应的那一串数字。整个语言被它装进了一张数字表——每个词一行,每行几千个数。后面所有的"思考",都建立在对这些数字做加减乘除之上。
上面写"…"省略掉了大部分。真实情况是:这一行数字不止三个、十个,而是上万个。下面每一根细柱代表"猫"这串坐标里的一个维度——你看到的只是其中一小撮,真实的它要长得多。
为什么要这么多维?因为意思有太多侧面。一个维度也许悄悄编码了"是不是动物",另一个"是不是温暖的",再一个"褒义还是贬义"——没人指定哪一维管什么,但几千个维度合起来,才装得下一个词意思的全部细微差别。
辅助 · 不必记的细节:维度一多,我们这种住在三维世界里的脑子就彻底想象不出了——你没法"看见"一个 12288 维的空间。但数学不在乎:不管多少维,两点之间照样能算距离、算方向。高维是它的舒适区,却是我们的盲区。这也是为什么必须把它压成 2D,我们才看得见。
深层 · 反直觉:它没有"懂"猫是毛茸茸、会喵喵叫、爱睡懒觉的小动物。它眼里的"猫",从头到尾只是一串数字、一个坐标。它做的全部事情,是在挪动坐标、丈量距离、比较方向——纯粹的几何,没有一丝一毫的"意义"。
意思相近,被它兑换成了"可计算的距离"。这正是它能力的来源:既然近义=近距离,它就能用算术处理语言。但同一枚硬币的反面是——位置对,不代表事实对。两个词坐标挨着,只说明它们常出现在相似语境,不保证你把它们拼成的那句话是真的。
这就是它日后"一本正经地胡说"的最深的根:它在一个意思=位置的几何空间里运算,而几何空间里没有"真 / 假"这根轴。顺、近、像——它都会;真不真,它无从判断。记住这一点,你后面看它所有的聪明和所有的离谱,都能对上号。
如果"意思"真的变成了"位置",那两点之间的方向,会不会也有意义?答案是会。从"男人"指向"国王"的那个方向,和从"女人"指向"女王"的方向——几乎平行。这条方向,编码的正是"性别 → 王室身份"这层关系。
这就是 embedding 最让人起鸡皮疙瘩的地方:关系,变成了可以做加减法的方向。没有人教它"国王和男人差了个王室身份",它纯靠数文本里的共现,就让这条关系自己沉淀成了空间里一个稳定的方向。意思变成位置之后,连"类比"都成了算术。
辅助 · 别神化它:这个例子真实存在,但别以为它每次都这么干净。现实里向量运算常常只是"大致落在附近",还会被语料偏见带歪(比如把"医生"默认推向"男")。它揭示的是一个深刻的事实——方向有含义——但不是一台精准的语义计算器。
一旦语言被摊成一张可丈量的星图,那些原本需要"理解"才能做的事,统统降级成了"几何运算"——而几何,机器最擅长。
"开心"的近义词?不用查字典,只需找出它坐标周围最近的几个点——"高兴""愉快""喜悦"自动浮现。语义搜索、推荐,底层都是这一步。
就是上一节那招:坐标方向相加减。"巴黎 − 法国 + 日本 ≈ 东京"——首都关系成了一个方向,搬到哪国都成立。关系也能被算出来。
把中文的"猫"和英文的"cat"放进同一个空间,让它们落到几乎同一个点。意思相同的词不分语种地重合——机器翻译的地基之一。
不给标签,光看谁挨着谁,就能把一堆词、一批文章自动分成主题群。星图上的"星座",就是天然的类别。
中层 · 把话说透:对它而言,"理解一个词"=知道这个词的坐标,以及坐标周围都站着哪些词。它对"猫"的全部认识,就是"猫"这个点附近聚着"狗、宠物、可爱、喵、睡觉"——而不是任何关于真实猫的感官经验。它从没摸过猫,也永远不会。
这是一种关系性的、几何性的理解:意思 = 一个词在词与词关系网中的位置。它很强大——足以让它谈论几乎任何话题;但它也很空——里面没有任何指向真实世界的锚点。它懂的是"词和词怎么相处",不是"词和世界怎么对应"。
辅助 · 一句话收口:把这一页浓缩成一句——在它的世界里,"意义"就是"几何"。记住这把钥匙,它后面所有的注意力、所有的预测,都只是在这张几千维的星图上,继续做几何而已。
位置有了——每个词都站到了星图上自己的坐标。但光有一堆点还不够:一句话是一串词,读到"它"的时候,怎么知道"它"指的是前面哪个词?怎么把孤立的坐标连起来理解成一句话的意思?这正是下一站要解决的事——注意力。