1.视频网站:mooc慕课https://mooc.study.163.com/university/deeplearning_ai#/c
2.详细笔记网站(中文):http://www.ai-start.com/dl2017/
3.github课件+作业+答案:https://github.com/stormstone/deeplearning.ai
3.8 注意力模型 Attention model
在上节课中你已经见到了,注意力模型如何让一个NN只注意到一部分的输入句子。当它在生成句子的时候,更像人类翻译。让我们把这些想法转化成确切的式子,来实现注意力模型。
跟上节课一样,我们先假定有一个输入句子,并使用双向的RNN(循环神经网络),或者双向的GRU(门控循环单元)或者双向的LSTM(长短期记忆),去计算每个词的特征。实际上GRU和LSTM经常应用于这个,可能LSTM更经常一点。
对于前向传播(the forward occurrence),你有第一个时间步的前向传播的激活值 a → < 1 > \overrightarrow{a}^{<1>} a<1>(a forward occurrence first time step),第一个时间步后向传播的激活值 a ← < 1 > \overleftarrow{a}^{<1>} a<1>,以此类推。
他们一共向前了五个时间步,也向后了五个时间步,技术上我们把(最左边输入)这里设置为 a < 0 > a^{<0>} a<0>。我们也可以后向传播6次, a ← < 6 > \overleftarrow{a}^{<6>} a<6>,设一个都是0的因子,实际上就是个都是0的因子。
为了简化每个时间步的记号,即使你在双向RNN已经计算了前向的特征值 a → < t > \overrightarrow{a}^{<t>} a<t>和后向的特征值 a ← < t > \overleftarrow{a}^{<t>} a<t>,我就用 a < t > a^{<t>} a<t>来一起表示这些联系, a < t > = ( a → < t > , a ← < t > ) a^{<t>}=(\overrightarrow{a}^{<t>},\overleftarrow{a}^{<t>}) a<t>=(a<t>,a<t>)。 a < t > a^{<t>} a<