3BLUE1BROWN深度学习笔记

神经网络

卷积神经网络->擅于图像识别

长短期记忆网络->擅于语音识别

最经典 多层感知器MLP(multilayer perception)

神经网络的结构

Neural netword 神经网络

 1.neuron神经元   装有一个数字的容器 神经元中装着的数叫做“激活值” activation

将神经元看做一个函数,输入是上一层所有神经元的输出,输出是0到1的值。

eg:识别手写数字 第一层激活值代表像素的灰度值;最后一层激活值代表输入图像对应着哪个数字的可能性;中间为隐含层,进行着处理识别数字的具体工作。从第一层开始,将像素拼成短边,将短边拼成图案,将图案拼成数字,直到最后一层。

 2.connected

在神经网络运作的时候,上一层的激活值将决定下一层的激活值。

w权重,a灰度值,sigmoid将激活值变到0与1之间

权重表示第二层的神经元关注什么样的像素图案,偏置表示加权和得有多大才能让神经元的激发变得有意义。机器 学习:找到正确的权重和偏置。

训练单个样本的“代价”:衡量模型预测值与真实值之间差异的函数。预测值与真实值之间差的平方和相加

单个样本上的代价也叫做Loss“损失/误差”

梯度:函数值增长最快的方向。梯度向量的长度代表了这个最抖的斜坡到底有多抖。

反向传播算法(Back Propogation)计算梯度

网络学习 实质上是找到特定的权重偏置,让代价函数的值最小。为了达到这个结果,代价函数非常有必要是平滑的,这样才能每次挪一点点,最后找到一个局部最小值。这也解释了为什么人工神经元的激活值是连续的。

梯度下降法:按照负梯度的倍数,不停调整函数输入值的过程。最终可以收敛到代价函数图中的局部最小值的地方。负梯度的正负号告诉我们输入向量这一项该调大还是调小,每一项的相对大小告诉我们改变哪个值影响更大。梯度向量值的大小表示各个权重偏置的相对重要度,标记出了改变哪个参数,性价比最高。

//赫布理论:一同激活的神经元关联在一起。权重的最大增长,即连接变得更强的部分,会发生在已经最活跃的神经元和想要更多的激发的神经元之间。

反向传播:单个训练样本想怎样修改权重与偏置,不仅是说每个参数应该变大还是变小,还包含了这些变化的比例是多大,才能最快地降低代价

将所有的训练样本过一遍反向传播,记录下每个样本想怎样修改权重和偏置,最后对变化值取一个平均值。得到的一系列的权重偏置的平均微调大小,就是代价函数的负梯度,或其标量的倍数。

随机梯度下降:实际操作中,如果梯度下降的每一步都用上每一个训练样本来计算的话,花费时间会过长。我们一般这么做:首先把训练样本打乱,然后分成很多组minibatch,然后算出minibatch下降的一步,这不是代价函数真正的梯度(计算真实梯度要用上所有的样本,而非子集),但每个minibatch都会给一个不错的近似,并且会大幅减少计算量。计算每个minibatch的梯度,调整参数,不断循环,最终收敛到代价函数的一个局部最小值上。

GPT 生成式预训练Transformer(Generative Pre-trained Transformer)

Generative:用来生成新文本的机器人

Pre-trained:模型经历了从大量数据中学习的过程。Pre暗示模型能针对具体任务,通过额外训练来进行微调。

Transformer是一种特殊的神经网络,一种机器学习模型。

        基于Transformer可以构建多种不同的模型,有的模型转录音频生成文本,有的文本转语音,有的根据描述生成图像。谷歌在2017年推出的原版Transformer,专注于把一种语言的文本翻译成另一种;变种即构建ChatGPT等工具的模型,输入一段文本、图像、音频,预测出文段接下来的内容,并将结果展现为接下来不同文本片段的概率分布。

