Python基于逻辑回归分类模型、决策树分类模型、随机森林分类模型和XGBoost分类模型实现乳腺癌分类预测项目实战

说明:这是一个机器学习实战项目(附带数据+代码+文档+视频讲解),如需数据+代码+文档+视频讲解可以直接到文章最后获取。

1.项目背景

在当今医疗健康领域,乳腺癌作为威胁女性健康的主要恶性肿瘤之一,其早期诊断与精准治疗对于提高患者生存率至关重要。随着医学信息学与人工智能技术的飞速发展,利用大数据分析、机器学习以及深度学习等先进手段构建乳腺癌分类预测模型,已成为研究热点和临床实践的重要方向。

近年来,全球乳腺癌发病率持续上升,成为全球范围内女性癌症发病率最高的疾病之一。尽管乳腺癌在早期发现时治疗效果较为理想,但传统的诊断方法如钼靶摄影、超声检查及组织活检等存在一定的局限性,如误诊率、漏诊率问题以及对患者造成的身体与心理负担。因此,开发高效、准确且便捷的乳腺癌分类预测模型,不仅能够提高诊断效率,还能促进个性化医疗方案的制定,为患者带来更为及时有效的干预措施。

研究意义:

提升早期诊断率:通过分析乳腺影像学、生物标志物、遗传学及临床数据,构建的预测模型能够有效识别乳腺癌早期迹象,为患者争取宝贵的治疗时间。

个性化医疗策略:结合患者的个体差异,预测模型能辅助医生定制化治疗方案,实现精准医疗。

资源优化配置:高效预测模型可减少不必要的检查和治疗,优化医疗资源分配,减轻公共卫生系统的负担。

促进科研进展:模型的开发与验证过程能够深化对乳腺癌生物学机制的理解,推动相关基础研究与技术创新。

基于以上背景,本研究拟采用先进的机器学习算法,结合丰富的乳腺癌临床数据集,构建一个高度准确且具有临床实用价值的乳腺癌分类预测模型。最终目标是为乳腺癌的早期筛查与精准管理提供科学依据,进而改善患者预后,提升公众健康水平。 

本项目通过逻辑回归分类模型、决策树分类模型、随机森林分类模型和XGBoost分类模型实现乳腺癌分类预测。     

2.数据获取

本次建模数据来源于网络(本项目撰写人整理而成),数据项统计如下:

编号 

变量名称

描述

1

mean radius

平均半径:肿瘤区域的平均边界距离中心的距离

2

mean texture

平均纹理:肿瘤区域灰度变化的程度

3

mean perimeter

平均周长:肿瘤区域的边界长度

4

mean area

平均面积:肿瘤区域所占的总面积

5

mean smoothness

平均平滑度:轮廓的光滑程度

6

mean compactness

平均紧密度:形状接近球形的程度

7

mean concavity

平均凹度:轮廓凹进去的程度

8

mean concave points

平均凹点数:轮廓凹陷部分的尖点数量

9

mean symmetry

平均对称性:肿瘤区域相对于中心的对称程度

10

mean fractal dimension

平均分形维数:描述肿瘤边缘复杂性的度量

11

radius error

半径误差:半径测量的不确定性

12

texture error

纹理误差:纹理测量的不确定性

13

perimeter error

周长误差:周长测量的不确定性

14

area error

面积误差:面积测量的不确定性

15

smoothness error

平滑度误差:平滑度测量的不确定性

16

compactness error

紧密度误差:紧密度测量的不确定性

17

concavity error

凹度误差:凹度测量的不确定性

18

concave points error

凹点数误差:凹点数测量的不确定性

19

symmetry error

对称性误差:对称性测量的不确定性

20

fractal dimension error

分形维数误差:分形维数测量的不确定性

21

worst radius

最差半径:最不理想的半径测量值

22

worst texture

最差纹理:最不理想的纹理测量值

23

worst perimeter

最差周长:最不理想的周长测量值

24

worst area

最差面积:最不理想的面积测量值

25

worst smoothness

最差平滑度:最不理想的平滑度测量值

