求解 SVM 分类超平面| 学习笔记

简介: 快速学习求解 SVM 分类超平面。

开发者学堂课程【机器学习算法 :求解 SVM 分类超平面】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/535/detail/7267


求解 SVM 分类超平面

 

内容介绍

一、解决间隔优化问题

二、SMO 算法

三、求解超平面

 

一、解决间隔优化问题

回到 SVM 本质问题,如何通过求极值的方式找到最优分类超平面。

优化问题转换为求解下列有约束的目标函数即带有不等式约束条件的目标函数求极值:

image.png

按照第二章所学,将有约束的目标函数转换为无约束的拉格朗日函数,然后固定μ,要让 L(ω,γ,μ)对 ω,γ 最小化,即对 ω,γ 求偏导,令其等于0。

image.png

将 ω 的值带入:

image.png

此时,拉格朗日函数只包含了一个变量 μ,求出 μ 即可求出 ω,γ

image.png

求μ,则需要求系列不等式约束的极大值,即:

image.png

但是由于问题并没有简单化,反而更复杂,又需要在不等式约束条件下求极值,这个时候需要二次规划问题,可以使用通用的二次规划算法来求解但是问题规模正比于训练样本数,开销很大。通常会采用序列最小优化算法(Sequential Minimal Optimization ,SMO)解决。

 

二、SMO 算法

SMO 是一种启发式算法,其基本思想是,如果所有分量的解都满足KKT条件,那么这组解就是最优解。如果不满足,选择两个分量,固定其他分量,针对这两个分量构建一个二次凸规划问题,然后关于这个二次规划的问题的解就更接近原始的二次规划的解。SMO 的高效主要是将多个参数的求优化问题转化为固定其他参数后仅优化两个参数的问题。

image.png

固定除 μi 和 μj 以外的参数,求解带不等式约束的函数极值,得到更新后的 μi 和 μj 固定变量后,不等式约束条件为:

image.png

实际上最终需要求的是这个式子,可以得到 μ 的值

image.png

 

三、求解超平面

通过 SMO 算法求得 μ 后,即可得到超平面的表达函数:

image.png

有了分类超平面的表达式,在做分类的时候就很简单,如果有一个点,需要判断他是哪一类,将点带到表达式中即可求得 F(x)的值就可以知道点的归属分类。

将需要判断分类的点 x 和训练样本计算内积,得到 f(x) 的值,判断点 x 的归属分类。因为只有当训练样本为支持向量的时候,μi 才不为0,所以实际计算量并不大。

相关文章
|
开发框架 分布式计算 Java
【面试题精讲】JavaSe和JavaEE的区别
【面试题精讲】JavaSe和JavaEE的区别
|
存储 算法 程序员
【期末计算机组成原理速成】第三章:存储器
【期末计算机组成原理速成】第三章:存储器
594 0
|
人工智能 分布式计算 大数据
超级计算与大数据:推动科学研究的发展
【9月更文挑战第30天】在信息时代,超级计算和大数据技术正成为推动科学研究的关键力量。超级计算凭借强大的计算能力,在尖端科研、国防军工等领域发挥重要作用;大数据技术则提供高效的数据处理工具,促进跨学科合作与创新。两者融合不仅提升了数据处理效率,还推动了人工智能、生物科学等领域的快速发展。未来,随着技术进步和跨学科合作的加深,超级计算与大数据将在科学研究中扮演更加重要的角色。
|
Docker 容器
Docker Hub镜像公共仓库使用
这篇文章介绍了如何使用Docker Hub公共仓库进行镜像的创建、上传、下载和管理。
6325 8
|
域名解析 网络协议 Linux
Linux系统下DNS配置指南
Linux系统下DNS配置指南
2710 1
引入切面注解@Aspect依赖
引入切面注解@Aspect依赖
252 1
|
机器学习/深度学习 人工智能 安全
一文搞懂隐私计算
一文搞懂隐私计算
4731 0
|
Docker 容器
kali vulhub的使用方法
kali vulhub的使用方法
380 0
|
监控 Cloud Native 机器人
新版发布 | Cloudpods v3.10.4 和 v3.9.12 正式发布
Cloudpods 是一个开源的 Golang 实现的云原生的多云和混合云融合平台。 Cloudpods 不仅可以管理本地的虚拟机和物理机资源,还可以管理其他公有云和私有云平台的资源。
新版发布 | Cloudpods v3.10.4 和 v3.9.12 正式发布
|
搜索推荐 安全 Java
elasticsearch安装详细教程
elasticsearch安装详细教程