西瓜书《机器学习》课后答案——chapter6

来源:互联网 发布:城管打人 知乎 编辑:程序博客网 时间:2024/05/17 06:37

6.1 试证明样本空间中任意点x到超平面(ω,b)的距离为式(6.2).
解答:
已知超平面ωTx+b=0,现在需要求空间上某一点x0到超平面的距离。假设超平面上一点x1,满足x0x1垂直于超平面,那么||x0x1||就是x0到超平面的距离。
我们有:

ωTx1+b=0(1)x0x1=kω(2)

ωT乘以(2),得到
ωTx0ωTx1=k||ω||2

结合(1)得到:

ωTx0+b=k||ω||2

得到
k=ωTx0+b||ω||2

所以||x0到超平面的距离为

||x0x1||=(x0x1)T(x0x1)=k2ωTω=|ωTx0+b|||ω||

后面有几个题目会用到LIBSVM,关于LIBSVM的介绍以及使用,本博客的最后给了几个参考资料。

6.2 试使用LIBSVM,在西瓜数据集3.0alpha上分别用线性核和高斯核训练一个SVM,并比较其支持向量的差别。
解答:
西瓜书《机器学习》课后答案——chapter6_6.2

6.3 选择两个UCI数据集,分别用线性核和高斯核训练一个SVM,并与BP神经网络和C4.5决策树进行实验比较。
解答:
西瓜书《机器学习》课后答案——Chapter6_6.3

6.4 试讨论线性判别分析与线性核支持向量机在何种条件下等价。
解答:
LDA和SVM根据不同的优化目标得到超平面。LDA得到的分离超平面法向量为ω=S1w(μ1μ2),而SVM得到的超平面法向量为ω=yiαixi,当两者相同时,认为LDA和SVM等价。但是对于什么条件下两个法向量相同,没有找到详细资料。

参考资料:Comparing LDA and SVM. 2002.

6.5 试述高斯核SVM与RBF神经网路之间的联系。
解答:
用于二分类问题的RBF表达式为

f(x)=sign(i=1hwiK(x,xi)+b).
首先需要确定隐层节点的个数,即高斯核个数,然后通过聚类方法求出每个高斯核的中心点,并计算对应的方差,最后通过反向传播算法得到权重参数w。

而高斯核SVM通过求解凸二次规划问题,自动地得到高斯核的个数、中心点以及权重。方差作为超参,需要根据交叉验证来确定。高斯核SVM的决策函数为

f(x)=sign(i=1myiαiK(x,xi)+b).

根据论文Comparing Support Vector Machines with Gaussian Kernels to Radial Function Classiers,通过实验对比,得出高斯核SVM优于一般的RBF网络的结论。

6.6 试析SVM对噪声敏感的原因。
解答:
给定训练集,SVM最优决策边界由支持向量决定。当增加噪声时,那么该噪声有极高的可能是含噪声训练集的一个支持向量,这意味着决策边界需要改变。

6.7 试给出式(6.52)完整的KKT条件。
解答:
带约束的优化问题标准形式为

minxs.t.f(x)ci(x)0,i=1,2,,khj(x)=0,j=1,2,,l

引入拉格朗日乘子αi0βj构建拉格朗日函数L(x,α,β),则KKT条件为
xL(x,α,β)=0

αici(x)=0,i=1,2,,k

ci(x)0,i=1,2,,k

αi0,i=1,2,,k

hj(x)=0,j=1,2,,l

故约束优化问题(6.45)的KKT条件为

wL(w,b,ξ,ξ^,α,α^,μ,μ^)bL(w,b,ξ,ξ^,α,α^,μ,μ^)ξiL(w,b,ξ,ξ^,α,α^,μ,μ^)ξi^L(w,b,ξ,ξ^,α,α^,μ,μ^)=w+mi=1αiximi=1αi^xi=0=mi=1αimi=1αi^=0=Cμiαi=0,i=1,2,,m=Cμi^αi^=0,i=1,2,,m

αi(wxi+byiϵξi)=0wxi+byiϵξi0αi0

αi^(yiwxibϵξ^i)=0yiwxibϵξ^i0αi^0

μiξi=0ξi0μi0

μi^ξ^i=0ξ^i0μ^i0

6.8 以西瓜数据集3.0alpha的“密度”为输入,“含糖率”为输出,试使用LIBSVM训练一个SVR。
解答:

6.9 试使用核技巧推广对率回归,产生“核对率回归”。
解答:

6.10 试设计一个能显著减少SVM中支持向量的数目而不显著降低泛化性能的方法。

参考
[1] LIBSVM官网
[2] Github
[3] LIBSVM的使用方法

阅读全文
0 0