源码剖析transformer、self-attention

原文链接

首先给大家引入一个github博客,这份代码是我在看了4份transformer的源码后选出来的,这位作者的写法非常易懂,代码质量比较高。GitHub - Separius/BERT-keras: Keras implementation of BERT with pre-trained weights

这篇文章主要跟大家分享四个点:多头机制(multi-head)、LN和GELU、位置编码。

在这再给大家安利几篇博客,便于大家更具体的理解自注意力的内在原理。

【NLP】Transformer模型原理详解 - 知乎

Attention机制详解(二)——Self-Attention与Transformer - 知乎(精华)

自然语言处理中的自注意力机制(Self-attention Mechanism) - robert_ai - 博客园

transformer是self-attention的落地或者说扩展,多头机制把自注意力机制发挥得淋漓尽致。transformer最亮眼的地方就是完全抛弃了常规的链式RNN结构(包括LSTM等其他变体),即:并行计算能力特别弱的计算方法。它应该会是早期NLP训练技术跟当期技术的一个里程碑,毕竟人家BERT是吧,刷新了不造几个记录,虽然XLNET又刷新了BERT的记录,但是这也正证实了这种设计理念的优秀!优秀啊。。。[斜眼笑]。。。

言归正传!

一、自注意力机制(self-attention)和多头机制(mutil-head)

常规的语言生成模型长这样

下一个字的生成,依靠且只依靠上一个字的输出状态和当前输入的输入状态,

  • 18
    点赞
  • 130
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值