transformer理解

李宏毅老师讲解的Transformer,非常简单易懂:https://www.youtube.com/watch?

RNN存在的问题是,只有得到t(i)时刻的向量信息才能够计算t(i+1)时刻的向量信息,无法实现并行化。无法实现长序列的特征信息提取,超过一篇文章的训练,train不起来。

self-attention首先利用自身embedding q,所有embedding k乘积得到的是自身embedding与其他embedding 之间的一个对应权重关系,除以根号d是为了解决维度越长特征信息数值越大的问题。对上述得到的对应权重信息进行soft-max,相当于对权重信息进行归一化处理,有利于后面与特征信息乘积的计算。

然后利用所有的对应权重关系与各自的value值相乘再相加,相当于自身embedding 与其他embedding 特征信息进行信息整合,整合后的结果作为当前embedding特征信息进行输出。

multi-head self-attention 相当于增加了多个需要训练的权重信息,相当于多层卷积核同时进行训练,增加训练过程中的特征信息的维度。不同的head关注的特征信息可能不同。

加入位置编码信息:

因为没有位置信息,所以加入 positional encoding

Feed forward理解:

Feed forward 在作的事情有点像SENET 先进行特征维度的延展,然后进行非线性变换,再进行特征信息的压缩,从而实现注意力的增强,实现一个非线性化。

BN与LN的区别:

BatchNorm是对一个batch-size样本内的每个特征做归一化,LayerNorm是对每个样本的所有特征做归一化。

BN抹杀了不同特征之间的大小关系,但是保留了不同样本间的大小关系;LN抹杀了不同样本间的大小关系,但是保留了一个样本内不同特征之间的大小关系。

在图像处理中对图像的信息中的亮度、颜色进行BN处理,有利于模型模型训练

在文本处理中对单条文本信息进行语义上的LN处理,有利于模型模型训练

相关推荐
NAGNIP17 小时前
轻松搞懂全连接神经网络结构!
人工智能·算法·面试
moshuying18 小时前
别让AI焦虑,偷走你本该有的底气
前端·人工智能
董董灿是个攻城狮19 小时前
零基础带你用 AI 搞定命令行
人工智能
喝拿铁写前端21 小时前
Dify 构建 FE 工作流:前端团队可复用 AI 工作流实战
前端·人工智能
阿里云大数据AI技术1 天前
阿里云 EMR Serverless Spark + DataWorks 技术实践:引领企业 Data+AI 一体化转型
人工智能
billhan20161 天前
MCP 深入理解:协议原理与自定义开发
人工智能
Jahzo1 天前
openclaw桌面端体验--ClawX
人工智能·github
billhan20161 天前
Agent 开发全流程:从概念到生产
人工智能
用户1474853079741 天前
AI-动手深度学习环境搭建-d2l
深度学习