【机器学习】 机器学习性能度量
【误差】
误差指的是模型输出与真值的偏离程度,通常定义一个损失函数来衡量误差的大小。
在训练集上产生的误差称为经验误差或者训练误差,反应了模型在训练数据上拟合效果的好坏。
模型在未知样本上的误差称为泛化误差,通常将测试误差作为泛化误差的近似值,用于衡量训练好的模型对未知数据的预测能力。
【过拟合与欠拟合】
过拟合:模型在训练样本中表现的过于优越,导致在验证数据集和测试数据集中表现不佳。
欠拟合:模型在训练和测试时表现都不好。
【评估方法】
-
【留出法】
将数据集分为训练集和测试集,二者互斥;
保持数据分布一致;
测试集比例一般保持在1/3-1/5 -
【交叉验证法】
将整个数据集分成互斥的k份,保持数据分布一致;
每一次用k-1份作为训练集,剩下的1份作为测试集;
最终对误差求平均 -
【自助法】
数据集D中包含m个样本,对数据集D进行m次有放回采样,采样到的数据构成数据集D‘,将D’作为训练集,未出现在D’中的数据作为测试集,这样数据集中大约有36.8%的数据不会出现在D‘中。
特点:适用于小数据集,不会减小训练集规模,由于改变了数据分布而易引起估计偏差。
【混淆矩阵】
以二分类(正、负)为例:
真正(TP):模型预测为正的正样本
假正(FP):模型预测为正的负样本
假负(FN):模型预测为负的正样本
真负(TN):模型预测为负的负样本
准确率(accuracy):正确预测的正反例数/总数
Accuracy=(TP+TN)/(TP+FP+FN+TN)
精确率(precision):正确预测的正例数/预测正例总数
Precision=TP/(TP+FP)
召回率(recall):正确预测的正例数/实际正例总数
Recall=TP/(TP+FN)
F-score:精确率和召回率的调和值
β=1时,精确率和召回率都很重要,权重相同
β<1时,精确率更重要
β>1时,召回率更重要
F1-score:精确率和召回率的调和平均。
【ROC曲线】
纵坐标为真正率,横坐标为假正率
真正率(TPR):预测为正的正样本数/正样本实际数
假正率(FPR):预测为正的负样本数/负样本实际数
根据分类结果计算得到ROC空间中相应的点,连接这些点形成ROC曲线。靠近左上角的ROC曲线所代表的分类器准确率最高。
【AUC曲线】:ROC曲线下的面积(ROC的积分)
【PR曲线】:精确率对召回率的曲线
纵坐标是精确率,横坐标是召回率。
在同一个测试集,上面的曲线比下面的曲线好,光滑曲线比不光滑曲线好。
【平均绝对误差、平均平方误差、均方根误差】