台湾大学林轩田机器学习基石课程学习笔记8 -- Noise and Error

上一节课,我们主要介绍了VC Dimension的概念。如果Hypotheses set的VC Dimension是有限的,且有足够多N的资料,同时能够找到一个hypothesis使它的Ein≈0E_{in}\approx 0,那么就能说明机器学习是可行的。本节课主要讲了数据集有Noise的情况下,是否能够进行机器学习,并且介绍了假设空间H下演算法A的Error估计。

一、Noise and Probablistic target

上节课推导VC Dimension的数据集是在没有Noise的情况下,本节课讨论如果数据集本身存在Noise,那VC Dimension的推导是否还成立呢?

首先,Data Sets的Noise一般有三种情况:

  • 由于人为因素,正类被误分为负类,或者负类被误分为正类;
  • 同样特征的样本被模型分为不同的类;
  • 样本的特征被错误记录和使用。

之前的数据集是确定的,即没有Noise的,我们称之为Deterministic。现在有Noise了,也就是说在某点处不再是确定分布,而是概率分布了,即对每个(x,y)出现的概率是P(y|x)

因为Noise的存在,比如在x点,有0.7的概率y=1,有0.3的概率y=0,即y是按照P(y|x)分布的。数学上可以证明如果数据集按照P(y|x)概率分布且是iid的,那么以前证明机器可以学习的方法依然奏效,VC Dimension有限即可推断E{in}和E{out}是近似的。

P(y|x)称之为目标分布(Target Distribution)。它实际上告诉我们最好的选择是什么,同时伴随着多少noise。其实,没有noise的数据仍然可以看成“特殊”的P(y|x)概率分布,即概率仅是1和0.对于以前确定的数据集: P(y|x)=1,for \space y=f(x) P(y|x)=0,for \space y\neq f(x)

在引入noise的情况下,新的学习流程图如下所示:

二、ERROR Measure

机器学习需要考虑的问题是找出的矩g与目标函数f有多相近,我们一直使用E_{out}进行误差的估计,那一般的错误测量有哪些形式呢?

我们介绍的矩g对错误的衡量有三个特性:

  • out-of-sample:样本外的未知数据
  • pointwise:对每个数据点x进行测试
  • classification:看prediction与target是否一致,classification error通常称为0/1 error

PointWise error实际上就是对数据集的每个点计算错误并计算平均,E{in}和E{out}的pointwise error的表达式为:

pointwise error是机器学习中最常用也是最简单的一种错误衡量方式,未来课程中,我们主要考虑这种方式。pointwise error一般可以分成两类:0/1 error和squared error。0/1 error通常用在分类(classification)问题上,而squared error通常用在回归(regression)问题上。

Ideal Mini-Target由P(y|x)和err共同决定,0/1 error和squared error的Ideal Mini-Target计算方法不一样。例如下面这个例子,分别用0/1 error和squared error来估计最理想的mini-target是多少。0/1 error中的mini-target是取P(y|x)最大的那个类,而squared error中的mini-target是取所有类的加权平方和。

有了错误衡量,就会知道当前的矩g是好还是不好,并会让演算法不断修正,得到更好的矩g,从而使得g与目标函数更接近。所以,引入error measure后,学习流程图如下所示:

三、Algorithmic Error Measure

Error有两种:false accept和false reject。false accept意思是误把负类当成正类,false reject是误把正类当成负类。 根据不同的机器学习问题,false accept和false reject应该有不同的权重,这根实际情况是符合的,比如是超市优惠,那么false reject应该设的大一些;如果是安保系统,那么false accept应该设的大一些。

机器学习演算法A的cost function error估计有多种方法,真实的err一般难以计算,常用的方法可以采用plausible或者friendly,根据具体情况而定。

引入algorithm error measure之后,学习流程图如下:

四、Weighted Classification

实际上,机器学习的Cost Function即来自于这些error,也就是算法里面的迭代的目标函数,通过优化使得Error(Ein)不断变小。 cost function中,false accept和false reject赋予不同的权重,在演算法中体现。对不同权重的错误惩罚,可以选用virtual copying的方法。

五、总结

本节课主要讲了在有Noise的情况下,即数据集按照P(y|x)概率分布,那么VC Dimension仍然成立,机器学习算法推导仍然有效。机器学习cost function常用的Error有0/1 error和squared error两类。实际问题中,对false accept和false reject应该选择不同的权重。

注明:

文章中所有的图片均来自台湾大学林轩田《机器学习基石》课程。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏新智元

【中秋赏阅】美丽的神经网络:13种细胞构筑的深度学习世界

【新智元导读】人是视觉动物,因此要了解神经网络,没有什么比用图将它们的形象画出来更加简单易懂了。本文囊括 26 种架构,虽然不都是神经网络,但却覆盖了几乎所有常...

3426
来自专栏AI研习社

视频 | 如何用 AI 预测股价?

我们能用机器学习准确地预测股价吗? 一种普遍的说法是股价是完全随机和不可预测的——让一只猴子蒙住眼睛在报纸的金融版面用飞镖选出来的投资组合,也能和投资专家精...

3245
来自专栏AI科技评论

开发 | 为什么ResNet和DenseNet可以这么深?一文详解残差块为何有助于解决梯度弥散问题。

AI科技评论按:本文作者Professor ho,原文载于其知乎主页,雷锋网获其授权发布。 传统的“提拉米苏”式卷积神经网络模型,都以层叠卷积层的方式提高网络深...

4105
来自专栏AI研习社

深度学习面试你必须知道这些答案

本文是问题 “那些深度学习《面试》你可能需要知道的” 的回答,答案均以英文版Deep Learning页标标记。 1. 列举常见的一些范数及其应用场景,如 ...

1.3K10
来自专栏人工智能LeadAI

为什么ResNet和DenseNet可以这么深? | 一文详解残差块为何能解决梯度弥散问题

传统的“提拉米苏”式卷积神经网络模型,都以层叠卷积层的方式提高网络深度,从而提高识别精度。但层叠过多的卷积层会出现一个问题,就是梯度弥散(Vanishing),...

3427
来自专栏PPV课数据科学社区

【V课堂】R语言十八讲(十一) –回归诊断

上一篇讲到了,模型的拟合,以及运用系统的plot函数进行简单的回归诊断,得到了四幅图,大致可以判断模型的假设是否成立,然而,这还远远没有结束,这一篇我们将着重讲...

34914
来自专栏机器人网

【深度学习】详细的神经网络架构图

将这些架构绘制成节点图的一个问题:它并没有真正展示这些架构的工作方式。比如说,变自编码器(VAE)可能看起来和自编码器(AE)一样,但其训练过程却相当不同。训练...

3326
来自专栏量子位

一只初学者,如何登顶野生动物识别挑战赛?| 附代码

动物的照片是在真实场景里拍摄的,姿势不同,背景复杂,光线、天气条件、视角、遮挡情况也不同。

1444
来自专栏大数据挖掘DT机器学习

谱聚类、Chameleon聚类、PCCA、SOM、Affinity Propagation

层次聚类和K-means聚类,可以说是聚类算法里面最基本的两种方法(wiki的cluster analysis页面都把它们排前两位)。这次要探讨的,则是两个相...

3273
来自专栏人工智能

深度学习如何在医学影像分割上大显神通?——分割网络的三个改进思路

一、医学影像分割有助于临床工作 图像分割在影像学诊断中大有用处。自动分割能帮助医生确认病变肿瘤的大小,定量评价治疗前后的效果。除此之外,脏器和病灶的识别和甄别也...

2.1K12

扫码关注云+社区