26

worst compactness

最差紧密度:最不理想的紧密度测量值

27

worst concavity

最差凹度:最不理想的凹度测量值

28

worst concave points

最差凹点数:最不理想的凹点数测量值

29

worst symmetry

最差对称性:最不理想的对称性测量值

30

worst fractal dimension

最差分形维数:最不理想的分形维数测量值

31

label

1良性,0恶性

数据详情如下(部分展示):

3.数据预处理

3.1 用Pandas工具查看数据

使用Pandas工具的head()方法查看前五行数据: 

关键代码:

3.2数据缺失查看

使用Pandas工具的info()方法查看数据信息:

从上图可以看到,总共有31个变量,数据中无缺失值,共569条数据。

关键代码: 

3.3数据描述性统计

通过Pandas工具的describe()方法来查看数据的平均值、标准差、最小值、分位数、最大值。

关键代码如下:  

4.探索性数据分析

4.1 label变量柱状图

用Matplotlib工具的plot()方法绘制柱状图:

4.2 label=1样本mean radius变量分布直方图

用Matplotlib工具的hist()方法绘制直方图:

4.3 相关性分析

从上图中可以看到,数值越大相关性越强,正值是正相关、负值是负相关。

5.特征工程

5.1 建立特征数据和标签数据

关键代码如下:

5.2 数据均衡化

通过上图可以看到,数据均衡化后,标签两种样本的数量一致。

5.3 数据集拆分

通过train_test_split()方法按照80%训练集、20%测试集进行划分,关键代码如下:

6.构建分类模型 

主要使用逻辑回归分类算法、决策树分类算法、随机森林分类算法和XGBoost分类算法,用于目标分类。  

6.1 构建模型 

编号

模型名称

参数

1

逻辑回归分类模型

默认参数值

2

决策树分类模型

默认参数值

3

random_state=123

4

随机森林分类模型

默认参数值

5

random_state=42

6

XGBoost分类模型

默认参数值

7

random_state=42

7.模型评估

7.1评估指标及结果 

评估指标主要包括准确率、查准率、查全率、F1分值等等。

模型名称

指标名称

指标值

测试集

逻辑回归分类模型 

准确率

0.9720

查准率

 0.9452

查全率

 1.0

F1分值

 0.9718

决策树分类模型

准确率

0.9441

查准率

0.9296

查全率

0.9565

F1分值

0.9429

随机森林分类模型

准确率

 0.9650

查准率

0.9706

查全率

0.9565

F1分值

0.9635

XGBoost分类模型

准确率

 0.9650

查准率

0.9706

查全率

 0.9565

F1分值

0.9635

从上表可以看出,4个模型的F1分值都在0.9以上,说明这模型效果较好,其中逻辑回归模型F1最高为0.9718。     

7.2 分类报告

逻辑回归分类模型:

从上图可以看出,分类为0的F1分值为0.97;分类为1的F1分值为0.97。

  

决策树分类模型:

从上图可以看出,分类为0的F1分值为0.95;分类为1的F1分值为0.94。

随机森林分类模型:

从上图可以看出,分类为0的F1分值为0.97;分类为1的F1分值为0.96。

XGBoost分类模型:

从上图可以看出,分类为0的F1分值为0.97;分类为1的F1分值为0.96。

7.3 混淆矩阵

逻辑回归分类模型:

从上图可以看出,实际为0预测不为0的 有4个样本;实际为1预测不为1的 有0个样本。  

决策树分类模型:

从上图可以看出,实际为0预测不为0的 有5个样本;实际为1预测不为1的 有3个样本。  

随机森林分类模型:

从上图可以看出,实际为0预测不为0的 有2个样本;实际为1预测不为1的 有3个样本。

XGBoost分类模型:

从上图可以看出,实际为0预测不为0的 有2个样本;实际为1预测不为1的 有3个样本。

7.4 ROC曲线

逻辑回归分类模型:

从上图可以看出,逻辑回归分类模型的AUC值为1.0。

决策树分类模型:

从上图可以看出,决策树分类模型的AUC值为0.94。

