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

【机器学习】鸢尾花分类-逻辑回归示例

这段代码是一个完整的示例,展示了如何使用逻辑回归对鸢尾花数据集进行训练、保存模型,并允许用户输入数据进行预测。以下是对这段代码的总结:

功能: 这段代码演示了如何使用逻辑回归对鸢尾花数据集进行训练,并将训练好的模型保存到文件中。然后,它允许用户输入新的鸢尾花特征数据,使用保存的模型进行预测,并输出预测结果。

步骤概述:

  1. 加载数据和预处理: 使用 Scikit-Learn 中的 datasets 模块加载鸢尾花数据集,并提取前两个特征。然后,划分数据集为训练集和测试集,并对特征数据进行标准化处理。

  2. 训练和保存模型: 创建逻辑回归模型,并在训练集上训练模型。训练完成后,使用 joblib 库将训练好的模型保存到文件中。

  3. 预测: 使用保存的模型,接受用户输入的鸢尾花特征数据(花萼长度和花萼宽度),将其组织成特征向量,然后进行预测。

  4. 结果输出: 根据预测结果输出对应的分类标签,指示预测的鸢尾花属于 Setosa 类别还是非 Setosa 类别(Versicolor 或 Virginica)。

使用方法: 运行代码后,它会首先训练模型并将其保存。然后,你可以输入新的鸢尾花特征数据以进行预测,系统将输出预测结果。

注意事项: 这个示例使用了 joblib 库来保存和加载模型,你也可以使用其他库如 pickle。此外,这个示例演示了逻辑回归在一个简单数据集上的应用,实际应用中可能需要更多的数据处理、模型调优和评估步骤。

import numpy as np
import matplotlib.pyplot as plt
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
import joblib  # 用于保存和加载模型
def train_logistic_regression():# 加载鸢尾花数据集iris = datasets.load_iris()# 只使用前两个特征以方便可视化X = iris.data[:, :2]  # 将标签转换为二分类问题y = (iris.target != 0).astype(int)  # 划分数据集为训练集和测试集X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)# 特征标准化scaler = StandardScaler()X_train = scaler.fit_transform(X_train)X_test = scaler.transform(X_test)# 创建逻辑回归模型model = LogisticRegression()# 在训练集上训练模型model.fit(X_train, y_train)# 保存训练好的模型joblib.dump(model, 'logistic_regression_model.pkl')def predict_with_saved_model():# 加载保存的模型model = joblib.load('logistic_regression_model.pkl')# 用户输入特征数据sepal_length = float(input("Enter sepal length: "))sepal_width = float(input("Enter sepal width: "))input_data = np.array([[sepal_length, sepal_width]])# 进行预测prediction = model.predict(input_data)if prediction[0] == 0:print("Predicted class: Setosa")else:print("Predicted class: Non-Setosa (Versicolor or Virginica)")# 训练模型并保存
train_logistic_regression()# 使用保存的模型进行预测
predict_with_saved_model()
输出结果:

Enter sepal length: 5
Enter sepal width: 7
Predicted class: Non-Setosa (Versicolor or Virginica)

备注

在这个示例中,sepal length(花萼长度)和 sepal width(花萼宽度)是用于输入的特征。这些特征是鸢尾花数据集中的两个测量值。这些测量值的单位是厘米(cm)。

对于鸢尾花数据集中的这两个特征,以下是一些参考值范围:

sepal length: 大约为 4.3 至 7.9 厘米。
sepal width: 大约为 2.0 至 4.4 厘米。
请注意,这些参考值是基于鸢尾花数据集的统计信息,并且会根据具体数据而有所变化。当你输入新的花萼长度和花萼宽度值进行预测时,请确保输入的值在合理的范围内。


相关文章:

【机器学习】鸢尾花分类-逻辑回归示例

