打字猴:1.700538371e+09
1700538371
1700538372 Dropout的具体实现中,要求某个神经元节点激活值以一定的概率p被“丢弃”,即该神经元暂时停止工作,如图9.12所示。因此,对于包含N个神经元节点的网络,在Dropout的作用下可看作为2N个模型的集成。这2N个模型可认为是原始网络的子网络,它们共享部分权值,并且具有相同的网络层数,而模型整体的参数数目不变,这就大大简化了运算。对于任意神经元,每次训练中都与一组随机挑选的不同的神经元集合共同进行优化,这个过程会减弱全体神经元之间的联合适应性,减少过拟合的风险,增强泛化能力。
1700538373
1700538374 在神经网络中应用Dropout包括训练和预测两个阶段。在训练阶段中,每个神经元节点需要增加一个概率系数,如图9.13所示。训练阶段又分为前向传播和反向传播两个步骤。原始网络对应的前向传播公式为
1700538375
1700538376
1700538377
1700538378
1700538379 (9.30)
1700538380
1700538381
1700538382
1700538383
1700538384 (9.31)
1700538385
1700538386
1700538387
1700538388
1700538389 图9.12 Dropout模块示意图
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的概率被用于整个神经网络的前向传播计算。
[ 上一页 ]  [ :1.700538371e+09 ]  [ 下一页 ]