通过逻辑回归和感知器算法对乳腺癌数据集breastCancer和鸢尾花数据集iris进行线性分类

news2024/11/18 19:55:42

逻辑回归和感知器算法进行线性分类

代码使用了LogisticRegression和Perceptron两种分类方法

# 使用LogisticRegreeion分类器学习和测试
lr = LogisticRegression()
lr.fit(X_train_scaler, y_train)
y_pred_lr = lr.predict(X_test_scaler)

#定义感知机
perceptron = Perceptron(fit_intercept=False, max_iter=200, shuffle=False)

函数中的max_iter通过源码查看为The maximum number of passes over the training data,指的是设定的最大迭代次数,但是并不是迭代次数越多越好,因为迭代次数多可能会使模型的准确率降低,因为很可能会出现过拟合的现象;或者是虽然迭代很多次但是模型的准确率没有变化,这样就造成了计算量因迭代多次而会很大。

当max_iter设置为30的结果为

在这里插入图片描述

当max_iter设置为50的结果为

在这里插入图片描述

当max_iter设置为100的结果为

在这里插入图片描述

当max_iter设置为200的结果为

在这里插入图片描述
随着迭代次数的增加使用logisticRegression的模型准确率能提高一点,但是对于perceptron模型出现了迭代次数增加模型的准确率降低的情况。

当使用全部的特征值进行训练的时候,两个模型的准确率都有很大的提高,LogisticRegression模型准确率达到了98.2%,而Perceptron模型准确率达到了97.4%,这相比只使用第20维和第29维特征得到的模型准确率提升了很多。

在这里插入图片描述

实验结果看出两个分类器中logisticRegression的准确率是比perceptron要高一些,但是不能就说perceptron一定不如logisticRegression,因为它们都各有优势。它们一般都是用于分类问题的分类器算法,逻辑回归是将线性回归的输出作为sigmoid函数的输入,而且他的回归模型比较复杂,使用的是对数形式的cost函数,因而带来的时间花费较大,也就是需要更多的计算量;而perceptron使用的是均方差形式的cost函数,同时它的激活函数为阶跃函数,比较简单,因此需要花费的时间短,因为计算简单,计算量小,模型的训练快。因此No free lunch在这里指出了用大量的计算来换取了模型的准确率的提高,计算量大模型的精度随之提高。这就证明了No free lunch原理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/11363.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

N3-PEG-ALD,Azide-PEG-Aldehyde,醛基-聚乙二醇-叠氮

1、名称 英文:N3-PEG-ALD,Azide-PEG-Aldehyde 中文:叠氮-聚乙二醇-醛基 2、CAS编号:N/A 3、所属分类:Aldehyde / Acetal PEG Azide PEG 4、分子量:可定制,5000 N3-PEG-ALD、10000 叠氮-PEG…

用html做一个漂亮的网站【茶文化12页】期末网页制作 HTML+CSS网页设计实例 企业文化网站制作

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

【仿牛客网笔记】项目进阶,构建安全高效的企业服务——Spring Security

https://spring.io/projects/spring-security 认证判断用户有没有登录。 授权 是访问有没有访问的权限 Spring MVC 的核心组件是DispatcherServlet,所有的组件都是交给DispatcherServlet处理,然后将请求分发给控制器,具体由某个控制器控制请求…

如何在微信上制作小程序?【制作小程序的方式】

很多人想知道如何在微信上制作小程序,毕竟小程序现在已经成为了我们每天都会使用到的轻应用。在微信上制作小程序之前,要先了解自己想要做出什么的小程序,才能下手开展小程序制作。那么下面就介绍三种如何在微信上制作小程序的方式。 1、懂编…

彻底搞懂SwaggerKnife4j使用方法

(一)、准备 1、SpringBoot项目 说明:前后端分离前提下,前端是一个独立项目,因此该SpringBoot无需添加Thymeleaf依赖! 2、vo类 Employee类: package com.soft.vo;import java.util.Date;publ…

Hadoop与Spark的使用,HBase分布式数据库安装及操作实验

