初识机器学习——吴恩达《Machine Learning》学习笔记(十二)

支持向量机(Support Vector Machines)

优化目标(Optimization objective)

SVM与logistic回归

 

SVM假设函数

直观上对大间隔的理解(Large Margin Intuition)

SVM也被称为大间距分类器,SVM代价函数的图像分析:

 

大间距分类,间距

大间隔分类器的数学原理(The mathematics behind large margin classification)

 

核函数1(Kernels)

通过把相似度核函数的f1,f2,f3等做为新的特征,那么,离特定的标记点近,可以使边界函数大于0,离特定的标记点远,可以使边界函数小于0,从而定义了标记点空间中的边界,也就是有了边界函数。

 

相似度函数是一种核函数,这里用的相似度函数是高斯核函数。

具体实例

核函数2(Kernels)

标记点的选取,选取训练样本作为标记点。把训练数据的每个数据点看做一个标记点(landmark),于是有数据量m个标记点。每个数据点x(i)都由它自己的若干个老特征量组成,每个数据点又与所有的标记点做一次相似度函数运算(高斯函数运算),每次运算形成一个新的特征量f,那么每个老的数据点就变换出了m个新特征量的一个新点。

 

SVM with Karnels

SVM with Karnels

SVM参数的选择,C参数的选择,大C:低偏差,高方差;小C:高偏差,低方差

使用SVM

使用已经成熟的SVM软件包(如liblinear,libsvm)来获取参数。SVM函数是一个凸函数,所以不用担心,一定会有全局最优解。线性核函数(linear kernel)——没有核函数的函数

 

注意,使用高斯核函数前,一定记得进行特征缩放。否则,某个特征就会表现得比较突出!

还有其他类型的核函数,如String kernel、Polynomial kernel等,但主要还是使用高斯核函数以及线性核函数。此外,SVM里面有专门的软件包来处理多元分类问题!

那么,什么使用Logistic回归、线性核函数和高斯核函数呢?

n很大,n>=m,n=10,000,m=10……1000,用logistic回归或不带核函数的SVM。
n小,m适中,n=1—1000,m=10—10,000,用高斯核函数的SVM。
n小,m很大,n=1—1000,m=50,000+,创造更多特征,然后使用logistic回归或不带核函数的SVM。

此外,以上的这些,神经网络也可以处理,但是,速度会比较慢!

posted @ 2018-08-06 20:57  Ta来自江湖  阅读(428)  评论(0编辑  收藏  举报