文章目录
1. 为什么选择序列模型
2. 数学符号
符号表示
词典用来表示单词。
上图是one-hot表示法,不在词表的单词标记为UNK。
3. 循环神经网络模型
对于这种序列任务,我们可以尝试用标准的神经网络,但是有两个问题:
即输入输出序列长度可能不等、不能共享不同位置上学到的特征。
这里是我们的第一个循环神经网络的例子,首先可以看到是Tx=Ty。从最左边看起,这里有一个零时刻的激活值,通常是零向量;在每一个时间步,输入向量x集合上一个神经元传过来的激活值,共同生成输出激活值,在经过一层线性变换以后输出y。
产生的问题:只用了序列前的信息,没有用到后面信息,后面双向循环神经网络会解决这个问题。
上图给出了循环神经网络的前向传播的例子,可以看到,每个隐藏单元输出两个值,一个是激活值,另一个是当前x对应的y。
a < t > = g 1 ( W a a a < t − 1 > + W a x x < t > + b a ) y ^ < t > = g 2 ( W y a a < t > + b y ) \begin{array}{c}{a^{<t>}=g_{1}\left(W_{a a} a^{<t-1>}+W_{a x} x^{<t>}+b_{a}\right)} \\ {\hat{y}^{<t>}=g_{2}\left(W_{y a} a^{<t>}+b_{y}\right)}\end{array} a<t>=g1(Waaa<t−1>+Waxx<