一、 过拟合
首先我们需要明白什么是过拟合,由下图可知,对于(2)图则是出现了非常明显的过拟合。
从图中我们可以发现过拟合的特征,具有非常强的非线性特征,几乎让训练误差接近于0。
二、 正则化的思路
对于正则化,我们则是想要降低这种非线性的特征。这是我们的目的,我们来观察一下我们的非线性特征产生的原因——激活函数。
我们选取tanh的函数进行分析,从图中可以看出,非线性特征需要在于当x远大于0的时候,y的结果趋向于正负一而与x的产生非线性关系。
而从图中可以看出,当z(横轴)接近0时,非线性特征并没有特别明显,换句话说,函数更具有线性特征。
因此我们这里采取的方案就是想要z更加接近0,以此削弱非线性特征。
而以上讨论的z则是神经网络中每一层网络通过Z[l]=W[l]A[l]+b[l]计算得来的。
若是想要Z更加接近于0,由于A是通过计算出来的,我们只可以通过优化W和b让Z更加接近于0。
至此,我们已经发现了我们的目的,即让W和b更加接近于0。
三、 正则化的实施
我们来看正则化的究竟做了什么?
J = 1 m ∑ i m L ( y ^ ( i ) , y ( i ) ) + λ 2 m ∥ w ∥ 2 J=\frac{1}{\mathrm{m}} \sum_{\mathrm{i}}^{m} L\left(\widehat{y}^{(i)}, y^{(i)}\right)+\frac{\lambda}{2 m}\|w\|^{2} J=m1∑imL(y