随机森林分类模型:

从上图可以看出,随机森林分类模型的AUC值为0.99。

XGBoost分类模型:

从上图可以看出,XGBoost分类模型的AUC值为1.0。

8.结论与展望

综上所述,本文采用了逻辑回归、决策树、随机森林和XGBoost算法来构建分类模型,最终证明了4种模型效果良好,其中逻辑回归模型效果最优。此模型可用于日常产品的预测。 

# 本次机器学习项目实战所需的资料,项目资源如下:# 项目说明:# 获取方式一:# 项目实战合集导航:https://docs.qq.com/sheet/DTVd0Y2NNQUlWcmd6?tab=BB08J2# 获取方式二:链接:https://pan.baidu.com/s/1vzkHRkRNmilTAg0TrlxgBw 
提取码:z9v4

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

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

相关文章

Ollama qwen2:7b

简介 一个简明易用的本地大模型运行框架,Ollama官网:Ollama ollama命令 ollama有类似docker的命令。下面是一些模型(large language models)的操作命令: ollama list:显示模型列表ollama show:显示模型的信息ollama pull&#…

2024年【建筑电工(建筑特殊工种)】模拟试题及建筑电工(建筑特殊工种)作业考试题库

题库来源:安全生产模拟考试一点通公众号小程序 2024年建筑电工(建筑特殊工种)模拟试题为正在备考建筑电工(建筑特殊工种)操作证的学员准备的理论考试专题,每个月更新的建筑电工(建筑特殊工种)作业考试题库祝您顺利通过建筑电工(建筑特殊工种)考试。 1、…

visual studio2022配置和使用protobuf

上图证明,我真的测了好多遍,测了好多版本的protobuf,花了很多时间。不过好在最后在vs2022上测通了。 下载protobuf 这里是protobuf下载的地址。 Releases protocolbuffers/protobuf GitHub 个人使用的3.21.9这个版本才跑通的。 1、首先…

2024年5月90篇代码大模型论文最全整理

引言: 本文整理 2024 年 5 月发布的 90 篇代码大模型相关论文,其中包括 17 篇发表在今年 ICLR 的论文。根据论文内容,我们将这些论文整理为了基座模型、代码微调、测试基准、代码 Agent、低资源语言处理、AI 代码安全与分析、人机交互、软件…

Sqlserver双活

要实现Sqlserver双活不是一件简单的事情,什么是双活,就是两边都活着,两边都可以访问,也就是A服务器部署一个sqlserver服务,B服务器部署一个sqlserver服务,两边数据双向同步保持一致,当A数据库服…

EDA 虚拟机 Synopsys Sentaurus TCAD 2018.06-SP2 CentOS7.9

下载地址(制作不易,下载使用需付费,不能接受的请勿下载): 链接:https://pan.baidu.com/s/1358rH_Ner1TYdc_TgoXrew?pwdyq3p 提取码:yq3p

2024年【G1工业锅炉司炉】考试及G1工业锅炉司炉考试题库

题库来源:安全生产模拟考试一点通公众号小程序 2024年G1工业锅炉司炉考试为正在备考G1工业锅炉司炉操作证的学员准备的理论考试专题,每个月更新的G1工业锅炉司炉考试题库祝您顺利通过G1工业锅炉司炉考试。 1、【多选题】TSGG0001-2012《锅炉安全技术监察…

Animate软件基础:更改图层的轮廓颜色

