台大-林轩田老师-机器学习基石学习笔记8
2017-11-20 16:41
405 查看
经过一周的期中考,再次更新啦!
上一讲是主要引入了VC维这个机器学习中非常重要的概念。并梳理了以下这个结论:
如果假设集的VC维有限大,数据足够大,且可以找到一个假设让,数据的Ein≈0,那么机器学习就是可行的。
但是数据集当中会不会含有一些我们认为他是对的东西呢,就是NOISE了,这一讲重点在于此。
这里的橘色珠子就是噪音
发信用卡的时候,好的用户却被标签为坏的,同样的用户却又有不同的标签,或者用户信息输入错误了……
这些都可以称之为噪音
那么VC维的有限界定还可以用在含噪音的数据机器学习中吗?
那么我们可以用概率的表示方法将noise标识出来:
对每个(x,y)出现的概率是P(y|x)。
数学上可以证明如果数据集按照P(y|x)概率分布且是独立同分布的,那么以前证明机器可以学习的方法依然奏效,VC维有限界定则可推断Ein和Eout是近似的。
老师使用贪心算法举例推导了一次。
P(y|x)被称为目标分布。它告诉我们什么是最好的选择,伴随着多少noise。
其实,没有noise的数据仍然可以看成“特殊”的P(y|x)概率分布,即
aa58
概率仅是1和0。
对于以前确定的数据集:
引入NOISE之后机器学习的流程图变成了:
那对于一般的错误还有什么度量呢?
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次太夸张,尤其是在实现代码的时候,那么我们其实只用做到如下的额几点既可以了:
2、机器学习的代价函数常用的Error有0/1 error和squared error两类。
3、实际问题中对false accept和false reject应该选择不同的权重。
上一讲是主要引入了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应该选择不同的权重。
相关文章推荐
- 台大-林轩田老师-机器学习基石学习笔记3
- 台大-林轩田老师-机器学习基石学习笔记11
- 台大-林轩田老师-机器学习基石学习笔记9
- 台大-林轩田老师-机器学习基石学习笔记2
- 台大-林轩田老师-机器学习基石学习笔记7
- 台大-林轩田老师-机器学习基石学习笔记5
- 台大-林轩田老师-机器学习基石学习笔记10
- 台大-林轩田老师-机器学习基石学习笔记6
- 台大-林轩田老师-机器学习基石学习笔记4
- 台大-林轩田老师-机器学习基石学习笔记13
- 台大-林轩田老师-机器学习基石学习笔记1
- 林轩田-机器学习基石/技法-学习笔记-课后习题代码 汇总链接
- 台大机器学习基石课程之机器学习基本原理和概念
- 台湾大学林轩田机器学习技法课程学习笔记16(完结) -- Finale
- 机器学习基石笔记10——机器可以怎样学习(2)
- 林轩田机器学习基石笔记4:机器学习的可行性
- 台大机器学习基石笔记(二)——VC 维1
- 林轩田机器学习基石5笔记:训练和测试的不同
- 林轩田-机器学习基石 课堂笔记(三)Type of Learning
- 机器学习基石-林轩田 第五讲笔记