Machine Learning Yearning23~27

1.如果有可避免的高的偏差(可避免是相对于人类的水平来说的),可以通过增加网络深度来解决。如果方差较高的话(过拟合),增加数据量。
2.现在有很多很棒的神经网络架构,尝试新的框架相较于增加网络模型和数据量具有高的不确定性。
3.增加模型的大小会减小bias,但是可能增加方差,也有过拟合的风险。但一般来说,这种过拟合是由于没有使用正则化。如果有一个设计不错的正则化模型,我们可以放心的增加模型大小。如果我们使用了正则化,dev set的效果较好,那么增加模型后,dev set的效果至少不会减少。这时唯一阻止增加模型的原因就是由于模型增加导致的计算的增加。
4.增加正则化会增加bias,但是会减小variance。
5.那么增么平衡bias和variance呢?比如:我们在增加模型大小的同时,调整正则化,那么bias减小了,但是variance则不会增加太多;增加训练数据可以减小variance,但是不影响bias。
6.如果我们的模型bias较高,怎么办?训练效果太差。

1,增加网络大小,如果通过增加网络导致高的variance,通过正则化降低variance;
3,减少或者避免使用正则化(包括L1,L2,dropout),但是可能导致variance增加。
4,修改模型结构;
5,这时增加需训练数据一般不会对bias有显著的帮助。

7.bias太高的话,还可以对训练数据进行错误分析。通过观察训练数据,列一个表:
这里写图片描述
分析是什么原因导致训练集效果较差,然后专注于解决这个问题。比如上表显示背景噪声干扰较多,那么接下来就要关注具有噪声的数据了。还有一种办法来检查训练数据,如果连人类都不能很好的处理这些数据,那么难怪算法也不能处理的很好。我们会测试一下人类在训练数据上的表现。
8.如何减小variance呢?

1,增加训练数据(最可靠的方法);
3,提前结束训练,也会导致高的bias,也相当于是一种正则化;
4,进行特征选取,减少输入特征,当然可能也会增加bias,一般来说训练数据较少时,这种方法会很有用。
5,减小模型,要慎重使用,这可能导致大的bias,一般来说增加正则化就可以取得很好的效果,减小模型的一个好处就是减少计算,加快训练,如果我们的计算资源还算充足,那么首先增加正则化;
6,通过错误分析修改特征,比如我们增加了特征,但是导致variance增加,那么我们使用正则化,正则化一般可以消除variance的增加。
7,修改模型,如果能够找到一个好的模型,那么bias和variance都会有好的效果。

猜你喜欢

转载自blog.csdn.net/sunyao_123/article/details/80277123