Noise

在x和y都可能有noise

对于没有noise的情况,x~P(x), f(x)=h(x),但是如果现在有noise,x~P(x), y~P(y|x)(y是真正的label,只是一定概率上会变,因为有noise,这个概率是P(y|x))

联合起来,就有(x,y)~P(x,y) i.i.d.

P(y|x): target distribution

如果P(+1|x)=0.7,P(-1|x)=0.3,那么有

理想的mini-target f(x)=+1,noise level=0.3

对于deterministic target f: a special case of target distribution where P(y|x)=1 for y=f(x) and P(y|x)=0 for y not = f(x)

衡量Error的方法:

Pointwise Error Measure(对于每一个x去求err)

用ỹ表达g(x)。pointwise error measure有两种方法

ideal mini-target f(x)是通过target distribution P(y|x)和err共同决定的。

e.g:

对于target distribution如上给定,如果error measure用0/1来表示,mini-target就是选择target distribution最大的那个,如果是squared error,mini-target就是target distribution的加权平均值。
一种Error Measure

e.g.

以指纹识别为例子,当你有权限操作一台计算机的时候,系统却把你的指纹错误的认为没有权限,这种情况是false reject,当其他没有权限的人去操作电脑的时候,系统却错误的认为该人有权限,这种情况是false accept.这两种都属于error,如果是0/1 error的话,这两种情况是等价的。

但是往往现实不是这样,有的时候希望系统对false reject的惩罚会更大,比如超市错误的拒绝了一个拥有权限的客户,此时超市可能会失去这个客户。这个时候false reject 应该更大。又或者,如果此时有人要入侵电脑,他的指纹被判断成可以接受了,这种情况可能会造成资料的泄漏,此时希望系统对false accept惩罚的更大。

因此可以看出,和之前的0/1 error,把错误全部等价啊看待。

但是,往往,我们并不知道应该怎样设计error,比如超市并不知道怎样惩罚系统误判了正确的客户。因此,这里引入algorithmic Error Measures: err “hat"
既然err有权重了,那么计算Ein和Eout也要考虑权重了,

对于y=-1而h错误的predict成了+1的情况,就是false accept的时候,要变成1000.

通过PLA,可以对Ein最小化,因为加上了权重,所以这里的Ein加上了一个w表示。
另外也可以通过pocket algorithm去minimize Ein^w,但是在pocket algorithm过程中每次的循环都要检测当前的Ein和新产生的h带来的Ein哪个大,这里用的Ein应该是用Ein^w。

现在的问题是怎样将原来的Ein,也就是用0/1 error计算的Ein,与新的带权重的Ein^w联系在一起呢?

解决方法:把y=-1,但是错误的认为成+1的点,复制1000倍。这样用原来的不带权重的Ein就可以产生带权重的Ein对original data一样的效果了。

但是如果真的去复制1000倍的话,耗时耗资源,此时使用virtual copying的办法。既然在false accept的点上需要有1000倍的重视程度,那么干脆在pocket algorithm随机选择点做correction的时候,把选到这些点的概率提高1000倍就好了。

