微信扫码
添加专属顾问
我要投稿
和大部分人一样,我对自然语言处理和语言模型的了解从 ChatGPT 开始。也和大部分人一样,第一次接触就被 ChatGPT 的能力所震惊,硅基智能确实做到了理解人类的语言。
我也产生了几乎人人都会有的疑问:怎么做到的?硅基智能潜力是否会远胜于碳基智能?
在这篇文章中,我并不试图去解释 ChatGPT 的一切,而是将从原理出发,思考计算机理解语言的关键要素,这些思考落到了一个具体的切入点:embedding,一个第一眼难以理解但极为关键的东西。
Embedding 这个词直译为中文是:嵌入,这是让人头秃的两个字:啥是嵌入?嵌入了啥?跟自然语言又有啥关系?
嵌入的体现形式是一组具有固定长度的数组,或者叫做向量,但它究竟是什么?为什么需要它?它在计算机理解自然语言的过程中扮演的是怎样的角色呢?
要回答这些问题,不妨先思考:让计算机理解自然语言,我们需要做什么?
计算的基础是数,而自然语言是文字,因此很容易想到要做的第一步是让文字数字化,为行文方便,我们将这个过程叫做编码。
要设计编码的方法,自然需要思考的问题是:哪些性质是编码规则必须要满足的?
有一条是显然可以给出的:
性质一:每一个词具有唯一量化值,不同词需要具有不同的量化值
背后的逻辑不言自明:一词多数,或是多词一数,都会增加计算机理解语言的难度,这种难度就如同多音字或是多义词给人类造成的困难,尽管人类的智慧让我们可以克服这些障碍,但对于仍然处于培育智能阶段的计算机,为它降低一些难度显然是必要的。
满足性质一的方法非常容易设计,例如:首先穷举出人类所有的文字或词组,这个集合必定是有限集。
例如汉字有 10 万个,辞海收录的词大概 60 万个,字母有 26 个,英语单词数小于 100 万个,由于是有限集,我们可以给每一个词分配一个固定的数字。
A --> 1
Abandon --> 2
Abnormal --> 3
...
这便完成了符合性质一的编码。例如 "Hello World" 这句话就可以作为 ”3942 98783“ 这样的数字序列输入,从而可以被计算机处理。
但这一方法存在的问题是显然的:数的值与词的义是割裂的。
这种割裂会产生什么问题?可以通过一个简单的例子来思考:在英语中,a 和 an 是完全同质的词,而 a 和 abnormal 则是差异极大的词。
如果按照上述编码方式, a 可能会被赋予数值 1,abnormal 会被赋予数值 2,an 会被赋值赋予数值 123 ,这个时候我们可能会发现 a 和 abnormal 似乎在数值上更加靠近,而 a 和 an 这两个同质的词却隔得非常远。
这时容易想到要添加一条性质,来确保数字化后的数值与词义之间的关联:
性质二:词义相近词需要有"相近"的量化值;词义不相近的词量化值需要尽量“远离”。
上面的例子中虽然提到了字典编码法会割裂数值和词义,却未能解释为什么数值和词义应该关联,基于直觉的思考会认为这一点是显然的,但模糊的显然容易掩埋值得被清晰梳理的逻辑。
允许计算模型的设计有更大的自由度。
第 1 条怎么理解?如果说词的数值分布与词义无关,这会使得文本的序列变得过于随机,例如:
句子一:张三在讲话。
句子二:李四在发言。
以下的例子或许足够直观:如果近义词具有相近的量化值,词和值之间的关系或许会是这样,看起来就是相似的形状。
张 --> 105, 李 --> 99
三 --> 3, 四 --> 4
在 --> 200,
讲话 --> 300, 发言 --> 295
而如果近义词具有不相近的量化值,词和值之间的关系或许会是这样,一眼看上去似乎没什么关系:
张 --> 33, 李 --> 1
三 --> 5, 四 --> 200
在 --> 45,
讲话 --> 2, 发言 --> 42
不同词所编码的数值,是否基于词义本身的相似性形成高区分度的聚类,会直接影响到语言模型对于输入数据的压缩效率。
我们会希望 1 和 2 都可以,甚至 3 可能也不会太离谱,因此 1 和 2 所代表的词在词义上最好有某种共性,而不是像 "a" 和 "abandon" 一样,几乎找不到词义上的关联。当相近的词聚集到一起,推断出有效输出的概率就会更高。
例如:
A = ”Love“,B = ”Passion“,C = "Rage"
A = ”Comedy“,B = ”Play“,C = "Game"
今天语言模型,无一不是基于词义向量,而词义向量真正开始有效,正是从 Word2Vec 开始。
Word2Vec 的两类做法分别是:
上下文 --> 神经网络 --> 中心词
看看 ChatGPT 举的这个例子:
句子 1:Driven by an insatiable thirst for knowledge, she stayed late every night, her eyes dancing across the pages of books as if they were starry skies.
句子 2:Isn't it unusual, that she, prompted by an unquenchable intellectual curiosity, burns the midnight oil, pouring over pages as though navigating constellations?
段落的 embedding 可以作为基于语义搜索的高效索引,AI 绘画技术的背后,有着这两种 embedding 的互动,未来如果有一个大一统的多模态模型,embedding 必然是其中的基石和桥梁 。
由 AI 掀起的时代浪潮毫无疑问地要来了,今天是一个还难以看清未来的节点。当下能做的为数不多的事情之一还是保持学习。希望这篇文章可以帮到正在学习的你。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-04-30
通俗易懂的梳理MCP的工作流程(以高德地图MCP为例)
2025-04-30
一文说明 Function Calling、MCP、A2A 的区别!
2025-04-30
MCP很好,但它不是万灵药|一文读懂 MCP
2025-04-30
旅行规划太难做?5 分钟构建智能Agent,集成地图 MCP Server
2025-04-29
10万元跑满血版DeepSeek,这家公司掀了一体机市场的桌子|甲子光年
2025-04-29
谷歌大神首次揭秘Gemini预训练秘密:52页PPT干货,推理成本成最重要因素
2025-04-29
一文说清:什么是算法备案、大模型备案、大模型登记 2.0
2025-04-29
MCP:AI时代的“万能插座”,大厂竞逐的焦点
2024-08-13
2024-06-13
2024-08-21
2024-09-23
2024-07-31
2024-05-28
2024-08-04
2024-04-26
2024-07-09
2024-09-17
2025-04-29
2025-04-29
2025-04-29
2025-04-28
2025-04-28
2025-04-28
2025-04-28
2025-04-28