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

【升华】机器学习鸢尾花分类完整代码示例

一、鸢尾花数据集简介

鸢尾花数据集(Iris dataset)是机器学习领域中最著名的数据集之一,由英国统计学家和生物学家Ronald Fisher于1936年整理发布。该数据集包含了150个样本,每个样本有四个特征:萼片长度、萼片宽度、花瓣长度和花瓣宽度,以及一个标签,指示该样本属于三种鸢尾花中的哪一种(Setosa、Versicolor、Virginica)。

鸢尾花

二、决策树算法概述

决策树是一种监督学习算法,可用于分类和回归任务。它通过递归地将数据集划分成多个子集,直到每个子集中的样本都属于同一类别为止。决策树的每个内部节点表示一个特征上的测试,每个分支代表一个测试输出,而每个叶子节点则表示一个类别。

在scikit-learn中,决策树算法有两个主要实现:DecisionTreeClassifier用于分类任务,DecisionTreeRegressor用于回归任务。本文将专注于分类任务。

鸢尾花分类任务是一个经典的机器学习问题,通常用于演示和测试分类算法的性能。该任务的目标是根据鸢尾花的特征将其分为三个不同的品种,即山鸢尾(Setosa)、变色鸢尾(Versicolor)和维吉尼亚鸢尾(Virginica)。这个任务是一个多类别分类问题,其中每个样本都属于三个可能的类别之一。

三、模型构建

数据集准备

import pandas as pd
from sklearn.svm import SVC
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score# 读取数据
df = pd.read_csv('iris.csv')  # 假设数据集保存在当前目录下的iris.csv文件中# 数据预处理
x = ['sepal_length', 'sepal_width', 'petal_length', 'petal_width']
X = df[x]
y = df['classification']
X_train, X_test, Y_train, Y_test = train_test_split(X, y, test_size=0.2, random_state=1)  # 划分训练集和测试集# 训练模型
model = SVC(gamma='auto')
model.fit(X_train, Y_train)  # 训练模型
predictions = model.predict(X_test)  # 预测测试集结果# 评估模型
accuracy = accuracy_score(Y_test, predictions)  # 计算准确率
print(f'模型准确率为: {accuracy:.2f}')  # 输出准确率


http://www.mrgr.cn/news/63507.html

相关文章:

  • 【AI抠图整合包及教程】Meta SAM 2:视觉分割的革命性飞跃
  • 速盾:海外cdn高防
  • 神经网络:解析人工智能的智慧基石
  • RBT测试方法的优秀实践
  • HTTP的初步了解
  • ArcGIS005:ArcMap常用操作101-150例动图演示
  • 助力抑郁症初筛!上海交大团队构建Agent心理诊所,论文一作在线展示demo,分享技术亮点
  • Games101笔记-三维Transform变换(三)
  • python--函数详解二
  • ngnix.conf文件配置前后端联调地址
  • 8.FreeRTOS之软件定时器
  • Linux云计算 |【第五阶段】CLOUD-DAY7
  • MYSQL插入或修改,基于唯一联合索引,批量操作
  • CentOS上安装Redis 6.x
  • 还在寻找影像切片方案?免费GIS工具箱满足你的需求
  • 外发出去的文件怎么加密?2024年6款外发文件加密软件app盘点,赶紧收藏!
  • AutoGLM:智谱AI的创新,让手机成为你的生活全能助手
  • Allegro: 开源的高级视频生成模型
  • Apache Dubbo (RPC框架)
  • 与外部公司做数据交互时,需要注意哪些事情?
  • Nginx安装配置详解
  • 使用wordcloud与jieba库制作词云图
  • MyBatis3(动态SQL 常用的动态SQL 元素 映射器注解 基本注解 结果映射注解)
  • 算法练习——双指针
  • LeetCode23:合并K个升序链表
  • 洛雪音乐 1.6.1| 全网音乐免费听,附加音源