【基因调控网络】Gene regulatory networks modelling using a dynamic evolutionary hybrid(ENFRN ,动态进化混合模型2010)

【基因调控网络】Gene regulatory networks modelling using a dynamic evolutionary hybrid(ENFRN ,动态进化混合模型2010)ENFRN动态进化混合模型2010摘要跟据基因调控网络重建面临的三个问题:数据高维、时间动态、测量噪声,提出了一种多层进化训练的神经-模糊递归网络(ENFRN),可以用于描述潜在目标基因和调控的类型。其中递归、自组织机构和进化训练等特点优化了弱调控关系,模糊的特性避免了噪声影响的问题,最后为每一组调控都给定了分数。方法最终在酵母的基准数集上进行了测试。各个方法的特点传统方法:Boo…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

ENFRN 动态进化混合模型2010

摘要

跟据基因调控网络重建面临的三个问题:数据高维时间动态测量噪声,提出了一种多层进化训练的神经-模糊递归网络(ENFRN),可以用于描述潜在目标基因和调控的类型。
其中递归、自组织机构和进化训练等特点优化了弱调控关系,模糊的特性避免了噪声影响的问题,最后为每一组调控都给定了分数。方法最终在酵母的基准数集上进行了测试。

各个方法的特点
传统方法:
  1. Boolean Networks(布尔网络):只有0和1两个状态,不能表示中间的状态等级。
  2. Bayesian Networks(贝叶斯网络):不能考虑到时间动态性
  3. Dynamic Byesian Networks(动态贝叶斯网络):较高的计算复杂度
  4. linear additive regulation models(线性附加调控网络):不能计算非线性的动态基因调控网络
近期的方法:(相对于2010年)
  1. hybrid neuro-genetic algorithm(混合神经进化算法):当模型面对复杂动态基因时间序列时ANN可能会陷入局部陷阱中。
    详情见https://blog.csdn.net/loveC__/article/details/88977410
  2. recurrent neural networks(RNNs,递归神经网络):虽然有自使用循环,反向链接,递归可以记录历史信息,但是没有recurrent fuzzy neural networks(RFNNs,递归模糊神经网络)表现好,模糊特性可以更好的处理不确定的噪声数据。
算法

由于算法较为复杂,故此大致描述一下算法的整体流程,核心结构是一个5层的递归神经模糊网络,通过三次对其优化,得到基因调控之间的调控类型和潜在调控关系。其中最初第一次初始化网络结构,接着第二次优化使用BPSO对网络的结构进行优化,最后使用PSO对网络结构参数进行微调,对每个基因分配Regulation Score(RS)和Regulation Type。

ENFRN 5层结构

在这里插入图片描述
ϕ i ( k ) \phi_i^{(k)} ϕi(k)表示节点 i i i在第 k k k层上的输入, Ψ i ( k ) \Psi_i^{(k)} Ψi(k)表示节点 i i i在第 k k k层上的输出。
1. 第一层:第一层为输入层,每个节点直接输入变量到下一层中
Ψ i ( 1 ) = ϕ i ( 1 ) = x i \Psi_i^{(1)}= \phi_i^{(1)}=x_i Ψi(1)=ϕi(1)=xi
2. 第二层:标签语言输入层,该层中的每个节点表示一个高斯隶属函数,该函数对应于一个语言标签
Ψ i j ( 2 ) = e x p ( ( ϕ i j ( 2 ) − c i j ) 2 σ i j 2 ) \Psi_{ij}^{(2)} = exp \Bigg({\frac {(\phi_{ij}^{(2)}-c_{ij})^2}{\sigma_{ij}^2}} \Bigg) Ψij(2)=exp(σij2(ϕij(2)cij)2)
其中 c i j c_{ij} cij代表均值, σ \sigma σ表示标准差, Ψ i j \Psi_{ij} Ψij表示第 i i i个输入变量的第 j j j个隶属函数。在第二层中有递归的结构,这一层中每一个节点的输入的某个时间点为 t t t:
ϕ i j ( 2 ) ( t ) = x i ( t ) + β i j ⋅ Ψ i j ( 2 ) ( t − 1 ) \phi_{ij}^{(2)}(t) = x_i(t)+\beta_{ij} \cdot \Psi_{ij}^{(2)}(t-1) ϕij(2)(t)=xi(t)+βijΨij(2)(t1)
其中 β i j \beta_{ij} βij表示反馈单元的链接权重, ϕ i j \phi_{ij} ϕij表示第 i i i个输入变量的第 j j j个隶属函数。可以从公式看出其中 Ψ i j ( 2 ) \Psi_{ij}^{(2)} Ψij(2)是节点上一个时间的输出,作为了现在隶属函数中的输入。此公式表示了第二层的递归链接的方式,保存了每一层的过去状态的信息。
3. 第三层:规则层,包括所有的规则节点,每一个节点都匹配一个规则,后面将会详细讲述,第三层节点的添加规则。
Ψ i ( 3 ) = ∏ i ϕ i ( 3 ) \Psi_i^{(3)} = \prod_i \phi_i^{(3)} Ψi(3)=iϕi(3)
其中:
∏ i ϕ i ( 3 ) = e x p ( − [ D i ( ϕ i ( 2 ) − c i ) ] T [ D i ( ϕ i ( 2 ) − c i ) ] ) \prod_i \phi_i^{(3)} = exp \Bigg( -[D_i \big(\phi_i^{(2)}-c_i \big)]^T[D_i \big(\phi_i^{(2)} -c_i \big)] \Bigg) iϕi(3)=exp([Di(ϕi(2)ci)]T[Di(ϕi(2)ci)])
每个规则节点的输出,对应这个规则的触发强度。
4. 第四层:ENFRN对输出进行分区,这些节点被称为语言节点,对应于模糊规则的后面部分。
Ψ i ( 4 ) = ∑ i ϕ i ( 4 ) \Psi_i^{(4)} = \sum_i \phi_i^{(4)} Ψi(4)=iϕi(4)
当前层的每个节点的输出,是规则层中规则节点的和(这些规则层中对应节点的结果是当前节点)。
5. 第五层:输出层,去模糊过程
y j = Ψ i ( 5 ) = ∑ i w i j ϕ i ( 5 ) ∑ i ϕ i ( 5 ) y_j = \Psi_i^{(5)} = \frac {\sum_i w_{ij}\phi_i^{(5)}}{\sum_i \phi_i^{(5)}} yj=Ψi(5)=iϕi(5)iwijϕi(5)
w i j w_{ij} wij是输出层模糊集的宽度。ENFRN为对应输出变量计算预测值。