聊天机器人生成特定单词时:

  1. 首先,输入内容被切分成许多小片段,成为token。在文本中,token往往是单词、单词片段或其他常见的字符组合。每个token对应一个向量,即一组数字,旨在设法编码该片段的含义。
  2. 向量随后经过注意力模块(attention block)处理,向量相互交流,通过相互传递信息来更新自己的值。注意力模块的工作,就是找出上下文中哪些词会改变哪些词的含义,以及这些词应该更新为何种含义。“含义”通过某种形式完全编码进了这些向量。
  3. 之后向量经过多层感知器(Multilayer Perceptron,向量并行经历同一处理。
  4. 注意力模块和多层感知器模块层层堆叠。最终将整段文字的所有关键含义,以某种方式,融入到序列的最后一个向量,然后对这最后一个向量进行某种操作,得出所有可能token的概率分布,即各个小块文本接下来出现的概率

        2、3步本质是大量的矩阵乘法。注意力模块是Transformer的核心。

深度学习是机器学习中的一种方法,机器学习采用数据驱动,反馈到模型参数,指导模型行为。深度学习在过去的几十年中展现出了出色的规模化能力,共同点是都使用反向传播。要让这种训练算法在大规模应用中有效运行,模型必须遵循某种特定的结构:输入的格式必须为实数数组。可以是一维数组、二维数组或者高位数组(也叫“张量”,tensor)。输入数据通常被逐步转换成多个不同的层,每一层的结构都是实数数组,最后一层看作为输出。在深度学习中,这些模型的参数通常被称为“权重”。因为这些模型的一个关键特征是 参数与待处理数据之间的唯一交互方式 就是通过“加权和”。可以将充满可调参数的矩阵,想象为 能够将代表待处理数据的向量 进行变换的工具。

Words->vectors的过程叫embedding空间中的方向能够承载语义。

两个向量的点积,可以被看做是衡量它们对齐程度的一种方法。从代数角度,点积实际上是将所有对应分量相乘,然后将它们加和。从几何角度,向量的方向相近,则点积为正。

根据输入文本创建向量组时,每个向量都是直接从嵌入矩阵中拉出来的,所以最开始每个向量只能编码单个单词的含义,没有上下文信息。流经网络可以使这些向量获得比某个词更丰富更具体的含义。这种网络一次只能处理特定数量的向量,称为上下文长度(context size。上下文长度限制了Transformer在预测下一个词时能结合的文本量。

unembedding解嵌入矩阵Wu,和嵌入矩阵很相似,只是行列对调。

Softmax:把任意数列转化为合理概率分布,最大值接近1,较小的数值接近0。T:temperature:当T较大时,会给低值赋予更多权重,使得分布更均匀;当T较小,较大的数值更占优势;T为0,意味所有权重都给到最大值。人为限制API不允许选择大于2的温度。输出称为probabilities,输入称为logits。

注意力模块不仅精细化了一个词的含义,还允许模型相互传递这些嵌入向量所蕴含的信息。

单头注意力机制

查询矩阵WQ提问被编码为的向量,维度比嵌入向量小。要计算查询向量,先取一个矩阵WQ,再乘以嵌入向量。把查询矩阵分别与文中的所有嵌入向量相乘,给每个token算出一个查询向量。WQ矩阵内部的数值都是模型的参数,具体的行为模式是从数据中学得的。查询矩阵将嵌入空间中的名词映射到较小的查询空间中的某个方向,用向量来编码“寻找前置形容词”的概念。

键矩阵WK也与每个嵌入向量相乘,产生第二个向量序列,称为“键”。可以把“键”视为想要回答“查询”。当键与查询的方向相对齐时,就能认为它们相匹配。为了衡量每个键与每个查询的匹配程度,我们计算所有可能的键-查询对之间的点积。如果“毛茸茸的”“蓝色”和“生物”的查询高度对齐,这两个未知的点积就会是较大的正数;用机器学习术语,“毛茸茸的”和“蓝色”的嵌入,注意到了“生物”的嵌入。网格中的值代表每个词与更新其他词含义有多相关。

对每列应用softmax函数进行归一化,将归一化后的值填进网络,此时可以将每一列看作权重,表示左侧的键与顶部的查询的相关度。此时的网格叫做“注意力模式”(attention pattern)。

掩码masking:在注意力模式中,我们不希望后词影响前词,于是我们将注意力模式的表格的左下方(代表着后方token影响前方的位置)设为负无穷,这样应用softmax后他们都能变为0,且列仍能保持归一化。

值矩阵WvValue Matrix):用值矩阵分别乘以嵌入向量,得到一系列值向量。这些值向量可以看成是与对应的键向量相关联。对所有列分别进行加权求和,得到一系列变化量,将所有变化量加到对应的嵌入向量上,从而通过注意力模块得到一系列更精准的嵌入向量。

多头注意力机制 对大矩阵进行“低秩分解”。值矩阵被分解成两个小矩阵相乘,值↑矩阵和值↓矩阵。

流经transformer的数据,会经过注意力模块和多层感知器模块,并多次重复这两个操作。这意味着,某个词吸收了一些上下文信息后,含义细致的嵌入向量,还有更多的机会被周围含义细致地词语所影响。越是接近网络的深处,每个嵌入就会从其他嵌入中,吸收越多的含义,使得嵌入本身也越来越细致丰富。

注意力机制成功的主要原因,在于它的可并行性,能用CPU在短时间内进行大量计算。可并行架构的巨大优势,在于能轻易扩大规模。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值