机器学习(十四)SVM分类案例

2023-10-30

在这里插入图片描述

01_案例一:鸢尾花数据SVM分类

import numpy as np
import pandas as pd
from sklearn import svm
from sklearn.model_selection import train_test_split
from sklearn import metrics 
from sklearn.datasets import load_iris

# 读取数据
# 'sepal length', 'sepal width', 'petal length', 'petal width'
iris_feature = '花萼长度', '花萼宽度', '花瓣长度', '花瓣宽度'
path = 'http://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data'  # 数据文件路径
data = pd.read_csv(path, header=None)
x, y = data[list(range(4))], data[4]
y = pd.Categorical(y).codes

# 数据分割
x_train, x_test, y_train, y_test = train_test_split(x, y, random_state=28, train_size=0.8)

svm.SVC API说明:

  • 功能:使用SVM分类器进行模型构建
  • 参数说明:
  • C: 误差项的惩罚系数,默认为1.0;一般为大于0的一个数字,C越大表示在训练过程中对于总误差的关注度越高,也就是说当C越大的时候,对于训练集的表现会越好,
  • 但是有可能引发过度拟合的问题(overfiting)
  • kernel:指定SVM内部核函数的类型,可选值:linear、poly、rbf、sigmoid、precomputed(基本不用,有前提要求,要求特征属性数目和样本数目一样);默认是rbf;
  • degree:当使用多项式函数作为svm内部的函数的时候,给定多项式的项数,默认为3
  • gamma:当SVM内部使用poly、rbf、sigmoid的时候,核函数的系数值,当默认值为auto的时候,实际系数为1/n_features
  • coef0: 当核函数为poly或者sigmoid的时候,给定的独立系数,默认为0
  • probability:是否启用概率估计,默认不启动,不太建议启动
  • shrinking:是否开启收缩启发式计算,默认为True
  • tol: 模型构建收敛参数,当模型的的误差变化率小于该值的时候,结束模型构建过程,默认值:1e-3
  • cache_size:在模型构建过程中,缓存数据的最大内存大小,默认为空,单位MB
  • class_weight:给定各个类别的权重,默认为空
  • max_iter:最大迭代次数,默认-1表示不限制
  • decision_function_shape: 决策函数,可选值:ovo和ovr,默认为None;推荐使用ovr;(1.7以上版本才有)
# 数据SVM分类器构建
clf = svm.SVC(C=1, kernel='linear')

# 模型训练
clf.fit(x_train, y_train)
# 计算模型的准确率/精度
print (clf.score(x_train, y_train)) 
print ('训练集准确率:', clf.score(x_train, y_train))
print (clf.score(x_test, y_test))
print ('测试集准确率:', clf.score(x_test, y_test))

# 训练器的预测值
print ('\npredict:\n', clf.predict(x_train))
# 计算决策函数的值(decision_function计算的是样本x到各个分割平面的距离<函数距离>)
print ('decision_function:\n', clf.decision_function(x_train))

在这里插入图片描述

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

