date: 2017/09/05

经验误差和过拟合


评估方法

通常需要对模型的泛化误差进行评估,来减小过拟合的风险

一般会将已有的数据集划分为“训练集”和“测试集”两个独立的部分

训练集用于学习器的训练,测试集用来测试训练模型,并用测试集的测试误差来近似估计泛化误差


留出法

从数据集中划分一定比例的数据构成测试集


交叉验证法

将数据划分为k个子集(分布一致),将其中1个子集作为测试集,其余子集的并集作为训练集

逐个子集作为测试集,共测试k组数据,最后取平均值,称“k折交叉验证法”


自助法

每次从包含m个样本的数据集D取出一个数据拷贝到D',重复拷贝m个样本到D'中(允许样本重复)

某样本始终不被采集到的概率为

则D中不被采集的样本比例为

即D'包含D中63.2%的样本,取D'作为训练集,D-D'为测试集进行评估

优点:构建的训练集规模与原始数据集一致,能较好的估计用整个数据集D训练的结果;适合数据集比较小、难以有效划分训练/测试集的情形;能构建出多个不同的数据集,有利于集成学习的应用

缺点:改变了初始数据集的分布,引入估计偏差,数据充足时通常不考虑该方法


调参与最终模型


性能度量

指标

说明

表示

Accuracy(正确率)

所有样本数中预测正确的比例

Accuracy=(TP+TN)/(TP+FP+TN+FN)

Error Rate(错误率)

所有样本数中预测错误的比例

ErrorRate=(FP+FN)/(TP+FP+TN+FN)

Precision(精度/查准率)

预测为正例的样本中正确的比例

Precision=TP/(TP+FP)

Recall(召回率/查全率)

实际为正例的样本中正确的比例

Recall=TP/(TP+FN)

F1-score

综合分类率


计算速度

训练速度/预测速度


鲁棒性

处理缺失值、异常值的能力


可扩展性

处理大数据集的能力


可解释性

预测标准、规则的可理解性



错误率与精度

错误率

正确度

其中,为指示函数,当为真时,其值为1,否则为0


查准率、查全率、F1

【准确性、完备性的度量与权衡】

查准率(准确率)

查全率(召回率)

ML2.3-1.png

算术平均:

几何平均:

也即对数平均

调和平均:

也即倒数平均


算术平均是最常用的平均数,即求和除以样本数量,该平均对奇异值比较敏感;

几何平均(对数平均)是对数域下的“算术平均”,值域经过对数压缩,因而对奇异值相对不敏感;

调和平均(倒数平均)是倒数域下的“算术平均”,对奇异值非常敏感(尤其是极小值),常用于比率关系


算术平均vs调和平均,以买菜为例,

算术平均表示“在A,B,C市场各买一菜(斤),单价分别为x1,x2,x3(元/斤),平均每斤菜的价格(元/斤)”

调和平均表示“在A,B,C市场各买一菜(元),单价分别为x1,x2,x3(元/斤),平均每斤菜的价格(元/斤)"


均值不等式:(

      1. 宏F1(macro-F1)
        分别计算P和Q,最后取平均值


      2. 微F1(micro-F1)
        分别计算,再代入F1公式



ROC、AUC

【预测值质量的度量】

真正例率:即分类正确时正例的比例,,等价于查全率(召回率)

假正例率:即分类错误时正例的比例,

受试者工作特征(Receiver Operating Characteristic,ROC

类似P-R曲线的绘制,先根据预测值(预测概率)将预测结果排序,

按预测得分(概率)排序,依次将前1个、前2个、前3个……样例作为正例,得到一组TPR/FNR,进而绘制成ROC曲线(TPR为纵,FNR为横)

ML2.3-2.png



代价敏感错误率、代价曲线

【非均等代价下的性能度量】

考虑分类错误的代价不均等的情况

假设假正例、假反例的代价分别为

则总体代价为

由此可以绘制代价曲线(即图中的红色曲线)——

ML2.3-3.png



比较检验

评估度量的值与测试集的选择、学习算法的随机性有关,往往不能直接比较,而是采用统计假设检验的方法来进行比较。这里以错误率为性能度量,


偏差与方差

如果希望了解学习器“为什么”具有这样的性能,可以采用“偏差-方差分解”

即将学习器的期望泛化误差进行展开、分解——


偏差-方差窘境

假设能够控制算法的训练程度(如决策树层数、神经网络训练轮数、集成学习方法的基学习器数)