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处理,有利于模型模型训练

相关推荐
冬奇Lab13 小时前
Workflow 系列(03):状态管理——持久化、幂等性与版本绑定
人工智能·工作流引擎
冬奇Lab13 小时前
每日一个开源项目(第146篇):openpilot - 开源自动驾驶辅助系统,曾在 Consumer Reports 评测中超过特斯拉 Autopilot
人工智能·开源·自动驾驶
吴佳浩15 小时前
AI 工程师知识地图:模型格式、框架、部署工具一次讲明白
人工智能·aigc·ai编程
IT_陈寒15 小时前
Java的Date类又坑了我一次,改用时间戳真香
前端·人工智能·后端
码农胖大海15 小时前
AI额度不够用的解决方案
人工智能
后端小肥肠16 小时前
小红书虚拟商品怎么做?我先用 Skill 跑通了壁纸品类
人工智能·aigc·agent
feiyu_gao16 小时前
从零搭建个人 AI 工作台:一个管理者的 3 个月实验
人工智能·aigc·团队管理
Lihua奏17 小时前
从单核到多核:CPU为什么不能再只靠提频变快
深度学习
程序员cxuan17 小时前
一句话,让你用上 GPT-5.6
人工智能·后端·程序员