0
点赞
收藏
分享

微信扫一扫

Attention相关

自回归模型:过去某个时刻的输出,也会作为当前的时刻的输入。(例如encoder-decoder类的模型,再输出y2的时候需要依赖y0和y1)

Transform 也是一个encoder-decoder结构。

LayerNorm和BatchNorm区别:

BatchNorm:训练时,把当前batch内的样本的某列特征进行处理,处理成均值0方差为1(减这个batch内这一列的均值,再除以方差即可)。预测时,算一个全局的均值的方差做为使用。此外还可以通过学习λ、β参数来变换到任意均值和反查。

LayerNorm:对每个样本做处理,处理成均值0方差为1。

Attention:

三个角色:一个Query和n个Key-Value对。

计算规则:输出时所有value的加权求和,其中每个value的权重w是key和query的相似度。

举例:针对不同的Query返回使用不同value权重。

Query:[0.1,0.2]

Key1:[0.1,0.2] Value1:[0.5,0.6]

Key2:[0.2,0.4] Value2:[0.7,0.8]

那最终返回为

=Query*Key1*Value1+Query*Key2*Value2

=(0.01+0.04)*[0.5,0.6] +(0.02+0.08)*[0.7,0.8]

=[0.025,0.03]+[0.07,0.08]

=[0.095,0.11]

常见两种实现:scaled dot-product Attention【默认】,multi-head Attention。

公式:

流程图:(Scale:除以根号dk    Mask:是为了避免在t时刻看到t时刻以后的东西,是对t以后乘以特别大的负数)

MultiHead-Attention

简介:Attention默认是scaled dot-product Attention。但也在此基础上的变种multi-head Attention。就是把QKW使用n个W映射到n个低位空间,再做Attention,把多个空间结果拼接。

Transformer:

 

参考资料:Transformer论文逐段精读【论文精读】_哔哩哔哩_bilibili

举报

相关推荐

0 条评论