docker pull harisekhon/hbase:1.3 docker run -d --name hbase001 -p 16010:16010 harisekhon/hbase:1.3 进入环境 docker exec -it hbase001 bash hbase shell 按照一个特定的值来查找 hbase(main):003:0> scan students,{FILTER>"ValueFilter(,binary:20202…

Matplotlib教程一

文章目录一.简介二.Mapltlib的简单使用2.1 Pylot的API2.2 Pylab模块2.3 matplotlib简单绘图三.Mapltlib进阶使用3.1 面向对象思想画图3.2 Figure类3.3 Axes类3.4 画布上创建多个子图3.5 图中添加网格3.6 设置图片轴线3.7 保存图片一.简介 matplotlib是最初由John D.Hunter于20…

Shell脚本编程(一) —— 变量定义(用户自定义变量、位置变量、预定义变量、环境变量)

目录 1、用户自定义变量 2、位置变量 3、预定义变量 4、环境变量(一次性全局变量) 5、永久全局变量(重启以后依然存在的变量) (1) 本地变量文件 (2) 全局变量文件 1、用户自定义变量 定义变量: 变量名value …

九、propTypes验证

目标 理解类型验证的必要性 灵活掌握类型验证的使用 知识点 在给react组件传属性的的时候,我们可以定义属性的类型,此时我们需要下载prop-types这个库。 安装prop-types npm install prop-types -S引入和使用 import PropTypes from prop-types;cla…

winform语言切换C#设计笔记(八)

一、修改当前区域性 string languageName“zh-CN”; Thread.CurrentThread.CurrentUICulture new CultureInfo(languageName); 二、定义语言切换类Mullanguage或方法如下&#xff1a; private static Dictionary<string, ResourceManager> ResManagerDic new Dictionar…

【ESP32_8266_WiFi (十五)】ESP8266 OTA 操作说明

文章目录ESP8266 OTA 操作说明1 通过数据线上传初始示例程序2 通过Arduino IDE正确选择OTA端口3 认证并上传程序4 OTA的局限性ESP8266 OTA 操作说明 所谓OTA&#xff0c;就是Over-The-Air的缩写。有人将其翻译为“空中下载”&#xff0c;也有翻译为“隔空传输”。无论如何翻译…

Java高并发编程卷二(二) 锁

文章目录三 锁3.1 偏向锁3.1.1 为啥需要偏向锁&#xff1f;3.1.2 原理3.1.3 解释3.1.4 案例3.1.5 撤销与膨胀3.1.5.1 撤销3.1.5.2 膨胀3.2 轻量级锁3.2.1 为啥需要轻量级锁&#xff1f;3.2.2 原理3.2.3 案例3.2.4 分类3.2.5 膨胀3.3 重量级锁3.3.1 原理3.3.2 对象监视器详细介绍…

zookeeper学习笔记

zookeeper学习笔记1.Zookeeper概念2.Zookeeper命令操作2.1数据模型2.1.1数据结构2.1.2节点类型2.2服务端命令2.3客户端命令-基本命令2.4客户端命令-高级点命令3.Zookeeper JavaAPI操作3.1Cutor介绍3.2Cutor API常用操作-增删改查3.2.1建立连接3.2.2创建节点3.2.3删除节点3.2.4修…

js 回到顶部逻辑实现和elementUI源码解析

回到顶部 大家或多或少都会遇到“回到顶部”这样的需求&#xff0c;在此分享这个技术点以及可能遇到的问题。再分析element源码。 回到顶部代码实现 <!DOCTYPE html><html lang"en"><head><meta charset"UTF-8"><meta http-…

基于PHP+MySQL的个人博客系统毕设

随着时代和网络的发展,人们越来越希望通过多种模式来展示自己。于是个人博客就出现了,它可以更好的让人们来记录自己的工作和学习方式。博客不仅仅可以让自己抒发个人感情,还可以展示自己真实的生活,从而建立起一种友好的交友平台。 PHP个人博客系统毕设系统分为前台和后台两部…

Python每日一练 02

Python每日一练 02 文章目录Python每日一练 02一、对象二、对象属性三、赋值一、对象 Python中所有数字、序列、集合、映射、类、实例、异常、模块、类与类的实例、函数、方法、布尔值、空值等都被称为对象。 二、对象属性 每个对象都有3个基本属性&#xff1a; 类型(type)…

Flink-源算子Source(获取数据源)的使用

5.1 整体介绍 获取执行环境读取数据源定义基于数据的转换操作定义计算结果的输出位置触发程序执行 5.2 创建集成环境 5.2.1 获取执行环境 批处理getExecutionEnvironment 提交命令行设置 bin/flink run -Dexecution.runtime-modeBATCH ...代码 StreamExecutionEnvironme…

pip Command Not Found – Mac 和 Linux 错误被解决

使用Python时&#xff0c;可能需要安装和使用某些软件包。有一个命令可用于’pip‘ 使用pip&#xff0c;您可以安装、升级和卸载各种Python包。在本文中&#xff0c;您将学习如何使用它&#xff0c;以及如何处理pip错误。 如何使用 pip Pip是一个可以在Linux或Mac命令行上使用…

HTTP(http+抓包Fiddler+协议格式+请求+响应)

目录 &#x1f984;1. 了解HTTP &#x1f984;2. 抓包 &#x1f984;3. http协议格式 &#x1f432;3.1 完整的HTTP请求格式 &#x1f432;3.2 完整的HTTP响应的格式 HTTP请求 &#x1f984;4. 认识URL &#x1f984;5. http中的"方法" &#x1f432;5.1…

智能与工程学院2022级计算机朱元华

智能与工程学院 《高级语言程序设计》 小组学习任务书 第 1 次 专业年级&#xff1a; 2022级计算机 指导教师&#xff1a; 朱元华 2022-2023学年 第 1 学期 一、任务 XXX信息管理系统的需求分析和功能设计 二、分组形式 学生自由组合&#xff0c;5-8人为一组&#xff0c;根据…