机器学习(十四)SVM分类案例 的相关文章

  • 山西电力市场日前价格预测【2024-01-05】

    日前价格预测 预测说明 如上图所示 预测明日 2024 01 05 山西电力市场全天平均日前电价为259 10元 MWh 其中 最高日前电价为363 99元 MWh 预计出现在18 00 最低日前电价为0 00元 MWh 预计出现在11 1
  • 基于支持向量的数据重采样器

    我正在努力实现一个数据重采样器以基于support vectors 这个想法是为了适应SVM分类器 得到support vector类的点 然后通过仅选择每个类的支持向量点附近的数据点来平衡数据 以使类具有相同数量的示例 忽略所有其他 远离
  • 蒙牛×每日互动合作获评中国信通院2023“数据+”行业应用优秀案例

    当前在数字营销领域 品牌广告主越来越追求品效协同 针对品牌主更注重营销转化的切实需求 数据智能上市企业每日互动 股票代码 300766 发挥自身数据和技术能力优势 为垂直行业的品牌客户提供专业的数字化营销解决方案 颇受行业认可 就在不久前举
  • 无法绘制 svm 图。 terms.default(x) 中的错误:没有术语组件或属性

    我可以在我的数据集上使用 R 包 e1071 运行 svm 但我无法使用任何两个预测变量来绘制图表 即使在谷歌搜索了很多之后我也无法找到它的解决方案 请专家帮我解决这个问题 我有一个具有以下属性的数据集 gt dim fulldata 1
  • 词袋训练样本

    我已经实施了 Bag Of Words 一切都很顺利 但是 我对一些步骤以及如何实施感到困惑 我可以创建弓描述符作为词袋中创建样本的最后一步 如此处所示bowDE compute img keypoints bow descriptor 问
  • 如何处理 SVM 中的数据不平衡问题?

    如果我在较大的训练集上训练 SVM 并且类变量为 True 或 False 那么与训练集中的 False 值数量相比 True 值很少会影响训练模型 结果吗 它们应该相等吗 如果我的训练集 True 和 False 的分布不相等 我该如何解
  • 基于GPT4+Python近红外光谱数据分析及机器学习与深度学习建模

    详情点击链接 基于ChatGPT4 Python近红外光谱数据分析及机器学习与深度学习建模教程 第一 GPT4 基础 1 ChatGPT概述 GPT 1 GPT 2 GPT 3 GPT 3 5 GPT 4模型的演变 2 ChatGPT对话初
  • 机器学习算法实战案例:LSTM实现多变量多步负荷预测

    文章目录 1 数据处理 1 1 数据集简介 1 2 数据集处理 2 模型训练与预测 2
  • 如何用GPT进行论文润色与改写?

    详情点击链接 如何用GPT GPT4进行论文润色与改写 一OpenAI 1 最新大模型GPT 4 Turbo 2 最新发布的高级数据分析 AI画图 图像识别 文档API 3 GPT Store 4 从0到1创建自己的GPT应用 5 模型Ge
  • 5_机械臂运动学基础_矩阵

    上次说的向量空间是为矩阵服务的 1 学科回顾 从科技实践中来的数学问题无非分为两类 一类是线性问题 一类是非线性问题 线性问题是研究最久 理论最完善的 而非线性问题则可以在一定基础上转化为线性问题求解 线性变换 数域 F 上线性空间V中的变
  • 自动驾驶离不开的仿真!Carla-Autoware联合仿真全栈教程

    随着自动驾驶技术的不断发展 研发技术人员开始面对一系列复杂挑战 特别是在确保系统安全性 处理复杂交通场景以及优化算法性能等方面 这些挑战中 尤其突出的是所谓的 长尾问题 即那些在实际道路测试中难以遇到的罕见或异常驾驶情况 这些问题暴露了实车
  • sklearn多类SVM函数

    我有多个类标签 想要计算模型的准确性 我有点困惑我需要使用哪个 sklearn 函数 据我了解 以下代码仅用于二元分类 dividing X y into train and test data X train X test y train
  • 如何保存 LibSVM python 对象实例?

    我想在其他计算机上使用这个分类器 而不必再次训练它 我曾经使用 cPickle 从 scikit 保存一些分类器 对 LIBSVM 做同样的事情 它给了我一个 ValueError 包含指针的 ctypes 对象不能被腌制 我正在使用 Li
  • 了解 SVR scikit-learn 中收敛所需的迭代次数

    我正在尝试优化 SVR 模型 但由于过度拟合而面临问题 为了克服这个问题 我尝试减少迭代次数 而不是等到收敛为止 为了比较这两个模型 我需要两种情况的迭代次数 如何知道在开放的情况下 max iter 1 收敛所需的迭代次数 这是我的代码
  • 将 LinearSVC 的决策函数转换为概率(Scikit learn python)

    我使用 scikit learn LinearSVC 中的线性 SVM 来解决二元分类问题 我知道 LinearSVC 可以为我提供预测标签和决策分数 但我想要概率估计 对标签的置信度 由于速度原因 我想继续使用 LinearSVC 与具有
  • 测试示例集属性应等于训练示例集 Rapidminer SVM 的 OR 超集

    I am new to Rapid Miner and using SVM Linear in it My model is as I made Training Example set which consist of 3552 exam
  • 使用支持向量回归进行时间序列预测

    我一直在尝试使用Python语言中的支持向量回归来实现时间序列预测工具 我使用 scikit learn 中的 SVR 模块进行非线性支持向量回归 但我对未来事件的预测有严重的问题 回归线非常适合原始函数 根据已知数据 但一旦我想预测未来的
  • 插入符 rfe + sum 与 ROC 中的特征选择

    我一直在尝试使用插入符包应用递归功能选择 我需要的是 ref 使用 AUC 作为性能衡量标准 经过一个月的谷歌搜索后 我无法让该过程正常运行 这是我使用过的代码 library caret library doMC registerDoMC
  • 如何加速sklearn SVR?

    我正在实施SVR http en wikipedia org wiki Support vector machine Regression using sklearn http scikit learn org stable python
  • 绘制由 R 中的 caret 包训练的 SVM 线性模型

    Purpose 我试图通过可视化 SVM 线性分类模型plot 我正在使用中提供的示例代码和数据kernlab包注意到了caret实际上通过训练 svmksvm函数 参考这里的src代码 https github com topepo ca

