您的位置:首页 > 科技 > 能源 > 什么是网络营销战略?网络营销战略有哪些基本类型_企业网站收录_外包公司_信息流广告投放流程

什么是网络营销战略?网络营销战略有哪些基本类型_企业网站收录_外包公司_信息流广告投放流程

2025/4/15 22:57:40 来源:https://blog.csdn.net/m0_62894677/article/details/146103483  浏览:    关键词:什么是网络营销战略?网络营销战略有哪些基本类型_企业网站收录_外包公司_信息流广告投放流程
什么是网络营销战略?网络营销战略有哪些基本类型_企业网站收录_外包公司_信息流广告投放流程

📕参考:大模型研讨课第一期:Why LLMs?、模型结构1(共10期)_哔哩哔哩_bilibili

(本系列是课程笔记)


Transformer

背景:

1.循环模型RNN、LSTM是当时序列模型的主流,但是循环模型需要序列化计算,难以并行,计算效率较差,并且难以捕捉长距离依赖关系。

2.注意力机制,可以捕捉长距离依赖,聚焦关键信息,并行度较高。

【总结思路:循环模型摒弃,seq2seq比较好保留,注意力机制也保留】

∴Transformer进行了改进:

(1)去掉了循环神经网络结构(效率低,无法并行训练)

(2)遵循seq2seq结构,encoder+decoder

(3)大量重复使用attention(attention is all you need)

编码器

(1)6个相同的层组成(N=6)

(2)每层由两个子层(Sub-layer)组成

        多头注意力机制(Multi-Head Self-Attention)

        前馈网络(Feed-forward network)

(3)每个子层还增加了残差连接(Residual Connection) 和层归一化(Layer Normalization)

编码器的输入

编码器的输入:token embedding + position encoding

position encoding和token embedding的维度相同,直接相加

编码器层

编码器有6层:

(1)第一个编码器layer的输入是emb+PE

 (2)后面N-1个编码器layer的输入是上一个 编码器layer的输出

一个多头自注意力子层

编码器layer:一个多头自注意力子层和一个FFN子层

QKV 同源,它们是由同一个矩阵 I 乘以不同的矩阵变换来的。

 

每一个层都有残差连接(residual connection)和层归一化(layer norm)

先计算residual,再计算layer norm

residual connection(残差连接)

问题: 增加层数后,训练误差和测试误差都上升 但构造一个较深的模型,模型优化后, 较深模型的结果应该不会比较浅模型差 ,说明是没有优化好,不是过拟合

然后为了优化的更好,加了残差连接层。

原来的方法是 直接拟合输出函数H(x)(左1)。

残差学习是引入新的参数,令H(x)=F(x)+x, 引入残差函数 F(x),拟合残差函数F(x)比直接拟合输出函数要容易的多。

残差函数F(x)=H(x)-x。

层归一化(layer norm)

问题:在训练过程中每一层的输入分布随着前一层的参数变化而变化,会导致梯度消失或者梯度爆炸,训练变得困难,需要较低的学习速率和仔细的参数初始化。

Norm的做法:将中间层的输入标准化为均值为0,方差为1的高斯分布

Layer Norm和Batch Norm

LayerNorm:纵向 ,分样本归一化,同一个样本内计算均值方差。

LN通常应用于NLP领域,应用于RNN和Transformer中。

BatchNorm:横向 ,分通道归一化,对应同一通道的不同样本间计算均值方差

BN通常应用于CV领域,应用于CNN中。

BN是横向的,对同一通道的不同样本间计算均值方差。通常用于处理图像,因为图像会填充,使它们长度相同。但是NLP 文本的话样本的长度可能不同,那样就不方便横向处理了。应该是纵向,同一个样本内计算。

FFN子层(Feed-Forward Network Sublayer)

FFN前馈层:低维→高维→低维。

FFN子层(Feed-Forward Network Sublayer)通常由两个线性变换和一个激活函数组成

