1700538390
1700538391
1700538392
1700538393
1700538394
图9.13 标准网络和Dropout网络的对比
1700538395
1700538396
应用Dropout之后,前向传播公式变为
1700538397
1700538398
1700538399
,
1700538400
1700538401
(9.32)
1700538402
1700538403
1700538404
,
1700538405
1700538406
(9.33)
1700538407
1700538408
1700538409
,
1700538410
1700538411
(9.34)
1700538412
1700538413
1700538414
.
1700538415
1700538416
(9.35)
1700538417
1700538418
上面的Bernoulli函数的作用是以概率系数p随机生成一个取值为0或1的向量,代表每个神经元是否需要被丢弃。如果取值为 0,则该神经元将不会计算梯度或参与后面的误差传播。
1700538419
1700538420
测试阶段是前向传播的过程。在前向传播的计算时,每个神经元的参数要预先乘以概率系数p,以恢复在训练中该神经元只有p的概率被用于整个神经网络的前向传播计算。
1700538421
1700538422
更多详细内容及实验性能对比请查看参考文献[19]。
1700538423
1700538424
问题3 批量归一化的基本动机与原理是什么?在卷积神经网络中如何使用?
1700538425
1700538426
难度:★★★☆☆
1700538427
1700538428
分析与解答
1700538429
1700538430
神经网络训练过程的本质是学习数据分布,如果训练数据与测试数据的分布不同将大大降低网络的泛化能力,因此我们需要在训练开始前对所有输入数据进行归一化处理。
1700538431
1700538432
然而随着网络训练的进行,每个隐层的参数变化使得后一层的输入发生变化,从而每一批训练数据的分布也随之改变,致使网络在每次迭代中都需要拟合不同的数据分布,增大训练的复杂度以及过拟合的风险。
1700538433
1700538434
1700538435
批量归一化方法是针对每一批数据,在网络的每一层输入之前增加归一化处理(均值为0,标准差为1),将所有批数据强制在统一的数据分布下,即对该层的任意一个神经元(假设为第k维)采用如下公式
1700538436
1700538437
1700538438
,
1700538439
[
上一页 ]
[ :1.70053839e+09 ]
[
下一页 ]