随机推荐

  • 关于金额验证的Java方法(采用正则表达式)

    这是自己写的一个关于数字验证的方法 public static boolean isNumber String str java util regex Pattern pattern java util regex Pattern comp
  • 标定协议之CCP协议实现流程介绍

    之前两篇文章对CCP标定协议作了初步的介绍 大家也应该有了一定的了解 本文将对CCP标定协议的实现进行介绍 让大家能够进一步理解CCP标定协议 目前CCP协议最新版本是V2 1 在Vector的官网上提供了相应的参考例子 本文基于Vecto
  • UniApp 实战指南

    uni app 是一个使用 Vue js 开发所有前端应用的框架 开发者编写一套代码 可发布到iOS Android Web 响应式 以及各种小程序 微信 支付宝 百度 头条 飞书 QQ 快手 钉钉 淘宝 快应用等多个平台 打包原生 APP
  • pycharm configuration配置参考文档

    一 虚拟环境的配置 1 进入Pycharm的设置页面 找到自己的项目 点击右上侧的 Add 按钮 进行添加 2 进入添加页面 选择已存在的虚拟环境 点击右侧按钮进行添加 3 选择你所需要的虚拟环境 进行添加 最后点击 OK 4 添加成功之后
  • 我对计算机网络技术的了解,对计算机网络技术专业人才培养教学资源建设的实践意义的理解...

    摘要 本文结合 计算机网络技术专业人才培养教学资源建设研究 以武汉职业技术学院网络技术专业为例 课题 编号2016GHB02056 针对计算机网络技术专业传统教学中存在的问题 寻求通过计算机网络技术人才培养教学资源的建设来改变目前的狀况 并
  • 游戏开发unity杂项知识系列:如何查看Unity API文档

    https blog csdn net scalince article details 75199853
  • 字典dict常用操作

    gt gt gt dict x 1 y 2 x 1 y 2 gt gt gt dict1 dict x 1 y 2 gt gt gt dict1 x 1 y 2 gt gt gt dict
  • 家居商城小程序:打造舒适家居生活的优选平台

    随着人们对家居生活品质的追求 家居商城小程序成为提供便捷购物和个性化服务的不可或缺的工具 通过家居商城小程序 用户可以浏览并购买各类家居商品 如家具 装饰品 家纺等 同时 家居商城小程序能提供热销商品推荐 客户评价和在线客服等功能 家居商城
  • 矩阵基本运算(C++)

    闲着没事 将以前利用C 实现的矩阵各种运算整理了一下 分享一下 矩阵运算包括 1 二维矩阵创建 6 两矩阵上下叠加 2 两矩阵相加 7 矩阵左右叠加 3 两矩阵相减 8 矩阵转置 4 两矩阵相乘 9 矩阵求逆 5 一个数字与矩阵相乘 10
  • Vue 项目下载文件最佳解决方案

    大厂技术 高级前端 Node进阶 点击上方 程序员成长指北 关注公众号 回复1 加入高级Node交流群 原文链接 https juejin cn post 7062888582465191944作者 远航 开发中经常遇到这样的功能 用户将文
  • 文字检测定位--SAST

    文字检测过程分两步 第一步为检测出文字所在的位置 第二步根据检测框里的内容进行文字识别 SAST是一种自然场景下的文本检测算法 论文地址 https arxiv org abs 1908 05498 一 背景知识 1 语义分割算法 FCN全
  • 如何使用vue的渲染函数 API:h函数创建一个el-select弹出框

    如何使用vue的h函数创建一个el select弹出框 效果示例图 示例代码 h 创建虚拟 DOM 节点 vnode 效果示例图 示例代码 const h this createElement this msgbox title 是否发送短
  • SAE J1939转ModBus RTU模块 YMMCS-7001使用说明及心得体会

    SAE J1939总线是工程机械行业常用总线 发动机 车辆等运行参数都可以通过该总线获取 常规电控系统以PLC加组态屏方案为主 具有RS485接口 ModBus RTU协议进行总线组网 YMMCS 7001 协议转换模块直接可将SEA J1
  • 【Linux】写时复制(CopyOnWrite)

    目录 什么是写时拷贝 写时拷贝原理 原文 https blog csdn net Code beeps article details 92838520 http c biancheng net view 1272 html 什么是写时拷贝
  • bootstrap-table 添加行保留原数据

    添加行 保留原数据 function addSgbzColumn var count bootstrap table bootstrapTable getData length var params new Array for var da
  • 使用GraphEdit调试你的Filter

    Posted by 令狐葱 on 2006年03月12日 今天看到在VC6 0里面可以直接使用 GraphEdit调试你自己编写的 Filter 但是反复试了多次就是摸不着门路 后来在网上找资料 又参考了一些书 问了郭郭和小侯 才终于把Gr
  • 线程类的构造方法与成员方法

    1 构造方法 public Thread 分配一个新的线程对象 public Thread String name 分配一个指定名字的新的线程对象 public Thread Runnable target 分配一个带有指定目标新的线程对象
  • mybatis详解(必会)

    文章目录 什么是mybatis 什么是持久化 什么是持久层 为什么要学习mybatis 配置解析 生命周期和作用域 ResultMap映射 一对多和多对一的处理 动态sql 缓存 EhCache 什么是mybatis MyBatis 是一款
  • 面试官问“你还有什么需要了解的吗”——应该这样回答

    最近被追问 如何化解面试官说出 你还有什么需要从我这里了解的吗 时你竟无言以对的尴尬 比较不建议在这个时候向面试官提问琐碎日常 比如 有没有加班费啊喂 上下班时间是怎样啊 打车吃饭是不是可以报销嘞 即使你在来面试前并没有对这家公司做过少许调
  • 机器学习(十四)SVM分类案例

    01 案例一 鸢尾花数据SVM分类 import numpy as np import pandas as pd from sklearn import svm from sklearn model selection import tra