Python实战六.SVM支持向量机 以故事的形式教你
2018-02-28 11:27
302 查看
作者:简之
链接:https://www.zhihu.com/question/21094489/answer/86273196
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
什么是SVM?
当然首先看一下wiki.
Support Vector Machines are learning models used for classification: which individuals in a population belong where? So… how do SVM and the mysterious “kernel” work?
好吧,故事是这样子的:
在很久以前的情人节,大侠要去救他的爱人,但魔鬼和他玩了一个游戏。
魔鬼在桌子上似乎有规律放了两种颜色的球,说:“你用一根棍分开它们?要求:尽量在放更多球之后,仍然适用。”
<img src="https://pic2.zhimg.com/50/5aff2bcdbe23a8c764a32b1b5fb13b71_hd.jpg" data-rawwidth="300" data-rawheight="225" class="content_image" width="300">
于是大侠这样放,干的不错?
<img src="https://pic1.zhimg.com/50/3dbf3ba8f940dfcdaf877de2d590ddd1_hd.jpg" data-rawwidth="300" data-rawheight="225" class="content_image" width="300">
然后魔鬼,又在桌上放了更多的球,似乎有一个球站错了阵营。
<img src="https://pic4.zhimg.com/50/0b2d0b26ec99ee40fd14760350e957af_hd.jpg" data-rawwidth="300" data-rawheight="225" class="content_image" width="300">
SVM就是试图把棍放在最佳位置,好让在棍的两边有尽可能大的间隙。
<img src="https://pic4.zhimg.com/50/4b9e8a8a87c7982c548505574c13dc05_hd.jpg" data-rawwidth="300" data-rawheight="225" class="content_image" width="300">
现在即使魔鬼放了更多的球,棍仍然是一个好的分界线。
<img src="https://pic4.zhimg.com/50/7befaafc45763b9c4469abf245dc98cb_hd.jpg" data-rawwidth="300" data-rawheight="225" class="content_image" width="300">
然后,在SVM 工具箱中有另一个更加重要的 trick。 魔鬼看到大侠已经学会了一个trick,于是魔鬼给了大侠一个新的挑战。
<img src="https://pic2.zhimg.com/50/558161d10d1f0ffd2d7f9a46767de587_hd.jpg" data-rawwidth="300" data-rawheight="225" class="content_image" width="300">
现在,大侠没有棍可以很好帮他分开两种球了,现在怎么办呢?当然像所有武侠片中一样大侠桌子一拍,球飞到空中。然后,凭借大侠的轻功,大侠抓起一张纸,插到了两种球的中间。
<img src="https://pic3.zhimg.com/50/55d7ad2a6e23579b17aec0c3c9135eb3_hd.jpg" data-rawwidth="300" data-rawheight="167" class="content_image" width="300">
现在,从魔鬼的角度看这些球,这些球看起来像是被一条曲线分开了。
<img src="https://pic2.zhimg.com/50/e5d5185561a4d5369f36a9737fc849c6_hd.jpg" data-rawwidth="300" data-rawheight="225" class="content_image" width="300">
再之后,无聊的大人们,把这些球叫做 「data」,把棍子 叫做 「classifier」, 最大间隙trick 叫做「optimization」, 拍桌子叫做「kernelling」, 那张纸叫做「hyperplane」。
图片来源:Support Vector Machines explained well
直观感受看:https://www.youtube.com/watch?v=3liCbRZPrZA
<img src="https://pic1.zhimg.com/50/3a05c21b8fbb9c4cb8198815ec6a3fd7_hd.jpg" data-rawwidth="1280" data-rawheight="800" class="origin_image zh-lightbox-thumb" width="1280" data-original="https://pic1.zhimg.com/3a05c21b8fbb9c4cb8198815ec6a3fd7_r.jpg">
<img src="https://pic1.zhimg.com/50/dd8facea0b915fedf9c3690ce67f6cf8_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic1.zhimg.com/dd8facea0b915fedf9c3690ce67f6cf8_r.jpg">
<img src="https://pic2.zhimg.com/50/c76fafd31978db1744e6286e276fe25b_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic2.zhimg.com/c76fafd31978db1744e6286e276fe25b_r.jpg">
<img src="https://pic2.zhimg.com/50/71bd4dfd0a59b50fd1a06523dd281425_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic2.zhimg.com/71bd4dfd0a59b50fd1a06523dd281425_r.jpg">
<img src="https://pic3.zhimg.com/50/169230b78232b9e73780174bae2afa86_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic3.zhimg.com/169230b78232b9e73780174bae2afa86_r.jpg">
<img src="https://pic2.zhimg.com/50/c8f830648ec0a24419ff3c68e9b65484_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic2.zhimg.com/c8f830648ec0a24419ff3c68e9b65484_r.jpg">
<img src="https://pic4.zhimg.com/50/19236d74e67a4e1ea804f6f4d47e8dcd_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic4.zhimg.com/19236d74e67a4e1ea804f6f4d47e8dcd_r.jpg">
<img src="https://pic2.zhimg.com/50/c18864b0ecfe9bf8e9b8d6001b5bbf7c_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic2.zhimg.com/c18864b0ecfe9bf8e9b8d6001b5bbf7c_r.jpg">
<img src="https://pic1.zhimg.com/50/7c19253df763e678cd6377cbfdabc01f_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic1.zhimg.com/7c19253df763e678cd6377cbfdabc01f_r.jpg">
<img src="https://pic3.zhimg.com/50/87aa4bb4e046b75e37f05b369304b58a_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic3.zhimg.com/87aa4bb4e046b75e37f05b369304b58a_r.jpg">
<img src="https://pic4.zhimg.com/50/cc891d721ee902434f362821091bc496_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic4.zhimg.com/cc891d721ee902434f362821091bc496_r.jpg">
<img src="https://pic3.zhimg.com/50/474312c10e1f681f3ff9f928aa59dfaa_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic3.zhimg.com/474312c10e1f681f3ff9f928aa59dfaa_r.jpg">
链接:https://www.zhihu.com/question/21094489/answer/86273196
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
什么是SVM?
当然首先看一下wiki.
Support Vector Machines are learning models used for classification: which individuals in a population belong where? So… how do SVM and the mysterious “kernel” work?
好吧,故事是这样子的:
在很久以前的情人节,大侠要去救他的爱人,但魔鬼和他玩了一个游戏。
魔鬼在桌子上似乎有规律放了两种颜色的球,说:“你用一根棍分开它们?要求:尽量在放更多球之后,仍然适用。”
<img src="https://pic2.zhimg.com/50/5aff2bcdbe23a8c764a32b1b5fb13b71_hd.jpg" data-rawwidth="300" data-rawheight="225" class="content_image" width="300">
于是大侠这样放,干的不错?
<img src="https://pic1.zhimg.com/50/3dbf3ba8f940dfcdaf877de2d590ddd1_hd.jpg" data-rawwidth="300" data-rawheight="225" class="content_image" width="300">
然后魔鬼,又在桌上放了更多的球,似乎有一个球站错了阵营。
<img src="https://pic4.zhimg.com/50/0b2d0b26ec99ee40fd14760350e957af_hd.jpg" data-rawwidth="300" data-rawheight="225" class="content_image" width="300">
SVM就是试图把棍放在最佳位置,好让在棍的两边有尽可能大的间隙。
<img src="https://pic4.zhimg.com/50/4b9e8a8a87c7982c548505574c13dc05_hd.jpg" data-rawwidth="300" data-rawheight="225" class="content_image" width="300">
现在即使魔鬼放了更多的球,棍仍然是一个好的分界线。
<img src="https://pic4.zhimg.com/50/7befaafc45763b9c4469abf245dc98cb_hd.jpg" data-rawwidth="300" data-rawheight="225" class="content_image" width="300">
然后,在SVM 工具箱中有另一个更加重要的 trick。 魔鬼看到大侠已经学会了一个trick,于是魔鬼给了大侠一个新的挑战。
<img src="https://pic2.zhimg.com/50/558161d10d1f0ffd2d7f9a46767de587_hd.jpg" data-rawwidth="300" data-rawheight="225" class="content_image" width="300">
现在,大侠没有棍可以很好帮他分开两种球了,现在怎么办呢?当然像所有武侠片中一样大侠桌子一拍,球飞到空中。然后,凭借大侠的轻功,大侠抓起一张纸,插到了两种球的中间。
<img src="https://pic3.zhimg.com/50/55d7ad2a6e23579b17aec0c3c9135eb3_hd.jpg" data-rawwidth="300" data-rawheight="167" class="content_image" width="300">
现在,从魔鬼的角度看这些球,这些球看起来像是被一条曲线分开了。
<img src="https://pic2.zhimg.com/50/e5d5185561a4d5369f36a9737fc849c6_hd.jpg" data-rawwidth="300" data-rawheight="225" class="content_image" width="300">
再之后,无聊的大人们,把这些球叫做 「data」,把棍子 叫做 「classifier」, 最大间隙trick 叫做「optimization」, 拍桌子叫做「kernelling」, 那张纸叫做「hyperplane」。
图片来源:Support Vector Machines explained well
直观感受看:https://www.youtube.com/watch?v=3liCbRZPrZA
<img src="https://pic1.zhimg.com/50/3a05c21b8fbb9c4cb8198815ec6a3fd7_hd.jpg" data-rawwidth="1280" data-rawheight="800" class="origin_image zh-lightbox-thumb" width="1280" data-original="https://pic1.zhimg.com/3a05c21b8fbb9c4cb8198815ec6a3fd7_r.jpg">
<img src="https://pic1.zhimg.com/50/dd8facea0b915fedf9c3690ce67f6cf8_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic1.zhimg.com/dd8facea0b915fedf9c3690ce67f6cf8_r.jpg">
<img src="https://pic2.zhimg.com/50/c76fafd31978db1744e6286e276fe25b_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic2.zhimg.com/c76fafd31978db1744e6286e276fe25b_r.jpg">
<img src="https://pic2.zhimg.com/50/71bd4dfd0a59b50fd1a06523dd281425_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic2.zhimg.com/71bd4dfd0a59b50fd1a06523dd281425_r.jpg">
<img src="https://pic3.zhimg.com/50/169230b78232b9e73780174bae2afa86_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic3.zhimg.com/169230b78232b9e73780174bae2afa86_r.jpg">
<img src="https://pic2.zhimg.com/50/c8f830648ec0a24419ff3c68e9b65484_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic2.zhimg.com/c8f830648ec0a24419ff3c68e9b65484_r.jpg">
<img src="https://pic4.zhimg.com/50/19236d74e67a4e1ea804f6f4d47e8dcd_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic4.zhimg.com/19236d74e67a4e1ea804f6f4d47e8dcd_r.jpg">
<img src="https://pic2.zhimg.com/50/c18864b0ecfe9bf8e9b8d6001b5bbf7c_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic2.zhimg.com/c18864b0ecfe9bf8e9b8d6001b5bbf7c_r.jpg">
<img src="https://pic1.zhimg.com/50/7c19253df763e678cd6377cbfdabc01f_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic1.zhimg.com/7c19253df763e678cd6377cbfdabc01f_r.jpg">
<img src="https://pic3.zhimg.com/50/87aa4bb4e046b75e37f05b369304b58a_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic3.zhimg.com/87aa4bb4e046b75e37f05b369304b58a_r.jpg">
<img src="https://pic4.zhimg.com/50/cc891d721ee902434f362821091bc496_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic4.zhimg.com/cc891d721ee902434f362821091bc496_r.jpg">
<img src="https://pic3.zhimg.com/50/474312c10e1f681f3ff9f928aa59dfaa_hd.jpg" data-rawwidth="2560" data-rawheight="1600" class="origin_image zh-lightbox-thumb" width="2560" data-original="https://pic3.zhimg.com/474312c10e1f681f3ff9f928aa59dfaa_r.jpg">
相关文章推荐
- Python机器学习实战之支持向量机概念篇
- 【机器学习实战-python3】支持向量机(Support Vecrtor Machines SVM)
- Python学习-机器学习实战-ch06 支持向量机
- PYTHON机器学习实战——SVM支持向量机
- python实战===输入密码以******的形式在cmd中展示
- python机器学习理论与实战(五)支持向量机
- Python爬虫实战
- Python爬虫入门实战系列(一)--爬取网络小说并存放至txt文件
- 机器学习实战第二章-k近邻算法(包含一些python绘图基础)
- Selenium2 Python 自动化测试实战学习笔记(二)
- 信息增益以及决策树算法-机器学习实战(python)
- 转 Python爬虫实战一之爬取糗事百科段子
- Python实战 双色球数据采集
- Python爬虫学习,实战一糗事百科(2017/7/21更新)
- python机器学习理论与实战(六)支持向量机
- 【图文详解】python爬虫实战——5分钟做个图片自动下载器
- Python爬虫实战:爬糗事百科的段子
- python实战===用python对比两张图片的不同
- Python机器学习实战--线性回归
- 支持向量机SVM通俗理解(python代码实现)