自组织竞争网络在模式分类中的应用——患者癌症发病预测
大家好,我是带我去滑雪!
自组织神经网络可以通过对客观事件的反复观察、分析与比较,自行提示内在规律,并对具有共同特征的事物进行正确的分类。该网络更与人脑中生物神经网络的学习模式类似,即可以通过自动寻找样本中的内在规律和本质属性,自组织、自适应地改变神经网络参数结构。自组织神经网络的学习规则大都采用竞争型的学习规则。
竞争型神经网络的基本思想是网络竞争层的各个神经元通过竞争来获得对输入模式的响应机会,最后仅有一个神经元成为竞争的胜利者,并将与获胜神经元有关的各连接权值向着更有利于其竞争的方向调整。自组织竞争网络自组织、自适应的学习能力进一步拓展了神经网络在模式分类和识别方面的应用。本期利用自组织竞争网络对患者癌症的发病率进行预测。
目录
一、问题与模型
(1)问题描述
(2)模型建立
二、代码实现与结果分析
(1)代码
(2)输出结果分析
一、问题与模型
(1)问题描述
癌症是一种由体内细胞不受控制地分裂和生长形成的疾病。正常情况下,细胞的生长和分裂是受到严格控制的,以保持组织和器官的正常结构和功能。然而,在癌症中,某些细胞开始失去这种正常的生长控制机制,导致它们过度增殖,并形成肿瘤。癌症可以分为良性和恶性两种。良性肿瘤通常生长缓慢,不侵犯周围组织,而恶性肿瘤则具有侵袭性,能够突破周围组织并在身体其他部位形成转移,这就是所谓的癌症的转移性。癌细胞可以通过血液或淋巴系统传播到远离原始肿瘤的部位。
癌症的原因是多方面的,包括基因突变、环境暴露、生活方式因素等。不同类型的癌症有不同的症状和治疗方法。治疗癌症的方法包括手术、放射疗法、化疗、免疫疗法等,通常根据癌症的类型、分级和患者的个体情况来确定最合适的治疗方案。早期检测和诊断对于癌症的治疗非常重要,因为在早期阶段治疗的成功率通常较高。预防癌症的方法包括保持健康的生活方式、定期体检、避免暴露于致癌物质等。癌症仍然是全球范围内一种严重的健康问题,科学家们正在不断努力研究和发展新的治疗方法和预防策略。
(2)模型建立
本期给出一个含有60个个体基因表达水平的样本。每个样本中测量了114个基因特征,其中前20个样本是癌症病人的基因表达水平的样本(其中还可能有子类),中间的20个样本是正常人的基因表达信息样本,余下的20个样本是待检测的样本(未知它们是否正常)。以下将设法找出癌症与正常样本在基因表达水平上的区别,建立竞争网络模型去预测待检测样本是癌症还是正常样本。
利用newc()函数创建一个自竞争网络,由于需要区分的类别数目为2,因此,竞争层神经元的数目也为2.为了加快学习速度,将学习速率设置为0.1。
二、代码实现与结果分析
(1)代码
clc
clear%% 录入输入数据
% 载入数据并将数据分成训练和预测两类
load gene.mat;
data=gene;
P=data(1:40,:);
T=data(41:60,:);% 转置后符合神经网络的输入格式
P=P';
T=T';
% 取输入元素的最大值和最小值Q:
Q=minmax(P);%% 网络建立和训练
% 利用newc( )命令建立竞争网络:2代表竞争层的神经元个数,也就是要分类的个数。0.1代表学习速率。
net=newc(Q,2,0.1)% 初始化网络及设定网络参数:
net=init(net);
net.trainparam.epochs=20;
% 训练网络:
net=train(net,P);%% 网络的效果验证% 将原数据回带,测试网络效果:
a=sim(net,P);
ac=vec2ind(a)% 这里使用了变换函数vec2ind(),用于将单值向量组变换成下标向量。其调用的格式为:
% ind=vec2ind(vec)
% 其中,
% vec:为m行n列的向量矩阵x,x中的每个列向量i,除包含一个1外,其余元素均为0。
% ind:为n个元素值为1所在的行下标值构成的一个行向量。
Y=sim(net,T)
yc=vec2ind(Y)
(2)输出结果分析
ac =
1 至 18 列
1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 2 1
19 至 36 列
1 2 2 2 2 2 2 2 2 1 1 2 2 1 1 2 2 2
37 至 40 列
2 1 2 1
Y =1 至 18 列
0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1
1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 019 至 20 列
1 1
0 0
yc =1 至 18 列
2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1
19 至 20 列
1 1
更多优质内容持续发布中,请移步主页查看。
点赞+关注,下次不迷路!
相关文章:
自组织竞争网络在模式分类中的应用——患者癌症发病预测
大家好,我是带我去滑雪! 自组织神经网络可以通过对客观事件的反复观察、分析与比较,自行提示内在规律,并对具有共同特征的事物进行正确的分类。该网络更与人脑中生物神经网络的学习模式类似,即可以通过自动寻找样本中的…...