算法分为三大部分:

  1. 第一部分:5层结构的创建。首先需要对第三层规则层进行初始化,初始化规则节点,通过训练集得到规则层的规则节点数量。
  2. 第二部分:使用BPSO对ENFRN进行优化和学习,这一层主要优化ENFRN的结构,简化模型,降低冗余的规则。
  3. 第三部分:使用PSO对ENFRN中的具体参数进行学习优化。
实验结果

由于论文中链接失效,无法获取数据集和测试集,最终在网络上找到了cdc_15和cdc_28的时间序列测试集,使用cdc_15作为训练集,cdc_28作为测试集,得到以下结果。

a/a Regulator Type Target Train Composite Score Test Composite Score
1 Gene5 + Gene1 0.32194 0.26300
2 Gene3 Gene1 31.19813 32.06183
3 Gene4 + Gene4 30.34433 30.25702
4 Gene5 + Gene6 0.39765 0.31757
5 Gene12 + Gene6 0.39765 0.31757
6 Gene6 + Gene7 0.33661 0.20830
7 Gene8 + Gene7 0.33661 0.22057
8 Gene1 Gene7 0.52834 0.40458
9 Gene9 Gene10 30.38451 29.63479

由于数据中没有基因的名称,故对基因进行了1-12进行了编号,从数据可以看出,从12个基因中得到了9组调控信息,其中+代表积极调控(Up Regulation)
-代表不稳定调控(UnStable Regulation)。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/206817.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 操作系统分为用户态和内核态_内核态 用户态

    操作系统分为用户态和内核态_内核态 用户态这节课给你带来了一道非常经典的面试题目:用户态线程和内核态线程有什么区别?这是一个组合型的问题,由很多小问题组装而成,比如:用户态和内核态是什么?用户级线程和内核级线程是一个怎样的对应关系?内核响应系统调用是一个怎样的过程?……而且这个问题还关联到了我们后面要学习的多线程、I/O模型、网络优化等。所以这是一道很不错的面试题目,它不是简单考某个概念,而是通过让求职者比较两种东西,从而考察你对知识整体的认知和理解。今天就请你顺着这个问题,深入学习内核的工作机制,和我一起去理解用户

  • onmouseout和onmousemove

    onmouseout和onmousemoveonmouseout和onmousemoveonmouseout事件会在鼠标指针移出指定的对象时发生。onmousemove事件会在鼠标指针移动时发生。

    2022年10月19日
  • asp判断session是否为空

    asp判断session是否为空1IfSession(“sesName”)=””Then…2IfSession(“sesName”)=EmptyThen…3IfIsEmpty(Session(“sesName”))Then…4IfCint(Session(“sesName”))=0Then… 来自:百度空间

  • sublime3激活码【在线注册码/序列号/破解码】

    sublime3激活码【在线注册码/序列号/破解码】,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • MySQL: Hash索引优缺点

    MySQL: Hash索引优缺点优点:因为索引自身只需存储对应的哈希值,所以索引的结构十分紧凑,这也让哈希索引查找的速度非常快缺点:1、不能避免读取行哈希索引只包含哈希值和行指针,而不存储字段值,所以不能使用索引中的值来避免读取行。不过,访问内存中的行的速度很快,所以大部分情况下这一点对性能的影响并不明显。2、无法用于排序哈希索引数据并不是按照索引值顺序存储的,所以也就无法用于排序。3、无法使用部分索…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号