其实是一个序列,这个序列在计算时使用相同的W1和W2,这样就可以用1x1的卷积实现。

主要作用

  1. 特征变换:增强模型的表达能力。

  2. 非线性引入:通过激活函数增加非线性,提升模型拟合能力。

  3. 维度调整:通过线性变换调整特征维度,便于后续处理。

解码器

解码器的输入

解码器的输入: token embedding(shifted right) + position encoding

解码器的输入对应的是编码器的输入经过计算后的输出,是inputs的下一位。

为实现并行训练,解码器并没有使用上一个时间步的输出作为下一个时间步的输入,而是直

接使用正确结果作为解码器的输入。

解码器有一个自回归的性质,应该是解码器上一个时间步的输出给到下一时间步的输入,这样就实现了一个自回归。

 在训练的时候,如果上一步的输出给到下一步的输入,那么就有一种循环的感觉了,这对训练不友好。为了便于并行训练,直接拿正确的结果作为解码器的输入。(这是训练过程)

为了配合那个过程,所以整体往右移动一位。

自回归:在文本生成中,模型根据已生成的词逐个预测下一个词。

解码器layer

解码器的组成:

 (1)一个带mask的自注意力子层,一个交叉注意力子层,一个FFN子层

(2) 每个子层后都使用残差连接(residual connection)和层归一化(layer norm)

一个解码器layer的输入:

(1) 第一个解码器layer的输入是emb+PE,以及编码器的输出

(2)后面N-1个解码器layer的输入是上一个解码器layer的输出,以及编码器的输出

解释:

(1)上一个解码器layer的输出作为解码器自注意力的输入

(2)编码器的输出作为解码器中交叉注意力的KV(Q是解码器自注意力的输出)

编码器的输出会给到解码器的每一层。

带mask的自注意力子层

带mask的自注意力子层:

mask,去掉当前位置后面token的影响,是为了满足自回归的属性

自回归:用前面序列去预测后边的序列

mask的实现:mask中被mask掉的位置赋值为负无穷,在经过softmax后,后面就是一堆0

交叉注意力子层

交叉注意力子层:KV来源于编码器的输出,Q来源于解码器的带mask的自注意力子层。【Q来源于前边的子层(带mask的自注意力子层)】

注意,这里可能会考。

KV是成对的,来源相同。Q可以和它们的来源不同。

做多模态的时候,可能会使用交叉注意力层。

再问一下Q K V 的作用?

Q:理解成查询矩阵,要找的东西

K:理解成要和Q做相似度计算的东西,用它来算出权重

V:真正输入的信息,最后用权重对Vi加权求和得到output。

Transformer中各种注意力机制的关系

各种注意力机制的关系:

首先看 如果QKV同源,那么就是自注意力,没有mask的就是encoder用的,有mask的就是decoder用的。 Q KV不同源那么就是交叉注意力。Q来源于前边的子层(带mask的自注意力子层)。

Transformer的输出

直接结果是一个概率,然后选最大的,最后将其映射成对应的vocab

 

Transformer的训练

为了方便并行:

(1) 解码器的输入序列是整个groundtruth序列,向右平移一位

(2) 解码器的自注意力带mask,保证自回归性质

(3)利用softmax和groundtruth计算交叉熵损失

(4)使用反向传播计算梯度

(5) 优化器为adam

(6)学习率使用warm up和逆平方根衰减

优化器为adam

Adam(adaptive moment estimation,自适应矩估计) :利用梯度的一阶矩估计和二阶矩估计,自适应动态调整每个参数的学习率 。

收敛速度快,训练过程稳定,通用性强。

学习率使用warm up和逆平方根衰减

在训练开始时,学习率从0线性或非线性的增加到设置的学习率lr,然后再衰减。  

自回归:上一个step的输出token连接到输入序列最后,作为下一个step的输入

自回归:在文本生成中,模型根据已生成的词逐个预测下一个词。

推理的时候,没有正确结果,所以就是循环着。

(训练的时候,有正确答案,所以是输入正确答案)

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com