泛化性能:
泛化能力用来评价一个训练好的模型在未知数据上的表现好坏。
欠拟合与过拟合:
欠拟合:指的是模型训练不够,没有捕获到数据中有用的特征或者模式。(低偏差)
过拟合:模型过度训练,在训练数据上表现很好,在测试集上表现不佳。(高方差)
看下图:
左边:训练误差和测试误差都很高,代表欠拟合,偏差大。
右边:训练误差很低,但是测试误差很高,代表过拟合,方差大。
模型验证策略:
训练集-测试集(7-3分),训练集-验证集-测试集(小数据6-2-2,大数据98%-1%-1%);
k-折交叉验证(k份);留1法(k-折的特例,分成n份(n为样本数))
大数据用训练集-验证集-测试集的划分方法,小数据用k-折或者交叉验证
评估模型性能
混淆矩阵、准确率、精确率、召回率
准确率只适合用来评价那些数据分布均衡,(比如正负样本五五分的数据),对于样本分布不均衡,准确率高不一定表示模型效果好(9999个正,1个负。不管如何全部预测为正,准确率就有99.99%)
P-R曲线:横坐标是召回率,纵坐标是精确度(查准率)
召回率和精确率是此消彼长,因此不好衡量,F1结合了两者:
P是precision,R是Recall,F1分数越高越好。
ROC曲线:
AUC:ROC曲线下的面积,面积越大代表越好。
r(相关系数,皮尔逊相关系数,Pearson correlation coefficient):度量两个变量之间的线性关系强度。正相关或者负相关,值域在[-1,1]之间,0表示非线性相关。
可以先画散点图,查看数据分布情况,如果明显不线性相关就不要计算了。
:用来衡量模型拟合数据情况程度的指标,值越大越好。(就是皮尔逊相关系数 r 的平方,因此的值在0-1之间)
1.也就是说因变量y的变化,有多大比例可以通过自变量x的变化来解释(拟合)。
2.也就是说在回归模型中,有多大的程度,我们的回归曲线拟合了真实数据的分布。
的值在0-1之间:0表示模型随机拟合,1表示拟合很好。
存在的问题:每增加一个特征,R方值会增加,但是并不意味它表现好,可能过拟合了。也就是说:不断添加变量能让模型的效果提升,而这种提升可能是虚假的。因此引入调整的R方
Adjusted :对于无意义的变量添加惩罚,因此如果你增加无意义的特征变量,Adjusted 会降低;当添加有用的特征的时候才会增加。
n是样本的数量,k是变量(特征,不包括常量)
参考资料:《Getting Started with Machine Learning》-Jim Liang