神经网络中的量化与蒸馏
本文将深入研究深度学习中精简模型的技术:量化和蒸馏 深度学习模型,特别是那些具有大量参数的模型,在资源受限环境中的部署几乎是不可能的。所以就出现了两种流行的技术,量化和蒸馏,它们都是可以使模型更加轻量级&…...
数据库——表结构相关SQL
一、GP或PostgreSQL 1.获取表结构 SELECT a.schemaname schema_name, a.tablename table_name, string_agg(b.column_name, ,) AS columns FROM (SELECT schemaname, tablename FROM pg_tables WHERE schemaname public and tablename like test%) a LEFT JOIN (SELECT tabl…...

python 爬虫之requests 库以及相关函数的详细介绍
get 函数 当你使用 requests.get 函数时,你可以按照以下步骤来发起一个 GET 请求: 导入 requests 模块: 在你的 Python 脚本或程序中,首先导入 requests 模块。 import requests指定目标 URL: 设置你要请求的目标 URL…...

突破职场竞争,引领未来发展:考取《研发效能(DevOps)工程师职业技术认证》
就业形势堪忧,什么最有保障?考个“国家级”证书傍身吧! 工信部教考中心作为中国领先的行业技能认证机构,其颁发的认证证书不仅代表了个人在信息技术领域的专业能力,更可以录入工业和信息化技术技能人才数据库…...
设计模式例子
策略模式(Strategy Pattern) 策略模式 (Strategy Pattern): 定义一系列算法,将每个算法都封装起来,并使它们之间可以互换。例如:java.util.Comparator 以下是一个简单的Java策略模式的例子,涉及一个商品的…...
腾讯云入侵
早上8点左右收到腾讯云的相关短信,提示机器可能存在挖坑风险。马上登录机器看了一下,发现crontab有个比较诡异的任务 [devVM_0_12_centos ~]$ crontab -l 11 * * * * /home/dev/.config/systemd/user/systemd-tmpfiles-cleanup/systemd-tmpfiles-cleanu…...
第二章 智能家居子系统——C51单片机 配置波特率115200
前言 本章为智能家居项目的第二章,本章主要写51单片机的定时器timer,串口UART,中断,外接模块DHT11 同项目其他博文: 项目的概述链接:Linux智能家居项目概述-CSDN博客 第一章 主控代码开发链接:…...
registry镜像仓库通过HTTP API删除镜像
registry组件提供了HTTP的接口,可以参考:官网API说明 删除思路: 镜像由多个layers层组成,DELETE /v2/<name>/blobs/<digest>可以用来删除一个单独的层,但是我们的目的不是要删除层。 我们用DELETE /v2/…...
【ATTCK】ATTCK视角下的水坑钓鱼攻防战法
在网络安全领域,ATT&CK已经成为了研究和理解恶意攻击者行为的重要工具。站在攻击者的视角,ATT&CK为我们描绘了他们在攻击过程中所使用的各种战术、技术和常见知识。本文将结合ATT&CK框架,对水坑钓鱼攻击进行深入分析,…...
【算法】算法题-20231115
这里写目录标题 一、回文数(力扣第九题)二、剑指 Offer 39. 数组中出现次数超过一半的数字三、至少是其他数字两倍的最大数(leetcode第747题,飞书三面)四、给定一有序整型数组,其中存在有重复元素ÿ…...
Rabin Karp 字符匹配算法
Rabin Karp 字符匹配算法 相关题目: 187. 重复的DNA序列 28. 找出字符串中第一个匹配项的下标 class FindRepeatedDnaSequences:"""187. 重复的DNA序列https://leetcode.cn/problems/repeated-dna-sequences/description/"""def sol…...

星宿UI2.51资源付费变现小程序 支持流量主广告投放
目前,最新版的星宿UI是2.51版本。要搭建星宿UI,您需要准备备用域名、服务器和微信小程序账号。星宿UI提供了多项功能,包括文章展示、文章分类、资源链接下载和轮播图等。此外,还支持直接下载附件功能。这些功能使得星宿UI非常适合…...

Telnet 测试 UDP 端口?
Telnet 并不支持 UDP 端口的测试,可以使用 nc 命令来进行测试。nc 命令两种都支持: TCP # nc -z -v -u [hostname/IP address] [port number] # nc -z -v 192.168.10.12 22 Connection to 192.118.20.95 22 port [tcp/ssh] succeeded! UDP # nc -z -v…...
【论文复现】常见问题
1. 提取出错 首先检查嵌入时的像素值是否越界(0-255),如果越界则在提取的时候无法正确提取嵌入的时候注意整数除法和浮点数除法向下取整结果不一样,floor(int(10)/16)1,floor(double(10)/16)0 2. 常用代码部分 1.生…...

Uniapp开发 购物商城源码 在线电商商城源码 适配移动终端项目及各小程序
lilishop电商商城系统 商城移动端,使用Uniapp开发,可编译为所有移动终端项目及各小程序 源码下载:https://download.csdn.net/download/m0_66047725/88487579 源码下载2:关注我留言...

xml schema中的sequence的含义
https://www.w3.org/TR/xmlschema-1/#element-sequence xml schema中的sequence的含义:包含的元素必须按规定的顺序出现。通过属性maxOccurs和minOccurs可以定义最多、最少出现的次数。最多可以定义不限制次数,最少可以定义0次。默认是最少出现1次&…...

详解 KEIL C51 软件的使用·建立工程
单片机要运行,就必须将程序代码下载到程序存储器内部,但是在写进单片机之前要先将你写 的程序转换成*.hex 或*.bin 的文件.不同系列的单片机都有不同的软件对其进行编绎,而 keil Cx51 是德国开发的一个专为 51 系列单片机提供的软件开发平台,基本上现在的所有 51 系列内核的单片…...

2023年03月 Python(五级)真题解析#中国电子学会#全国青少年软件编程等级考试
Python等级考试(1~6级)全部真题・点这里 一、单选题(共25题,每题2分,共50分) 第1题 已知一个列表lst = [2,3,4,5,6],lst.append(20),print(lst)的结果是?( )(2分) A.[10,2,3,4,5,6,20] B.[20,2,10,3,4,5,6] C.[2,3,4,5,6,20] D.[2,3,4,5,6,10,20] 答案:C 第2…...
nginx 代理服务时遇到的问题
一 nginx代理多个服务,且服务之间需要相互通信 多个服务运行在docker容器中,nginx同样在docker容器中 比如前端服务需要请求后端服务,用户请求服务器80或者443 ,nginx代理请求到前端服务,前端服务业务请求到后端服务…...
【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密
在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...
Java - Mysql数据类型对应
Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...

DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...
是否存在路径(FIFOBB算法)
题目描述 一个具有 n 个顶点e条边的无向图,该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序,确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数,分别表示n 和 e 的值(1…...
【Java学习笔记】BigInteger 和 BigDecimal 类
BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点:传参类型必须是类对象 一、BigInteger 1. 作用:适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...

用机器学习破解新能源领域的“弃风”难题
音乐发烧友深有体会,玩音乐的本质就是玩电网。火电声音偏暖,水电偏冷,风电偏空旷。至于太阳能发的电,则略显朦胧和单薄。 不知你是否有感觉,近两年家里的音响声音越来越冷,听起来越来越单薄? —…...
在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案
这个问题我看其他博主也写了,要么要会员、要么写的乱七八糟。这里我整理一下,把问题说清楚并且给出代码,拿去用就行,照着葫芦画瓢。 问题 在继承QWebEngineView后,重写mousePressEvent或event函数无法捕获鼠标按下事…...
C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)
名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...