GRN前沿:DGCGRN:基于有向图卷积网络的基因调控网络推理

news2025/2/15 8:46:46

1.论文原名:Inference of gene regulatory networks based on directed graph convolutional networks

2.发表日期:2024

DGCGRN框架

中心节点和节点的构建

局部增强策略

1. 问题背景

在基因调控网络中,许多节点的连接度较低(即低度节点),这些节点在图结构中包含的信息较少。传统的图神经网络(GNN)在处理这类低度节点时,可能会因为缺乏足够的邻域信息而导致特征表达能力不足,进而影响整体的预测性能。因此,需要一种方法来增强这些低度节点的特征表示。

2. 局部增强策略的核心思想

局部增强策略的核心是通过生成模型(CVAE)为低度节点生成额外的邻域特征,从而增强其特征表达能力。具体来说,该策略利用节点的局部结构信息和特征分布,生成与中心节点特征相关的邻域节点特征。这种方法可以在不改变整体图结构的前提下,为低度节点提供更丰富的特征信息。


3. 条件变分自编码器(CVAE)

CVAE是一种生成模型,结合了变分自编码器(VAE)和条件生成对抗网络(GAN)的思想。它通过编码器将输入数据编码为潜在空间的分布,然后通过解码器生成新的数据。在DGCGRN中,CVAE被用于生成邻域节点的特征,具体步骤如下:

局部增强策略的优势

  1. 针对性增强低度节点:通过生成邻域特征,为低度节点提供额外的特征信息,增强其在图神经网络中的表达能力。

  2. 保留局部结构信息:CVAE在生成邻域特征时,考虑了中心节点的特征分布,因此生成的特征与局部结构相关,能够更好地保留图的局部信息。

  3. 提升模型性能:通过增强低度节点的特征,模型能够更准确地捕捉节点间的调控关系,从而提升GRN推断的整体性能。

序列特征提取

1. 序列特征提取模块的背景和动机

在基因调控网络(GRN)推断中,基因表达数据通常是主要的输入特征。然而,基因表达数据的维度可能较低,尤其是在处理真实生物数据时。此外,基因表达数据只能反映基因在特定条件下的表达水平,而无法提供基因序列本身的结构信息。这些结构信息对于理解基因的调控机制至关重要,因为基因序列中的某些模式(如转录因子结合位点)直接影响基因的调控。

因此,DGCGRN引入了序列特征提取模块,通过从基因序列中提取额外的特征来补充基因表达数据。这些序列特征不仅能够提供基因序列的结构信息,还能增强模型对基因调控关系的推断能力。

2. 序列特征提取模块的实现细节

序列特征提取模块主要通过两种方法提取序列特征:

  1. 隐藏特征提取(Hidden Features Extraction):使用双向门控循环单元(Bi-GRU)模型提取基因序列的隐藏特征。

  2. 理化特征计算(Physicochemical Features Calculation):计算基因序列的物理化学性质,如Z-curve、GC含量、AT/GC比等。

2.1 隐藏特征提取(Hidden Features Extraction)

2.1.1 Bi-GRU模型

Bi-GRU(双向门控循环单元)是一种基于循环神经网络(RNN)的模型,能够处理序列数据的时间依赖性和上下文信息。Bi-GRU通过双向处理输入序列,能够捕捉序列的前向和后向依赖关系,从而提取更全面的特征。

  • 输入:基因序列被分割成多个k-mer片段(长度为k的子序列),每个k-mer片段通过one-hot编码表示。

  • 处理:Bi-GRU模型对这些k-mer片段进行处理,提取隐藏特征。

  • 输出:Bi-GRU模型输出每个基因序列的隐藏特征向量。

具体步骤

  1. k-mer分割:将基因序列分割成多个长度为k的子序列(k-mer片段)。例如,对于一个基因序列“ATGCGT”,如果k=3,则分割为“ATG”、“TGC”、“GCG”、“CGT”。

  2. One-hot编码:将每个k-mer片段通过one-hot编码表示。例如,对于4个核苷酸(A、C、G、T),每个核苷酸可以用一个4维的向量表示。

  3. Bi-GRU处理:将编码后的k-mer片段输入到Bi-GRU模型中,提取隐藏特征。

示例: 假设基因序列“ATGCGT”被分割成3-mer片段“ATG”、“TGC”、“GCG”、“CGT”,每个片段通过one-hot编码表示后输入到Bi-GRU模型中,最终输出一个隐藏特征向量。

基于有向图卷积网络的GRN预测

1. 有向图卷积网络(DGCN)的背景和动机

1.1 传统GCN的局限性

传统的图卷积网络(GCN)主要用于处理无向图数据。在无向图中,边没有方向,因此GCN通过聚合邻域节点的信息来更新节点的特征表示。然而,在基因调控网络(GRN)中,调控关系是有方向的(例如,转录因子A调控基因B,但基因B不一定调控转录因子A)。如果直接将无向图的处理方法应用于有向图,会丢失调控关系的方向性信息,从而影响推断的准确性。

