周志华《机器学习》笔记:第2章 模型评估与选择
来源:互联网 发布:花生壳域名建站 编辑:程序博客网 时间:2024/06/06 02:49
本章概括
本章介绍模型评估与选择,包括:
1. 误差产生:过拟合和欠拟合
2. 评估方法:给定数据集后如何产生训练集和测试集
3. 性能度量:建立衡量模型泛化能力的评价标准
4. 比较检验:从统计角度比较机器学习性能
5. 偏差与方差:解释学习算法泛化性能的一种工具
- 第2章 模型评估与选择
- 经验误差与过拟合
- 评估方法
- 性能度量
- 错误率与精度
- 查准率查全率与F1
- ROC与AUC
- 代价敏感错误率与代价曲线
- 比较检验
- 假设检验
- 偏差与方差
第2章 模型评估与选择
经验误差与过拟合
一般来说,学习器的预测输出和实际真实的输出是有差异的,称为误差。
如果学习器学的太差,对训练样本的一般性质没学好,则称为欠拟合underfitting。
相反,如果学的「太好」,把训练样本自身的一些特点当成了所有潜在样本都具有的一般性质,这种情况称为过拟合overfitting。
欠拟合比较容易克服,往往因为学习器学习能力太强大导致的过拟合很难处理,实际上过拟合是机器学习面临的关键障碍。首先必须认识到,过拟合无法避免,我们需要做的是降低或者缓解。
从理论上讲,
机器学习面临的问题通常是NP难或者更难,而有效的学习算法必然是在多项式时间内运行完成,若可彻底避免过拟合,则通过经验误差最小化就能获得最优解,这就意味着我们构造性地证明了
P=NP 。因此只要相信P≠NP ,过拟合就不可避免。
评估方法
评估方法主要考虑的是在给定了数据集D后如何产生训练集S和测试集T。
一般方法有留出法hold-out,交叉验证法和自助法。
留出法也即
交叉验证法也就是将数据集划分为
自助法以自助采样为基础,假设数据集D有m个样本,对数据集D做
简单分析一下m次都没被去到概率是
如何选择方法?
一般来说自助法比较适合数据集较小,难以有效划分训练/测试集的情况。而如果初始数据集比较足够时,留出法和交叉验证法更常用。
性能度量
一句话总结,性能度量就是建立衡量模型泛化能力的评价标准。
回归任务最常用的性能度量是均方误差mean squared error
以下介绍分类任务常用的性能度量。
1. 错误率与精度
2. 查准率precision、查全率recall与F1
3. ROC与AUC
4. 代价敏感错误率与代价曲线
错误率与精度
错误率与精度自然就是算比例,最简单。
不过不能满足所有的任务需求,比如挑瓜,错误率相当于是有多少比例的瓜被判别错误。但如果需要知道挑出来的瓜有多少比例是好瓜,或者所有好瓜中有多少比例被挑了出来,就需要第二个性能度量了。
查准率、查全率与F1
所谓的查准率P和查全率R分别定义为:
变量是分类结果的混淆矩阵confusion matrix,表示为下表:
所以它适用于二分类问题。查准率也就是在所有预测结果为正例的情况下的真实比例。查全率是所有真实情况为正例的情况下预测正确的比例。
P和R是一对矛盾度量,所以一般会综合两方面考量学习器的好坏,找到最佳平衡点BEP(Break-Even Point)。衡点定义是查全率等于查准率时的取值。
BEP过于简化,更常用的是F1变量,本质上是P和R的调和平均。
具体应用中可能对P和R有不同的倚重。比如商品推荐中,为了尽可能少打扰用户,更希望推荐内容确是用户感兴趣的,这时候查准率更重要。而在逃犯检索系统中,更希望尽可能少漏掉逃犯,此时查全率更重要。
F1度量的一般形式
也即是
当
ROC与AUC
考虑样本预测排序,见书P33-35
代价敏感错误率与代价曲线
本质上就是为权衡不同类型错误所造成的不同损失,可为错误赋予非均等代价unequal cost。
比较检验
比较机器学习的性能不能直接通过度量值比较得出结果。统计假设检验为机器学习性能比较提供重要依据。
简单来说,若在测试集上观察到学习器A比B好,基于假设检验结果则能知道A的泛化性能是否在统计意义上优于B,以及这个结论的把握有多大。
统计检验有四种方法:假设检验、交叉验证t检验、McNemar检验、Friedman检验与Nemenyi后续检验。
以下介绍假设检验,其余方法见书P40-44。
假设检验
以错误率为性能度量,假设测试错误率为
概率函数对
假设检验需要做的就是假设
比如
具体计算时只需把错误样本数大于3的概率求和,看是否小于
偏差与方差
通过实验可以估计学习算法的泛化性能,另一方面通过偏差与方差可以了解为什么具有这样的性能,偏差-方差分解bias-variance decomposition就是用来解释学习算法泛化性能的一种工具,试图拆解期望泛化错误率。
对测试样本x,定义
1.
2. f(x;D)为训练集D上学的模型f在x上的预测输出
3. 噪声
4. 偏差:期望输出与真实标记的差别
5. 使用样本数相同的不同训练集产生的方差
以回归任务为例,学习算法的期望预测为
通过多项式展开合并,可将算法的期望泛化误差拆解为偏差、方差和噪声之和。(推导见书P45)
也即有
回顾三者的定义,
1. 偏差:度量学习算法的期望预测与真实结果的偏离程度,即刻画了学习算法本身的拟合能力
2. 方差:度量了同样大小的训练集的变动所导致的学习性能的变化,即刻画了数据扰动所造成的影响
3. 噪声:表达了当前任务下任何学习算法所能达到的期望泛化误差的下限,即刻画了学习问题本身的难度
当学习器刚开始学习时,因为学习程度不足,偏差会主导泛化错误率,随着学习器拟合能力逐渐增强,数据集发生的扰动会被学习到,这时方差开始主导泛化错误率。在最后拟合能力非常强的情况下训练数据自身的、非全局的特性被学习器学到了,则将发生过拟合。
- 周志华《机器学习》第 2 章 模型评估与选择
- 周志华《机器学习》笔记:第2章 模型评估与选择
- 机器学习(周志华)- 第2章模型评估与选择笔记
- 周志华《机器学习》学习笔记2--模型评估与选择
- 周志华《机器学习》笔记:2、模型评估与选择
- 周志华《机器学习》 第02章 《模型评估与选择》 笔记
- 第2章 模型评估与选择学习笔记
- 机器学习笔记--模型评估与选择
- 《机器学习》第二章 模型评估与选择 笔记2 泛化误差的评估方法
- 《机器学习》第二章 模型评估与选择 笔记1
- 周志华 机器学习 模型选择与评估
- 机器学习之模型评估与模型选择(学习笔记)
- 《机器学习》读书笔记 4 第2章 模型评估与选择 一
- 《机器学习》读书笔记 4 第2章 模型评估与选择 二
- 机器学习(周志华) 参考答案 第二章模型评估与选择
- [机器学习 - 周志华] - 第二章 - 模型评估与选择
- <机器学习>(周志华)读书笔记 -- 第二章 模型评估与选择
- 第二章 模型评估与选择--机器学习(周志华) 参考答案
- 嵌入式系统程式设计重要抉择
- 嵌入式系统常用词汇统计表
- rabbitmq php扩展amqp安装
- DBX Error:Driver could not be properly initialized. Client library may be missing, not installed pro
- 嵌入式系统 Boot Loader 技术内幕(1)
- 周志华《机器学习》笔记:第2章 模型评估与选择
- GeekBand第九周笔记
- Android事件分发机制
- 安装Hadoop 2.x时主机名不能包含下划线
- Android ShapeDrawable学习
- JavaWeb(一)
- 1039. Course List for Student (25)
- MongoDB的C语言编程实例
- 欧拉路径