zoukankan      html  css  js  c++  java
  • 《机器学习基石》---噪声和错误

    1 有噪声情况下的机器学习过程

    由一个条件概率来产生数据的标签y,相当于一个确定函数加上噪声:

    2 错误衡量方式

    这里我们介绍pointwise的错误衡量方式。所谓point wise就是可以对于一个点计算它的错误。

    常见的有两种pointwise错误衡量方式:0/1错误和平方错误:

    01错误用于分类,平方错误用于回归。

    我们之前推导VCbound使用的错误衡量方式就是01错误,首先计算出每个点的error,然后对所有点的error取平均:

    下面这个例子说明了,选择错误衡量方式很重要,不同的错误衡量会使算法作出不同的选择:

    加上错误衡量之后,我们的机器学习流程就变为如下:

    还要提一下,之前我们推导VCbound和VC维使用的是二分类下的01错误衡量。事实上,对于其他的机器学习问题(多分类,回归等)以及其他的错误衡量方式,我们仍然能推出相应的VCbound和VC维。

    3 不同应用的错误衡量

    错误衡量取决于不同的应用,例如同样是二分类问题,超市和CIA的指纹识别会采用不同的错误衡量方式。

    在实际中,我们有时候会用替代法,在算法上使用err-hat来代替真正的err作近似的错误衡量。做替代的原因可能是真正的err对于算法不太好求解,且替代后能达到与原来近似的效果。例如后面的课程中,我们会用平方错误或交叉熵错误来代替线性分类的01错误。

    机器学习流程如下:

    4 weighted classification 

    如前面CIA的问题,需要最小化的错误是:

    如果使用pocket来求解这个问题(pocket在求解01错误时在理论上证明是有效的),需要作一定的转化:

    把-1数据作虚拟的复制1000倍,则就把这个问题转化为新数据集上的01错误问题:

    因此,为了达到“新数据集”的等效果,需要对原pocket修改两个地方:

    (1)随机访问-1数据的几率要比原来大1000倍;

    (2)对每个w计算错误时的使用Einw来代替原来的Ein。

    fun time :解决不均衡样本的方法:

    (1)样本采样

    (2)对错误衡量的权重作调整

  • 相关阅读:
    操作系统介绍
    python 面向对象 公有属性 用在哪里
    python 类 __module__ __class__
    操作系统发展史
    python 面向对象 字典 有序字典
    python 面向对象 私有属性
    python 面向对象 类 __doc__
    saltstack 部署
    【SQL】MySQL之使用mysqlbinlog进行增量备份及恢复详解
    [SOA] Mule ESB 3.x 入门(二)—— 配置(spring, properties, log4j)
  • 原文地址:https://www.cnblogs.com/coldyan/p/6286422.html
Copyright © 2011-2022 走看看