前文传送门:
在上一次面试失利后,我回来仔细研究了一下Attention机制,研究完我不禁感悟,这机制真的厉害啊!因为我之前面试被问到的Encoder - Decoder框架中有个瓶颈是编码的结果以固定长度的中间向量表示,这导致较长的序列编码后很多信息被稀释了,导致解码时效果不佳。当时只记得有个Attention,但是不了解他的原理,所以上次面试没过:从零开始学自然语言处理(25)—— 通用的Encoder-Decoder模型框架
NLP中的Attention机制是在论文《NEURAL MACHINE TRANSLATION BY JOINTLY LEARNING TO ALIGN AND TRANSLATE》被提出的,有兴趣的朋友可以去阅读论文:https://arxiv.org/pdf/1409.0473.pdf
上次面试问到的Encoder - Decoder框架如下图所示:
而加入Attention机制之后,Encoder - Decoder框架可以改为如下所示:
大家应该注意到上下两张图的主要区别在于中间向量C从固定不变的一个变成了不同的多个,在解码每个序列字符串时使用不同的Ci。
例如我们在翻译 “Through the woods, we re