西瓜书学习笔记-模型评估与误差

模型评估与误差

1 经验误差与过拟合

错误率:m个样本中a个分错,错误率为:E = a/m
精度:1 - 错误率
误差:预测输出与真实输出的差异
训练误差:训练集上的误差
泛化误差:测试集上的误差

  • 过拟合
    学习器将训练样本学的太好,将训练集样本的特殊性作为一般选择,这样会导致泛化能力下降,这一现象称为过拟合。与之相对的对训练样本一般性质都无法学好的称为欠拟合。
2 评估方法

通过实验测试来对学习器的泛化误差进行评估进而选择,为此我们需要一个测试集,用测试误差来近似泛化误差。
一般而言,我们假设测试样本的分布符合真是分布。且测试集和训练集尽量互斥。

常见的用来分割数据集为测试集和训练集的方法有:

  • 留出法
    直接将数据集分为互斥的两部分。
    D = S ∪ T;S ∩ T = 空
    需要注意的是,要将测试/训练集划分的尽量保持数据分布的一致性。
    其缺点:
    存在随机性,所以单次使用留出法的结果不够可靠和稳定,通常是取多次的均值。

  • 交叉验证(K折交叉验证)
    将数据集D分为K个互斥的子集,每次选择其中的K-1个作为训练集,剩下的一个作为测试集。这样一来共有K次训练和测试,结果返回K次测试的均值。
    其特例称为留一法,就是使K=数据量m。


  • 自助法
    对于有m个数据的数据集D,每次随机的从中取出一个样本并复制进D',然后放回D中。这样进行m次后,我们获得一个与数据集D一样大的D',其中由部分重复。
    我们使用D'作为训练集D\D'作为测试集。
    自助法适用于数据集较小的情况,此外因为从初始数据集中产生了多次不同的训练集,有利于集成学习。但是因为重复的样本,改变了原数据集的分布,所以引入了估计偏差,所以当数据量足够时不常使用。
    测试集总量约为1/3.

3 性能度量

对模型的泛化能力进行评估,不仅需要可行的实验估计方法,还需要衡量其泛化能力的评价标准,这就是性能度量。

  • 均方误差
    对于给定的数据集D = {(x1,y1),(x2,y2),...,(xn,yn)},yn为xn的真实标记,要评估学习器f的性能就要将f(x) 与 y比较。
    回归任务中最常见的性能度量就是“均方误差”
  • 查全率、查准率与F1
    错误率和精度虽然常用,单并不能满足所有需求。例如在信息检索中,我们更关心“检索出的信息中多少是用户所关注的”、“用户关注的信息有多少被检索出来了”。所以查准率 precision(准确率)和查全率 recall(召回率)更为适用于该需求。
    对于二分类问题,可以将预测结果根据真实结果划分为真正率(true positive)、假正率(false positive)、真反率(true negative)、假反率(false negative)。显然TP+TN+FP+FN = 样本总数。

查全率与查准率相互矛盾

上图中,如果一个学习器的P-R曲线完全被另一个学习器的P-R曲线所包裹,那么后者优于前者。
平衡点BEP是P = R时的取值。通过BEP比较可以判断哪个学习器更加优秀。
更常见的是F1度量

当应用场景对P、R的重视程度不同时:
β > 1时查全率有更大的影响。

当然、当我们有多个混淆矩阵结果的时候,可以用取均值的方法获得宏P、宏R、宏F1等。

  • ROC与AUC
    很多学习器是为测试样本产生一个实数或概率预测,然后将这个预测值与阈值进行比较,大于阈值为正例,否则为反例。因此,我们可以根据预测对样本进行排序,将最可能的排在前列,分类过程就相当于选择一个截断点,前段为正例。当我们需要查准率较高时,截断点靠前;当需要查全率较高的时候,截断点靠后。ROC曲线就是基于这个角度来研究学习器的泛化性能的。
    ROC曲线的纵轴为真正例率TPR(True Positive Rate),横轴为假正例率FPR。

