根据 Transformer 的结构图,接下来进入的是 Add & Norm 层,从名称上就可以看出,这一步要做两个操作,Add 的残差,和 Norm 层标准化。虽然这个操作在整个 Transformer 架构中,被多次重复用到,但代码简单,就不做封装了,直接在多头注意力类里面实现。

代码示例

1、Mask扩维

分头之后,scores 维度增加了,mask 也要做相应的扩维。

内容不可见,请联系管理员开通权限。

2、Add

我们说 Attention,其实得到的是 query 在 key 和 value 作用下的表示,所以入参是 query。

内容不可见,请联系管理员开通权限。

3、Norm

torch 中已经实现了 Norm 层,可以直接调用。

内容不可见,请联系管理员开通权限。

注意事项

这节课代码很简单,但其中包含的两个知识点,是面试中的常考点,课后可以针对性的查缺补漏。

本文链接:http://ichenhua.cn/edu/note/657

版权声明:本文为「陈华编程」原创课程讲义,请给与知识创作者起码的尊重,未经许可不得传播或转售!