Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

用最直观的动画,讲解LLM如何存储事实,3Blue1Brown的这个视频又火了

本文根据视频整理而来,有听错或理解不当之处欢迎在评论区指出。


向大模型输入「Michael Jordan plays the sport of _____(迈克尔・乔丹从事的体育运动是……)」,然后让其预测接下来的文本,那么大模型多半能正确预测接下来是「basketball(篮球)」。

这说明在其数以亿计的参数中潜藏了有关这个特定个人的相关知识。用户甚至会感觉这些模型记忆了大量事实。

但事实究竟如何呢?

近日,3Blue1Brown 的《深度学习》课程第 7 课更新了,其中通过生动详实的动画展示了 LLM 存储事实的方式。视频浏览量高达 18 万次。
图片
去年 12 月,谷歌 DeepMind 的一些研究者发布了一篇相关论文,其中的具体案例便是匹配运动员以及他们各自的运动项目。
图片
虽然这篇论文并未完全解答有关 LLM 事实存储的问题,但也得到了一些颇为有趣的结果,其中的一个重点是:事实保存在网络中的一个特定部分,这个部分也就是我们熟知的多层感知器(MLP)。

在 3Blue1Brown 刚刚更新的这期视频中,他们用 23 分的视频演示了大型语言模型如何存储和处理信息,主要包括以下部分:

  • LLM 中隐藏的事实是什么
  • 快速回顾 Transformers
  • 示例
  • 多层感知器
  • 计算参数
视频地址:https://www.youtube.com/watch?v=9-Jl0dxWQs8

在演示视频中,3b1b 的作者口齿清晰、语言标准,配合着高清画面,让读者很好地理解了 LLM 是如何存储知识的。

很多用户在看完视频后,都惊讶于 3Blue1Brown 教学质量:
图片
还有网友表示,坐等更新这期视频已经很久了:
图片
接下来我们就深入 MLP 的细节吧。在这篇文章中,机器之心简要介绍了核心内容,感兴趣的读者可以通过原视频查看完整内容。

MLP 在大模型中的占比不小,但其实结构相比于注意力机制这些要简单许多。尽管如此,理解它也还是有些难度。

为了简单,下面继续通过「乔丹打篮球」这个具体示例进行说明吧。

首先,我们先简单了解一下 Transformer 的工作流程。Transformer 的训练目标是基于已有 token 预测下一个 token(通常表示词或词组),而每个 token 都关联了一个高维向量。
图片
这些向量会反复通过两类运算:注意力(允许向量之间彼此传递信息)与多层感知器(MLP)。当然,它们之间还存在一个特定的归一化步骤。

在向量经过多次如此迭代之后,我们希望每个向量都已经吸收了足够多的信息。这些信息有的来自训练模型时植入模型权重的一般性知识,也有的来自上下文。这些知识就是模型预测下一 token 的依据。
图片
需要注意的是,这些向量编码的并不仅仅是单个词汇,而是会在信息在网络中流动时根据周围的环境和模型的知识吸收更加丰富的含义。

总之,每一个向量编码的信息都远远超过了单个词汇的含义,如此模型才能预测接下是什么。而存储这些信息就是 MLP(注意力的作用是将上下文结合在一起),也因此大模型的大多数参数都在 MLP 中(约三分之二)。
图片
继续「乔丹打篮球」这个示例。MLP 是如何存储这一事实的。
图片
首先我们做一些假设:在高维空间中有这样三个不同的向量,它们分别定义了乔丹的姓 Jordan 和名 Michael 以及篮球 Basketball。
图片
现在,如果该空间中有一个向量与 Michael 向量的乘积为 1,则我们认为该向量编码了 Michael 这一概念;而如果这个乘积为 0 甚至负数,则认为该向量与 Michael 没有关联。

同样,我们可以计算该向量与 Jordan 或 Basketball 的乘积,以了解其与这两个概念的关联程度。
图片
而通过训练,可让该向量与 Michael 和 Jordan 的乘积均为 1,此时就可以认为该向量编码了 Michael Jordan 这个整体概念。

MLP 的内部细节
图片
当这个编码了上述文本的向量序列穿过一个 MLP 模块时,该序列中的每个向量都会经历一系列运算:
图片
之后,会得到一个与输入向量同维度的向量。然后再将所得向量与输入向量相加,得到输出向量。

