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

机器学习sklearn:支持向量机svm

概述:现在就只知道这个svm可以画出决策边界,对数据的划分。简单举例就是:好的和坏的数据分开,中间的再验证

from sklearn.datasets import make_blobs
from sklearn.svm import SVC
import matplotlib.pyplot as plt
import numpy as np# 1. 生成数据
X, y = make_blobs(n_samples=50,       # 50个样本centers=2,          # 2个类别(二分类)random_state=0,     # 固定随机种子cluster_std=0.6     # 控制数据点的分散程度
)   # X是样本,y是标签# 2. 训练线性SVM
model = SVC(kernel='linear').fit(X, y)# 3. 绘制数据点
plt.scatter(X[:, 0], X[:, 1], c=y, s=50, cmap="rainbow")  # 按类别着色# 4. 绘制决策边界和支持向量间隔
ax = plt.gca()  # 获取当前坐标轴
xlim = ax.get_xlim()  # 获取x轴范围
ylim = ax.get_ylim()  # 获取y轴范围# 生成网格点(用于绘制决策边界)
xx, yy = np.meshgrid(np.linspace(xlim[0], xlim[1], 50),  # x轴50个点np.linspace(ylim[0], ylim[1], 50)   # y轴50个点
)   # 分成50分画网格# 计算决策函数值(SVM的间隔)
Z = model.decision_function(np.c_[xx.ravel(), yy.ravel()]).reshape(xx.shape)    # 计算决策值并重塑为网格矩阵# 绘制决策边界(黑色实线)和间隔边界(黑色虚线)
ax.contour(xx, yy, Z,colors='k',levels=[-1, 0, 1],  # 0是决策边界,±1是支持向量间隔alpha=0.5,          # 透明度linestyles=['--', '-', '--']  # 虚线-实线-虚线
)# 5. 标记支持向量(SVM的关键数据点)
ax.scatter(model.support_vectors_[:, 0],  # 支持向量的x坐标model.support_vectors_[:, 1],  # 支持向量的y坐标s=100,                        # 点的大小facecolors='none',            # 空心点edgecolors='k',               # 黑色边框linewidths=1.5                # 边框宽度
)plt.title("SVM Decision Boundary with Support Vectors")
plt.show()print(Z)

http://www.dtcms.com/a/313125.html

相关文章:

  • Vue3 其它Composition API
  • Linux网络编程 --- 多路转接select
  • 推送本地项目到Gitee远程仓库
  • Selenium Web 自动化
  • 优选算法 力扣 202.快乐数 快慢双指针 解决带环问题 C++解题思路 每日一题
  • ThinkPHP5x,struts2等框架靶场复现
  • Coin Combinations II(Dynamic Programming)
  • LLM - AI大模型应用集成协议三件套 MCP、A2A与AG-UI
  • 用 Eland 在 Elasticsearch Serverless 部署 Learning-to-Rank 排序模型
  • 数据,正在成为AI大模型最后的护城河
  • leetcode 2106. 摘水果 困难
  • Rust 同步方式访问 REST API 的完整指南
  • 道格拉斯-普克算法 - 把一堆复杂的线条变得简单,同时尽量保持原来的样子
  • python---赋值、浅拷贝、深拷贝
  • 【C 学习】03-你的第一个C程序
  • 上位机知识篇---脚本文件
  • Linux环境下使用Docker搭建多服务环境
  • Corrosion2靶场
  • xxljob总结
  • Obsidian结合CI/CD实现自动发布
  • 1、docker容器命令 | 生命周期管理
  • NX969NX972美光固态闪存NX975NX977
  • python 12 install jupyter时zmq.h或libzmq报错处理
  • MVCC:数据库事务隔离的 “时空魔法”
  • nvm切换本地nodejs环境
  • node中shapefile字符集判断
  • Sklearn 机器学习 数据聚类 KMeans实现聚类
  • wav音频格式中,ACM波形、A/mu-Law Wave、Windows PCM、Microsoft ADPCM的区别
  • 《使用Qt Quick从零构建AI螺丝瑕疵检测系统》——9. 接入真实硬件:驱动USB摄像头
  • LeetCode 分类刷题:2824. 统计和小于目标的下标对数目