综述 2022-Genome Biology:“AI+癌症multi-omics”融合方法benchmark

news2024/11/26 12:48:29

Leng, Dongjin, et al. "A benchmark study of deep learning-based multi-omics data fusion methods for cancer." Genome biology 23.1 (2022): 1-32.

  • 被引次数:34
  • 作者单位

        

  • 红色高亮表示写论文中可以借鉴的地方

一、方法和数据集

1. 3个数据集:

        模拟多组学数据集、单细胞多组学数据集、癌症多组学数据集

备注:

  • The benchmark cancer multi-omics datasets were downloaded from Multi-Omic Cancer Benchmark.
  • All dataset and codes are available at the https://github.com/zhenglinyi/DL-mo [70] (DOI: A benchmark study of deep learning-based multi-omics data fusion methods for cancer(code) [71]).
  • 模拟数据集生成软件:InterSIM CRAN package [45] 。
    • [45] Chalise P, Raghavan R, Fridley BL. InterSIM: Simulation tool for multiple integrative ‘omic datasets’. Comput Methods Prog Biomed. 2016;128:69–74.
    • 该软件包可以生成复杂且相互关联的多组学数据,包括 DNA 甲基化、mRNA 基因表达和蛋白质表达数据。生成了一百个具有 1000 维特征的模拟样本。在生成过程中,100个模拟样本的簇数参数设置为5、10和15。此外,我们在两种情况下生成每个样本簇:所有簇具有相同的大小,或者簇具有可变的随机大小。这模拟了一个真实的应用场景,其中属于每个簇(子类型)的样本比例可以相同或不同。

2. 16种方法:

        有监督模型(6 个)和无监督模型(10 个)

3. 2个任务:分类和聚类

  •         分类性能评估:accuracy, F1 macro, and F1 weighted
  •         聚类性能评估:Jaccard index (JI), C-index, silhouette score, and Davies Bouldin score

4. 实验细节

  • 对于模拟数据集和单细胞数据集,分别使用六个监督模型和十个无监督模型通过分类和聚类检索真实样本。
  • 对于癌症数据集,在具有真实癌症亚型的五种癌症数据集的分类任务中评估了监督式深度学习方法。同时,在聚类任务中评估了无监督深度学习方法。此外,还评估了嵌入与生存和临床注释的关联。

Fig. 1

二、实验结果

1. 模拟数据集上结果

Fig. 2

  • 图:模拟多组学数据集的评估工作流程。 
    • a InterSIM CRAN 软件包生成了三种用作输入的组学数据。 
    • b 有监督的深度学习方法在分类任务中进行评估。这些方法的性能基于 4 倍交叉验证,并通过三个指标进行评估:accuracy, F1 macro, and F1 weighted。 
    • c 采用无监督深度学习方法融合模拟的多组学数据,首先获得 5 维、10 维和 15 维嵌入。然后使用k-means算法对多组学降维结果进行聚类。采用Jaccard index (JI), C-index, silhouette score, and Davies Bouldin score作为聚类的评价指标

(1)分类(6种监督ML方法)

(2)聚类(10种无监督ML方法)

  • 指标 JI, C-index, silhouette score, and Davies Bouldin score of the ten unsupervised methods 评估
  • ML embedding + k-means聚类 --> 聚类评估

Fig. 3

2. 单细胞数据集上结果

将多组学数据融合方法应用于单细胞多组学数据有助于系统地探索细胞的异质性

单细胞数据集由两种组学数据类型组成,即单细胞染色质可及性数据和单细胞基因表达数据。这两类组学数据的特征数量分别为 49,073 和 207,203。这两个组学数据是从三种不同的癌细胞系(HTC、Hela 和 K562)中获得的,总共 206 个细胞 [48]。

Fig. 4

  • 单细胞多组学数据集评估的工作流程。 
    • 使用两种组学数据作为输入。 
    • b 有监督的深度学习方法在分类任务中进行评估。这些方法的性能基于 4 倍交叉验证,并通过三个指标进行评估:accuracy, F1 macro, and F1 weighted
    • 首先应用无监督深度学习方法融合单细胞多组学数据,获得融合的二维嵌入。然后使用k-means算法将多组学降维结果聚类为三类。采用Jaccard index (JI), C-index, silhouette score, and Davies Bouldin score作为聚类的评价指标

(1)分类(6种监督ML方法)

(2)聚类(10种无监督ML方法)

Fig. 5

3. 癌症数据集上结果

了解癌症的分子和临床特征

癌症基因组图谱 (TCGA) 癌症多组学数据集,该数据集由三种组学数据类型组成:基因表达、DNA 甲基化和 miRNA 表达。