1.2 DGCN的优势

DGCN通过引入有向图的处理机制,能够直接处理有向图数据,保留调控关系的方向性。具体来说,DGCN通过定义一阶和二阶邻近矩阵,能够更好地捕捉节点之间的直接和间接调控关系,从而提高GRN推断的准确性。

4. GRN预测模块的流程

基于DGCN的GRN预测模块的完整流程如下:

  1. 输入特征:将增强后的节点特征(包括基因表达特征、序列特征和局部增强特征)作为输入。

  2. 图卷积操作:通过DGCN的谱卷积操作,结合一阶和二阶邻近矩阵,更新节点的特征表示。

  3. 动态更新策略:在每次迭代中,根据预测的调控关系更新边的权重,生成新的加权图。

  4. 输出预测结果:最终,模型输出节点之间的调控关系预测结果,包括调控关系的存在概率和方向。


5. DGCN的优势和作用

5.1 保留调控关系的方向性

DGCN通过处理有向图数据,保留了基因调控关系的方向性,从而提高了GRN推断的准确性。

5.2 捕捉直接和间接调控关系

通过定义一阶和二阶邻近矩阵,DGCN能够捕捉节点之间的直接和间接调控关系,从而更好地理解基因调控网络的全局结构。

5.3 动态更新策略

动态更新策略使模型能够根据每次迭代的结果调整图结构,从而更好地捕捉节点之间的调控关系,进一步提高模型的预测性能。

细节补充:动态更新策略

1. 动态更新策略的背景和动机

在传统的图神经网络(GNN)中,图结构通常是静态的,即边的权重在训练过程中不会改变。然而,在基因调控网络(GRN)推断中,调控关系的强度可能因节点之间的相互作用而有所不同。静态图结构无法有效捕捉这种动态变化,从而限制了模型的预测能力。

为了解决这一问题,DGCGRN引入了动态更新策略。该策略通过在每次迭代中更新边的权重,使模型能够根据当前预测结果动态调整图结构,从而更好地反映节点之间的调控关系强度。

3. 动态更新策略的作用和优势

3.1 提高预测准确性

通过动态更新边权重,模型能够根据当前预测结果调整图结构,从而更好地反映节点之间的调控关系强度。这有助于提高模型对调控关系的预测准确性。

3.2 捕捉动态变化

基因调控网络中的调控关系可能因环境变化或节点状态而有所不同。动态更新策略能够捕捉这种动态变化,使模型在训练过程中不断优化图结构。

3.3 增强模型的适应性

动态更新策略使模型能够自适应地调整图结构,从而更好地适应不同的数据集和调控关系模式。实验结果表明,加入动态更新策略后,模型的预测性能显著提升。

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

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

相关文章

unity删除了安卓打包平台,unityhub 还显示已经安装,怎么解决

解决问题地址 可能由于版本问题文章中这个我没搜到,应该搜Android Build Supprot

C++ Primer 参数传递

欢迎阅读我的 【CPrimer】专栏 专栏简介:本专栏主要面向C初学者,解释C的一些基本概念和基础语言特性,涉及C标准库的用法,面向对象特性,泛型特性高级用法。通过使用标准库中定义的抽象设施,使你更加适应高级…

数据结构 day06

数据结构 day06 6. 双向链表6.3. 双向循环链表 7. 树 tree7.1. 特点7.1.1. 什么是树7.1.2. 树的特性7.1.3. 关于树的一些术语 7.2. 二叉树7.2.1. 什么是二叉树7.2.2. 二叉树的性质7.2.3. 满二叉树和完全二叉树的区别7.2.4. 二叉树的遍历(画图)7.2.5. 二叉…

