循环神经网络(Rerrent Neural Network,RNN)是神经网络的一种,类似的还有深度神经网络(DNN)、卷积神经网路(CNN)、生成对抗网络(GAN)等。**RNN对具有时序特性的数据非常有成效,他能挖掘数据中的时序信息以及语义信息。**利用RNN的这种能力,使深度学习模型在解决语音识别、语言模型、机器翻译以及时序分析等NLP领域的问题时有所突破。
潜变量自回归模型
-
使用潜变量总结过去信息,
循环神经网络
更新隐藏状态:
输出:
困惑度(perplexity)
- 衡量一个语言模型的好坏可以用评价你交叉熵
是语言模型的概率预测,是真实词
- 历史原因NLP使用困惑的来衡量,时平均每次可能选项
- 1表示完美,无穷大是最差情况
梯度剪裁
-
迭代中计算这个时间步上的梯度,在反向传播过程中产生长度为的矩阵乘法链,导致数值不稳定
-
梯度裁剪能有效预防梯度爆炸
- 如果梯度长度超过,那么拖影回长度
- 如果梯度长度超过,那么拖影回长度
更多的应用 RNNs
总结:
- 循环神经网络的输出取决于当下输入和前一时间的隐变量
- 应用到语言模型中时,循环神经网络根据当前词预测下一次时刻词
- 通常使用困惑度来衡量语言模型的好坏