全部笔记的汇总贴:《百面机器学习》-读书笔记汇总
循环神经网络(Recurrent Neural Network,RNN)是用来建模序列化数据的一种主流深度学习模型。我们知道,传统的前馈神经网络一般的输入都是一个定长的向量,无法处理变长的序列信息,即使通过一些方法把序列处理成定长的向量,模型也很难捕捉序列中的长距离依赖关系。RNN则通过将神经元串行起来处理序列化的数据。由于每个神经元能用它的内部变量保存之前输入的序列信息,因此整个序列被浓缩成抽象的表示,并可以据此进行分类或生成新的序列。近年来,得益于计算能力的大幅提升和模型的改进,RNN在很多领域取得了突破性的进展——机器翻译、序列标注、图像描述、推荐系统、智能聊天机器人、自动作词作曲等。
一、循环神经网络和卷积神经网络
- ★☆☆☆☆ 处理文本数据时,循环神经网络与前馈神经网络相比有什么特点?
二、循环神经网络和梯度消失问题
- ★★☆☆☆ 循环神经网络为什么会出现梯度消失或梯度爆炸?有哪些改进方案?
三、循环神经网络中的激活函数
- ★★★☆☆ 在循环神经网络中能否使用ReLU作为激活函数?
四、长短期记忆网络
长短期记忆网络(Long Short Term Memory,LSTM)是循环神经网络的最知
名和成功的扩展。由于循环神经网络有梯度消失和梯度爆炸的问题,学习能力有限,在实际任务中的效果往往达不到预期效果。LSTM可以对有价值的信息进行长期记忆,从而减小循环神经网络的学习难度,因此在语音识别、语言建模、机器翻译、命名实体识别、图像描述文本生成等问题中有着广泛应用。
- ★★☆☆☆ LSTM是如何实现长短期记忆功能的?
- ★★★☆☆ LSTM里各模块分别使用什么激活函数,可以使用别的激活函数吗?
五、Seq2seq模型
- ★★☆☆☆ 什么是Seq2Seq模型?Seq2Seq模型有哪些优点?
- ★★★☆☆ Seq2Seq模型在解码时,有哪些常用的办法?
Seq2Seq模型最核心的部分是其解码部分,大量的改进也是在解码环节衍生的。Seq2Seq模型最基础的解码方法是贪心法,即选取一种度量标准后,每次都在当前状态下选择最佳的一个结果,直到结束。贪心法的计算代价低,适合作为基准结果与其他方法相比较。很显然,贪心法获得的是一个局部最优解,由于实际问题的复杂性,该方法往往并不能取得最好的效果。
六、注意力机制
- ★★★★☆ Seq2Seq模型引入注意力机制是为了解决什么问题?为什么选用了双向的循环神经网络模型?