【乳腺肿瘤诊断分类及预测】基于PNN概率神经网络

news2024/11/13 8:52:01

课题名称:基于PNN的乳腺肿瘤诊断分类及预测

版本日期:2023-06-15

运行方式: 直接运行PNN0501.m 文件即可

代码获取方式私信博主或QQ:491052175

模型描述

威斯康辛大学医学院经过多年的收集和整理,建立了一个乳腺肿瘤病灶组织的细胞核显微图像数据库。数据库中包含了细胞核图像的10 个量化特征(细胞核半径、质地、周长、面积、光滑性、紧密度、凹陷度、凹陷点数、对称度、断裂度〉,这些特征与肿瘤的性质有密切的关系。因此,需要建立一个确定的模型来描述数据库中各个量化特征与肿瘤性质的关系,从而可以根据细胞核显微图像的量化特征诊断乳腺肿瘤是良性还是恶性的。

算法流程:

1. 数据采集:

将乳腺肿瘤病灶组织的细胞核显微图像的1 0 个量化特征作为网络的输入,良性乳腺肿瘤和恶性乳腺肿瘤这两种类别作为网络的输出。共有乳腺癌数据集共包括569 个病例,其中, 良性357 例, 恶性212 例。随机选取500 组数据作为训练集,剩余69 组作为测试集。每个病例的一组数据包括采样组织中各细胞核的10 个特征量的平均值、标准差和最坏值(各特征的3 个最大数据的平均值)共30 个数据。数据文件中每组数据共分32 个字段,第l个字段为病例编号;第2 个字段为确诊结果, B 为良性, M 为恶性(数据中1为良性,2为恶性);第3~ 12 个字段是该病例肿瘤病灶组织的各细胞核显微图像的10 个量化特征的平均值;第1 3 ~ 22 个字段是相应的标准差;第2 3 ~32 个字段是相应的最坏值。 (打开data.mat文件可以看仿真数据)

2. 网络创建:

数据采集后,利用Matlab自带的神经网络工具箱中的函数newpnn()可以构建一个pnn神经网络。其调用格式为net=newf(P,T,SPREAD)。其中P为输入数据矩阵,T为输出数据矩阵,SPREAD为分布密度,当分布密度的值接近于0时,它构成最邻分类器,当分布密度的值较大时,它构成对几个训练样本的临近分类器;TF为节点传递函数,BTF为反向传播神经网络训练函数;BLF为反向传播神经网络权值、阈值学习函数;PF为性能分析函数;IPF为输入处理函数;OPF为输出处理函数;DDF为验证数据划分函数。

3. 网络训练:

网络创建完毕后,若需要,还可以对神经网络的参数进行设置和修改,将训练集的500个病例的数据输入网络,便可以对网络进行训练

4. 网络仿真:

网络通过训练后,将测试数据集的69组的10个量化特征数据输入到网络里,便可以得到对应的输出(即分类)

5. 结果分析

通过对网络仿真结果的分析,可以得到误诊率(包括良心被误诊为恶性及恶性被误诊为良性),从而可以对该方法的可行性进行评价

改进方向:

1.利用智能算法去优化BP神经网络的权值和阈值,比如GA算法,PSO算法,SA算法,GASA算法等等

特殊说明:

神经网络每一次的预测结果都不相同,为了得到更好的结果,建议多次运行取最佳值。

Matlab仿真结果:

基于PNN的乳腺肿瘤诊断分类与预测的仿真结果

基于PNN的分类预测结果

基于PNN的分类预测误差

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

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

相关文章

关于Spring框架的 @Configuration 与@Service 加载顺序哪个先后(某些环境加载是随机的)

很多资料都说Configuration 优先加载,Service后加载,如下图: 本来也是以为 Configuration 优先加载于 Service ,那参数处理放在Configuration注入完后,service构建时就可以拿来用的,在我在IDEA的调试时下断…

【蓝桥杯日记】复盘篇三——循环结构

前言 本篇内容是对循环结构进行复盘的,循环可谓是在基础阶段特别重要的东西,是三大结构(顺序结构、选择结构、循环结构)中最重要的结构之一。 目录 🍑1.找最小值 分析: 知识点: 代码如下 &…

【C/Python】Gtk部件ListStore的使用

一、C语言 在GTK中,Gtk.ListStore是一个实现了Gtk.TreeModel接口的存储模型,用于在如Gtk.TreeView这样的控件中存储数据。以下是一个简单的使用Gtk.ListStore的C语言示例,该示例创建了一个列表,并在图形界面中显示: …

PostGIS教程学习二十二:使用触发器追踪历史编辑操作

PostGIS教程学习二十二:使用触发器追踪历史编辑操作 生产环境下数据库的一个常见要求是能够跟踪用户编辑数据的历史:数据在两个日期之间是如何变化的,是谁操作的,以及它们哪些内容变化了?一些GIS系统通过在客户端接口…

单片机学习笔记--- 定时器/计数器(简述版!)

目录 定时器的介绍 定时计数器的定时原理 定时计数器的内部结构 两种控制寄存器 (1)工作方式寄存器TMOD (2)控制寄存器TCON 定时计数器的工作方式 方式0 方式1 方式2 方式3 定时器的配置步骤 第一步,对…

go语言socket编程

1.互联网分层模型 过程分析: 2.Socket图解 Socket是应用层与TCP/IP协议族通信的中间软件抽象层。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket后面,对用户来说只需要调用Socket规定的相关函数&a…

【笔记】React-Native跟Android交互--简单示例

/** * 使用命令 npx react-nativelatest init DemoRN创建项目 * * "react": "18.2.0", * "react-native": "0.73.2" * * 官网有详细教程:https://reactnative.dev/docs/native-modules-android */ 一、RN invoke androi…

【Oracle云】使用 boto3 访问 OCI 对象存储 (AWS S3协议兼容)

在现代云计算环境中,S3(Simple Storage Service)协议已经成为云对象存储的事实标准。它提供了简单、可扩展、高度耐用的存储解决方案,得到了广泛应用。Oracle Cloud Infrastructure(OCI)秉承着开放性和灵活…

ArcGIS Pro字段编号相关代码

字段属于SHP文件的重要组成部分,在某些时候需要对字段进行编号,这里为大家介绍一下字段编号相关的代码,希望能对你有所帮助。 数据来源 教程所使用的数据是从水经微图中下载的POI数据,除了POI数据,常见的GIS数据都可…

zookeeper(2) 服务器动态上下线监听和分布式锁案例

案例一:服务器动态上下线监听 某分布式系统中,主节点可以有多台,可以动态上下线,任意一台客户端都能实时感知 到主节点服务器的上下线。 1.服务端代码 package com.atguigu.case1;import org.apache.zookeeper.*;import java.io…

【大厂AI课学习笔记】1.3 人工智能产业发展(3)

1.3.1 供给侧 技术层面:从实验室走向大规模的商用。 数据层面:数据正式成为重要的生产要素。 市场:供需互促的正向市场环境建立。 资本:走出炒作泡沫,聚焦价值领域。 平台:大厂普遍开放生态。 MORE&am…

Java:搭建eladmin复习mvn、springboot、vue等

目录 1.源码平台后端: 2.源码平台前端: 3.操作系统:centos7.9 4.mysql:5.7.x 安装 5.redis:5.0.X 6.maven:3.8 7.java:1.8: 8.nodejs:16.x 9.通过mvn打包eladmin后端 10.npm打包前端项目进行部署 11.访问测试…

【GEE】基于GEE批量下载Landsat8 L2A数据(整幅)

之前发过一篇使用GEE下载Landsat8的文章,然后有很多小伙伴私信我各种问题,如L1C、L2数据代码怎么修改,如何镶嵌,如何去云、 如何裁剪等一系列问题。正好快过年了,手头的事也没有多少了,所以这两天整理了一下…

ElementUI Form:InputNumber 计数器

ElementUI安装与使用指南 InputNumber 计数器 点击下载learnelementuispringboot项目源码 效果图 el-radio.vue &#xff08;InputNumber 计数器&#xff09;页面效果图 项目里el-input-number.vue代码 <script> export default {name: el_input_number,data() {re…

Log4j2-29-log4j2 discard policy 极端情况下的丢弃策略 同步+异步配置的例子

Log4j2异步日志、同步日志和混合日志的配置详解 Log4j 2中记录日志的方式有同步日志和异步日志两种方式&#xff0c;其中异步日志又可分为使用AsyncAppender和使用AsyncLogger两种方式。 异步日志(性能最好&#xff0c;推荐使用) 异步日志情况下&#xff0c;增加 Disruptor …

如何用JAVA代码将视频号视频下载到本地

1、目前只掌握了&#xff0c;下载自己视频号后台的视频的方法&#xff1a; 登录视频号助手网页-点开视频-复制链接-&#xff08;I/O&#xff09;下载 代码如下&#xff1a; String videoUrl "xxx";String savePath "D:\\videoDownload\\video.mp4";tr…

实战Vue.js与MySQL:爱心商城项目开发指南

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

win10查看Nvidia显卡、cuda版本

通过cmd命令行查看 打开cmd命令行窗口&#xff0c;在命令行输入&#xff1a; nvidia-smi 即可看到相应的显卡信息&#xff0c;以及显卡支持的cuda版本。 如下图所示&#xff0c;可以看到显卡是"GeForce CTX 1650"&#xff0c;cuda版本是11.7

日本大带宽服务器速度和性能评测的关系

在互联网的快速发展中&#xff0c;大带宽服务器在提供高速、稳定的数据传输方面起着至关重要的作用。特别是在日本&#xff0c;由于其先进的网络基础设施和庞大的互联网用户群体&#xff0c;大带宽服务器的需求日益增长。那么&#xff0c;日本大带宽服务器的速度和性能评测有何…

山西电力市场日前价格预测【2024-02-01】

日前价格预测 预测说明&#xff1a; 如上图所示&#xff0c;预测明日&#xff08;2024-02-01&#xff09;山西电力市场全天平均日前电价为455.34元/MWh。其中&#xff0c;最高日前电价为687.90元/MWh&#xff0c;预计出现在18:30。最低日前电价为364.84元/MWh&#xff0c;预计…