Transformer中的encoder和decoder在训练和推理过程中究竟是如何工作的
苦苦冲浪,找不到答案
之前学习transformer的时候就不是很理解encoder和decoder在训练和推理过程中是如何工作的,四处查询也没有讲的很详细,很多文章和视频都是encoder讲很多,到了decoder就一带而过了,后来在b站看了大佬讲解的transformer源码,终于明白了encoder和decoder是怎么工作的了,怕自己再忘记,现记录一下。
Transformer结构(随便冲浪均可查到)
Input Embedding和Positional Encoding之类大家都在讲的部分就不多做介绍了,这里着重讲一下transformer在机器翻译的推理和训练时是如何工作的。
Transformer推理过程
以“我爱你”到“I love you”为例,对于transformer来讲,在翻译“我爱你”这句话时,先将其进行embedding和encoding送入encoder(包含n层encoder layers),encoder layer之间完全是串联关系,最终在第n层encoder layer得到k,v。
(评论区有朋友指出了推理过程中的错误解释