前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >春节充电系列:李宏毅2017机器学习课程学习笔记20之支持向量机(support vector machine)

春节充电系列:李宏毅2017机器学习课程学习笔记20之支持向量机(support vector machine)

作者头像
WZEARW
发布2018-04-13 14:09:40
6360
发布2018-04-13 14:09:40
举报
文章被收录于专栏:专知专知

【导读】我们在上一节的内容中已经为大家介绍了台大李宏毅老师的机器学习课程的迁移学习(transfer learning),这一节将主要针对讨论支持向量机(support vector machine)。本文内容涉及机器学习中support vector machine的若干主要问题:hinge loss,kernel method,radial basis function kernel和sigmoid kernel。话不多说,让我们一起学习这些内容吧。

春节充电系列:李宏毅2017机器学习课程学习笔记01之简介

春节充电系列:李宏毅2017机器学习课程学习笔记02之Regression

春节充电系列:李宏毅2017机器学习课程学习笔记03之梯度下降

春节充电系列:李宏毅2017机器学习课程学习笔记04分类(Classification)

春节充电系列:李宏毅2017机器学习课程学习笔记05之Logistic 回归

春节充电系列:李宏毅2017机器学习课程学习笔记06之深度学习入门

春节充电系列:李宏毅2017机器学习课程学习笔记07之反向传播(Back Propagation)

春节充电系列:李宏毅2017机器学习课程学习笔记08之“Hello World” of Deep Learning

春节充电系列:李宏毅2017机器学习课程学习笔记09之Tip for training DNN

春节充电系列:李宏毅2017机器学习课程学习笔记10之卷积神经网络

春节充电系列:李宏毅2017机器学习课程学习笔记11之Why Deep Learning?

春节充电系列:李宏毅2017机器学习课程学习笔记12之半监督学习(Semi-supervised Learning)

春节充电系列:李宏毅2017机器学习课程学习笔记13之无监督学习:主成分分析(PCA)

春节充电系列:李宏毅2017机器学习课程学习笔记14之无监督学习:词嵌入表示(Word Embedding)

春节充电系列:李宏毅2017机器学习课程学习笔记15之无监督学习:Neighbor Embedding

春节充电系列:李宏毅2017机器学习课程学习笔记16之无监督学习:自编码器(autoencoder)

春节充电系列:李宏毅2017机器学习课程学习笔记17之深度生成模型:deep generative model part 1

春节充电系列:李宏毅2017机器学习课程学习笔记18之深度生成模型:deep generative model part 2

春节充电系列:李宏毅2017机器学习课程学习笔记19之迁移学习(Transfer Learning)

课件网址:

http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML17_2.html

http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML17.html

视频网址:

https://www.bilibili.com/video/av15889450/index_1.html

李宏毅机器学习笔记20 支持向量机(support vector machine)

我们在上一节的内容中已经为大家介绍了台大李宏毅老师的机器学习课程的transfer learning,这一节将主要针对讨论support vector machine。本文内容涉及机器学习中support vector machine的若干主要问题:hinge loss,kernel method,radial basis function kernel和sigmoid kernel。话不多说,让我们一起学习这些内容吧

1.hinge loss



支持向量机主要由两部分组成,一个是hinge loss,一个是kernel method。

回顾之前的二分类问题,我们是采用三步来解决这个问题

有很多loss function的方法

Sigmoid + cross entropy 和sigmoid loss对待不正确位置的态度的不同。结果越不正确,sigmoid cross entropy梯度越,然而sigmoid loss梯度越小。

Hinge loss 和sigmoid +cross entropy 最大的不同是对于好的example态度的不同。Sigmoid+cross entropy是好还要更好,hinge loss 要求及格就行。

于是linear SVM三步模型如下图所示

对于SVM使用梯度下降是可以的得到解的

但SVM还可以用别的方法来解。下图红色方框上下式子不一样

但加了minimizing后,上下两个式子是一模一样的,这时候这个问题变成了一个quadratic programming problem。可以用quadratic programming solver解出来

2.kernel method



再看kernel

事实上,每个参数w是x的线性组合,怎么证明呢。看梯度下降公式,让w初始化为0,结果就很明显了。

回到step1,将w带入其中,可以得到下图式子。其中K就是kernel

继续代入

这样的好处就是不需要真正知道x,只需要知道x和z的内积。这叫做kernel trick。

φ(x)是x做linear transformation后的结果, ,将k维投影到更高维,每个维度考虑所有feature两两之间的关系。

3.radial basis function kernel



而(x·z)^2可以直接表示feature transformation+inner product,kernel trick更简单更快。

当然K(x·z)不仅仅能表示inner product,还能表示成别的函数的形式

这个kernel衡量x和z之间的相似度,其中φ有无穷多维

4.sigmoid kernel



K(x·z)为tanh(x·z)时就成了sigmoid kernel

Kernel trick的好处就是可以直接去设计kernel function不用考虑x和z的feature长什么样

SVM还有其他变形

下图为SVM和deep learning的区别

后台回复“LHY2017” 就可以获取 2017年李宏毅中文机器学习课程下载链接~

-END-

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-03-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 专知 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档