当前位置: 首页 > news >正文

SSCLMD项目详细分析

SSCLMD项目详细分析

1. 项目概述

SSCLMD(Self-supervised Contrastive Learning on Attribute and Topology Graphs for Predicting Relationships Among lncRNAs, miRNAs and Diseases)是一个发表在IEEE Journal of Biomedical and Health Informatics上的项目,主要目的是预测长非编码RNA(lncRNA)、微RNA(miRNA)和疾病之间的关系。

该项目采用自监督对比学习方法,结合属性图和拓扑图的特点,为生物分子(lncRNA和miRNA)及疾病之间的关系预测提供了一种新颖的计算方法。

2. 数据集

项目使用了两个数据集(dataset1和dataset2),每个数据集包含以下数据:

  • lncRNA-疾病关联(LDA)
  • miRNA-疾病关联(MDA)
  • lncRNA-miRNA相互作用(LMI)
  • lncRNA序列数据
  • miRNA序列数据
  • 疾病语义相似性数据

数据集被保存在压缩文件中(dataset1.rar和dataset2.rar)。

3. 模型架构

SSCLMD模型的核心架构如下:

3.1 网络结构

SSCLMD模型主要由以下几个部分组成:

  1. 双图编码器

    • 结构(拓扑)图编码器
    • 特征(属性)图编码器
  2. 自监督对比学习模块

    • 正样本对与负样本对的对比
    • 判别器用于区分真实样本和生成样本
  3. 注意力机制

    • 用于聚合来自不同图的节点表示
  4. 预测解码器

    • 多关系建模解码器,用于预测分子之间的关系

3.2 关键模型组件

模型中的核心组件包括:

  • GCN层:用于图卷积神经网络的消息传递
  • Attention层:用于加权聚合不同视图的特征
  • Discriminator:用于自监督学习的判别器
  • 多层解码器:用于关系预测

4. 训练过程

模型采用了5折交叉验证进行训练,主要包括以下步骤:

  1. 数据加载和预处理
  2. 构建结构图和特征图
  3. 使用自监督对比学习进行节点表示学习
  4. 基于学习到的表示预测分子-疾病关系

训练过程中使用的损失函数包括:

  • BCEWithLogitsLoss(用于自监督对比学习)
  • BCELoss(用于关系预测任务)

5. 主要参数设置

根据不同的任务类型(LDA、MDA、LMI),模型参数有所不同:

  • 公共参数

    • 批次大小:25
    • 学习率:5e-4
    • dropout率:0.5
    • 权重衰减:5e-4
    • 训练轮数:80
  • 任务特定参数

    • LDA任务:维度512,自监督损失比率1.0
    • MDA和LMI任务:维度1024,自监督损失比率0.1

6. 模型评估

模型使用以下指标进行评估:

  • ROC曲线下面积(AUROC)
  • PR曲线下面积(AUPRC)
  • F1分数

7. 代码结构

项目代码结构清晰:

  • main.py:主程序入口
  • parms_setting.py:参数设置
  • data_preprocess.py:数据预处理
  • calculating_similarity.py:计算相似性
  • data_preparation.py:数据准备
  • layer.py:模型层定义
  • train.py:训练和测试代码
  • utils.py:工具函数

8. 环境依赖

项目依赖以下Python库:

  • numpy == 1.21.1
  • torch == 2.0.0+cu118
  • sklearn == 0.24.1
  • torch-geometric == 2.3.0

9. 项目复现步骤

  1. 下载并解压数据和代码文件
  2. 运行data_preparation.pycalculating_similarity.py获取lncRNA/miRNA/disease属性图和拓扑图的内边
  3. 运行main.py以启动模型训练和测试
    • 对于LDA任务:设置in_file为dataset1/LDA.edgelist,neg_sample为dataset1/non_LDA.edgelist,task_type为LDA
    • 对于其他任务可以相应修改参数

10. 模型原理与创新点

SSCLMD模型的主要创新点在于:

  1. 双图架构:同时利用分子的拓扑结构和属性特征
  2. 自监督对比学习:无需大量标记数据,通过对比学习捕获节点表示
  3. 注意力机制:动态聚合不同图中的节点表示
  4. 多关系建模:通过多种关系操作(加法、乘法、拼接)捕获复杂的生物分子关系

11. 建议与改进

  1. 数据扩充:可以考虑引入更多的生物信息,如蛋白质相互作用数据
  2. 模型优化:可以尝试更先进的图神经网络架构,如GAT、GraphSAGE等
  3. 可解释性增强:增加模型的可解释性,以便更好地理解预测结果
  4. 超参数优化:使用贝叶斯优化等方法自动调整超参数

12. 总结

SSCLMD项目提供了一种新颖的计算方法,用于预测lncRNA、miRNA和疾病之间的关系。通过结合图神经网络和自监督对比学习,该方法能够有效地学习生物分子的表示,并实现高精度的关系预测。该方法在生物信息学领域具有重要的实际应用价值,可以帮助研究人员发现新的生物标志物和潜在的治疗靶点。

相关文章:

  • colcon: error: unrecognized arguments: --packages-select报错
  • vs code管理员权限启动问题
  • 最新版Google浏览器加载ActiveX控件之VLC五一节特别版
  • 【Linux系统】读写锁
  • QT Sqlite数据库-教程03 插入数据-下
  • 如何修改 JAR 包中的源码
  • 设备管理系统的功能架构与核心价值
  • MATLAB程序演示与编程思路,相对导航,四个小车的形式,使用集中式扩展卡尔曼滤波(fullyCN-EKF)
  • 决 策 树
  • Marin说PCB之1000-BASE-T1的PCB设计总结--04
  • 文化符号与隐形的社会话语权力:解码布尔迪厄理论下的意识形态操控机制
  • Super-vlan
  • 第四章 Java基础-判断和循环
  • C++学习-入门到精通-【4】函数与递归入门
  • 内容社区系统开发文档
  • c++类【发展】
  • C++ 类
  • 荣耀A8互动娱乐组件部署实录(第3部分:控制端结构与房间通信协议)
  • 【Python】常用命令提示符
  • Edge浏览器PDF字体显示错误
  • 新消费观察| 零售品牌 “走出去” ,如何开辟“新蓝海”?
  • 马上评|不再提“智驾”,新能源车企回归理性
  • 售卖自制外挂交易额超百万元,一男子因提供入侵计算机系统程序被抓
  • 陕南多地供水形势严峻:有的已呼吁启用自备水井
  • 应对美政策调整:中国重在开放与创新,维护好数据主权
  • 胡祥|人工智能时代:文艺评论何为?