为什么 AI 能知道“猫”和“狗”很像?
为什么 ChatGPT 能理解语义,而不是只会关键词匹配?
为什么搜索“新能源汽车”,还能找到“电动车”?
为什么 RAG、向量数据库都离不开 Embedding?

这些问题背后,其实都指向一个核心概念:

Embedding(嵌入)

很多人第一次学 AI 时。

都会遇到一个困惑:

Token 我懂了。
但 Embedding 又是什么?

其实:

Embedding 才是 AI 开始“理解意思”的第一步。

今天继续用:

小白视角 + 程序员视角

真正搞懂:

Embedding 到底是什么?


一、小白视角:Embedding 到底是什么?

先一句话解释:

Embedding = 把文字翻译成 AI 能理解的“数学坐标”。

什么意思?

你可以理解成:

给每个词一个“位置”。

这个位置:

代表:

它的意思(语义)。


1、AI 为什么需要 Embedding?

上一篇讲过:

AI 不认识文字。

它只认识:

数字。

例如:

一句:

经过 Tokenizer:

可能变:

[1058]

但问题来了:

1058 有意义吗?

没有。

因为:

猫 = 1058
狗 = 2093
汽车 = 7821

这些数字:

只是编号。

AI 根本不知道:

猫和狗比较像。

猫和汽车差很多。

所以:

还需要一步:

把编号转换成“有意义的数学表达”。

这一步:

就叫:

Embedding


2、Embedding 就像地图坐标

想象一个城市地图。

不同东西:

在不同位置。

例如:

动物区

猫
狗
兔子

放得很近。

因为:

意思接近。


交通工具区

汽车
火车
飞机

也放一起。


食物区

苹果
香蕉
面包

又在另一边。

于是:

AI 发现:

离得近 → 意思像

离得远 → 差异大

这就是:

语义空间(Semantic Space)


3、为什么 AI 能理解近义词?

比如:

你问:

推荐新能源车。

即使知识库写的是:

电动车排行榜

AI 依然能找到。

为什么?

因为:

在 Embedding 空间里:

新能源车
电动车
新能源汽车
EV

距离:

很近。

所以:

AI 会觉得:

“你们差不多是一类意思。”

这就是:

语义搜索能力。

而不是:

死板关键词匹配。


4、为什么 ChatGPT 看起来像理解人话?

因为:

它不是只认:

字。

而是认:

语义向量。

例如:

下面两句话:

我饿了
我想吃饭

虽然字不同。

但:

Embedding 后。

距离很近。

于是模型知道:

表达的是类似意思。

所以:

AI 才能:

理解你的真实意图。


5、一个最形象的比喻

把 Embedding 想象成:

给所有词建立“朋友圈”。

比如:

“猫”的朋友圈:

狗
宠物
小动物
猫粮
喵星人

离得都近。

但:

飞机
数据库
火箭

离很远。

于是:

AI 慢慢学会:

谁和谁关系好。

这就是:

语义理解。


6、一句话理解 Embedding

如果让我一句话解释:

Embedding = 把文字变成有意义的数学位置。

让 AI:

开始理解“意思”。

而不只是:

死记编号。


二、程序员视角:Embedding 到底是什么?

下面进入:

程序员模式。

尽量讲专业,但不搞学术劝退。


1、Embedding 的本质是什么?

一句话定义:

Embedding 是离散数据的低维稠密向量表示。

什么意思?

原始 Token:

是:

离散 ID

例如:

cat = 1021
dog = 2409
car = 9002

问题:

这些数字:

没有语义关系。

模型无法直接学习。

于是:

通过:

Embedding Layer

映射成:

Dense Vector(稠密向量)

例如:

cat

可能变成:

[0.13, -0.55, 0.82, ...]

768维。

或:

1536维。

甚至:

4096维。


2、Embedding 的核心目标

目标:

让相似语义更接近。

例如:

king
queen
man
woman

经典例子:

向量关系:

king - man + woman ≈ queen

说明:

Embedding:

已经学到:

语义规律。

不是死记硬背。


3、Embedding 的工作流程

完整链路:

文本
↓
Tokenizer
↓
Token ID
↓
Embedding Layer
↓
向量表示
↓
Transformer

例如:

输入:

I love AI

可能变:

[101, 388, 923]

再变:

[
 [0.12, -0.9, ...],
 [0.88, 0.2, ...],
 [-0.11, 0.65, ...]
]

然后:

进入:

Attention。

开始计算语义关系。

所以:

Embedding 是 Transformer 的入口。


4、为什么 Embedding 能表达语义?

因为:

训练时。

模型不断优化:

目标:

让有关系的词更近。

例如:

上下文常出现:

猫 → 宠物 → 喵

模型逐渐学会:

它们应该靠近。

而:

猫 → 火箭

关系弱。

距离变远。

于是:

形成:

高维语义空间。


5、什么是向量相似度?

Embedding 最大价值:

比较“像不像”。

常见计算:

余弦相似度

公式:

\cos(\theta)=\frac{A\cdot B}{|A||B|}

作用:

判断两个向量方向是否接近。

越接近:

越相似。

例如:

内容 相似度
猫 vs 狗 0.91
猫 vs 宠物 0.88
猫 vs 飞机 0.09

于是:

AI 知道:

谁更像谁。


6、为什么 RAG 离不开 Embedding?

现在最火:

RAG(检索增强生成)

核心就是:

向量检索。

流程:

文档
↓
Embedding
↓
向量数据库
↓
用户问题 Embedding
↓
相似度匹配
↓
返回相关内容

所以:

你搜:

电动车推荐

也能找到:

新能源汽车排行榜

因为:

语义接近。


7、常见 Embedding 模型

例如:

OpenAI text-embedding 系列

做:

语义检索


Google embedding models

做:

多模态向量


开源:

  • Sentence Transformers

  • Hugging Face Embedding Models

  • BGE

  • E5

广泛用于:

  • RAG

  • 搜索

  • 推荐系统

  • 相似问答


三、一个最形象的比喻

如果:

Token

是:

乐高积木。

那么:

Embedding

就是:

给每块积木贴上“属性标签”。

例如:

标签:

动物
宠物
毛茸茸
可爱

于是:

模型知道:

猫和狗关系近。

猫和飞机关系远。

所以:

Embedding 是 AI 理解意义的开始。


四、一句话总结

小白版总结:

Embedding 是把文字变成有意义数学坐标的方法。

让 AI:

理解“意思”。


程序员版总结:

Embedding 是将离散 Token 映射为连续稠密向量的过程,使模型能够进行语义建模和相似度计算。


最后

如果你刚开始学习 AI。

建议学习路线:

Token
↓
Tokenizer
↓
Embedding
↓
Attention
↓
Transformer
↓
LLM
↓
RAG

因为:

Token 让 AI 看见文字。

Embedding 让 AI 开始理解意思。

理解 Embedding。

你才真正理解:

为什么 AI 能做语义搜索、智能问答、知识库检索,以及 RAG 的底层逻辑。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