IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 无废话的机器学习笔记(五)(SVM) -> 正文阅读

[人工智能]无废话的机器学习笔记(五)(SVM)

这节我们介绍监督学习中分类方法的支持向量机SVM),我尽量少用数学公式,多用形象的语言去讲清楚基本概念。

定义

在这里插入图片描述

SVM是用于分类的监督学习模型,使用支持向量来定义决策边界,支持向量是每一类最接近决策边界的点,如上图中用黑色圈圈起来的点,你可能会问,这不是点吗?为什么说成是向量?把原点和圈住的点相连,它就成向量啦哈哈。所以一堆数据给我们,我们关注的只有其中的几个能做支持向量的点(如果数据特征有n个,则只有要用n+1个支持向量)(其他点可以忽视哈哈),效率非常高。通过将未标记的点与决策边界进行比较就可以进行分类! 支持向量与决策边界之间的距离称为间隔(margin),支持向量机试图在可接受的误差范围内创造尽可能大的间隔
?

数学表达

我们定义决策平面(也叫超平面)为 w T x + b = 0 \textbf w^T\textbf x+b=0 wTx+b=0,w,x是向量,w法向量决定了超平面的方向,b位移项决定了超平面与原点的距离,空间中任意的点到超平面的距离为r,由初中学的距离公式可知 r = ∣ w T x + b ∣ ∣ ∣ w ∣ ∣ r = \frac{|\textbf w^T\textbf x + b|}{||\textbf w||} r=wwTx+b? 假设超平面能正确分类数据,我们定义 (y是标签): { w T x i + b ? + 1 , y i = + 1 w T x i + b ? ? 1 , y i = ? 1 \begin{cases} &w^Tx_i + b\geqslant +1,\quad y_i=+1 \\ &w^Tx_i + b\leqslant -1,\quad y_i=-1 \end{cases} {?wTxi?+b?+1,yi?=+1wTxi?+b??1,yi?=?1? 所以 y i ? ( w T x i + b ) ? 1 y_i\cdot (w^Tx_i + b) \geqslant 1 yi??(wTxi?+b)?1, 对于支持向量 { w T x i + b = + 1 , y i = + 1 w T x i + b = ? 1 , y i = ? 1 \begin{cases} &w^Tx_i + b= +1,\quad y_i=+1 \\ &w^Tx_i + b= -1,\quad y_i=-1 \end{cases} {?wTxi?+b=+1,yi?=+1wTxi?+b=?1,yi?=?1? 所以 y i ? ( w T x i + b ) = 1 y_i\cdot (w^Tx_i + b) = 1 yi??(wTxi?+b)=1,我们终于可以推出margin的表达式了: r = ∣ w T x + b ∣ ∣ ∣ w ∣ ∣ = ∣ y i ? ( w T x + b ) ∣ ∣ ∣ w ∣ ∣ = y i ? ( w T x + b ) ∣ ∣ w ∣ ∣ \begin{aligned} r &= \frac{|w^T x + b|}{||w||} = \frac{|y_i\cdot(w^T x + b)|}{||w||} \\ &= \frac{y_i\cdot(w^T x + b)}{||w||} \end{aligned} r?=wwTx+b?=wyi??(wTx+b)?=wyi??(wTx+b)?? 所以 m a r g i n = m i n r margin = min{\textbf r} margin=minr , 而 m i n { y i ? ( w T x + b ) } = 1 min\{y_i\cdot(w^T x + b)\} = 1 min{yi??(wTx+b)}=1,所以: margin = 1 ||w|| \textbf{margin} = \frac{\textbf 1}{\textbf {||w||}} margin=||w||1? 终于,我们得出了SVM的基本型(max margin 即 min w)(s.t.是subject to 的意思,就是受哪些条件限制): min ? w , b 1 2 ∣ ∣ w ∣ ∣ 2 s . t . y i ? ( w T x i + b ) ? 1 , i = 1 , 2 , … , m . \begin{aligned} &\min_{w,b} \frac{1}{2}||w||^2\\ &s.t. \quad y_i\cdot (w^Tx_i + b)\geqslant 1,\quad i=1,2,\dots,m. \end{aligned} ?w,bmin?21?w2s.t.yi??(wTxi?+b)?1,i=1,2,,m.?
问题来了,怎么去求w,b?
我们进入对偶问题,不要害怕,我不引入数学公式了。我们看看上面的基本型,一个多元函数,然后受一些条件限制,然后目标是求它的极值,高数学得好的同学应该有灵感了,没错,这就是多元函数的条件极值问题,最简单的就是用拉格朗日函数法嘛,先引入拉格朗日乘子 α i \alpha_i αi?,然后构建拉格朗日函数 L ( w , b , α ) L(w,b,\alpha) L(w,b,α),再分别对w,b 求导并令为0,再把两式带回拉格朗日函数消去w和b L ( α ) L(\alpha) L(α),求其最大值时的 α \alpha α,紧接着再求出w,b,搞定。
这只是大概思路,深入的话你会发现这是个二次规划问题,需要引入KKT条件和推导很多数学式子,还会了解到高效的SMO算法,慢慢来比较快。

?

软间隔

在这里插入图片描述
遇到上面这种情况怎么办?不可能精准地将两部分严格分开,那我们就不那么严格地分开,哈哈,称为软间隔分类(soft-margin),就是允许有一定的误差,以大局为重,总的来说能分开就算合格。
我们引入一个参数C,它决定支持向量机允许多少误差。如果C很大,那么支持向量机有一个硬边缘,它不会允许很多错误分类,因此,边缘可以相当小。如果C太大,太宽容,模型就有过拟合的风险。 ξ \xi ξ是松弛变量。 min ? w , b 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m ξ i s . t . y i ? ( w T x i + b ) ? 1 ? ξ i , ξ i ? 0 , i = 1 , 2 , … , m . \begin{aligned} &\min_{w,b} \frac{1}{2}||w||^2 + C \sum_{i=1}^{m} \xi^i\\ &s.t. \quad y_i\cdot (w^Tx_i + b)\geqslant 1- \xi^i,\quad \xi^i \geqslant 0,\quad i=1,2,\dots,m. \end{aligned} ?w,bmin?21?w2+Ci=1m?ξis.t.yi??(wTxi?+b)?1?ξi,ξi?0,i=1,2,,m.?
在这里插入图片描述

?

核函数

核函数里面会有很多数学推导,这里以先熟悉概念为主。
在这里插入图片描述
遇到这种数据怎么办?再软也不行了,这就不是直线能够分开的。我们引入核函数,就是把数据先映射到高维空间,在高维空间用超平面把它们分开,然后再把超平面投影回原始维度即为所求。核函数就是把低维数据投影到高纬的函数在这里插入图片描述
比如这个核函数,点(1,2)经过投影得( 2 2 2\sqrt{2} 22 ?,1,4)
在这里插入图片描述
在高维空间得到可靠的超平面后,投影回二维平面,得在这里插入图片描述
这个橙色圆的外边即为所求。

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-01-16 13:03:28  更:2022-01-16 13:05:09 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 22:29:43-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码