谁都能听懂的Transformer架构-大模型学习知识的过程和原理~像教小孩识字一样简单
自动驾驶汽车为什么能认出红绿灯?这些神奇功能的背后,其实藏着一个会"学习"的数学模型——神经网络。大模型的前馈网络、注意力计算网络都是基于神经网络进行计算,那神经网络是怎么学习到知识的?
你有没有想过,手机里的语音助手是怎么听懂你说的话?或者自动驾驶汽车为什么能认出红绿灯?这些神奇功能的背后,其实藏着一个会"学习"的数学模型——神经网络。大模型的前馈网络、注意力计算网络都是基于神经网络进行计算,那神经网络是怎么学习到知识的?
一、大模型是模拟人脑学习的过程(多层网络)
人的大脑里有860亿个神经元,它们通过突触(神经连接)传递线索(电信号)。当看到"苹果"这个词时:
-
视觉神经元率先破译文字形状
-
语言中枢神经元联想发音
-
记忆神经元调取吃苹果的记忆
-
最终由运动神经元指挥发音器官
神经网络正是模仿这种层级协作:输入层神经元处理原始数据(像视觉神经),隐藏层提取特征(如语言中枢),输出层给出结果(类似运动神经)。
人脑学习过程:
① 接收外部信号:通过树突来接收外界的信号,并将信号传递到细胞体;
② 处理信号:细胞体整合接收到的信号,如果信号量达到一定阈值,细胞体产生电脉冲;
③ 输出处理结果:电脉冲通过轴突并通过突触传递到其它神经元;
人工神经网络学习过程:
① 接收输入数据:用变量x来模拟表示神经元的输入信号,用参数w来表示信号的强度;
② 处理数据:对输入的数据进行处理,利用激活函数得到处理结果;
③ 输出处理结果:将激活函数处理结果进行输出;
人工神经元是一种计算模型,是对生物神经元的抽象和模拟,它包括输入、处理和输出三个部分。通过接收来自外部的多个带有不同权重的输入数据,经过激活函数的处理后对外输出结果,模型的神经网络就是学习到这些权重和参数,在使用过程中,可以准确的输出想要的结果。其实和我们学习的 y=kx+b 一样,例如:当学习到 K= 2,b = 3,我们输入x = 1,就会立刻知道 y = 5。
我再举个复杂一些的例子:
我们想要判断某个同学能否上某个大学的录取分数线,可以用单个神经元来进行决策,该神经元以各学科的分数作为输入变量,以该大学以往的录取分数线作为阈值,以阶跃函数作为激活函数,就可以利用该神经元来判断学生能否考上某大学了。
• 输入 x :这里输入变量为各个学科的分数值。
• 权重 w :高考总分中每一个学科的权重都相同,都为1。
• 偏置 b :假设根据以往数据,要考上该大学需要660分,那么偏置b设置为-660。
• 激活函数 f :采用阶跃函数作为激活函数,当6个学科的总分大于660分时 ,加权输入大于等于0 ,那么阶跃函数输出为1 ,否则为0。
• 输出 y :根据激活函数的输出结果,1代表能够考上该大学,0代表不能考上该大学。
二、用错题本教大模型学知识-损失函数
我们希望模型能够很好地拟合样本数据,因此用二次损失函数来表示这种拟合的好坏,如果模型表现较好,那么损失函数的结果值将相当小;如果模型表现不好,模型输出值与目标值偏离较大,那么损失函数结果值将变得较大。
这里看似比较复杂,其实原理非常简单,我举一个例子:
假设:y = kx+b ( K= 2,b = 3,这是原始参数,大模型未学习时,值是随机初始化的) ,这时我们输入x = 1,y应等于5,然后我们拿出学习资料的答案,告诉他,这不对,x=1时,y 应该等于6。
这时,损失函数就起到作用了,损失函数指导了两个样本的差异值,然后通过梯度下降算法,将参数和权重(k、b)进行更新,经过多轮的训练,模型会学习到y = kx+b ,(k=2,b=3),当然k和b组合非常多,这种多维度的参数,就代表了不同的语义含义,使大模型有了通用能力。
三、聪明的纠错方法-反向传播(梯度下降算法)
神经网络有个神奇的本领——它能倒着找错误。就像发现作业本上有错字,聪明的学生会回头检查自己是在哪一步写错了笔画。通过"反向传播"算法,系统会从最后的答案出发,逐层检查每个神经元的贡献,找出需要调整的参数。
可以把损失函数想象成高低起伏不同的一座山,假设你站在山腰某个位置(初始参数),目标是找到海拔最低点(最小损失值)。此时你会:
- 探测周围坡度
(计算损失函数梯度):拐杖每戳一次地面,就能感知八个方向的倾斜度
- 选择最陡峭的下坡方向
(选择损失函数最大值,作为下山路径)
- 迈出一步
(参数更新):即损失函数求对初始参数的偏导数 并与 学习率(训练过程人为定义的参数) 做乘法
梯度下降算法,核心就是求损失函数的最小值,其基本思想是首先初始化权重和偏置参数,然后利用训练数据根据一定的方法来不断学习更新参数,使得损失函数值逐步减少,直至达到收敛。
四、遗忘曲线:机器也需要复习-Dropout机制
经过成千上万次练习后,神经网络会形成独特的"思维路径"。就像小孩反复练习后写字一样,它通过不断试错调整参数,最终建立认知链条。
在模型训练过程,需要加入Dropout机制,将部分知识遗忘,避免出现过拟合的情况。
有趣的是,这种学习方式和人类很像:输入信息→产生反应→对比结果→修正错误→强化记忆。只不过神经网络用数学矩阵代替了大脑神经元,用梯度下降代替了反思总结。
更多推荐
所有评论(0)