这段代码是一个完整的示例,展示了如何使用逻辑回归对鸢尾花数据集进行训练、保存模型,并允许用户输入数据进行预测。以下是对这段代码的总结:功能: 这段代码演示了如何使用逻辑回归对鸢尾花数据集进行训练,并将训练好的…...

Flink CDC介绍

1.CDC概述 CDC(Change Data Capture)是一种用于捕获和处理数据源中的变化的技术。它允许实时地监视数据库或数据流中发生的数据变动,并将这些变动抽取出来,以便进行进一步的处理和分析。 传统上,数据源的变化通常通过…...

Java集合sort排序报错UnsupportedOperationException处理

文章目录 报错场景排查解决UnmodifiableList类介绍 报错场景 我们使用的是PostgreSQL数据库,存储业务数据,业务代码使用的是Spring JPA我们做的是智慧交通信控平台,有个功能是查询展示区域的交通态势,需要按照不同维度排序展示区…...

安防监控/磁盘阵列存储/视频汇聚平台EasyCVR调用rtsp地址返回的IP不正确是什么原因?

安防监控/云存储/磁盘阵列存储/视频汇聚平台EasyCVR可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有GB28181、RTSP/Onvif、RTMP等,以及厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等,能对外分发RTSP、RT…...

Spring boot开启定时任务

Cron表达式生成器 基于接口的方式 使用Scheduled 注解很方便,但缺点是当我们调整了执行周期的时候,需要重启应用才能生效,这多少有些不方便。为了达到实时生效的效果,那么可以使用接口来完成定时任务,统一将定时器信…...

package.json相关知识记录

一、相关字段 npm官方字段介绍 🍧 bin   >   简单理解:指定命令的名称及路径   🍉 相当于想path中添加路径,局部安装是在./node_modules/.bin/,全局安装是在全局的bin目录   🍉 bin指定的文件必须…...

VueRouter使用详解(5000字通关大全)

Vue Router是一个官方的路由管理器,它可以让我们在Vue应用中实现单页面应用(SPA)的效果,即通过改变URL而不刷新页面来显示不同的内容。Vue Router可以让我们定义多个路由,每个路由对应一个组件,当URL匹配到…...

vue axios实现下载文件及responseType:blob注意事项

需要使用axios和js-file-download组件 npm install js-file-download --save npm install axios --save import fileDownload from fileDownload; // 引入fileDownload import axios from axios; // 引入axios axios({method: get,url: xxxxxxx,responseType: blob }).then(r…...

StringBuilder类分享(1)

一、StringBuilder说明 StringBuilder是一个可变的字符序列。这个类提供了一个与StringBuffer兼容的API,但不保证同步,即StringBuilder不是线程安全的,而StringBuffer是线程安全的。显然,StringBuilder要运行的更快一点。 这个类…...

Qt 打开文件列表选择文件,实现拖拽方式打开文件

1. 实现打开文件列表选择文件 1.1. 创建 Qt 工程,并添加几个简单控件 这里笔者选用的是 QMainWindow,创建好工程后在 ui 界面设计中添加 QLineEdit、QPushBtton至少这两个控件,如下图摆放。 1.2. 头文件中添加相关操作 在 mainwindow.h 中…...

[C/C++]天天酷跑游戏超详细教程-上篇

个人主页:北海 🎐CSDN新晋作者 🎉欢迎 👍点赞✍评论⭐收藏✨收录专栏:C/C🤝希望作者的文章能对你有所帮助,有不足的地方请在评论区留言指正,大家一起学习交流!&#x1f9…...

5G NR:RACH流程 -- Msg1之选择正确的PRACH时频资源

PRACH的时域资源是如何确定的 PRACH的时域资源主要由参数“prach-ConfigurationIndex”决定。拿着这个参数的取值去协议38211查表6.3.3.2-2/3/4,需要注意根据实际情况在这三张表中进行选择: FR1 FDD/SULFR1 TDDFR2 TDD Random access preambles can onl…...

在vue3项目中编辑的时候,解决对话框里边的数据和列表中的数据联动了。深复制

