神经网络的vc dimension的值与 神经元的个数以及权重的个数有关。所以个数越多,神经网络模型越强大越复杂。相应的就有可能出现过拟合的现象。
那么如何预防过拟合呢,有两种方法。
正则化项,这是最常见的方法,不同的是,神经网络用梯度下降法优化权重,所以需要损失函数是可导得,如果使用L1正则化项,就不可导了。
那么L2正则化项呢,我们知道L2正则化项不能让权重等于零,这样就没有降低权重的个数。
所以我们对L2正则化项进行修改。
early stoping , 就是在梯度下降的过程中尽早的停止,防止过拟合的发生。那么在第几轮的时候停止呢,这就需要validation了。
那还要初始化权重的事儿。
不同的权重初始化会造成不同的E_in, 所以我们可以随机的初始化权重值,初始化权重的值应该较小,并且多试几次。