Informer pytorch 代码解读(2)Decoder

在整个informer架构中,进入到了绿色的部分,也就是decoder的部分。在这里需要的参数的维度进行下面的描述:

dec_out:(32,72,512)
enc_out:(32,48,512),也就是上文通过稀疏attention和卷积后相比于词编码减少了一半维度的数据是(32,48,512)。

下一步进入真正decoder,发现Decoder好像比较简单?相比于Encoder,整个decoder层也只有51行代码,这个Decoder类,初始化的部分只有两个一个是layer一个是标准化层。

 对整个layer进行显示查看,整个layer只有一个DecoderLayer,这个DecoderLayer里面主要包括三个部分,

(1)是self-attention也就是自编码层,是对decoder的inputs进行编码的层。

(2)是cross-attention也就是和encoder的output进行交叉编码的层。

 对于Decoder来说,他要求的输入是x和cross,而x就是decoder的inputs的词编码后的数据他的维度是(32,72,512),而cross的维度是(32,48,512)也就是encoder的输出。

 接下来进入到DecoderLayer层,

 在经过DecoderLayer层的第一个红色部分的时候,x是经过self-attention计算的编码,将这个计算后的编码和x进行相添加,x最后的维度还是不变的还是(32,72,512)

 

 512变成了7,也就是(32,72,7)

 

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值