标题可能令人困惑,但假设我要用一个利用多头注意力的掩蔽网络来构建变压器神经网络(就像SepFormer中的那样),那么在编码器和解码器中添加自我注意是否仍然是必要的?
发布于 2021-04-12 18:40:19
自我注意意味着X关注X,而不是X关注Y的“正常”关注。
多头注意力与单头注意力相反。对于自我关注和正常关注,你可以选择使用多头或单头注意力。
掩蔽X和/或Y是设计的第三个独立方面。
在变压器编码器中,只有自我关注和前馈网络(FFN).没有自我关注方面,层被简化为仅仅是FFN。FFN只对一个项目进行操作,因此如果没有自我关注,它们就永远不会发现项目之间的关系。在文本应用程序中,这意味着它永远不会发现单词之间的关系。在时间序列分析中,它永远不会发现跨时间的关系。
译码器使用自我注意和正常注意.如果模型的输出中没有跨单词/时间的关系,那么也许您可以去掉自我注意部分。但是,如果转换器是您的数据的有用模型,则不太可能是这样的。
因此,如果你想要一个明确的是/否的答案(如果它不需要自我关注的话):在编码器的情况下,“否”,而在解码器的情况下,“可能不会”。
更新:现在阅读了报纸(SepFormer,以及评论中的这两篇文章,TSTNN和DPTNet),我认为上面的内容仍然适用。这些模型只使用变压器的编码器部分。
DPTNet和TSTNN分别用RNN或GRU改变FFN的第一部分,所以理论上它可以从中了解其他标记;但其动机是替代需要位置编码,因此我怀疑不再能够并行处理数据是否值得进行权衡。
https://datascience.stackexchange.com/questions/92953
复制相似问题