序列中的每个向量都会经历这样的操作,此时这些操作都是并行执行的,彼此之间互不影响。
图片
对于「乔丹打篮球」,我们希望对于输入的「Michael Jordan」,经过一系列运算之后,能得到「Basketball」的向量。

首先来看这个过程的第一步。这个线性投射过程就相当于让输入向量乘以一个大型矩阵。这个矩阵里面的数据就是所谓的模型参数(model parameter)。你可以将其视为一个布满控制旋钮的仪表盘 —— 通过调整这些参数,我们就能控制模型的行为。
图片
对于矩阵乘法,视频中分享了一个视角。我们可以将矩阵乘法看作是将矩阵的每一行都视为一个向量,然后将这些行与被处理的向量(这里用 E 表示,意为 embeding,即嵌入)进行一系列点乘。
图片
如果我们假设该矩阵的第一行刚好编码了「First Name Michael」且被处理向量也编码了它,那么所得的点积就约为 1。

而如果它们同时编码了姓和名,那么所得的结果应该约等于 2。
图片
你可以认为该矩阵的其它行正在并行地处理其它问题。
图片
另外,通常来说,这一步还会向输出添加另一个向量,也就是所谓的偏置向量,其中的参数是从数据中学习得到的。
图片
在这个例子中,我们可以看到这个偏置向量的第一个元素为 -1。也就是说在最终的输出向量中,之前得到的相关点积减去了 1。为什么要这样操作?这是因为这样一来,当且仅当向量编码了全名「Michael Jordan」时,所得向量的第一项为正数,否则就为 0 或负数。

在实践中,模型矩阵的规模非常大,比如 GPT-3 的矩阵有 49152 行和 12288 列(这个列数就是嵌入空间维度)。
图片
事实上,这个行数恰好是嵌入空间维数的四倍。其实这只是一种设计选择,你可以让它更多,也可以让它更少。
图片
接下来我们用更简洁的方式表示这个矩阵和向量,如下动图所示:

图片

经过上述线性过程之后,需要对输出向量进行整理。这里通常会用到一个非常简单的函数:整流线性单元(ReLU)。

深度学习社区传统上喜欢使用过于花哨的名字,这个非常简单的函数通常被称为整流线性单元(ReLU)。

继续我们的例子,中间向量的第一个元素在当且仅当全名是 Michael Jordan 时才为 1,否则为零或负数,在将其通过 ReLU 后,会得到一个非常干净的值,其中所有零和负值都被截断为零。因此对于全名 Michael Jordan,该输出为 1,否则为 0。这个行为和「与门」非常相似。另外 ReLU 还有一个相对平滑的版本 GeLU。
图片
接下来又是一个线性投射步骤,这一步与第一步非常相似:乘以一个大型矩阵,加上偏置,得到输出向量。
图片
但这一次,对于这个大型矩阵,我们不再以行的思路来思考它,而是以列的思路来看。这些列的维度与向量空间一样。
图片
如果第一列表示的是「Basketball」且 n_0 为 1(表示该神经元已激活),则该结果就会被添加到最终结果中;否则就不会影响最终结果。当然,这些列也可以表示任何概念。
图片
类似地,我们将这个大矩阵简化表示为 W ↓,将偏置表示为 B↓,并将其放回到图中。
图片
举例来说,如果输入向量中同时编码了名字 Michael 和姓氏 Jordan,那么触发操作序列后,便会得到指向 Baskerball 方向的输出向量。
图片
这个过程会并行地针对所有向量执行
图片
这就是 MLP 的运算过程:两个矩阵乘积,每个都添加了偏置。此前这种网络曾被用来识别手写数字,效果还算不错。
图片
GPT-3 中有 1750 亿参数是如何计算的?

在接下来的章节中,作者介绍了如何计算 GPT-3 中的参数,并了解它们的位置。
图片
对于 GPT-3 来说,嵌入空间的大小是 12288,将它们相乘,仅该矩阵就有六亿多个参数,而向下投影(第二个矩阵)具有相同数量的参数,只是形状进行了转置,所以它们加起来大约有十二亿参数
图片
此外,作者表示还需要考虑另外几个参数,但这只占总数的很小一部分,可忽略不计。嵌入向量序列流经的不是一个 MLP,而是 96 个不同的 MLP,因此用于所有这些块的参数高达 1000 多亿,这约占网络中总参数的三分之二。

图片

