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

支持向量机案例

以下是一个使用支持向量机(SVM)对鸢尾花数据集进行分类的案例:

1. 数据集介绍

鸢尾花数据集是一类多重变量分析的数据集,共有四个属性列和一个品种类别列,用于分类的属性包括花萼长度、花萼宽度、花瓣长度、花瓣宽度,类别包括山鸢尾、变色鸢尾和维吉尼亚鸢尾三类。该数据集通常被用于分类算法的测试和验证。

2. 数据准备

  • 首先导入必要的库,包括用于数据处理的pandas、用于数据分割的train_test_split、支持向量机模型SVC以及用于评估模型的accuracy_score等。

python

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC
from sklearn.metrics import accuracy_score

  • 然后读取鸢尾花数据集,假设数据集保存在名为iris.csv的文件中。

python

data = pd.read_csv('iris.csv')

  • 接着将数据集分为特征(X)和目标(y)。特征是用于分类的属性,目标是鸢尾花的类别。

python

X = data.iloc[:, :-1]
y = data.iloc[:, -1]

  • 最后将数据集划分为训练集和测试集,通常将 70% 的数据用于训练,30% 的数据用于测试。

python

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

3. 模型训练

  • 创建一个支持向量机模型,这里使用线性核函数。

python

model = SVC(kernel='linear')

  • 使用训练数据对模型进行训练。

python

model.fit(X_train, y_train)

4. 模型评估

  • 使用测试集进行预测。

python

y_pred = model.predict(X_test)

  • 计算模型的准确率。

python

accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)

5. 结果分析

通过上述步骤,我们可以得到支持向量机模型在鸢尾花数据集上的分类准确率。如果准确率较高,说明模型能够较好地对鸢尾花进行分类。同时,还可以进一步分析模型的混淆矩阵、精确率、召回率等指标,以更全面地评估模型的性能。此外,还可以尝试不同的核函数、调整模型的超参数,如惩罚参数C等,来优化模型的性能。

相关文章:

  • 服务器不备案有影响吗
  • Docker组件详解:核心技术与架构分析
  • O2OA(翱途)服务器故障排查
  • IM系统群消息推送方案
  • 发那科机器人4(编程实例)
  • 死锁的形成
  • 嵌入式开发学习(第二阶段 C语言基础)
  • 学习黑客威胁情报(Threat Intelligence)
  • TensorFlow深度学习实战(15)——编码器-解码器架构
  • docker 日志暴露方案 (带权限 还 免费 版本)
  • 阿里云 SLS 多云日志接入最佳实践:链路、成本与高可用性优化
  • c/c++的Libevent 和OpenSSL构建HTTPS客户端详解(附带源码)
  • Python毕业设计219—基于python+Django+vue的房屋租赁系统(源代码+数据库+万字论文)
  • 如何制作网站?制作网站的流程。
  • C++ 观察者模式详解
  • k8s之ingress
  • 电路研究9.3.4——合宙Air780EP中的AT开发指南:HTTPS示例
  • 具身智能数据集解析
  • n8n系列(4):生产环境最佳实践
  • 数据库基础:概念、原理与实战示例
  • 湖北宜昌:在青山绿水间解锁乡村振兴“密码”
  • 秦洪看盘|交易型资金收缩,释放短线压力
  • 海关总署统计分析司司长:4月进出口增速较一季度加快4.3个百分点
  • 治沙“异瞳”男生疑似摆拍,团队称合作12天多期视频为策划拍摄
  • 首批证券公司科创债来了!拟发行规模超160亿元
  • 两部门发布山洪灾害气象预警:北京西部、河北西部等局地山洪可能性较大