AI编程01-生成前/后端接口对表-豆包(或Deepseek+WPS的AI

前言: 做过全栈的工程师知道,如果一个APP的项目分别是前端/后端两个团队开发的话,那么原型设计之后,通过接口文档进行开发对接是非常必要的。 传统的方法是,大家一起定义一个接口文档,然后,前端和后端的工程师进行为何,现在AI的时代,是不是通过AI能协助呢,显然可以…

01什么是DevOps

在日常开发中,运维人员主要负责跟生产环境打交道,开发和测试,不去操作生产环境的内容,生产环境由运维人员操作,这里面包含了环境的搭建、系统监控、故障的转移,还有软件的维护等内容。 当一个项目开发完毕&…

力扣100. 相同的树(利用分解思想解决)

Problem: 100. 相同的树 文章目录 题目描述思路Code 题目描述 思路 题目要求判断两个二叉树是否完全相同,而此要求可以利用问题分解的思想解决,即判断当前节点的左右子树是否完全相同,而在二叉树问题分解的一般题目中均会带有返回值&#xff…

el-select 设置宽度 没效果

想实现下面的效果,一行两个,充满el-col12 然后设置了 width100%,当时一直没有效果 解决原因: el-form 添加了 inline 所以删除inline属性 即可

chrome://version/

浏览器输入: chrome://version/ Google浏览器版本号以及安装路径 Google Chrome131.0.6778.205 (正式版本) (64 位) (cohort: Stable) 修订版本81b36b9535e3e3b610a52df3da48cd81362ec860-refs/branch-heads/6778_155{#8}操作系统Windows…

反向代理块sjbe

1 概念 1.1 反向代理概念 反向代理是指以代理服务器来接收客户端的请求,然后将请求转发给内部网络上的服务器,将从服务器上得到的结果返回给客户端,此时代理服务器对外表现为一个反向代理服务器。 对于客户端来说,反向代理就相当于…

封装一个sqlite3动态库

作者:小蜗牛向前冲 名言:我可以接受失败,但我不能接受放弃 如果觉的博主的文章还不错的话,还请点赞,收藏,关注👀支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 目录 一、项目案例 二…

P1878 舞蹈课(详解)c++

题目链接:P1878 舞蹈课 - 洛谷 | 计算机科学教育新生态 1.题目解析 1:我们可以发现任意两个相邻的都是异性,所以他们的舞蹈技术差值我们都要考虑,4和2的差值是2,2和4的差值是2,4和3的差值是1,根…

【C++学习篇】C++11

目录 ​编辑 1. 初始化列表{} 1.1 C98中的{} 1.2 C11中的{} 2. C11中的std::initializer_list 3. 右值引用和移动语义 3.1 左值和右值 3.2 左值引用和右值引用 3.3 引用延长生命周期 3.4 左值和右值的参数匹配 3.5 右值引⽤和移动语义的使⽤场景 3.5.1 左值引⽤…

Vulnhub靶机随笔-Hackable II

Vulnhub靶机Hackable II详解 攻击机Kali IP:192.168.1.6 靶机 IP:未知 系统:未知 A.信息收集 扫描靶机存活性 确定IP地址 1.命令:arp-scan -l 扫描靶机开放端口及其服务版本信息 2.命令:nmap -A -p- -sV 靶机IP 3.靶机开放三个端口: 21ftp端口:存在anonymous匿…

九.Spring Boot使用 ShardingSphere + MyBatis + Druid 进行分库分表

文章目录 前言一、引入依赖二、创建一个light-db_1备用数据库三、配置文件 application-dev.yml四、创建shardingsphere-config.yml完整项目结构 五、测试总结 前言 在现代化微服务架构中,随着数据量的不断增长,单一数据库已难以满足高可用性、扩展性和…

【第2章:神经网络基础与实现——2.3 多层感知机(MLP)的构建与调优技巧】

在当今科技飞速发展的时代,人工智能早已不是一个陌生的词汇,它已经渗透到我们生活的方方面面,从智能语音助手到自动驾驶汽车,从图像识别到自然语言处理。而支撑这一切的核心技术之一,就是神经网络。作为机器学习领域的璀璨明星,神经网络已经在众多任务中取得了令人瞩目的…

宠物企业宣传网站静态模板 – 前端静态页面开发实例

该宠物宣传企业站是一个基于前端技术构建的静态网站,旨在为宠物行业的企业提供一个简洁、现代的在线展示平台。整个网站采用HTML、CSS和JavaScript三种技术,确保了良好的用户体验和页面表现。 前端技术: HTML:HTML负责构建网站的…

【第4章:循环神经网络(RNN)与长短时记忆网络(LSTM)——4.2 LSTM的引入与解决长期依赖问题的方法】

在人工智能的璀璨星空中,深度学习模型犹如一颗颗耀眼的星辰,引领着技术的革新。而在处理序列数据的领域中,循环神经网络(RNN)无疑是那颗最为亮眼的星星。然而,即便是这样强大的模型,也面临着一些棘手的问题,其中最突出的便是长期依赖问题。今天,我们就来深入探讨一下长…

el-input输入框样式修改

el-input输入框样式修改 目的:蓝色边框去掉、右下角黑色去掉(可能看不清楚) 之前我试过deep不行 最有效的办法就是就是在底部添加一下css文件 代码中针对input的type为textarea,对于非textarea,只需将下面的css样式中的textarea替换成input…

日常问题-pnpm install执行没有node_modules生成

日常问题-pnpm install执行没有node_modules生成 1.问题2.解决方法 1.问题 执行pnpm i后,提示Scope: all 3 workspace projects Done in 503ms,而且没有node_modules生成。很奇怪 2.解决方法 确保根目录有 pnpm-workspace.yaml 文件: 把这…

C++-----------酒店客房管理系统

酒店客房管理系统 要求: 1.客房信息管理:包括客房的编号、类型、价格、状态等信息的录入和修改; 2.顾客信息管理:包括顾客的基本信息、预订信息等的管理; 3.客房预订:客户可以根据需要进行客房的预订,系统会自动判断客房的可用情况; 4.入住管理:客户入住…