机器学习(十)机器学习模型的评价

本文由 @lonelyrains 出品,转载请注明出处。 
文章链接: http://blog.csdn.net/lonelyrains/article/details/49305795


模型不理想时,怎么调整模型?是要更多样本?是要更多或者少的附加其他特征或者多项式特征?正规化的λ参数应该更大或者更小?


怎么评价模型是否理想?欠拟合或者过拟合?将数据分为训练集70%、测试集30%。

通过训练集得到可能的Θ矩阵,然后根据测试集的结果选择误差最小的那种模型。


因为根据测试集的结果选择误差最小是挑选过的,所以测试集的效果评价相对未知的测试数据来说可能是过于乐观的估计。故通常将数据集分成三类:

训练集  Train 60%

验证集  CV cross validation 20%

测试集  Test 20%

通过训练集得到可能的Θ矩阵,然后根据验证集测试的结果选择所有模型中误差最小的那种模型。最后再根据测试集的结果说明当前模型的效果。


评价欠拟合:代价函数都很大  称为偏差bias大

评价过拟合:训练集的代价函数很小,而验证集、测试集的代价函数非常大  称为方差variance大


1、正规化的λ参数与偏差和方差的关系

机器学习(十)机器学习模型的评价_第1张图片

注:λ非常大时,参数影响力变小,则肯定是欠拟合


2、属性参数数目多少或者属性参数多项式的最高指数项的高低与偏差和方差的关系

机器学习(十)机器学习模型的评价_第2张图片

属性参数多或者多项式最高指数项的指数很高时,对于训练样本,比较容易满足;但是对于检验样本,因为之前没有匹配,所以可能非常大的误差(过拟合)。相反,如果参数项少或者参数的多项式最高指数项比较低,则容易导致对于训练样本都无法满足,则对于检测样本也一样(欠拟合)。


3、样本数与偏差和方差的关系


在其他条件不变的情况下,样本数增多时,训练样本的错误都会增加比较多,再增多时,可能达到饱和,误差的平均值没有太大变化;而样本比较少时,虽然训练样本的错误会比较低,但是因为欠拟合,检验样本的错误均值反而比较高。

机器学习(十)机器学习模型的评价_第3张图片

如果有高偏差,则增加样本数没有什么作用,因为高偏差意味着欠拟合,现有的样本也没用到。

机器学习(十)机器学习模型的评价_第4张图片

如果有高方差,意味着过拟合,增加样本,则比较能优化、趋同。所以增加样本是一种减小高方差的方法。


4、Jtrain曲线和Jcv曲线通常不会重合,因为神经模型是根据Jtrain取的,所以相对之前未知的cv检验样本,拟合得更合适。所以以误差表示纵轴时,Jcv通常在Jtrain的上方。但是由于取样本点的随机性,可能导致Jcv与Jtrain有交叉,即Jcv小于Jtrain的情况。


5、神经网络方面,使用更多的隐藏层和结点数,通常倾向于过拟合(高方差),反之,如果更少的隐藏层和结点数,通常倾向于欠拟合(高偏差)。与属性参数多少导致学习曲线的变化基本是一致的。



综上,高方差(过拟合)时的解决方法有:1、减少属性、降低高指数多项式、增加样本数、增大λ;反之则为高偏差的解决方法。

你可能感兴趣的:(机器学习,机器学习)