对于分类任务,我们从 TCGA 中收集了具有真实癌症亚型的五种不同的癌症数据集,包括乳腺癌 (BRCA)、胶质母细胞瘤 (GBM)、肉瘤 (SARC)、肺腺癌 (LUAD) 和胃癌 (STAD)。对于聚类任​​务,为了保证评估的真实性,本研究使用的数据来自基准癌症数据集(http://acgt.cs.tau.ac.il/multi_omic_benchmark /download.html) [10]。

Fig. 6

  •  癌症多组学数据集评估的工作流程。 
    • a 使用三种组学数据作为输入。 
    • b 有监督的深度学习方法在分类任务中进行评估。这些方法的性能基于 4 倍交叉验证,并通过三个指标进行评估:accuracy, F1 macro, and F1 weighted
    • c首先应用无监督深度学习方法融合癌症多组学数据,获得融合的10维嵌入。然后使用k-means算法将多组学降维结果聚类为几类。我们采用accard index (JI), C-index, silhouette score, and Davies Bouldin score作为聚类的评价指标。此外,还评估了嵌入与生存和临床注释的关联

(1)分类(6种监督ML方法)

(2)聚类(10种无监督ML方法)

Fig. 7

  • 癌症多组学数据集上十种无监督方法的 Jaccard index (JI), C-index, silhouette score, and Davies Bouldin score以及嵌入与生存和临床注释的关联。 
  •         (a) C-index
  •         (b) silhouette score
  •         (c) Davies Bouldin score
  •         根据癌症数据的聚类计算得出簇的数量设置为二到六。 k-means 聚类运行了 1000 多次。
  •         (d) 与生存有很强关联的嵌入(Bonferroni 校正的 p 值小于 0.05)。 X 轴表示与生存相关的嵌入的数量。 Y 轴代表癌症,每种癌症都分配有一种颜色。
  •         (e) 十种无监督方法针对十种不同癌症类型的选择性得分。高于平均分(0.49)则显示分数,选择性分数越高,橙色块越亮

(3)embedding 与生存和临床注释的关联

Fig. 8

癌症子基准的图形摘要。 a 测试嵌入与生存之间的关联的详细信息。 b测试嵌入与临床注释关联的详细信息

三、讨论

Fig. 9

本研究中以平均统一分数为基准的基于深度学习的多组学数据融合方法。 a 监督模型在三个不同数据集中的统一性能。 b 无监督模型在三个不同数据集中的统一性能。我们以各个场景的统一最高分作为参考(标记为100%)来计算百分比

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

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

相关文章

【数学建模】《实战数学建模:例题与讲解》第八讲-回归分析(含Matlab代码)

【数学建模】《实战数学建模:例题与讲解》第八讲-回归分析(含Matlab代码) 回归分析基本概念经典多元线性回归(MLR)主成分回归(PCR)偏最小二乘回归(PLS)建模过程应用和优势…

Vue3中的defineModel

目录 一、vue3的defineModel介绍 二、defineModel使用 (1)在vite.config.js中开启 (2)子组件 (3)父组件 一、vue3的defineModel介绍 为什么要使用到defineModel呢?这里有这样一种场景&…

面向对象类的设计和实现

实验目标 本实验任务是实现 Java 类的设计和实现,实验任务是根据每年新生的报到流程, 设计一 个学生管理系统,实现学生的注册和报到功能。设置类的基本属性,实现 getter 和 setter 方 法,通过 set 方法设置…

【第三届】:“玄铁杯”RISC-V应用创新大赛(基于yolov5和OpenCv算法 — 智能警戒哨兵)

文章目录 前言 一、智能警戒哨兵是什么? 二、方案流程图 三、硬件方案 四、软件方案 五、演示视频链接 总结 前言 最近参加了第三届“玄铁杯”RISC-V应用创新大赛,我的创意题目是基于 yolov5和OpenCv算法 — 智能警戒哨兵 先介绍一下比赛&#xf…

FFmpeg抽取视频h264数据重定向

根据视频重定向技术解析中的 截获解码视频流的思路,首先需要解决如何输出视频码流的问题。 目前只针对h264码流进行获取,步骤如下: 打开mp4文件并创建一个空文件用于存储H264数据 提取一路视频流资源 循环读取流中所有的包(AVPacket),为…

pytorch中的归一化:BatchNorm、LayerNorm 和 GroupNorm

1 归一化概述 训练深度神经网络是一项具有挑战性的任务。 多年来,研究人员提出了不同的方法来加速和稳定学习过程。 归一化是一种被证明在这方面非常有效的技术。 1.1 为什么要归一化 数据的归一化操作是数据处理的一项基础性工作,在一些实际问题中&am…

【c++随笔16】reserve之后,使用std::copy会崩溃?

【c随笔16】reserve之后,使用std::copy会崩溃? 一、reserve之后,使用std::copy会崩溃?二、函数std::reserve、std::resize、std::copy1、std::resize:2、std::reserve:3、std::copy: 三、崩溃原因分析方案1、你可以使…

【概率方法】重要性采样

从一个极简分布出发 假设我们有一个关于随机变量 X X X 的函数 f ( X ) f(X) f(X),满足如下分布 p ( X ) p(X) p(X)0.90.1 f ( X ) f(X) f(X)0.10.9 如果我们要对 f ( X ) f(X) f(X) 的期望 E p [ f ( X ) ] \mathbb{E}_p[f(X)] Ep​[f(X)] 进行估计&#xff0…

极速学习SSM之SpringMVC笔记

文章目录 一、SpringMVC简介1、什么是MVC2、什么是SpringMVC3、SpringMVC的特点 二、HelloWorld1、开发环境2、创建maven工程a>添加web模块b>打包方式:warc>引入依赖 3、配置web.xmla>默认配置方式b>扩展配置方式 4、创建请求控制器5、创建springMVC…

ansible中的角色

1.理解roles在企业中的定位及写法 查看创建目录结构 ansible - galaxy list 指定新的位置 vim ansible.cfg roles_path ~/.ansible/roles 建立项目 cd roles/ ansible-galaxy init vsftpd tree vsftpd/ 编辑任务执行(顺序)文件 vim vsftpd/tas…

selenium库的使用

来都来了给我点个赞收藏一下再走呗🌹🌹🌹🌹🌹 目录 一、下载需要用到的python库selenium 二、selenium的基本使用 1.在python代码引入库 2.打开浏览器 3.元素定位 1)通过id定位 2)通过标…

