深度学习笔记4:正则化和dropout
程序员文章站
2022-07-13 10:52:48
...
结构风险函数
模型的结构风险函数包括了经验风险项和正则项,通常可以表示成如下式子:
前面的均值函数表示的是经验风险函数,L代表的是损失函数,后面的是正则化项或者叫惩罚项,它可以是L1,也可以是L2,或者其他的正则函数。
当样本容量足够大时,经验风险最小化能保证有很好的学习效果。但是,当样本容量很小时,经验风险最小化学习的效果就未必很好,会产生过拟合现象,而结构风险最小化是为了防止过拟合而提出的策略。为模型的复杂度,是定义在假设空间上的泛函。模型越复杂,复杂度就越大,即复杂度表示了对复杂模型的惩罚。
L1和L2范数
dropout
为了防止深度神经网络的过拟合,除了添加正则化项之外,还有一个著名的方法dropout,即在神经网络训练过程中对所有神经元按照一定概率失活,从而简化神经网络,缓解过拟合问题
dropout函数的实现如下:
def dropout(x, keep_prob):
D = np.random.randn(x.shape[0], x.shape[1])
D = D < keep_prob
A = x * D
A = A / keep_prob
return A
下一篇: TiDB逻辑优化规则