dropout正则化

mac2026-02-27  6

除了 L2L_2L2 正则化外,还有一种常用的正则化方法 — dropout (随机失活)

dropout 通过遍历网络的每一层, 并设置消除节点的概率来实现正则化.

最常用的是 inverted dropout(反向随机失活) 来实施 dropout

下面以三层神经网络为例:

Illustrate with layer=3:Illustrate \ with \ layer=3:Illustrate with layer=3:

keep_prob = 0.8 # keep probability = 0.8 # 生成一个标准正态分布的随机数矩阵(此处是一个向量),和 keep_prob 进行比较,返回布尔值 d3 = np.random.rand(a3.shape[0], a3.shape[1]) < keep_prob a3 = np.multiply(a3, d3) # python自动把 True 和 False 翻译为为 1 和 0 a3 /= keep_prob # 确保 a3 期望值不变, inverted dropout 精髓

注意: 测试阶段不适用 dropout

最新回复(0)