andrew ng machine learning week7 支持向量机

吴恩达机器学习全套笔记博客地址
 

对于逻辑回归的新的view 

andrew ng machine learning week7 支持向量机

 支持向量机的函数设定为cost(),曲线和逻辑回归非常相似

andrew ng machine learning week7 支持向量机

 A + lambda * B 

c * A + B  

只是设定不同的项不同的权重,两者可以转换的

andrew ng machine learning week7 支持向量机

 large margin 的含义

正样本我们希望theta * x 大于 1 , 负样本则小于-1 ; 支持向量机的要求相对于逻辑回归更高,不仅仅是以0作为分界线。

andrew ng machine learning week7 支持向量机

SVM的决策边界,想让cost最小,则第一部分为0,也就是下面这两种情况:

andrew ng machine learning week7 支持向量机

决策边界是线性可分的:

andrew ng machine learning week7 支持向量机

C 设置的非常大的作用:

异常点的影响:圈圈中的个别叉或者叉中的个别圈 ,可能很轻易地改变了我们的决策边界。C设置地特别大则会避免这种情况。

或者针对线性不可分的情况

andrew ng machine learning week7 支持向量机

kenerls 


用f来表示x的幂次项

andrew ng machine learning week7 支持向量机

使用similarity(核函数)函数来计算x和随机选择的L点之间,这里选择的是高斯函数

andrew ng machine learning week7 支持向量机

如果x靠近l则高斯函数值为1,否则为0

andrew ng machine learning week7 支持向量机

高斯函数的三位图像,方差的选择对于图像下降速度的影响,越大则下降地越慢(因为是分母嘛)

从图像中看出当两点接近时处于顶峰1,否则则随着距离的变远逐渐下降

andrew ng machine learning week7 支持向量机

根据计算值的正负进行划分,这样就可以确定一个区域,即使不是线性可分也可确定一个非线性的区域

andrew ng machine learning week7 支持向量机

L:landmark的选择很简单啦其实就是每个训练集样本点:

andrew ng machine learning week7 支持向量机

 具体的操作过程:

andrew ng machine learning week7 支持向量机

andrew ng machine learning week7 支持向量机

参数的选择:

andrew ng machine learning week7 支持向量机

具体的实践


使用svm工具包来计算theta

需要明确指出:C参数和kernel函数的选择(默认为线性核函数)

andrew ng machine learning week7 支持向量机

这里注意一定要进行特征缩放

andrew ng machine learning week7 支持向量机

其他的和函数选择:满足默赛尔定理来正确地优化模型

多项式核函数

字符串核函数(输入为字符串)

... 

andrew ng machine learning week7 支持向量机

多分类

许多svm包内建多分类工具

或者使用one vs all 的方法,计算完之后选择最大的

andrew ng machine learning week7 支持向量机

逻辑回归和svm的区别

1. 如果N很大,远大于M 

使用逻辑回归或者线性的svm

2. 如果n 很小,M中等

使用高斯函数的svm

3. N很小,m很大

增加更多的特征,使用逻辑回归或者线性svm

神经网络对于这些都能适用,但是缺点是训练的很慢

andrew ng machine learning week7 支持向量机