我们已经知道了,什么是偏差和方差,以及什么情况下是偏差和方法,也就是说我们有了学习曲线这样的评判标准。有了评判标准,我们可以尝试一些方法,看看哪一个有助于改进学习算法,而那些是徒劳的?
根据学习过的内容,我们可以得到一下六种方法,分别解决不同的问题。
1.获得更多的训练实例 ------ 解决高方差;
2.尝试减少特征的数量-------解决高方差;
3.尝试获得更多的特征-------解决高偏差;
4.尝试增加多项式特征-------解决高偏差;
5.尝试减少正则化程度 λ ------解决高偏差;
6.尝试增加正则化程度 λ -------解决高分差。
神经网络的偏差和方差:
从图中可以看出,当隐藏层层数太少,或者隐藏层单元太少,也就是类似于参数或者说权重较少,虽说计算量小,但是容易导致高偏差/欠拟合。当层数太多,或者单元太多,类似于参数较多的情况,计算量很大,而且容易导致高方差/过拟合,但是可以通过正则化手段来调整而更加适应数据。
通常选择较大的神经网络并采用正则化处理会比采用较小的神经网络要好。
对于神经网络中的隐藏层的层数的选择,通常从一层开始逐渐增加层数,未来更好的选择模型,我们按照往常的惯例,将数据集分为训练集、交叉验证集和测试集,针对不同隐藏层层数的神经网络训练神经网络,然后选择交叉验证集代价最小的神经网络。