台大机器学习基石 Lecture 8 - Noise and Error

本次Lecture主要讲了在存在Noise噪声的情况下,是否能够进行机器学习,VC Dimension是否还有作用,并且介绍了一些评价Model的Error度量方法,这是要根据实际问题来确定的。

台大机器学习基石 Lecture 8 - Noise and Error_第1张图片

Noise and Probablistic Target

数据集D存在噪声的情况下,是否还能学习呢?

Noise主要来源于以下三种——

  • 由于人为因素,正类被误分为负类,或者负类被误分为正类;

  • 同样特征的样本被模型分为不同的类;

  • 样本的特征被错误记录和使用。

我们之前的数据都是确定的(deterministic),而现在则变成了对每个一x,y出现的概率是P(y|x)。下面的图继续用罐中抽小球的例子来解释(i.i.d.是指独立同分布)——

台大机器学习基石 Lecture 8 - Noise and Error_第2张图片

从而我们可以用数学证明,如果数据集按照概率P(y|x)分布且是i.i.d.的,那么之前证明机器可以学习的方法依然奏效,VC Dimension有限即可推断E_{in}\approx E_{out}

P(y|x)称为Target Distribution(目标分布),可以这么理解——Target Distribution是有噪声情况下的理想小目标(ideal mini-target),最理想的结果是什么,伴随着多少的noise。而确定的目标f则是Target Distribution的一个特例:

\left\{\begin{matrix} P(y|x)=1,\ for \ y=f(x)\\ P(y|x)=0,\ for \ y\neq f(x) \end{matrix}\right.

于是,学习的目标就是要在最常见的点上做到尽可能接近mini-target。

台大机器学习基石 Lecture 8 - Noise and Error_第3张图片

那么存在noise的情况下,Learning Flow变形成下面这样——

台大机器学习基石 Lecture 8 - Noise and Error_第4张图片

Error Measure

现在我们通过更加一般化的方法来看错误度量,也就是训练之后的g与理想的f的error measure:E(g, f)

主要有三个特性——

  • out-of-sample:通过已有数据集之外的数据来测量
  • pointwise:对每一个数据点都要进行测试
  • classification:查看prediction与target是否一致,这也通常称为'0/1 error'

Pointwise Error实际上就是对数据集的每个点计算错误并计算平均, 在计算E_{in}E_{out}的point wise error表达式如下——

台大机器学习基石 Lecture 8 - Noise and Error_第5张图片

pointwise error是机器学习中最常用也是最简单的一种错误衡量方式(\widehat{err}),未来课程中,我们主要考虑这种方式。简便起见,记作err(g(x),f(x))g(x)\rightarrow \widetilde{y}y(x)\rightarrow y。主要有两类,0/1 error和squared error,前者主要用于分类,后者主要用于回归——

台大机器学习基石 Lecture 8 - Noise and Error_第6张图片

Ideal Mini-Target由P(y|x)\widehat{err}共同决定,下面的例子能表明在相同的P(y|x)下不同的\widehat{err}能产生不同的err结果,形成不同的ideal mini-target——

台大机器学习基石 Lecture 8 - Noise and Error_第7张图片

在加入error measure之后,Learning Flow变成了这样——

台大机器学习基石 Lecture 8 - Noise and Error_第8张图片

Algorithmic Error Measure

Error有两种:False Accept(错的认为是对的)和False Reject(对的认为是错的),0/1 error将这两种error视作相同的。

台大机器学习基石 Lecture 8 - Noise and Error_第9张图片

 我们可以给不同的错误给不同的权值,比如在CIA的指纹识别中,false accept的权值就显然高于false reject,可以用权值表来表示——

f\setminus g +1 -1
+1 0 1
-1 1000 0

因此,err是依赖于应用和用户的。

测量error的方法\widehat{err}有多种,常用的主要分成两类——

台大机器学习基石 Lecture 8 - Noise and Error_第10张图片

 加入error measure后,Learning Flow变成了——

台大机器学习基石 Lecture 8 - Noise and Error_第11张图片

Weighted Classification

机器学习的Cost Function即来自于这些error,也就是算法里面的迭代的目标函数。weighted classification就是不同的(x, y)给出不同的'weight',在机器学习算法的cost function中进行优化。

将基于损失权重的E_{in}记为E_{in}^w,那么可以用Systematic Route的方法将E_{in}^wE_{in}^{0/1}联系起来,以CIA的权值表为例,我们可以类比于将1000的权值复制1000份,1的权值保持不变,然后用0/1 error的方法计算,这两个方法是等价的。

当然,我们不会真的复制1000份,这样太慢了,也不支持非整数的权值。

于是我们只要做到以下两点,提高检查-1的概率,并且在pocket中保留较小的E_{in}^w——

台大机器学习基石 Lecture 8 - Noise and Error_第12张图片

 这样的Systematic Route也被成为Reduction,在许多其他的算法中有应用。

你可能感兴趣的:(台大机器学习基石)