当前位置: 首页 > 图灵资讯 > 技术篇> 简单易学的机器学习算法——支持向量机(开篇:基本概念)

简单易学的机器学习算法——支持向量机(开篇:基本概念)

来源:图灵教育
时间:2023-06-15 09:29:39

一、引言

支持向量机(Support Vector Machines, SVM)被公认为优秀的分类模型,有很多人解释SVM的基本原理,我也从他们的研究成果中学习,在我的博客只是想介绍基本原理,以一种容易理解的方式解释原理,并希望通过MATLAB代码实现这些基本原理。由于SVM对数学理论的要求很高,而且SVM的形式也多种多样,实现方式也各不相同,在本系列中我们重点关注以下几个方面:

  • 一些支持向量机的基本概念
  • 线性支持向量机的原理
  • 线性支持向量机的原理
  • 非线性支持向量机的原理
  • 支持向量机的实现-序列最小优化算法(SMO)

二是支持向量机的基本原理

Rosenblatt感知机的基本原理介绍在博文《简单易学的机器学习算法-Rosenblatt感知机》中。Rosenblatt感知机是神经网络模型和支持向量机SVM的基础,但Rosenblatt感知机只能处理线性问题,神经网络和支持向量机的功能更强大,可以处理线性问题。它还可以处理非线性可分问题。

支持向量机SVM是定义特征空间中间隔最大的线性分类器。在Rosenblatt传感器中,通过计算分类误差获得分离超平面,在SVM中使用间隔最大的特性。

非线性可分性),通过最大间隔(处理线性可分性与非线性可分性略有差异)等优化问题,得到超平面的分离

这样就可以得到分类决策函数

其中,

为符号函数

三、支持向量机的分类

对于不同的问题,有不同的支持向量机,主要有几种支持向量机

  • 线性可分支持向量机:解决线性可分问题的主要要求
  • 线性支撑向量机:主要处理近似线性可分问题
  • 非线性支持向量机:主要处理线性不可分割的问题

四、支持向量机中的一些基本概念

支持向量机有很强的理论基础,在分析SVM算法的过程中需要使用一些基本概念,主要包括以下几个方面:

1、函数间隔和几何间隔

对于线性可分问题,如下图所示:

简单易学的机器学习算法——支持向量机(开篇:基本概念)_感知机

分离超平面上方为正类,下方为负类。一个点距离分离超平面的距离可以表示分类预测的确定性,如上图中的A、B和C。由于A远离分离超平面,如果预测A为正类,则更确定预测是正确的;C靠近超平面,如果预测为正类,则不确定。

对于数据集

和分离超平面

  • 函数间隔:定义样本点分离超平面的函数间隔;
  • 几何间隔:定义样本点分离超平面的函数间隔

2、拉格朗日对偶性

拉格朗日函数主要用于处理带约束的优化问题。

假设

是定义在

对于具有约束力的优化问题,上连续可微函数:

引入广义拉格朗日函数:

要求

的最小值:

,它的对偶问题可以通过寻求解决,即寻求解决