Py学习  »  机器学习算法

吴恩达机器学习系列17:支持向量机

SuperFeng • 5 年前 • 270 次点击  
阅读 8

吴恩达机器学习系列17:支持向量机

支持向量机(Support vector machine是一种强大的机器学习算法,和神经网络相比,它在学习复杂的非线性方程时,能够提供更清晰和更加强大的方式。为了学习支持向量机,我们可以先从逻辑回归开始,看看如何经过小小的改动能得到支持向量机。


在逻辑回归中,假设函数 h_θ(x) 为:

未命名图片.png

图像为:

未命名图片.png

对于一个样本来说,代价函数为:

未命名图片.png

当 y =1 时,第二项为 0,只需要考虑第一项,画出第一项的图像:

未命名图片.png

我们把这个图像稍微修改一下,趋势与逻辑回归相似,就变成了支持向量机代价函数一部分的图像 cost_1(z),如下图粉色线:未命名图片.png

第二项同样道理,cost_0(z):

未命名图片.png

逻辑回归中正则化代价函数为:

未命名图片.png

将其中系数 1/m 去掉,把红色部分换成上面粉色图像的函数:

未命名图片.png

接着将浅蓝色和粉色部分调换一下权重:

未命名图片.png

这样就得到支持向量机的代价函数:

未命名图片.png

只需要将这个函数最小化即可得到参数。以上就是从逻辑回归推出支持向量机的整个过程。




ps. 本篇文章是根据吴恩达机器学习课程整理的学习笔记。如果想要一起学习机器学习,可以关注微信公众号「SuperFeng」,期待与你的相遇。

请关注公众号.PNG


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/31788
 
270 次点击