文档章节

机器学习第二章 模型评估与选择

DDDDavid
 DDDDavid
发布于 2017/07/31 15:06
字数 579
阅读 51
收藏 0

2.1经验误差与过拟合

错误率:E=a/m

精度:=1-错误率

训练集上的误差:训练误差或经验误差

新样本上的误差:泛化误差

 

p问题,可以在多项式时间内解决的问题,polynomial problem。

np 问题,可以在多项式的时间里验证一个解的问题,non-deterministic polynomial。

npc问题,是NP的一个子集,且其中每一个问题均能由NP中的任何问题在多项式时间内转化而成,np complete。

 

2.2评估方法

(1)留出法:数据划分,分层采样,大约2/3~4/5样本用于测试;

(2)交叉验证法:k折交叉验证,数据分为k组(k常取10),k-1个用于训练,余下用于测试。留一法:m个样本,k=m。

(3)自助法:以自助采样法为基础,适用于数据集较小,难以有效划分训练/测试集时,测试结果称为“包外估计”。

(4)调参与最终模型

 

2.3性能度量

回归任务常用的性能度量:均方误差

(1)       错误率与精度。

(2)       查准率、查全率与F1:

真正例TP,假反例FN

假正例FP,真反例TN

查准率P=TP/(TP+FP)

查全率R=TP/(TP+FN)

P-R曲线,平衡点:P=R。

F1度量:查准率与查全率的调和平均数F1=2*P*R/(P+R)=2*TP/(总数+TP-TN)

Fβ=(1+β2)*P*R/(β2*P+R), β>1查全率影响大,β<1查准率影响大

微查准率Micro-P=TP/(TP+FP)

微查全率Micro-R=TP/(TP+FN)

微F1=2*micro-P*micro-R/(micro-P+micrp-R)

(3)       ROC与AUC,研究学习器泛化性能

受试者工作特征:ROC

纵轴,真正例率,TPR=TP/(TP+FN)

横轴,假正例率,FPR=FP/(TN+FP)

AUC:ROC曲线下的面积AUC=1-lrank

(4)       代价敏感错误率与代价曲线

正例概率代价P(+)cost=p*cost01/(p*cost01+(1-p)*cost10)

归一化代价cost=[FNR*P*cost01+FPR*(1-P)*cost10]/[ p*cost01+(1-p)*cost10]

 

2.4比较检验

(1)假设检验

二项检验

t检验

(2)交叉验证t检验

(3)McNemar检验

(4)Friedman检验与Nemenyi检验

 

2.5偏差与方差

泛化误差可分解为偏差、方差与噪声之和。

偏差-方差窘境

© 著作权归作者所有

共有 人打赏支持
DDDDavid
粉丝 0
博文 6
码字总数 3947
作品 0
东城
程序员
《机器学习》(周志华)课后习题参考答案

目录: 周志华《机器学习》课后习题解答系列(二):Ch1 - 绪论 周志华《机器学习》课后习题解答系列(三):Ch2 - 模型评估与选择 周志华《机器学习》课后习题解答系列(四):Ch3 - 线性模...

kchai31
01/04
0
0
机器学习模型的评价指标?

面试官:你这个项目评价指标是什么? 偶:这是一个【分类】【回归】【聚类】问题,我的指标是-->>如下 分类 精确率、召回率、准确率、F值、ROC-AUC 、混淆矩阵、PRC 回归 RMSE(平方根误差) M...

李理
2017/10/27
0
0
团队拙作《Python机器学习实战》

之前看国内外的 Python 机器学习的书,鲜有将机器学习到底怎么做人脸识别、怎么做风险控制、怎么做 OCR 算法模型列出的,并且真正的一个 Python 应用,不止是从机器学习库中导入一下配置一下...

yijun2018
04/20
0
0
《Python与机器学习实战:决策树、集成学习、支持向量机与神经网络算法详解及编程实现》PDF

下载链接: https://pan.baidu.com/s/1lTl6z8Vv1LfIvdBjv16YpQ 密码: avij 出版社: 电子工业出版社; 第1版 (2017年7月1日) 平装: 315页 语种: 简体中文 开本: 16 ISBN: 9787121317200 条形码...

sinat_33899729
05/07
0
0
学界 | 综述论文:机器学习中的模型评价、模型选择与算法选择

本论文回顾了用于解决模型评估、模型选择和算法选择三项任务的不同技术,并参考理论和实证研究讨论了每一项技术的主要优势和劣势。进而,给出建议以促进机器学习研究与应用方面的最佳实践。 ...

机器之心
02/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

shell学习之创建函数

函数是一个脚本代码块,你可以为其命名并在代码中任何位置重用。 在bash shell脚本中创建函数基本使用如下两种方式,第二种格式更接近于其他编程语言中定义函数的方式。 function name {com...

woshixin
33分钟前
1
0
Toolfk.com 程序员工具网上线

#前言 真不容易,用了一个月的业余时间才把这个网站(toolfk.com)做完。里面的内容主要是从github上找的开源码码,在线运行使用的是Docker运行。当然也是现成的。因为我现在对Docker还是不懂。...

hihubs
46分钟前
2
0
svn 常用操作命令及问题处理

1. 常用命令 1.1. 基本使用 检出 checkout ➜ svn co repo_url -m '检出代码'➜ svn co repo_url saved_dir_name -m '检出代码,并指定目录名' 加入版本控制 add # 添加指定文件➜ svn...

whoru
今天
3
0
记一次jquery validate的扩展(第一次失去焦点时触发校验)

最近在用jquery.validate 做前端表单校验,但是发现每次第一次失去焦点时,如果文本框内容为空,且该字段是必填项, 则不会触发校验,直到提交表单后,再次失去焦点时,才会触发,想对此进行...

foreach
今天
1
0
java生成UUID

UUID介绍: UUID(Universally Unique Identifier)全局唯一标识符,是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。按照开放软件基金会(OSF)制定的标准计算,用到了以...

编程SHA
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部