机器学习基石——作业2解答
这里的μ指的是某个
此时的 f(x)为ideal mini-target function,错误的概率为 1−λ。求此时的错误率。两部分:
①无噪声干扰的 y乘以对应的错误率;②在正确分类
求解: μλ+(1−λ)(1−μ)=1+μ(2λ−1)−λ,要消除μ,λ=0.5
MATLAB作图求解。错误率0.05时, N=453000, 最接近的是460000。
d=10,delta=0.05;
x=linspace(0,1000000,100000);
y=4*(2*x).^d.*exp(-0.125*x*delta^2);
loglog(x,y)MATLAB求解。x3、x4用solve函数求解非线性方程。最小的是x4, Devroye。
N=10000;delta=0.05;d=50;
x1=sqrt(8/N*log(4*(2*N)^d/delta))
x2=sqrt(2*log(2*N*(N)^d)/N)+sqrt(2/N*log(1/delta))+1/N
x3=solve('sqrt(1/10000*(2*x3+log(6*(2*10000)^50/0.05)))=x3','x3')
x4=solve('x4=sqrt(1/20000*(4*x4*(1+x4)+log(4*(10000^2)^50/0.05)))','x4')
x5=sqrt(16/N*log(2*(N)^d/sqrt(delta)))
%N=10000: x1=0.6322, x2=0.3313, x3=0.2237, x4=0.2152, x5=0.8604上一问中令
%N=5: x1=13.8282, x2=7.0488, x3=5.1014, x4=15.0125, x5=16.2641题目十分类似高中排列组合中的“捆绑问题”。
假设N=4, 有5个间隔。首先考虑捆绑在一起的为正,其余的为负,则有
正(1,2),(1,3),(1,4),(5,4),(5,3),(5,2)由于有边界位置“1”“5”,每种情况中未捆绑的剩余部分都是连续的,在负的情形中会重复计数。共有2×(4-1)种。
总结:2C2N+1−2N−1=N2−N+2
| N=1 | N=2 | N=3 | N=4 | |
|---|---|---|---|---|
| mH(N)=N2−N+2 | 2 | 4 | 8 | 14 |
| 2N | 2 | 4 | 8 | 16 |
所以dvc=3
环内的是正,环外的是负。不难观察,这是一个positive interval的问题,mH(N)=C2N+1+1
可以从多项式的根的个数的角度考虑。实轴上有N个点,要用多项式曲线将他们“打散”,多项式要有
题目的公式不大懂,可参考http://beader.me/2014/02/22/vc-dimension-three/ 考虑了一个简化的决策树模型。按照描述,二维空间内,2个互相垂直且不相关的直线可以打散22个点,3维空间中3个互相垂直且不相关的平面可以打散23个点。
三角波,参数控制的是波的周期,因此显然是所有N都能打散。
答案选3.
选项1:括号内的不会比
选项2:这是个常数,不可能是上界;
选项3:mH(N)的一个上界是2N,2imH(N−i)对应过去的上界就是2i⋅2(N−i)=2N
选项4:Ndvc是mH(N)的上界,但是开平方就不一定了。考虑课上讲的2D 感知机模型N=4时,mH(4)=14,43−−√=8<14
答案选2。此题不是很懂第二个选项。当dvc=∞时,mH(N)=2N;当假设空间没有自由度时,可能只有1种h;第6题的答案就是
第二个选项随着N从1增大,依次是
求假设空间的交集的VC维。最小为0(没有交集),最大是假设空间中
求假设空间的并集的VC维。最小的情形下,也是假设空间中dvc最大的那个。参考了Mac Jiang的博客http://blog.csdn.net/a1015553840/article/details/51043019的解释:
试想,有一个h1,把平面所有点分为+1,h2把平面所有点分为−1。h1∪h2的话,VC dimension为1,而各自dvc加起来为0。所以选4.
详细的解释还可以参考http://beader.me/2014/02/22/vc-dimension-three/
16-20题考虑了一个一维决策树(即课上练习题讲的positive and negative rays模型),一共有2N种可能的h,由参数
如果训练集中有
16题问的是Eout,可以和第1题联系起来,Eout=μλ+(1−λ)(1−μ)=0.6μ+0.2。错误率20,即λ=0.8;由于区间在[−1,1],区间长度为2,理想的θ=0,s=+1,μ的计算与
s=+1:s=−1:
μ=|θ|/2μ=1−|θ|/2
Eout1=0.6μ+0.2=0.3|θ|+0.2Eout2=0.6μ+0.2=−0.3|θ|+0.8
合并起来写:Eout=(s+1)/2
Eout1+(1−s)/2Eout2=0.5+0.3s(|θ|−1)
此题统计Ein,算出0.15左右。
Python代码见http://blog.csdn.net/zyghs/article/details/78755242
此题统计Eout,算出0.25左右。
Python代码见http://blog.csdn.net/zyghs/article/details/78755242
19-20题用多维训练集,但是在每一维上用上一题的方法,找到维度i的最小Ein对应的si和θi,再从这些维度中找到最有区分度(Ein最小)的维度对应的si和θi。此题计算最小的Ein。算出0.25左右,Python代码见http://blog.csdn.net/zyghs/article/details/78755242
此题在测试集上计算最小的Eout,而不再用公式。算出0.35左右,
Python代码见http://blog.csdn.net/zyghs/article/details/78755242