学习笔记:机器学习之支持向量机(一、最大间隔算法)

2023-11-06

 活动地址:CSDN21天学习挑战赛

1 简介

        支持向量机也是一种二分类模型,它是通过在特征空间中建立间隔最大的分类器,这是有别于感知机模型的一点。

         支持向量机可分为线性可分支持向量机、线性支持向量机、非线性支持向量机。

2 函数间隔、几何间隔

2.1 函数间隔

        若超平面方程为 \large w^Tx+b=0,样本点为   \large (x_i,y_i),此时函数间隔为\large \hat{\gamma _i}=y_i(w\cdot x+b)

二分类问题,y取值1,-1,即\large w\cdot x+b> 0,y=1,w\cdot x+b<0,y=-1;

        函数间隔表示该样本点分类的确信度,因为当y=1,\large w\cdot x+b越大,距离超平面越远,越不会分错,当y=-1是亦然。

2.2几何间隔

        几何间隔为    \large \gamma _i=y_i(\frac{w^T}{||w||}x_i+\frac{b}{||w||}),很类似于二维空间点到直线的距离公式的形式,不过乘了\large y_i,   \large y_i,w x_i+b 同号时分类正确。

3 线性可分支持向量机

        目的是找到一个能正确划分数据集、几何间隔最大的超平面。仅仅满足能将数据分类正确地超平面可能有很多,但是不一定最优的,因为其他数据继续划分时,这个超平面很可有失效。所以核心思想是先找到最小的几何间隔\small (\gamma =\min_i \gamma _i),并将其最大化。(我的理解是木桶效应,当短板补上了,其他地方肯定慢问题,所以最初要先找几何间隔最小的超平面)

         现在要处理的优化问题为:

\large \max_{w,b} \gamma

 \large s.t. \qquad \qquad y_i(\frac{w^T}{||w||}x_i+\frac{b}{||w||})\geq \gamma \qquad i=1,2,...,N

先用函数间隔表示上边的优化问题:

\small \large \max_{w,b}\frac{\hat{\gamma}}{||w||}

\large s.t. \qquad \qquad y_i(w^Tx_i+bw) \geq \hat{\gamma} \qquad i=1,2,...,N

以下有助于简化问题的求解;

  • \large \hat{\gamma }=1
  • 最大化 \large \frac{1}{||w||}与最小化\large \frac{1}{2}||w||^2是等价的。

到此就得出了线性可分支持向量机算法——最大间隔算法

线性可分支持向量机算法——最大间隔算法

输入:数据集\{(x_1,y_1),(x_2,y_2),...,(x_N,y_N)\},x_i \in R^n,y_i\in \{-1,+1\};

输出:最大间隔分离超平面、分类决策函数。

最优化问题:

\min_{w,b} \quad \frac{1}{2}||w||^2 \\ s.t.\quad y_i(w \cdot x_i+b)-1 \geq 0,i=1,2...,N

求出最优解w^*,b^*,则分离超平面为w^*\cdot x+b=0,分类决策函数为f(x)=sign(w^* \cdot x+b^*)

        支持向量是与分离超平面最近的样本点,是使约束条件中不等式取等号的向量,支持向量决定着分类超平面,所以该模型叫做支持向量机。

参考

【十分钟 机器学习 系列课程】讲义(41):SVM支持向量机-逻辑回归与支持向量机

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

学习笔记:机器学习之支持向量机(一、最大间隔算法) 的相关文章