Error measure的更多相关文章

  1. Noise,Error,wighted pocket Algorithm

    错误衡量(Error Measure) 有两种错误计算方法: 第一种叫0/1错误,只要[预测≠目标]则认为犯错,通常用于分类:通常选择,错误比较大的值作为y˜的值 第二种叫平方错误,它衡量[预测与目标 ...

  2. 机器学习基石8-Noise and Error

    注: 文章中所有的图片均来自台湾大学林轩田<机器学习基石>课程. 笔记原作者:红色石头 微信公众号:AI有道 上一节课,我们主要介绍了VC Dimension的概念.如果Hypothese ...

  3. 理解机器为什么可以学习(五)---Noise and Error

    之前我们讨论了VC Dimension,最终得到结论,如果我们的hypetheset的VC Dimension是有限的,并且有足够的资料,演算法能够找到一个hypethesis,它的Ein很低的话,那 ...

  4. 【转载】VC维的来龙去脉

    本文转载自 火光摇曳 原文链接:VC维的来龙去脉 目录: 说说历史 Hoeffding不等式 Connection to Learning 学习可行的两个核心条件 Effective Number o ...

  5. Spark随机深林扩展—OOB错误评估和变量权重

    本文目的 当前spark(1.3版)随机森林实现,没有包括OOB错误评估和变量权重计算.而这两个功能在实际工作中比较常用.OOB错误评估可以代替交叉检验,评估模型整体结果,避免交叉检验带来的计算开销. ...

  6. 台大《机器学习基石》课程感受和总结---Part 2 (转)

    转自:http://blog.sina.com.cn/s/blog_641289eb0101e2ld.html Part 2总结一下一个粗略的建模过程: 首先,弄清楚问题是什么,能不能用机器学习的思路 ...

  7. spark Using MLLib in Scala/Java/Python

    Using MLLib in ScalaFollowing code snippets can be executed in spark-shell. Binary ClassificationThe ...

  8. 踩刹车——regularization

    从一个问题说起: 当我们使用H10去拟合曲线的时候,其实我们只想要H2的结果.如果从H10变回到H2呢? 所以我们只需要添加上限制条件:w3=...=w10=0即可.现在呢,我们可以放宽一点条件:任意 ...

  9. 加州理工大学公开课:机器学习与数据挖掘_线性模型 II(第IX类)

    课程简要: 主要内容包括线性分类和回归分析简单的回忆.除了Logistic回归分析,具体解说误差测量和算法三方面,同时归纳法的非线性变换的分析. 课程大纲: 1.Review 2.Nonlinear ...

随机推荐

  1. apache配置ssl

    1.确认是否安装ssl模块 是否有mod_ssl.so文件   2.生成证书和密钥   linux下 步骤1:生成密钥 命令:openssl genrsa 1024 > server.key 说 ...

  2. LA 3720 高速公路(互质判斜率)

    https://vjudge.net/problem/UVALive-3720 题意: 有一个n行m列的点阵,问一共有多少条非水平非垂直的直线至少穿过其中的两个点. 思路: 没思路的题. 首先枚举矩形 ...

  3. 关于在phpStudy环境下,windows cmd中 php不是内部命令问题

    首先查看system32是否加入系统变量 其次要把当前运行的php版本的路径加入到系统变量中去,path中, 一定要是这个样子的: D:\phpStudy\php\php-5.6.27-nts 不然没 ...

  4. 使用GEOquery下载GEO数据--转载

    最近需要下载一大批GEO上的数据,问题是我要下载的Methylation数据根本就没有sra文件,换言之不能使用Aspera之类的数据进行下载.但是后来我发现了GEOquery这个不错的R包,不知道是 ...

  5. Springboot依赖注入笔记

    结合Autowired和Service注解 public interface IUser { void say(); } @Service public class Student implement ...

  6. Sql Server中的DBCC命令详细介绍

    一:DBCC 1:什么是DBCC 我不是教学老师,我也说不到没有任何无懈可击的定义,全名:Database Console Commands.顾名思义“数据库控制台命令”,说到“控制台“,我第一反应就 ...

  7. vue iview组件表格 render函数的使用

    如果要在标签中加入属性,例如img 中src属性 a标签中href属性 此时需要用到 attrs 来加入而不是props { title: '操作', key: 'action', align: 'c ...

  8. Spring Boot Logback几种日志详解

    日志对于应用程序来说是非常重要的,Spring框架本身集成了不少其他工具,我们自身的应用也会使用到第三方库,所以我们推荐在Spring应用中使用SLF4J/Logback来记录日志. SLF4J与Lo ...

  9. JavaScript---事件监听

    JavaScript的事件监听是通过addEventListener()来实现的 它算是事件绑定的第二种方式. 他的特别之处在于这种绑定事件的方法不会被同名事件覆盖. 看具体的demo <!DO ...

  10. 024——VUE中filter的使用

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...