支持向量机(SVM)例题

对于图中所示的线性可分的20个样本数据,利用支持向量机进行预测分类,有三个支持向量 A ( 0 , 2 ) A(0, 2) A(0,2)、 B ( 2 , 0 ) B(2, 0) B(2,0) 和 C ( − 1 , − 1 ) C(-1, -1) C(−1,−1)。

  1. 求支持向量机的线性判别函数。
  2. 删除点 A 后,支持向量是否变化?

求解:

  1. 三个点,建立联立方程组:
    { w 1 x A + w 2 y A + b = 1 w 1 x B + w 2 y B + b = 1 w 1 x C + w 2 y C + b = − 1 \begin{cases} w_1 x_A + w_2 y_A + b &= 1 \\ w_1 x_B + w_2 y_B + b &= 1 \\ w_1 x_C + w_2 y_C + b &= -1 \\ \end{cases} ⎩ ⎨ ⎧w1xA+w2yA+bw1xB+w2yB+bw1xC+w2yC+b=1=1=−1

x A y A 1 x B y B 1 x C y C 1 w 1 w 2 b = 1 − 1 − 1 \begin{bmatrix} x_A & y_A & 1 \\ x_B & y_B & 1 \\ x_C & y_C & 1 \\ \end{bmatrix} \begin{bmatrix} w_1 \\ w_2 \\ b \\ \end{bmatrix}=\begin{bmatrix} 1 \\ -1 \\ -1 \\ \end{bmatrix} xAxBxCyAyByC111 w1w2b = 1−1−1

求解
w 1 = 0.5 w 2 = 0.5 b = 0 \begin{align*} w_1 &= 0.5 \\ w_2 &= 0.5 \\ b &= 0 \\ \end{align*} w1w2b=0.5=0.5=0

线性判别函数
f ( x ) = 0.5 x + 0.5 y f(x) = 0.5x + 0.5y f(x)=0.5x+0.5y

  1. 变化
相关推荐
mCell14 小时前
Lua 编程入门:从基础语法到元表
javascript·算法·lua
wuyk55516 小时前
98.C语言易混难点:字符数组与字符串指针的底层差异
c语言·开发语言·c++·stm32·嵌入式硬件·算法
峥无16 小时前
从0到1手撕红黑树:封装实现 my_map 与 my_set(SGI-STL 源码级深度解析)
开发语言·c++·笔记·算法·stl
不会代码的小猴17 小时前
3. 控件学习1
开发语言·c++·笔记·qt·算法
203号居民19 小时前
LeetCode hot 100 —41. 缺失的第一个正数
数据结构·算法·leetcode
空堂与归19 小时前
模型不准怎么调?机器学习核心理论与实战全流程
人工智能·机器学习
专注仿真21 小时前
问答大模型技术方案算法实现-熵权法融合算法 + 交叉编码器重排算法
人工智能·python·算法·语言模型·问答大模型关键算法·熵权融合算法·交叉编码器重排算法
满怀冰雪1 天前
22-使用 PaddleClas 快速训练图像分类模型
人工智能·python·机器学习·分类·数据挖掘·paddlepaddle
我是慎独1 天前
人工智能:现代方法读书笔记(三)
人工智能·机器学习