随机推荐

  • 给你们讲个笑话——低代码会取代程序员

    今天是正经男 我们严肃讨论一下一直以来争吵不休的取代问题 低代码开发平台 低代码技术会取代开发人员么 一 背景 低代码开发平台的普及 让很多公司对快速生成应用抱有很大期望 甚至有人认为 低代码开发平台未来会 干掉 开发者 这是真的吗 好久没
  • 压缩感知入门

    学习资料 网站http dsp rice edu cs 具有相关大量详细介绍的论文
  • idea 编译和构建 Java Web 项目后,没有生成 target 文件夹,且生成的 out 文件夹中没有 class 文件

    问题 在用 idea 编译和构建 Java Web 项目的时候 项目的目录中没有 target文件夹 生成的 out 文件夹中 没有 class 文件 办法 出现这种情况 很可能是因为未加载的模块出现在了 iml 文件中 导致生成 tage
  • Unity Animation -- 导入动画

    尽管Unity中的动画工具已经比较强大了 但对于非常复杂的或很长的动画 通常是由外部DCC创建 特别是对于角色动画来说 需要在动画过程中进行复杂的控制 因此我们通常需要将外部制作的动画导入到Unity中 动画能被共享吗 对于复杂的动画 制作
  • 阿里云-对象存储OSS

    大家好 我是 码赛客1024 今天我们一起来学习阿里云的对象存储服务OSS 一 介绍 阿里云对象存储OSS Object Storage Service 是一款海量 安全 低成本 高可靠的云存储服务 提供99 9999999999 12个9
  • 树的高度和深度

    用到树的数据结构时 经常会考虑树的高度和深度 但是lz总是搞混了 总虽然比较简单 就是个定义 记住就行了 但是因为长时间总是弄错 所以写一篇博文 加深一下印象 1 树的深度 树的深度可以这样理解 计算一个节点的深度 从根节点算起 记住从1开
  • LeetCode 之 Search for a Range

    题目链接 Search for a Range 对于一个按照升序排序的整数数组 找到给定目标值的开始位置和结束位置 且时间复杂度为O log n 如果在数组中找不到目标值 则返回 1 1 例如 数组为 5 7 7 8 8 10 和目标值8
  • PyTorch搭建LSTM实现时间序列预测(负荷预测)

    目录 I 前言 II 数据处理 III LSTM模型 IV 训练 V 测试 VI 源码及数据 I 前言 在上一篇文章深入理解PyTorch中LSTM的输入和输出 从input输入到Linear输出 中 我详细地解释了如何利用PyTorch来
  • qt中复制文件的功能

    1 利用qt来复制文件 首先新建个工程文件 拖入按钮 复制文件 2 需要引入的头文件如下 include
  • 六月学习记录

    六月学习记录 6 1 Android消息传递之Handler消息机制 four articles http www cnblogs com whoislcj p 5590615 html 6 2 代码审查工具phabricator 6 4
  • 7 Linux 内核移植

    一 编译 ST 的 Linux 系统 1 压缩源码 首先先下载 ST 官方源码 之前章节已经下载过了 直接输入以下命令 cd linux atk mpl stm32mp1 openstlinux 5 4 dunfell mp1 20 06
  • pycharm 2023.1.2 去掉版本控制

    pycharm 2023 1 2 去掉版本控制
  • 优秀程序员应该具备的12种能力

    1 编程语言能力 不用多说 作为合格的计算机程序员 精通一门语言是必须的 这种精通 不是说看了一本编程宝典 抄了几个程序就能说精通的 要靠长时间的积累 2 编码能力 我曾经看很多程序员写的代码 在同一个jsp或者java源文件里 出现了三种
  • WinForm控件Chart的图表类型

    将就看 后期再加目录导航2020 10 23 折线图 折线图通常使用一条线来连接一系列不同的数据点 这样的直线是直线 样条曲线或阶梯 折线图更简单 因此还可以使您可视化多个系列而不会像条形图那样重叠 以下是折线图的不同类型 折线图 折线图使
  • C\C++各种变量存放区域(代码、数据、堆、栈)

    C C 各种变量存放区域 代码 数据 堆 栈 文章目录 C C 各种变量存放区域 代码 数据 堆 栈 变量 数据 变量 数据存放区域 练习 请说明下面的指针分别指向什么位置 BSS Block Started by Symbol 区 为什么
  • numpy实现卷积两种方法

    暂时针对二维卷积 方法1 按定义计算 def numpy conv inputs myfilter h ori w ori inputs shape h k w k myfilter shape h new w new h ori h k
  • 如何控制小程序的tabBar的显示和隐藏

    1 使用wx hideTabBar 方法隐藏tabBar 2 使用wx showTabBar 方法显示tabBar 参考文档
  • 适配器模式代码示例

    package com example shipeiqi public interface ThreeElectricOutlet 用来刻画三相插座 public abstract void connectElectricCurrent p
  • maven-metadata.xml使用

    最近在开发过程中 发现工程中的一些包有问题 主要分为以下两种 1 最新包 版本号未变 只是被更新了 少了一个方法 2 jar包被更新了 但是无法更新最新的包下来 首先先确定一下更新包会导致更新哪些文件 下面都以a 1 0 1 snapsho
  • 学习笔记:机器学习之支持向量机(一、最大间隔算法)

    活动地址 CSDN21天学习挑战赛 1 简介 支持向量机也是一种二分类模型 它是通过在特征空间中建立间隔最大的分类器 这是有别于感知机模型的一点 支持向量机可分为线性可分支持向量机 线性支持向量机 非线性支持向量机 2 函数间隔 几何间隔