台湾大学林轩田《机器学习基石》学习笔记第8讲——Noise and Error

本文是关于台湾大学林轩田《机器学习基石》课程的学习笔记,主要探讨了数据集中存在噪声时,VC维的推导是否仍然适用。介绍了噪声的来源,包括在y和x中的噪声,以及概率目标分布P(y|x)的概念。此外,文章还讨论了错误度量,包括0/1误差和平方误差,并解释了在不同问题中如何选择合适的错误度量。接着,介绍了算法错误度量,特别是针对二元分类问题的混淆矩阵和代价矩阵。最后,文章提到了加权分类,通过虚拟复制样本的方法处理加权情况下的错误矩阵,以适应不同的错误成本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上节课介绍VC Dimension的定义,从有限的dvcd_{vc}dvc推导出VC bound,但其实基于Data Set是在没有Noise的情况下,本节课讨论如果Data Set本身存在Noise,那VC Dimension的推导是否还成立呢?

一、Noise and Probabilistic Target
在这里插入图片描述

  • 仍然以银行是否给客户发放信用卡为例,说明Noise的来源主要有三类:
  • noise in y:由于人为因素,正类被误分为负类,或者负类被误分为正类;
  • noise in y:同样特征的样本被模型分为不同的类;
  • noise in x:样本的特征被错误记录和使用。
    在这里插入图片描述
  • 在之前无noise的data set中,我们称这个data set是确定分布的,即deterministic;
  • 当data set存在noise时,这时候data不再是deterministic确定分布的,而是存在一定的概率分布,对每个(x,y)出现的概率是P(y|x);
  • 数学上可以证明如果数据集按照P(y|x)概率分布且是iid的,那么以前证明机器可以学习的方法依然奏效;
  • i.i.d.:independently and identically distributed,即独立同分布

在概率统计理论中,指随机过程中,任何时刻的取值都为随机变量,如果这些随机变量服从同一分布,并且互相独立,那么这些随机变量是独立同分布。
机器学习都是基于独立同分布这样的假设基础上的。
输入空间X中的所有样本服从一个隐含未知的分布,训练数据所有样本都是独立地从这个分布上采样而得。 ——周志华西瓜书

在这里插入图片描述

  • P(y|x) 称之为目标分布(Target Distribution),它实际上告诉我们最好的预测是什么,同时伴随多少比例的noise;
  • 基于目标分布,对于一个输入x,我们最理想的预测结果称之为ideal mini-target
  • 对于deterministic确定分布,可以看成是特殊的概率分布,它的P(y|x)取值为1或0;

在这里插入图片描述

二、Error Measure
在这里插入图片描述

  • 机器学习的目的在于获得一个hypothesis g≈f,之前我们一直使用Eout来对g进行误差估计,而更一般的情况是使用error measure E(g,f),:
  • out-of-sample:样本外的未知数据
  • pointwise:对每个数据点x进行测试
  • classification:看prediction与target是否一致,classification error通常称为0/1 error

在这里插入图片描述

  • pointwise error measure:实际上就是对数据集的每个点计算错误,并计算其平均,使用err对其进行表示;
  • 使用err()改写Ein和Eout如上图;

在这里插入图片描述

  • pointwise error measure一般可以分成两类如上图:0/1 error和squared error:
  • 0/1 error通常用在分类(classification)问题上,判断预测结果正确与否;
  • squared error通常用在回归(regression)问题上,判断预测结果与正确结果的相近程度。
    在这里插入图片描述
  • 对于相同的分布,如果使用不同的error measure策略,可能会得到不同的结果;
  • 对于0/1 error,我们预测应该选择P(y|x)最大的那个y;
  • 而对于squared error,我们预测则应该选择靠近平均期望的那个y;

三、Algorithmic Error Measure
在这里插入图片描述

  • 对于二元分类问题,根据g和f是否相同可以分为如上4种情况,这样的结果我们称之为混淆矩阵(confusion matrix),其中的error有两种:false accept和false reject;
  • false accept(错误接受)意思是误把负类当成正类,false reject(错误拒绝)是误把正类当成负类;

在这里插入图片描述

  • 根据不同的机器学习问题,不同类型的错误所造成的后果可能不同,因此false accept和false reject应该有不同的代价权重,我们称之为代价矩阵(cost matrix)
  • 例如超市优惠,那么false reject代价更大一些,因此代价权重应该设的大一些;如果是安保系统,那么false accept应该设的大一些。

在这里插入图片描述

  • 机器学习演算法A的cost function error估计有多种方法,真实的err一般难以计算,常用的方法可以采用plausible或者friendly,根据具体情况而定。
  • 引入algorithm error measure之后,学习流程图如下:
    在这里插入图片描述

四、Weighted Classification
在这里插入图片描述

  • 上一小节中引入了错误的表示方式——代价矩阵(cost matrix),有时候也称之为损失矩阵(loss matrix)或错误矩阵(error matrix);
  • 这种错误矩阵分别表示如上的Ein(h)和Eout(h),我们称为Weighted Classification

在这里插入图片描述

  • 我们希望让Ein越小越好:
  • 对于数据是线性可分的PLA,只要算法不停运行下去,就能找到最小的Ein;
  • 如果数据是线性不可分的情况,对于pocket算法,当初我们的设想是如果我们新找到更好的w比口袋里的好,那么我就把口袋里的w换掉。pocket算法可以让0/1情况下的Ein尽可能小,但是对于加权情况下是是否能使Ein尽可能小却没有被证明。
    在这里插入图片描述
  • 一种想法是将加权情况下的Ein转化成与0/1情况下的Ein等价的问题。
  • 对于CIA那个例子,-1情况下权值为1000,那么我们在xi=-1时,将资料复制1000倍,再将错误矩阵表示为不含加权情况的错误矩阵。
  • 这种错误矩阵与0/1情况下的pocket算法的错误矩阵一致,唯一的区别就是当某个样本出错时,会复制出1000倍的损失,后面的步骤与传统的pocket算法一致,这样就可以设计出一个新的pocket算法来适应加权情况。

在这里插入图片描述

  • 当然我们不会真的将数据复制1000倍,实际上我们常采用*“virtual copying”*的方式。
  • 在这种情况下,算法搜寻过程中碰到-1的数据样本的概率也增大了1000倍,因此我们要保证抽查-1错误的概率比是抽查+1错误的1000倍。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值