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

**课题名称:**基于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文件可以看仿真数据)

  1. 网络创建:

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

  1. 网络训练:

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

  1. 网络仿真:

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

  1. 结果分析

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

改进方向:

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

特殊说明:

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

Matlab仿真结果:

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

基于PNN的分类预测结果

基于PNN的分类预测误差

相关推荐
jllllyuz3 小时前
MATLAB 回声抵消(AEC)、噪声抑制(NS)、自动增益控制(AGC)完整实现
开发语言·matlab
yongui478344 小时前
MATLAB 使用遗传算法求解微电网优化配置数学模型
开发语言·matlab
rit84324994 小时前
基于博弈论的小区分簇算法MATLAB实现
开发语言·算法·matlab
2zcode7 小时前
基于MATLAB的家用场景下扫地机器人路径规划研究设计
开发语言·matlab·机器人
可编程芯片开发8 小时前
基于双Qlearning强化学习的温差发电系统电压动态补偿算法matlab仿真
算法·matlab·双qlearning强化学习·电压动态补偿·温差发电系统
yu85939589 小时前
matlab实现ARMA(自回归移动平均)模型
开发语言·matlab·回归
民乐团扒谱机9 小时前
【微实验】平滑轨迹的数学基石:二次贝塞尔曲线原理、插值逻辑、形态控制与MATLAB全解析
开发语言·matlab
xrgs_shz10 小时前
基于轻量化浅层卷积神经网络的手写数字识别
算法·matlab·cnn
yuan199971 天前
PCA源码与可见光-红外图像融合MATLAB实现
图像处理·计算机视觉·matlab
机器学习之心1 天前
PSO-QGPR粒子群优化高斯过程分位数回归多变量回归预测,MATLAB代码
matlab·回归·pso-qgpr