本文共 3043 字,大约阅读时间需要 10 分钟。
缓解方法
合适的数据分布+合理的模型复杂性 合理的组合应该是:复杂的数据分布+简单的模型 或者 简单的数据分布+复杂的模型神经网络中的过拟合
代价函数的对数形式可以写成
Laplace:−1b|w|+一个常数=−λ||w||1+一个常数 L a p l a c e : − 1 b | w | + 一 个 常 数 = − λ | | w | | 1 + 一 个 常 数
Gaussian:−12αw2+一个常数=−λ||w||2+一个常数 G a u s s i a n : − 1 2 α w 2 + 一 个 常 数 = − λ | | w | | 2 + 一 个 常 数
因为最大化 logP(y|w,x)P(w) l o g P ( y | w , x ) P ( w ) 最后都会转成最小化形式,所以代价函数最后会变成 J=⋆+λ||w||p J = ⋆ + λ | | w | | p 的形式。
2. 对于L1而言,假设参数服从拉普拉斯分布;而对于L2而言,假设参数服从高斯分布,两个都是0均值 3. 正则效果和原因 效果:L1范数可以使权值稀疏,方便特征提取。 L2范数可以防止过拟合,提升模型的泛化能力,使w趋于0(或者说约束在一个很小的范围内) 为什么正则会达到这个效果呢?过拟合可以说明用了复杂的模型。复杂模型在参数上的表现可以分为:参数w全不为0,说明所有特征都用到了即数据处于一个复杂的特征空间中;参数的波动范围大,考虑极端一点的例子,某个模型把异常点也拟合进来,使得数据样本在较小的区间值发生了很大的波动,即该区间内的导数非常大(w非常大),所以一个好的模型的参数波动范围不会很大。 从参数的角度来说,解决过拟合有两种思路:参数存在部分0值(稀疏权值,L1),参数约束在很小的范围内(接近于0,L2) 然后在实际中,w不一定服从高斯分布或者拉普拉斯分布(也有种说法是不加正则项的化w服从的是均匀分布),而正则项的引入就是要我们强行让我们预想的w去服从高斯分布或者拉普拉斯分布。 对于高斯分布来说,其均值为0,那么随着惩罚项 λ λ 而言, λ λ 是和方差 α α 成反比 随着 λ λ 变大,w都接近于0,这就是L2范数可以防止过拟合,提升模型的泛化能力,使w趋于0的原因 而对于L1而言,有个结论:任何的规则化算子,如果他在w_i=0的地方不可微,并且可以分解为一个“求和”的形式,那么这个规则化算子就可以实现稀疏。 然后Lasso的稀疏性解释在于,我们求解w的过程实际上是计算 min(L+...lambda||w||p) m i n ( L + . . . l a m b d a | | w | | p ) 的形式 也就是每步迭代中计算对w求偏导, 两种 regularization 能不能把最优的 w 变成 0,取决于原先的L在 0 点处的导数。如果本来导数不为 0,那么施加 L2 regularization 后导数依然不为 0,最优的 x 也不会变成 0。而施加 L1 regularization 时,只要 regularization 项的系数 lambda 大于原先费用函数在 0 点处的导数的绝对值,w = 0 就会变成一个极小值点。 w<0 时 L+λ|w| L + λ | w | 的导数要小于0(函数减),同理w>0时导数>0 (函数增) w从左边趋近于0 时, λ|w| λ | w | 的导数是 −λ − λ ,假设此时 L 的导数为 La ,必须有 La−λ<0 L a − λ < 0 , λ>La λ > L a ,同理w从右边趋近于0时,必须有 Lb+λ>0 L b + λ > 0 ,即 λ>−Lb λ > − L b ,即当 λ λ 大于L在0点附近的绝对值,那么对应的w就必须为0,起到一个稀疏的作用。