分类问题常用算法——SVM概述

SVM(支持向量机)是一种分类模型,作为机器学习中很基础的一个知识点,本文将对其进行一个较简洁并且容易理解的描述,也是自己的一个复习,若有疏漏,请多指正。

目录

场景

SVM的分类

基本模型

对偶算法

软间隔

核技巧


场景:

对一个二类分类问题:

分类问题常用算法——SVM概述

以线性可分数据为例,需要得到一个分离超平面来使得数据正确划分并间隔最大。

SVM的分类:

可分为线性分类器和非线性分类器,线性分类器可分为硬间隔和软间隔两类,其中软间隔样本不完全线性可分。非线性分类器常利用核技巧。

基本模型:

最大间隔线性分类器:包括分离超平面、决策函数。

分离超平面:分类问题常用算法——SVM概述

决策函数:分类问题常用算法——SVM概述

样本点分类问题常用算法——SVM概述离分离超平面存在两种距离分别为函数间隔几何间隔

函数间隔分类问题常用算法——SVM概述  表示正确性和确信度。

定义超平面与数据集之间的几何间隔为分类问题常用算法——SVM概述

几何间隔分类问题常用算法——SVM概述 是函数间隔的规范化,使得间隔确定。

定义超平面与数据集之间的几何间隔为分类问题常用算法——SVM概述

得到最优化问题

分类问题常用算法——SVM概述

分类问题常用算法——SVM概述

由于分类问题常用算法——SVM概述,原问题等价于:

分类问题常用算法——SVM概述

分类问题常用算法——SVM概述

由于函数间隔的取值并不影响问题的解,故令分类问题常用算法——SVM概述=1,原问题可等价于:

分类问题常用算法——SVM概述

分类问题常用算法——SVM概述

这就是支持向量机中的凸优化问题,我们常说的支持向量就是使得分类问题常用算法——SVM概述的点。

以图来表示:

分类问题常用算法——SVM概述

 图中H1和H2上的点就是支持向量,H1和H2之间的距离称为间隔,w为分离超平面的法向量,H1和H2称为间隔边界。

对偶算法:

对于原始问题可构建拉格朗日函数:

分类问题常用算法——SVM概述

根据拉格朗日对偶性,原始问题对偶问题是极大极小问题:

分类问题常用算法——SVM概述

为了得到对偶问题的解,需要先求极小再求极大。

求极小:

分类问题常用算法——SVM概述

分类问题常用算法——SVM概述

代入得:

分类问题常用算法——SVM概述

                         分类问题常用算法——SVM概述

所以对偶问题可化为:

分类问题常用算法——SVM概述

分类问题常用算法——SVM概述

       分类问题常用算法——SVM概述

分类问题常用算法——SVM概述为对偶问题的解,分类问题常用算法——SVM概述为原问题的解。

由KKT条件可得:分类问题常用算法——SVM概述

推导:

分类问题常用算法——SVM概述

分类问题常用算法——SVM概述

分类问题常用算法——SVM概述

分类问题常用算法——SVM概述

分类问题常用算法——SVM概述

由于当分类问题常用算法——SVM概述,则分类问题常用算法——SVM概述,又因为是二分类,分类问题常用算法——SVM概述

所以:分类问题常用算法——SVM概述

那么将原问题转换成对偶问题有什么优点呢?

1、对偶问题比原问题好求解

2、方便引入核函数,推广到非线性分类问题

转换成对偶问题后,支持向量为分类问题常用算法——SVM概述的样本;分离超平面为分类问题常用算法——SVM概述,分类决策函数为分类问题常用算法——SVM概述

软间隔:

以上模型在样本点完全线性可分情况下,也就是硬间隔,那么当样本点不完全线性可分,也就是某些样本点分类问题常用算法——SVM概述不能完全满足函数间隔大于等于1的约束。所以,我们可以对每个样本点引入一个松弛变量分类问题常用算法——SVM概述,使得函数间隔加上松弛变量大于等于1。同时,对每个松弛变量支付一个代价分类问题常用算法——SVM概述。所以原问题变为:

分类问题常用算法——SVM概述

分类问题常用算法——SVM概述

       分类问题常用算法——SVM概述

软间隔对偶问题与硬间隔类似,这里暂且略过。

核技巧:

在非线性问题中,把x从原空间通过一个函数分类问题常用算法——SVM概述映射到特征空间中,在新空间用线性分类学习方法学习分类模型。

核函数定义:设原空间为分类问题常用算法——SVM概述,使得对所有分类问题常用算法——SVM概述,函数分类问题常用算法——SVM概述满足条件分类问题常用算法——SVM概述

因为单独计算分类问题常用算法——SVM概述不太容易,所以核技巧想法就是不显式地定义映射函数,直接计算分类问题常用算法——SVM概述

支持向量机中,对偶问题目标函数可用核函数表示为:

分类问题常用算法——SVM概述

分类决策函数为:

分类问题常用算法——SVM概述

也就是说,当核函数K(x,z)给定时,可以利用解线性分类问题的方法求解非线性问题的支持向量机。并且学习是在特征空间中隐式地进行,不需要定义特征空间和映射函数。

上一篇:数据挖掘学习笔记5-支持向量机SVM


下一篇:程序员的幸福感和颈椎病