Go开发运维:Go服务发布到K8S集群

目录 一、实验 1.Go服务发布到k8s集群 二、问题 1.如何从Harbor拉取镜像 一、实验 1.Go服务发布到k8s集群 (1)linux机器安装go(基于CentOS 7系统) yum install go -y (2)查看版本 go version (3)创…

UE引擎 LandscapeGrass 实现机制分析(UE5.2)

前言 随着电脑和手机硬件性能越来越高,游戏越来越追求大世界,而大世界非常核心的一环是植被,目前UE5引擎提供给植被生成的主流两种方式为 手刷植被和LandscapeGrass(WeightMap程序化植被)。当然UE5.3推出新一代PCGFramework 节点程序化生成框…

办公word-从不是第一页添加页码

总结 实际需要注意的是,分隔符、分节符和分页符并不是一个含义 分隔符包含其他两个;分页符:是增加一页;分节符:指将文档分为几部分。 从不是第一页插入页码1步骤 1,插入默认页码 自己可以测试时通过**…

一文掌握Ascend C孪生调试

1 What,什么是孪生调试 Ascend C提供孪生调试方法,即CPU域模拟NPU域的行为,相同的算子代码可以在CPU域调试精度,NPU域调试性能。孪生调试的整体方案如下:开发者通过调用Ascend C类库编写Ascend C算子kernel侧源码&am…

784. 字母大小写全排列

字母大小写全排列 描述 : 给定一个字符串 s ,通过将字符串 s 中的每个字母转变大小写,我们可以获得一个新的字符串。 返回 所有可能得到的字符串集合 。以 任意顺序 返回输出。 题目 : LeetCode 784.字母大小写全排列 : 784. 字母大小写全排列 分析…

JavaScript常用技巧专题二

文章目录 一、前言二、生成随机字符串三、转义HTML特殊字符四、单词首字母大写五、将字符串转换为小驼峰六、删除数组中的重复值七、移除数组中的假值八、获取两个数字之间的随机数九、将数字截断到固定的小数点十、日期10.1、计算两个日期之间天数10.2、从日期中获取是一年中的…

fd信息查看

一、/proc/pid/fdinfo和/proc/pid/fd的含义 二、实例 ref: linux下的/proc/pid/fdinfo和/proc/pid/fd_proc/417/fdinfo/0-CSDN博客 linux select read阻塞_图解Linux的IO模型和相关技术-CSDN博客

实现加盐加密方法以及java nio中基于MappedByteBuffer操作大文件

自己实现 传统MD5可通过彩虹表暴力破解, 加盐加密算法是一种常用的密码保护方法,它将一个随机字符串(盐)添加到原始密码中,然后再进行加密处理。 1. 每次调用方法产生一个唯一盐值(UUID )密码…

生产问题: 利用线程Thread预加载数据缓存,其它类全局变量获取缓存偶发加载不到

生产问题: 利用线程Thread预加载数据缓存偶发加载不到 先上代码 public class ThreadTest {//本地缓存Map<String, Object> map new HashMap<String, Object>();class ThreadA implements Runnable{Overridepublic void run() {System.out.println("Thread…