文 | HW君
系列文章:
- 智能 | #0 人工智能的哲学原理
- 智能 | #1 在神经网络之前
- 智能 | #2 人工智能的三种流派
- 智能 | #3 可计算性,在图灵机之前
- 智能 | #4 通用计算机的起源
- 智能 | #5 一进制图灵机
- 智能 | #6 扩展二进制图灵机
- 智能 | #7 编码第N号图灵机
- 智能 | #8 通用图灵机
- 智能 | #9 图灵停机问题
- 智能 | #10 康托尔对角线与停机悖论
- 智能 | #11 超越算法
- 智能 | #12 图灵测试的两个假设
- 智能 | #13 ChatGPT的启示
- 智能 | #14 从图灵机到人工神经网络
1. 知识存储在哪
使用过类似ChatGPT之类大模型的人,大多会惊讶于模型的知识渊博和无所不知,仿佛对它提问所有问题,都能得到一个较好的回答。
GPT模型所展示出来的能力是惊人的,但它的基本功能在某种程度上却相当简单。
首先从互联网、书籍等获取人类创造的海量文本样本,然后训练一个神经网络。
然后这个神经网络用来从提示文本开始,继续生成与其训练数据相似的文本。
但要知道GPT的背后并没有一个存储知识的数据库。
我们打开大模型的内部,里面只有数以亿计的人工神经元,储存着数不清的权重参数。
它的内部并没有一个类似维基百科之类的知识存储库,当我们对它提出一个问题时,它并不是跑到某个数据库里搜索知识然后回复我们。
GPT只不过是输入我们发给它的文本,不断预测出下一个词,然后添加概率比较高的词。
但是这种预测并添加词汇的做法,却可以产生高质量的回复,给我们提供有效的知识。
那么GPT学到的这些知识、概念、语义,或者准确来说,这些信息到底是怎么存储在GPT之中的呢?
2. 无尽延伸的意义
我们看这样的一个词汇「人工智能」。
它有4个中文字符,在Windows电脑上存储成TXT文本的话,只占约 0.01 kb,信息量非常小。
但实际上「人工智能」这个词汇的语义信息是非常大的。
我们看到这个词时,会联想到非常非常多的概念和意义。
我们可以用一个数据库,例如维基百科,来描述和罗列关于「人工智能」的概念和意义:
维基百科的「人工智能」词条很长,但它远远不能囊括这个概念的所有信息。
一个普通人类可以从「人工智能」这个概念开始展开联想,构思出几乎无穷无尽的思想,然后描述成文本叙述出来。
GPT大模型也可以做到,它可以从给定的提示词开始,源源不断预测下一个词汇并表达出来。
实际上人工神经网络存储信息的方式,和人类意识存储信息的方式是一样的。
概念和意义存储在人脑神经网络构建的意识空间中,正如GPT将词汇概念存储在神经网络权重参数之中。
3. 高维向量空间
因为OpenAI的GPT-4并没有开源,所以我们以更透明的GPT-3举例。
在GPT中,一段文本会被分为多个小块,每个小块称为「token」,我们可以近似将其理解为一个单词。
GPT-3的使用的嵌入矩阵(Embedding Matrix)大小为 50257×12288。
可以理解为GPT-3的词库里有50527个单词,每个单词为一个12288个数组成的数组。
实际上每一个单词(token)在数学上就是一个12288维空间里的向量。
GPT-3所做的,就是把输入的文本当作一串串12288维的向量,然后流经神经网络进行计算,最终得出下一个概率更高的12288维的向量。
也就是说,GPT-3是在高维的向量空间里进行语言的理解和生成的。
单个词的嵌入向量是12288维的,但在中间流经神经网络的多层感知机(MLP)部分时,会将输入的12288维嵌入向量,升维4倍到49152维进行处理,再重新降维回12288维。
这一步骤会重复很多次,结合注意力机制(Attention),最终在50527个单词组成的向量矩阵(嵌入矩阵)中找到概率较大的12288维向量进行输出。
而更先进的GPT-4,则会使用更多得多的维数空间。
4. 高维意义空间
人是生活在3维世界的动物,因此没有办法想象高维中的情况。
不过数学家可以借助数学工具来思考高维空间的现象。
3Blue1Brown举过一个非常直观的例子,把12288维的嵌入向量投射到3维空间里进行理解。
例如「man」和「woman」这两个12288维向量,两者之间的向量差,与「uncle」和「aunt」之间的向量差相近。
E(woman) – E(man) = ΔE
E(aunt) – ΔE ≈ E(uncle)
【官方双语】直观解释大语言模型如何储存事实 | 【深度学习第7章】
同样的「king」和「queen」,「father」和「mother」,「son」和「daughter」……都有着类似的向量差。
这个向量差,其实就包含着「性别」这一信息。
当然上述只是在3维空间里模拟它们的关系,实际上的联系是发生在12288维的高维空间里的。
为什么一定要在这么高的维度上操作单词?
因为只有在高维空间里才能容纳更多近似正交的向量。
两个高维空间里的向量,如果完全正交,代表它们背后的两个概念没有关联。
如果不完全正交,代表两个概念之间有所关联。
在数学上可以用余弦相似度(cosine similarity)来衡量这种关联性。
在3维空间里最多只能容纳3个近似正交的向量。
而在高维空间里,可以容纳的近似正交的向量的数量会指数级增长。
这意味着高维空间可以存储更多的独立的、但与其它概念有所联系的概念。
因此智能在高维空间里涌现出来。
5. 人类意识的解释
到这里我们理解了人工神经网络是如何存储信息的。
即信息是以向量的形式存储在高维空间里的。
因此反过来我们也可以理解人类的意识。
人类大脑中的神经网络所形成的思想、意识、概念、模因……其实也可以看做是发生在高维向量空间之中的。
(本章节完,敬请期待下一节)
By HW君 @ 2025-02-09