欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

5.3 核函数-机器学习笔记-斯坦福吴恩达教授

发布时间:2025/4/5 编程问答 21 豆豆
生活随笔 收集整理的这篇文章主要介绍了 5.3 核函数-机器学习笔记-斯坦福吴恩达教授 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

核函数


在逻辑回归中,我们会通过多项式扩展来处理非线性分类问题:
hθ(x)=θ0+θ1x1+θ2x2+θ3x1x2+θ4x12+θ5x22+⋯h_θ(x)=θ_0+θ_1x_1+θ_2x_2+θ_3x_1x_2+θ_4x^2_1+θ_5x^2_2+⋯hθ(x)=θ0+θ1x1+θ2x2+θ3x1x2+θ4x12+θ5x22+

假设我们令:
f1=x1,f2=x2,f3=x1x2,f4=x12,f5=x22f_1=x_1,f_2=x_2,f_3=x_1x_2,f_4=x^2_1,f_5=x^2_2f1=x1,f2=x2,f3=x1x2,f4=x12,f5=x22

则预测函数为:
hθ(x)=θ0+θ1f1+θ2f2+θ3f3+⋯h_θ(x)=θ_0+θ_1f_1+θ_2f_2+θ_3f_3+⋯hθ(x)=θ0+θ1f1+θ2f2+θ3f3+

但多项式回归所带来的高阶项不一定作用明显,针对这一问题,SVM 不会引入高阶项来作为新的特征,而是会选择一些标记点(landmark),并将样本 xxx 与标记点 l(i)l^{(i)}l(i) 的相似程度作为新的训练特征 fif_ifi
fi=similarity(x,l(i))f_i=similarity(x,l^{(i)})fi=similarity(x,l(i))


距离度量的方式就称之为核函数(Kernel),最常见的核函数是高斯核函数(Gaussian Kernel)
fi=exp(−∣∣x−l(i)∣∣22δ2)f_i=exp(\frac {−||x−l^{(i)}||^2}{2δ^2})fi=exp(2δ2xl(i)2)

在高斯核中,注意到:

  • 如果样本与标记点足够接近,即 x≈l(i) ,则:
    f≈exp(−022δ2)≈1f≈exp(−\frac {0^2}{2δ^2})≈1fexp(2δ202)1

  • 如果样本远离标记点,则:
    f≈exp(−(largenumber)22δ2)≈0f≈exp(−\frac {(large\ number)^2}{2δ^2})≈0fexp(2δ2(large number)2)0

这一关系可以被如下的热力图所反映:

在使用高斯核函数前,需要做特征缩放(feature scaling),以使 SVM 同等程度地关注到不同的特征。

标记点选取

假定我们有如下的数据集:
(x(1),y(1)),(x(2),y(2)),(x(3),y(3)),⋯,(x(m),y(m))(x^{(1)},y^{(1)}),(x^{(2)},y^{(2)}),(x^{(3)},y^{(3)}),⋯,(x^{(m)},y^{(m)})(x(1),y(1))(x(2),y(2))(x(3),y(3))(x(m),y(m))

我们就将每个样本作为一个标记点:
l(1)=x(1),l(2)=x(2),l(3)=x(3),⋯,l(m)=x(m)l^{(1)}=x^{(1)},l^{(2)}=x^{(2)},l^{(3)}=x^{(3)},⋯,l^{(m)}=x^{(m)}l(1)=x(1)l(2)=x(2)l(3)=x(3)l(m)=x(m)

则对于样本 (x(i),y(i))(x^{(i)},y^{(i)})(x(i),y(i)) ,我们计算其与各个标记点的距离:
f1(i)=sim(x(i),l(1))f^{(i)}_1=sim(x^{(i)},l^{(1)})f1(i)=sim(x(i),l(1))f2(i)=sim(x(i),l(2))f^{(i)}_2=sim(x^{(i)},l^{(2)})f2(i)=sim(x(i),l(2))⋮⋮fm(i)=sim(x(i),l(3))f^{(i)}_m=sim(x^{(i)},l^{(3)})fm(i)=sim(x(i),l(3))

得到新的特征向量: f∈Rm+1f∈\R^{m+1}fRm+1
f=(f0f1f2⋮fm)其中f0=1f=\left( \begin{matrix} f_0 \\ f_1 \\ f_2 \\ ⋮ \\ f_m \end{matrix} \right)\quad 其中f_0=1 f=f0f1f2fmf0=1

则具备核函数的 SVM 的训练过程如下:
min⁡θC[∑i=1my(i)cost1(θTf(i))+(1−y(i))cost0(θTf(i))]+12∑j=1nθj2\min_θC[∑_{i=1}^m y^{(i)}cost_1(θ^Tf^{(i)})+(1−y^{(i)})cost_0(θ^Tf^{(i)})]+\frac12∑_{j=1}^nθ^2_jθminC[i=1my(i)cost1(θTf(i))+(1y(i))cost0(θTf(i))]+21j=1nθj2

总结

以上是生活随笔为你收集整理的5.3 核函数-机器学习笔记-斯坦福吴恩达教授的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。