您的位置:首页 > 其它

台大-林轩田老师-机器学习基石学习笔记8

2017-11-20 16:41 405 查看
经过一周的期中考,再次更新啦!

上一讲是主要引入了VC维这个机器学习中非常重要的概念。并梳理了以下这个结论:

如果假设集的VC维有限大,数据足够大,且可以找到一个假设让,数据的Ein≈0,那么机器学习就是可行的。

但是数据集当中会不会含有一些我们认为他是对的东西呢,就是NOISE了,这一讲重点在于此。

引子

什么是噪音?



这里的橘色珠子就是噪音

发信用卡的时候,好的用户却被标签为坏的,同样的用户却又有不同的标签,或者用户信息输入错误了……



这些都可以称之为噪音

那么VC维的有限界定还可以用在含噪音的数据机器学习中吗?

噪音和概率目标(probabilitic target)

如果我们把弹珠看成输入,橘色弹珠看成noise。之前没有橘色的是我们可以称为deterministic的数据集,现在有了噪音,我们

那么我们可以用概率的表示方法将noise标识出来:

对每个(x,y)出现的概率是P(y|x)。

数学上可以证明如果数据集按照P(y|x)概率分布且是独立同分布的,那么以前证明机器可以学习的方法依然奏效,VC维有限界定则可推断Ein和Eout是近似的。



老师使用贪心算法举例推导了一次。

P(y|x)被称为目标分布。它告诉我们什么是最好的选择,伴随着多少noise。

其实,没有noise的数据仍然可以看成“特殊”的P(y|x)概率分布,即
aa58
概率仅是1和0。

对于以前确定的数据集:

P(y|x)=1,for y=f(x)
P(y|x)=0,for y≠f(x)


引入NOISE之后机器学习的流程图变成了:



错误度量

我们一直使用Eout进行误差的估计。

那对于一般的错误还有什么度量呢?

1、样本外未知数据

2、每个数据点的测试(pointwise)

3、预测与目标的一致性

PointWise error实际上就是对数据集的每个点计算错误并计算平均

Ein和Eout的pointwise error的表达式为:



pointwise error是机器学习中最常用也是最简单的一种错误衡量方式

pointwise error一般可以分成两类:

0/1 error和squared error。

0/1 error通常用在分类问题上;

squared error通常用在回归问题上。



这个最小目标原则如图,其实这个图更多的表述应该是不同的错误度量会造成不同的决策。

引入错误度量之后的机器学习流程图:



算法的错误度量

从算法的执行结果来看

Error有两种:

false accept

false reject



比如是超市优惠,那么false reject应该设的大一些;如果是安保系统,那么false accept应该设的大一些。这个时候就要引入权重的概念了。



引入算法的错误度量之后的机器学习流程图:



权重分类

那么如何设置这些权重呢:

如下图,将hypothesis错误标记为-1的数据点复制1000份,这样就达到了将此类错误的损失权重记为1000的效果。



其实1000次太夸张,尤其是在实现代码的时候,那么我们其实只用做到如下的额几点既可以了:



总结

1、有Noise的情况下,即数据集按照(x,y)处P(y|x)概率分布,那么VC维仍然成立,机器学习算法推导仍然有效。

2、机器学习的代价函数常用的Error有0/1 error和squared error两类。

3、实际问题中对false accept和false reject应该选择不同的权重。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: