初衷是先写个seq2seq+attention,其实很简单,大家都整理过,所以决定开这篇查缺补漏性质的博文,结合官方论文Attention is all you need,和transformer一起写了。
seq2seq解码器的求解方法
1.贪心法,每次输出概率最大的那个单词,但这样无法保证最终整体概率最大。
2.Beam Search,每一步都选取概率最大的k个结果,在下一步结合上一步的不同结果继续选出k个最高得分。最后,选取概率最高的序列作为输出序列。也无法保证最终整体结果为最优,但保证了效率。
为何提出transformer
RNN特点:每一时刻依赖上一时刻的输出,可以捕获较远距离的关系但无法并行
CNN:每一层中可以并行,但是在浅层只能捕捉到较临近的元素之间的关系
于是可找到长距离依赖关系,又可并行的transformer被提出了。