1. Dropout为什么可以缓解过拟合问题?
Dropout的操作过程为:训练阶段每次迭代都从基础网络中随机丢弃一些神经元,在剩余的神经元上计算梯度以及更新参数;测试阶段恢复所有的神经元。 可以把dropout看成集成了大量神经网络的bagging方法。bagging指训练多个模型对测试样本的预测的结果取平均或采用投票的方式预测样本实际的标签。dropout和bagging的区别在于dropout随机得到的这些网络之间的参数是彼此相关的。 Dropout能够减少神经元之间复杂的共适应性,使得网络学习到一些更加泛化的特征。
2. 在循环神经网络中如何使用Dropout?
在循环神经网络中直接采用*每次迭代丢弃随机丢弃部分神经元的做法并不是一种合适的避免过拟合的方式。因为不同时刻之间神经元信息之间都相互由关联,采用上述方式会导致循环神经网络的记忆能力减退。 循环神经网络中的两种连接:前馈连接:第
t
t
t时刻输入到输出之间的连接。循环连接:第
t
?
1
t-1
t?1时刻到第
t
t
t时刻状态的连接。通常可以将dropout用在前馈连接上(此时随机丢弃的是连接,不是神经元)。 基于变分推理的dropout方法:在循环神经网络的所有时刻每次迭代时丢弃相同的连接。
|