在Animate软件中,图层都有单独的轮廓颜色,并且可以进行自定义设置,用来在显示轮廓状态下标记不同的图层。 更改图层轮廓颜色的过程如下: 1.执行如下操作之一: 双击时间轴中图层的图标(即该图层名称左侧的…

vite 创建vue3项目 集成 ESLint、Prettier、Sass等

在网上找了一大堆vue3脚手架的东西,无非就是vite或者vue-cli,在vue2时代,vue-cli用的人挺多的,也很好用,然而vue3大多是和vite搭配搭建的,而且个人感觉vite这个脚手架并没有那么的好用,搭建项目时只能做两个…

《昇思25天学习打卡营第2天 | 昇思MindSpore张量 Tensor》

第二天学习 1.今天学习了张量 Tensor,了解到Tensor是一个可用来表示在一些矢量、标量和其他张量之间的线性关系的多线性函数,也是一个特殊的数据结构,与数组和矩阵非常相似。是MindSpore网络运算中的基本数据结构。学些了张量和稀疏张量的属性…

Linux|如何查找和删除重复文件

引言 整理您的个人文件夹甚至整个操作系统可能会相当棘手,特别是当您习惯于使用下载管理器从网上下载各种资料时。 在很多情况下,您可能会发现自己不小心下载了重复的mp3、pdf和epub文件(以及其他类型的文件),并将它们…

正版软件 | WIFbox:智能化文件管理工具,让效率与隐私并行

在数字化办公日益普及的今天,文件管理成为了提升工作效率的关键。WIFbox 一款智能文件管理工具,利用强大的人工智能技术,帮助您快速对文件进行分类,完成复杂的智能文件分类任务。 智能分类,效率倍增 WIFbox 通过精细化…

2024年Nano编辑器最新使用教程

Nano在大多数Linux发行版中找到,易于使用,其最常用的命令显示在其屏幕底部。 作为编辑配置和其他文件是Linux中的一种普遍的任务,知道如何使用该程序是否可以非常有用。Nano编辑器以及如何使用Nano编辑器在服务器上编辑文件是我们将在本指南中…

linux 下neo4j的安装

一、neo4j简介 Neo4j 是一个高性能的 NoSQL 图形数据库,它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j 也可以被看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性。 neo4j与jdk版本对应 neo4j的版本需要与jdk版本相适配,否则容易出现安装失…

Centos+Jenkins+Maven+Git 将生成的JAR部署到Jenkins服务器上

背景:前一篇写的是Jenkins和项目应用服务器不在同一个服务器上。但是有的公司可能不会给Jenkins单独弄一个服务器。可能就会出现Jenkins就搭建在某一个应用服务器上。这种情况的参考如下的操作。 1、登录 没有安装的参考下面的安装步骤先安装: Jenkins安装手册 输入账号、…

电脑怎么去除视频水印?电脑视频水印怎么去掉?

电脑怎么去除视频水印?有是我们见到喜欢的视频会保存下来,但是有时候保存的视频上面会带有水印,那么视频水印该如何去除呢?今天小编给大家推荐一个好用的视频去水印软件,操作简单,去水印效果好。 使用&…

2024高考录取分数线一览表(含一本线、二本线、专科线)

2024年全国各地的高考录取分数线已经全部公布,查大学网(www.chadaxue.com)为大家整理全国31个省市高考录取分数线汇总,包括本科批(一本分数线线和二本分数线)、专科批和特殊类招生控制分数线汇总&#xff0…

【AI落地应用实战】如何让扫描工具更会思考——智能高清滤镜2.0实战测评

一、引言 在这个信息爆炸的数字化时代,扫描工具已经成为我们日常工作和学习中不可或缺的助手。最近,扫描全能王推出了革命性的“智能高清滤镜2.0”,本次更新后,智能高清滤镜能够智能识别并优化扫描过程中的各种问题。无论是光线不…

Redis优化之持久化

目录 1.Redis高可用 2.Redis持久化 2.1 RDB持久化 2.1.1 触发条件 2.1.2 执行流程 2.1.3 启动时加载 2.2 AOF持久化 2.2.1 开启AOF 2.2.2 执行流程 2.2.3 文件重写触发方式 2.2.4 文件重写的流程 2.2.5 启动时加载 2.3 RDB和AOF的优缺点 3.Redis性能管理 3.1 查看…

SSL证书在网站访问中的核心作用及快速申请指南

在当今的互联网时代,数据安全与用户隐私保护成为了网站运营不可或缺的一部分。SSL证书作为一种重要的网络安全协议,它在网站访问中扮演着至关重要的角色,主要体现在以下几个方面: 一、加密通信内容:SSL证书通过建立安…