图片
最后,将注意力块、嵌入和 unembedding 等组件的所有参数加起来,总计可以得到 1750 亿参数
图片
另外值得一提的是,还有另一组与归一化步骤相关的参数,不过视频示例中跳过了这些参数,它们只占总数的很小一部分。
图片
视频最后介绍了叠加(Superposition)这一概念。证据表明,单个神经元很少像迈克尔・乔丹那样代表某个单一特征,实际上可能有一个很好的理由,这与目前在可解释性研究人员中流传的一个想法有关,称为 Superposition,这是一个假设,可能有助于解释为什么这些模型特别难以解释,以及为什么它们的扩展性出奇地好。
图片
感兴趣的读者可以参考原视频,了解更多内容。

3blue1brown 介绍

3blue1brown 是一个专门制作可视化讲解视频的频道,其内容覆盖数学、人工智能等领域,每门课都配有直观生动的动画演示,帮助观众加深对概念定理的理解。

除了 YouTube 上 640 万订阅者之外,3b1b 在 B 站上还有官方账号,粉丝数量超过 215 万,每个视频都是 10 万以上播放量,甚至有老师在课堂上播放该频道的视频。对于一个硬核教学 UP 主来说,这样的成绩几乎是无人可及了。

作为一直以来都十分受欢迎的理解数学概念的网站,3blue1brown 的可视化一直都做得非常好。在本期视频中,我们可以直观感受到了。

3b1b 的创立者 Grant Sanderson,毕业于斯坦福大学数学系,他的大部分视频和动画引擎是独立完成的,这是他此前在斯坦福学习时的业余项目。

在斯坦福,Grant「走了点计算机科学的弯路」,随后毕业加入了 Khan Academy 并担任了两年的数学讲师,在 2016 年之后,他开始全身心投入 3b1b 的工作中。

如果你对自己的学习能力信心不足,或许看看 3b1b 的内容会是一个好主意,全程动画演示,让你对知识点明白的彻彻底底。

参考链接:https://www.youtube.com/watch?v=9-Jl0dxWQs8
入门深度学习3blue1brown
相关数据
DeepMind机构

DeepMind是一家英国的人工智能公司。公司创建于2010年,最初名称是DeepMind科技(DeepMind Technologies Limited),在2014年被谷歌收购。在2010年由杰米斯·哈萨比斯,谢恩·列格和穆斯塔法·苏莱曼成立创业公司。继AlphaGo之后,Google DeepMind首席执行官杰米斯·哈萨比斯表示将研究用人工智能与人类玩其他游戏,例如即时战略游戏《星际争霸II》(StarCraft II)。深度AI如果能直接使用在其他各种不同领域,除了未来能玩不同的游戏外,例如自动驾驶、投资顾问、音乐评论、甚至司法判决等等目前需要人脑才能处理的工作,基本上也可以直接使用相同的神经网上去学而习得与人类相同的思考力。

https://deepmind.com/
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

人工智能技术

在学术研究领域,人工智能通常指能够感知周围环境并采取行动以实现最优的可能结果的智能体(intelligent agent)

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

神经元技术

(人工)神经元是一个类比于生物神经元的数学计算模型,是神经网络的基本组成单元。 对于生物神经网络,每个神经元与其他神经元相连,当它“兴奋”时会向相连的神经元发送化学物质,从而改变这些神经元的电位;神经元的“兴奋”由其电位决定,当它的电位超过一个“阈值”(threshold)便会被激活,亦即“兴奋”。 目前最常见的神经元模型是基于1943年 Warren McCulloch 和 Walter Pitts提出的“M-P 神经元模型”。 在这个模型中,神经元通过带权重的连接接处理来自n个其他神经元的输入信号,其总输入值将与神经元的阈值进行比较,最后通过“激活函数”(activation function)产生神经元的输出。

机器之心机构

机器之心,成立于2014年,是国内最具影响力、最专业、唯一用于国际品牌的人工智能信息服务与产业服务平台。目前机器之心已经建立起涵盖媒体、数据、活动、研究及咨询、线下物理空间于一体的业务体系,为各类人工智能从业者提供综合信息服务和产业服务。

https://www.jiqizhixin.com/
语言模型技术

统计式的语言模型是借由一个几率分布,而指派几率给字词所组成的字串。语言模型经常使用在许多自然语言处理方面的应用,如语音识别,机器翻译,词性标注,句法分析和资讯检索。

推荐文章
暂无评论
暂无评论~