1.1
请查看西瓜书《机器学习》阅读笔记1——Chapter1_假设空间中列举的所有假设。现在只有西瓜1和西瓜4两个样本:
西瓜1为正例,找到假设空间中和它一致的假设:10,12,14,16,58,60,62,64
西瓜4为反例,找到假设空间中和它一致的假设:23,24,31,32,55,56,63,64
保留西瓜1的结果,去除西瓜4的结果,得到版本空间:10,12,14,16,58,60,62
1.2
待写
1.3若数据包含噪声,则假设空间中有可能不存在与所有训练样本都一致的假设。在此情形下,试设计一种归纳偏好用于假设选择。
解答:
给定训练数据,可能出现假设空间中有多个假设匹配该训练数据的情况(构成版本空间),也可能出现没有假设匹配训练数据的情况。
在第一种情况出现时,需要根据学习算法本身的归纳偏好从版本空间中选择偏好的那个假设。
在第二种情况出现时,还是需要从假设空间中选择一个可能好的假设,可以为学习算法设计这样的归纳偏好:选择最匹配训练数据的假设,也即最好的那个;如果有多个最好的假设,选择最简单的那个假设。
1.4本章在论述No Free Lunch定理时,默认使用了分类错误率作为性能度量来对分类器进行评估。若换用其他性能度量 l l ,试证明No Free Lunch定理仍然成立。
解答:
∑fEote(La|X,f)=∑f∑h∑x∈X−XP(x)l(h(x),f(x))P(h|X,La)=∑h∑x∈X−XP(x)P(h|X,La)∑fl(h(x),f(x))=∑h∑x∈X−XP(x)P(h|X,La)2|X|−1(l(h(x),h(x))+l(h(x),!h(x)))(1)(2)(3) (1) ∑ f E o t e ( L a | X , f ) = ∑ f ∑ h ∑ x ∈ X − X P ( x ) l ( h ( x ) , f ( x ) ) P ( h | X , L a ) (2) = ∑ h ∑ x ∈ X − X P ( x ) P ( h | X , L a ) ∑ f l ( h ( x ) , f ( x ) ) (3) = ∑ h ∑ x ∈ X − X P ( x ) P ( h | X , L a ) 2 | X | − 1 ( l ( h ( x ) , h ( x ) ) + l ( h ( x ) , ! h ( x ) ) )
如果NFL定理成立,那么需要
l(h(x),h(x))+l(h(x),!h(x)) l ( h ( x ) , h ( x ) ) + l ( h ( x ) , ! h ( x ) ) 为常数。
当
h(x)=0 h ( x ) = 0 时,
l(h(x),h(x))+l(h(x),!h(x))=l(0,0)+l(0,1) l ( h ( x ) , h ( x ) ) + l ( h ( x ) , ! h ( x ) ) = l ( 0 , 0 ) + l ( 0 , 1 ) ;当
h(x)=1 h ( x ) = 1 时,
l(h(x),h(x))+l(h(x),!h(x))=l(1,1)+l(1,0) l ( h ( x ) , h ( x ) ) + l ( h ( x ) , ! h ( x ) ) = l ( 1 , 1 ) + l ( 1 , 0 ) 。
所以
l(h(x),h(x))+l(h(x),!h(x)) l ( h ( x ) , h ( x ) ) + l ( h ( x ) , ! h ( x ) ) 为常数意味着
l(0,0)+l(0,1)=l(1,1)+l(1,0).(1) (1) l ( 0 , 0 ) + l ( 0 , 1 ) = l ( 1 , 1 ) + l ( 1 , 0 ) .
满足上式的损失函数
l l 称为是”homogeneous”。
在NFL的论文中,也一直在强调损失函数是“homogeneous”时,NFL才成立。和上面二分问题的结论一致。
如果 l l 不满足式(1),那么NFL定理并不成立。比如,我们假设输入空间中只有2个样本 {x1,x2} { x 1 , x 2 } ,输出空间为 {0,1} { 0 , 1 } 。现在把 {x1} { x 1 } 作为训练数据。
那么共有4种可能的目标函数 f f :
\ |
x1 x 1 |
x2 x 2 |
f1 f 1 |
0 |
0 |
f2 f 2 |
0 |
1 |
f3 f 3 |
1 |
0 |
f4 f 4 |
1 |
1 |
并且假设空间中有4种可能的假设 h h :
\ |
x1 x 1 |
x2 x 2 |
h_1$ |
0 |
0 |
h_2$ |
0 |
1 |
h_3$ |
1 |
0 |
h_4$ |
1 |
1 |
现在规定性能度量函数:
l(h(x),f(x))=⎧⎩⎨0,1,2,if h(x)=f(x)if h(x)=0,f(x)=1if h(x)=1,f(x)=0 l ( h ( x ) , f ( x ) ) = { 0 , if h ( x ) = f ( x ) 1 , if h ( x ) = 0 , f ( x ) = 1 2 , if h ( x ) = 1 , f ( x ) = 0
那么对于任意一个算法,各种情况下在测试集
{x2} { x 2 } 上的误差为:
\ |
h1 h 1 |
h2 h 2 |
h3 h 3 |
h4 h 4 |
f1 f 1 |
0 |
l(1,0)=2 l ( 1 , 0 ) = 2 |
0 |
l(1,0)=2 l ( 1 , 0 ) = 2 |
f2 f 2 |
l(0,1)=1 l ( 0 , 1 ) = 1 |
0 |
l(0,1)=1 l ( 0 , 1 ) = 1 |
0 |
f3 f 3 |
0 |
l(1,0)=2 l ( 1 , 0 ) = 2 |
0 |
l(1,0)=2 l ( 1 , 0 ) = 2 |
f4 f 4 |
l(0,1)=1 l ( 0 , 1 ) = 1 |
0 |
l(0,1)=1 l ( 0 , 1 ) = 1 |
0 |
那么
∑fEote(La|X,f)=∑f∑h∑x∈X−XP(x)l(h(x),f(x))P(h|X,La)=∑h∑fl(h(x1),f(x1))P(h|X,La)=[l(h1(x1),f1(x1))+l(h1(x1),f2(x1))+l(h1(x1),f3(x1))+l(h1(x1),f4(x1))]P(h1|X,La)+[l(h2(x1),f1(x1))+l(h2(x1),f2(x1))+l(h2(x1),f3(x1))+l(h2(x1),f4(x1))]P(h2|X,La)+[l(h3(x1),f1(x1))+l(h3(x1),f2(x1))+l(h3(x1),f3(x1))+l(h3(x1),f4(x1))]P(h3|X,La)+[l(h4(x1),f1(x1))+l(h4(x1),f2(x1))+l(h4(x1),f3(x1))+l(h4(x1),f4(x1))]P(h2|X,La)=2P(h1|X,La)+4P(h2|X,La)+2P(h3|X,La)+4P(h4|X,La)(4)(5)(6)(7)(8)(9)(10) (4) ∑ f E o t e ( L a | X , f ) = ∑ f ∑ h ∑ x ∈ X − X P ( x ) l ( h ( x ) , f ( x ) ) P ( h | X , L a ) (5) = ∑ h ∑ f l ( h ( x 1 ) , f ( x 1 ) ) P ( h | X , L a ) (6) = [ l ( h 1 ( x 1 ) , f 1 ( x 1 ) ) + l ( h 1 ( x 1 ) , f 2 ( x 1 ) ) + l ( h 1 ( x 1 ) , f 3 ( x 1 ) ) + l ( h 1 ( x 1 ) , f 4 ( x 1 ) ) ] P ( h 1 | X , L a ) (7) + [ l ( h 2 ( x 1 ) , f 1 ( x 1 ) ) + l ( h 2 ( x 1 ) , f 2 ( x 1 ) ) + l ( h 2 ( x 1 ) , f 3 ( x 1 ) ) + l ( h 2 ( x 1 ) , f 4 ( x 1 ) ) ] P ( h 2 | X , L a ) (8) + [ l ( h 3 ( x 1 ) , f 1 ( x 1 ) ) + l ( h 3 ( x 1 ) , f 2 ( x 1 ) ) + l ( h 3 ( x 1 ) , f 3 ( x 1 ) ) + l ( h 3 ( x 1 ) , f 4 ( x 1 ) ) ] P ( h 3 | X , L a ) (9) + [ l ( h 4 ( x 1 ) , f 1 ( x 1 ) ) + l ( h 4 ( x 1 ) , f 2 ( x 1 ) ) + l ( h 4 ( x 1 ) , f 3 ( x 1 ) ) + l ( h 4 ( x 1 ) , f 4 ( x 1 ) ) ] P ( h 2 | X , L a ) (10) = 2 P ( h 1 | X , L a ) + 4 P ( h 2 | X , L a ) + 2 P ( h 3 | X , L a ) + 4 P ( h 4 | X , L a )
对于不同的算法,
h h 的概率分布是不一样的,所以
∑fEote(La|X,f) ∑ f E o t e ( L a | X , f ) 也是不一样的。
1.5试述机器学习能在互联网搜索的哪些环节起什么作用。
解答:
用户在使用搜索引擎时,需要输入关键字或者图,然后搜索引擎和网页内容作比较,返回最接近的网页。这个过程涉及到关键字到网页的映射,可以用机器学习来做。