type
status
date
Jul 15, 2024 05:21 AM
slug
summary
tags
category
icon
password
底层逻辑
假设:人类语料数据中包含了理性形成所需的全部信息
从语言中学习理性表现的统计规律,把学习到的规律以矩阵参数的形式保存在模型中
大模型本质上学会的是语言符号排列组合中的数据规律
漏洞:记忆不包含全部的体验,人的记忆与当时的场景有极大的情绪和体验缺失
这中的微妙在fantasy和实际发生时的体验差异可做类比
大模型具体原理解析
- 将文字,声音,图像,视频等数据转换为可计算的数字(向量),这一步被称为embedding
- 将原始数据切分为不重不漏的小块(token)
- 可以理解为字典
- 将每个小块映射为一组向量
- 最小单元小块越多,向量越复杂(维度越高)
- 向量包含位置信息
- 通过注意力机制对一组输入数据的向量进行数值调整(主要包含,query,key,value三个模块)(此部分大概占了大模型总参数量的三分之一)
- 注意力机制解决的问题是同一个token在不同上下文环境下能表示不同的意思(ie要有不同的向量值表示)
- 注意力机制对特定token的向量调整,体现为在空间中方向的变化
- 注意力机制的方法可以简单理解为,首先通过一组参数矩阵(Wq)对原输入中的每一个token对应的向量做乘法做出一个结果(query,可以简单理解为对每个token做了询问),然后用另一组参数矩阵(Wk)对原向量再做一遍乘法得出一个结果(key,可以简单理解为对每个token做了回答),两个结果矩阵相乘,对于数值较大的token点相互之间关系强,数值越小相互越没关系
- 然后对上一步query和key的点积结果进行归一化,形成0-1的概率参数
- query和key的规模完全对应输入的token数量
- 然后与前面的query和key类似,还要对原token向量乘以一个Wv的参数矩阵得到一个value(可以简单理解为同一个token在不同语境下的向量差值),用value乘以前面点积结果(相关概率),得到一个相当于被上文影响后的最终差值,把差值与原向量相加得到注意力调整后的新向量值
- key和query参数量之和最好等于value的参数量
- 在实际的大模型中,这个attention机制是多层并行运转的,希望尽可能获得丰富的上下文信息
- 注意力机制调整后,将这些单位向量表示在空间中,意思越接近的token,其向量在空间中也应该越接近
- 将向量输入一组多层感知机(此部分大概占据大模型总参数量的三分之二,储存了大模型训练时学习到的知识和逻辑)
- 与前面的注意力机制不同,在每层神经网络中,每组向量之间不再发生关系
- 每层神经网络都类似于针对向量中的每个值进行提问,然后根据提问结果进行向量值更新
- 多层感知机(也就是神经网络)所采用的算法基本都是反向传播算法
- 多层感知机中的每一层参数就是权重
- 大模型所谓的参数量就是每层权重数的加总
- 每层网络的权重数等于向量长度乘以token宽度(即最小token个数)
- 向量不断通过由注意力机制与多层感知机组成的多层大模型,最终生成一组结果向量,由这组向量来给出单字接龙下一个字的概率分布结果,这一步也被称为unembedding
- 因为最终用于计算概率分布的向量只是最后一列向量(可以简单理解为输入一段话的最后一个字对应的向量),需要把整段上下文中包含的信息都纳入到最后一个词对应的向量中
- 在实际的大模型中,多层大模型被分组为不同的模块
- 与embedding的矩阵正好相反,长度是token个数,宽度是向量长度
- 向量结果要最终成为一个概率分布结果,需要经过softmax的算法,本质就是最小数接近零,最大数接近1,所有结果加总为1;每个值做自然指数,加和在除;在这个过程中给向量做个t的除法,再取自然指数,可以对概率分布结果形成影响,t越大,概率分布越平均,t越小,概率分布越极端;结果t越大越随机,越小越准确
大模型简化理解
- 为什么大模型出现以前的AI模型只能解决特定领域的问题?
- 以前的模型训练的数据只专注于特定领域,且模型参数太少,无法容纳足够的常识和逻辑
- 以前的AI模型没有注意力机制,输入只能是特定范围内的单变量,有了注意力机制,大模型允许输入本身不再被限制,其动态含义可以被注意力机制进行调制
- 作者:Will
- 链接:willtoworld.site/article/b3a4cb98-c12d-48f3-9d5e-e80f6af33556
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。