ROC绘制规则为:
从(0,0)开始,对于给与的m1个正例和m2个反例,根据预测结果进行排序,依次将这些样例化为正例,若为真正例,则y值增加 1/m1,否则x值增加 1/m2,最后将这些点连线。所获得面积为AUC。

  • 代价敏感错误率与代价曲线
    现实任务中不同类型的错误会造成不同的后果,如医疗中的错诊。将健康的人错诊为病人远没有将病人错诊为健康人的代价严重。为了衡量不同类型错误的损失,可以为错误赋予非均等的代价。

代价敏感错误率为:

在非均等代价下,ROC曲线不能直接反应出学习器的期望总代价。

代价曲线绘制方法:
设ROC曲线上某一点坐标(TPR,FPR),计算出FNR = 1 - TPR,在平面绘制(0,FPR)到(1,FNR)的直线,线段下的面积表示了该条件下的期望的总体代价。ROC上的每个点都可以转为一条直线,然后取所有直线的下界,所围成的面积为在所有条件下学习器的期望总代价。

4 比较检验

上述的评估与度量方法并不能彻底得出学习器的性能结果,原因有以下三点:

  1. 结果是基于测试集的,而非真实泛化性能。
  2. 测试集上的性能与测试集本身的选择有关系。
  3. 学习算法有随机性。

所以,我们要使用统计假设检验作为重要的依据。
基于假设检验我们可以得出,若测试集上A的表现优于B,那么A的泛化性能是否在统计意义上优于B,以及这个结论的把握有多大。

  • 假设检验
    对学习器泛化错误率分布有某种判断或猜测,例如错误率为某个定值。根据测试错误率推出泛化错误率的分布。
    以错误率为性能度量,假设测试错误率为ϵ^, 泛化错误率为ϵ。由二项分布(独立采样基础上)知,泛化错误率为ϵ的学习器被测得测试错误率为ϵ^
    的概率为:
  • 二项式检验
    对错误率小于定值定值a这样的假设进行检验。
    假设检验需要做的就是假设 ϵ ≤ ϵ0在α的显著度下能否被拒绝。ϵ0是给定的一个概率值,意味着泛化错误率不能小于ϵ0,α也是一个值,常用取值是0.05。如果不能被拒绝,也就意味着有95%的置信度认为学习器的泛化错误率不大于ϵ0。

比如ϵ0=0.3,根据二项分布,如果是10个样本,那么有3个错误分类的概率最大。
具体计算时只需把错误样本数大于3的概率求和,看是否小于α即可。

5 偏差与方差

在估计了学习算法的泛化性能后,我们还希望了解它为什么能具有这样的性能。“偏差-方差分解”就是用来解释学习算法泛化性能的一种工具。

x:测试样本
y_D:x在数据集上的标记
y:x的真是标记
f(x,D):为训练集D上学得的模型f在x上的预测输出
f(x)均值:为期望预测

有E(f;D)=bias2(x)+var(x)+ϵ2
即泛化误差分解为偏差、方差、噪声之和。

回顾三者的定义,

  • 偏差:
    度量学习算法的期望预测与真实结果的偏离程度,即刻画了学习算法本身的拟合能力
  • 方差:
    度量了同样大小的训练集的变动所导致的学习性能的变化,即刻画了数据扰动所造成的影响
    *噪声:
    表达了当前任务下任何学习算法所能达到的期望泛化误差的下限,即刻画了学习问题本身的难度

偏差-方差分解说明,泛化性能是由学习算法的能力、数据的充分性及学习任务本身的难度共同决定的。

一般来说,偏差与方差是有冲突的

在训练不足的时候,学习器拟合能力不够,训练数据的扰动不足以影响学习器,这个时候,偏差主导了泛化错误率。
当训练加深到一定程度的时候,学习器拟合能力加强,训练数据的扰动逐渐可以被学习器学到,方差主导了泛化错误率。
训练充足的时候,学习器的拟合能力非常强,训练数据的轻微扰动都会导致学习器的变化,若训练数据自身的非全局特性被学习器学到,就发生了过拟合。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,029评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,395评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,570评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,535评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,650评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,850评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,006评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,747评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,207评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,536评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,683评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,342评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,964评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,772评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,004评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,401评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,566评论 2 349

推荐阅读更多精彩内容