//分析原因是从列表中拿到的数据直接复制去修改就涉及到堆里变的内容是一样的&#xff0c;直接复制其实只是把引用地址赋值给变量了&#xff0c;解决方法是 浅复制和深复制。<!-- 审批流程管理 --> <template><div style"float: left; width: 250px;backgr…...

循环结构(个人学习笔记黑马学习)

while循环语句 在屏幕中打印0~9这十个数字 #include <iostream> using namespace std;int main() {int i 0;while (i < 10) {cout << i << endl;i;}system("pause");return 0; } 练习案例: 猜数字 案例描述:系统随机生成一个1到100之间的数字&…...

ceph中PGLog处理流程

正文 struct pg_log_entry_t {ObjectModDesc mod_desc; //用于保存本地回滚的一些信息&#xff0c;用于EC模式下的回滚操作bufferlist snaps; //克隆操作&#xff0c;用于记录当前对象的snap列表hobject_t soid; …...

macOS使用命令行连接Oracle(SQL*Plus)

Author: histonevonzohomail.com Date: 2023/08/25 文章目录 SQL\*Plus安装下载环境配置 SQL\*Plus远程连接数据库参考文献 原文地址&#xff1a;https://histonevon.top/archives/oracle-mac-sqlplus数据库安装&#xff1a;Docker安装Oracle数据库 (histonevon.top) SQL*Plus…...

Mac下使用Homebrew安装MySQL5.7

Mac下使用Homebrew安装MySQL5.7 1. 安装Homebrew & Oh-My-Zsh2. 查询软件信息3. 执行安装命令4. 开机启动5. 服务状态查询6. 初始化配置7. 登录测试7.1 终端登录7.2 客户端登录 参考 1. 安装Homebrew & Oh-My-Zsh mac下如何安装homebrew MacOS安装Homebrew与Oh-My-Zsh…...

centos安装Nginx配置Nginx

1. 查看操作系统有没有安装Nginx which nginx 2. 使用epel的方式进行安装&#xff08;方法二&#xff09; 先安装epel sudo yum install yum-utils 安装完成后&#xff0c;查看安装的epel包即可 sudo yum install epel 3 开始安装nginx 上面的两个方法不管选择哪个&…...

Linux环境下搭建使用缓存中间件Redis

缓存中间件Redis搭建与使用 前言正文1 提供安装环境2 下载安装3 修改启动配置4 启动服务5 使用6 关闭服务7 卸载 前言 redis服务将在linux系统中部署&#xff0c;本文前提是已经搭建一个linux系统&#xff0c;并配置好网络等。使用vmware搭建一个linux系统&#xff0c;可以参考…...

Oracle 本地客户端连接远程 Oracle 服务端并使用 c# 连接测试

这里写自定义目录标题 前言Oracle 客户端安装先决条件下载 Oracle 客户端Oracle 客户端环境变量配置 PL/SQLPL/SQL 下载PL/SQL 配置 配置远程连接tnsnames.ora 文件配置 使用 PL/SQL 连接远程数据库使用 C# 远程访问 Oracle 数据库结语 前言 最近有一个需要使用本地的 Oracle …...

Qwen3.5-27B部署教程(Docker进阶):自定义模型路径、挂载外部存储与日志卷

Qwen3.5-27B部署教程&#xff08;Docker进阶&#xff09;&#xff1a;自定义模型路径、挂载外部存储与日志卷 1. 环境准备与快速部署 在开始之前&#xff0c;请确保您的系统满足以下要求&#xff1a; 硬件要求&#xff1a;至少4张RTX 4090 D 24GB显卡软件要求&#xff1a;已…...

Isaac Sim物理参数全解析:从碰撞器到SDF的实战配置指南

Isaac Sim物理参数全解析&#xff1a;从碰撞器到SDF的实战配置指南 在机器人仿真和虚拟环境构建领域&#xff0c;物理参数的精确配置往往是决定仿真效果真实性的关键因素。NVIDIA Isaac Sim作为业界领先的机器人仿真平台&#xff0c;其物理引擎提供了丰富的参数体系&#xff0…...

乙巳马年·皇城大门春联生成终端W数据库课程设计案例:用户作品管理平台

乙巳马年皇城大门春联生成终端W数据库课程设计案例&#xff1a;用户作品管理平台 又到了一年一度的数据库课程设计选题季&#xff0c;你是不是还在为“学生信息管理系统”、“图书管理系统”这类老掉牙的题目发愁&#xff1f;想找个既有技术深度&#xff0c;又能结合当下热点&…...

Redis非主键索引查询实践,网友推荐:高效数据检索新方案

最近&#xff0c;关于使用Redis进行非主键查询的话题在开发者社区中引起了新的讨论。2024年7月&#xff0c;有技术博主分享了一套基于Redis Sorted Set和Hash的组合索引方案&#xff0c;声称在处理千万级用户数据的场景下&#xff0c;查询延迟降低了近70%。同年早些时候&#x…...

数据库索引优化与慢查询排查实战:1000名工人工单工单系统性能攻坚

数据库索引优化与慢查询排查实战&#xff1a;千人施工队工单系统性能攻坚场景&#xff1a;某建筑集团大型商业综合体项目 规模&#xff1a;1000名工人&#xff0c;日均生成3000工单&#xff0c;工单表累计800万记录 痛点&#xff1a;早班派工高峰期系统卡顿&#xff0c;工单查询…...

【Squoosh CLI】谷歌开源命令行图片批量压缩工具实战指南

1. 为什么你需要Squoosh CLI&#xff1f; 每次打开设计稿文件夹看到几十张未压缩的图片时&#xff0c;我都忍不住头皮发麻。作为前端开发&#xff0c;我经历过太多因为图片体积过大导致的页面加载缓慢问题。直到发现了谷歌开源的Squoosh CLI工具&#xff0c;这个命令行神器彻底…...

3步掌握WebPShop插件:让Photoshop完美支持WebP格式图片处理 [特殊字符]

3步掌握WebPShop插件&#xff1a;让Photoshop完美支持WebP格式图片处理 &#x1f680; 【免费下载链接】WebPShop Photoshop plug-in for opening and saving WebP images 项目地址: https://gitcode.com/gh_mirrors/we/WebPShop WebPShop是一款专为Adobe Photoshop设计…...

Ostrakon-VL-8B效果展示:AI识别货架商品、检查消防通道真实案例

Ostrakon-VL-8B效果展示&#xff1a;AI识别货架商品、检查消防通道真实案例 1. 零售行业的视觉智能革命 走进任何一家超市或餐厅&#xff0c;你都会看到员工忙碌地进行各种检查&#xff1a;商品是否摆放整齐、货架是否需要补货、消防通道是否畅通。这些看似简单的工作&#x…...

Neeshck-Z-lmage_LYX_v2真实生成:‘赛博长安,霓虹古建,未来主义’提示词多LoRA适配效果

Neeshck-Z-lmage_LYX_v2真实生成&#xff1a;‘赛博长安&#xff0c;霓虹古建&#xff0c;未来主义’提示词多LoRA适配效果 1. 引言&#xff1a;当古都长安遇见赛博霓虹 想象一下&#xff0c;你站在一座宏伟的古代宫殿前&#xff0c;飞檐斗拱&#xff0c;雕梁画栋&#xff0c…...

Flux Sea Studio 入门:十分钟完成星图平台镜像部署并生成首张图片

Flux Sea Studio 入门&#xff1a;十分钟完成星图平台镜像部署并生成首张图片 想试试最近很火的AI绘画&#xff0c;但又觉得本地部署太麻烦&#xff0c;显卡要求太高&#xff1f;今天咱们就来聊聊一个超级省事的办法——直接在云端用Flux Sea Studio。你不需要懂代码&#xff…...