当前位置: 首页 > article >正文

线性可分支持向量机的原理推导 线性分隔超平面关于任意样本点 (x_i,y_i)的函数间隔 公式解析

本文是将文章《线性可分支持向量机的原理推导》中的公式单独拿出来做一个详细的解析,便于初学者更好的理解。


公式 9-1 用来表达训练集样本点 ( x i , y i ) (\mathbf{x}_i, y_i) (xi,yi) 到线性可分支持向量机分离超平面的距离。
d ^ i = y i ( w ⋅ x i + b ) (9-1) \hat d_i=y_i(w·x_i+b) \tag{9-1} d^i=yi(wxi+b)(9-1)

1. 支持向量机的基本背景

支持向量机的目标是找到一个超平面将不同类别的数据分开,且保证间隔(分类超平面与支持向量之间的距离)最大化。超平面的一般形式为:
w T x + b = 0 \mathbf{w}^T \mathbf{x} + b = 0 wTx+b=0

其中 w \mathbf{w} w 是超平面的法向量, b b b 是偏置。

分类函数 f ( x ) f(\mathbf{x}) f(x) 的形式为:
f ( x ) = sign ( w T x + b ) f(\mathbf{x}) = \text{sign}(\mathbf{w}^T \mathbf{x} + b) f(x)=sign(wTx+b)

这表示一个数据点 x \mathbf{x} x 是否位于分类超平面的某一侧,用于预测其分类标签。

2. 公式 9-1 的具体含义

公式 9-1 定义了样本点 ( x i , y i ) (\mathbf{x}_i, y_i) (xi,yi) 到分类超平面的“带符号距离”:
d ^ i = y i ( w T x i + b ) \hat d_i = y_i (\mathbf{w}^T \mathbf{x}_i + b) d^i=yi(wTxi+b)

解释:
  • d ^ i \hat d_i d^i 是带符号的距离,即考虑到样本点属于哪一类(由 y i y_i yi 表示)。
  • y i y_i yi 是样本 i i i 的真实标签,取值为 + 1 +1 +1 − 1 -1 1,分别表示两类。
  • w T x i + b \mathbf{w}^T \mathbf{x}_i + b wTxi+b 是点 x i \mathbf{x}_i xi 到超平面的函数值。

3. 公式的推导逻辑

  • y i = + 1 y_i = +1 yi=+1 时,如果 w T x i + b > 0 \mathbf{w}^T \mathbf{x}_i + b > 0 wTxi+b>0,说明该点位于超平面正确的一侧,且 d ^ i > 0 \hat d_i > 0 d^i>0 表示它的距离大于 0,意味着分类正确。
  • y i = − 1 y_i = -1 yi=1 时,若 w T x i + b < 0 \mathbf{w}^T \mathbf{x}_i + b < 0 wTxi+b<0 d ^ i \hat d_i d^i 也是正值,表示分类正确。

因此, d ^ i \hat d_i d^i 实际上是样本点到超平面的带符号距离,用来判定样本点是否被正确分类。

4. 为什么引入 y i y_i yi

y i y_i yi 的作用是将样本点的距离和它的真实分类关联起来。对于每个样本,如果该样本位于超平面正确的一侧(即符合它的类别),则 d ^ i \hat d_i d^i 为正,反之为负。因此, y i y_i yi 的引入确保了无论样本属于哪一类,计算出的距离都是一致的,正值意味着分类正确。

5. 总结

公式 9-1 定义了支持向量机中样本点 ( x i , y i ) (\mathbf{x}_i, y_i) (xi,yi) 到分类超平面的距离,其中通过引入 y i y_i yi 来确保这个距离能够反映样本点是否被正确分类。


http://www.kler.cn/news/362537.html

相关文章:

  • Linux笔记之文件查找和搜索命令which,find,locate,whereis总结
  • 考研篇——数据结构王道3.2.3_队列的链式实现
  • python-----函数详解(一)
  • JMeter使用不同方式传递接口参数
  • 折腾记:arm上的mono和.net
  • 10. 异常处理器
  • Lodash.js处理数组、对象、函数等常用方法介绍
  • kubernetes中的微服务详解
  • Linux 使用bash文件以守护进程运行java -jar
  • 如何在不使用 VPN 的情况下通过 SOCKS 隧道安全地路由 Web 流量
  • w~自动驾驶合集6
  • 高阶函数中的reduce,reduceleft,fold
  • 【网络安全】从2FA绕过到账户接管
  • python3的基本数据类型:String(字符串)
  • 【Nuvoton干货分享】开发应用篇 4 -- 8bit MCU Flash 操作
  • Python 实现 excel 数据过滤
  • day01|计算机网络重难点之TCP/IP模型和OSI模型的区别、从输入 URL 到页面展示
  • JMeter模拟并发请求
  • 【Java】揭秘网络编程:深入探索其无尽奥秘与魅力
  • Kotlin 入门教程:函数
  • Detecting Holes in Point Set Surfaces 论文阅读
  • 面对对象抽象类与普通类的区别
  • 初识js-cnblog
  • 接口测试(六)jmeter——参数化(配置元件 --> 用户定义的变量)
  • 【LeetCode】每日一题 2024_10_18 使二进制数组全部等于 1 的最少操作次数 I(贪心)
  • 6-2.Android 对话框之基础对话框问题清单(UI 线程问题、外部取消、冲突问题、dismiss 方法与 hide 方法)