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

SCimilarity:对人类相似细胞进行可扩展搜索的细胞图谱基础模型

到目前为止,单细胞RNA测序已经对跨越不同器官、疾病、发育阶段和干扰条件的数亿个人类细胞进行了分析表征。挖掘这些不断增长的细胞图谱数据,可能会揭示细胞与疾病之间的关联,并将体内生物学与体外模型联系起来。而这些都需要一种衡量细胞相似性的通用方法,以及一种高效的搜索方式。SCimilarity 是一个度量学习框架,用于学习一种统一且可解释的表征,能够针对转录特征与输入细胞图谱或状态相似的细胞,从各种研究中的数千万个细胞图谱中进行快速查询。利用SCimilarity对由412项单细胞RNA测序研究组成的、包含2340万个细胞的细胞图谱进行查询,以寻找间质性肺疾病中巨噬细胞和成纤维细胞的图谱,并揭示了其他纤维化疾病和组织中与之相似的细胞图谱。对于巨噬细胞查询,得分最高的体外模型是一种三维水凝胶系统,实验证明该系统能够重现这种细胞状态(搜索到体外模型:SCimilarity被用于识别类似于体内FMΦ状态的体外细胞培养,为在受控环境中开发和研究疾病模型铺平了道路)。SCimilarity可作为单细胞图谱的基础模型,使研究人员能够查询人体中相似的细胞状态,为从人类细胞图谱中获取生物学见解提供了一个强大的工具。

来自:A cell atlas foundation model for scalable search of similar human cells,Nature,2024

目录

  • 背景概述
  • scRNA-seq上的相似性度量
    • 模型设计
    • 在大规模多样化图谱上训练
    • 损失函数对搜索的敏感性

背景概述

到目前为止,在体内平衡、疾病以及实验干扰条件下,已经利用单细胞(scRNA-seq)或单细胞核(snRNA-seq)RNA测序对超过1亿个单细胞进行了分析表征。通过比较来自数百项研究的细胞图谱,研究人员能够将不同发育阶段、组织或疾病中的细胞状态联系起来,或者将人体与体外实验室模型中的细胞状态联系起来。尽管前景广阔且数据增长迅速,但目前的模型并非为在大规模数据集中搜索相似的细胞图谱而设计,而且跨数据集、全局分析受到数据集管理和整合方面的挑战、难以在不同数据集之间定义通用的低维表征、缺乏比较细胞图谱的原则性指标以及没有搜索完整细胞图谱的方法等因素的阻碍。因此,大多数数据整合工作的范围都受到限制。

为了充分利用和查询大规模且丰富的单细胞图谱,我们需要:

  • (1)一种表征细胞状态的基础模型,该模型能够对单细胞图谱进行有效的表征,且无需重新训练就能在各种应用中使用;
  • (2)一种衡量细胞相似性的方法,这种方法要对技术噪声具有较强的鲁棒性,能够扩展应用到数亿个细胞,并且能够推广到训练过程中未观察到的数据集和细胞状态。

无监督方法,如主成分分析或自动编码器,能够忠实地保留来自输入数据的信息,但无法学习对细胞进行编码的通用特征,以及查询新数据集时所需的细胞间相似性。相反,其他机器学习方法,尤其是在图像处理领域的方法,已经成功地学习到了不同实体的表征以及它们之间的相似性。特别是用于人脸识别的度量学习模型,经过训练可以将图像嵌入到一个低维空间中,在这个空间里,同一个人的图像比不同人的图像距离更近。用户可以使用未包含在训练集中的图像来查询经过训练的模型,以找到在嵌入空间中与之相近且描绘同一个人的其他图像。类似地,度量学习可以通过使用经过注释的单细胞/单细胞核RNA测序数据训练模型,学习一种低维表征,使相似的细胞图谱彼此靠近,不相似的细胞图谱彼此远离,从而为细胞间的相似性提供一个有意义的度量标准。如果从足够多样化的细胞图谱中进行学习,这样的表征应该能够提供一个细胞的基础模型,从而可以高效地搜索具有相似表达状态的细胞(图1a)。

SCimilarity,一种深度度量学习基础模型,它可以量化单细胞图谱之间的相似性,并提供一个单细胞参考标准,以便针对不同组织和疾病中可对比的细胞状态进行查询。通过使用间质性肺疾病(ILD)中巨噬细胞和成纤维细胞亚群的查询图谱,对包含2340万个细胞的已学习参考数据进行搜索,以此展示了SCimilarity的强大功能,这表明了SCimilarity如何为跨器官、系统和条件的可扩展细胞搜索提供了一个强大的框架,从而能够从人类细胞图谱中得出生物学见解,并产生可供实验验证的假设
fig1

  • 图1a. 使用SCimilarity进行细胞查询。左侧,将一个查询细胞与一个可搜索的(searchable)参考基础模型进行比较,该参考基础模型包含来自412项研究的2340万个细胞。中间,识别出含有相似细胞的样本,并返回有关原始样本条件的信息,包括组织、体外环境或疾病背景等信息。右侧,计算查询细胞与组织样本内每个细胞之间的SCimilarity分数。
  • 图1b. 三元组损失训练。左侧,使用来自全身各处、带有细胞本体注释的56个训练数据集和15个测试数据集作为输入。中间,对细胞三元组进行采样,每个三元组由一个锚定细胞(A)、一个正样本细胞(P,与锚定细胞相似)和一个负样本细胞(N,与锚定细胞不相似)组成,这是基于细胞本体注释来确定的。只允许存在明确无误的关系。右侧,利用这些三元组来训练一个神经网络,该网络将相似的细胞嵌入得比不相似的细胞更近,从而形成一个基础模型。Treg指调节性T细胞。损失函数是通过一个细胞三元组、一个重建的锚定细胞图谱(Â)以及一个加权参数(β)来计算的,以平衡三元组损失(Ltriplet)和均方误差损失(LMSE)。

scRNA-seq上的相似性度量

SCimilarity通过同时优化两个目标,将无监督表征学习和有监督度量学习相结合:

  • (1)一个有监督的三元组损失函数,该函数用于将来自匹配细胞类型的表达图谱嵌入到相近的位置,从而整合不同研究中相同类型的细胞;
  • (2)一个无监督的均方误差(MSE)重建损失函数,该函数促使模型保留输入表达图谱中的变异信息,捕捉相同类型细胞内表达模式中更细微的差异。增加重建损失的相对权重可以提高查询性能,而增加三元组损失的相对权重则可以提高数据集整合指标方面的性能。重点关注(β = 0.001)模型,该模型能最佳地结合查询灵敏度和整合性能。

使用从带有作者根据细胞本体提供的标准化细胞类型注释的数据中采样得到的数千万个细胞三元组来训练SCimilarity(图1b)。每个三元组由一个锚定细胞、一个正样本细胞和一个负样本细胞组成:锚定细胞和正样本细胞是来自不同研究的相似细胞(即相同的细胞类型),而锚定细胞和负样本细胞则是不相似的细胞(即不同的细胞类型,可以来自相同或不同的研究)。即使使用了标准化的细胞本体术语,由于注释粒度的差异,一些细胞类型的比较仍然存在模糊性(例如,在一项研究中注释为 “T细胞” 而在另一项研究中注释为 “CD4+ T细胞” 的细胞,它们是相似还是不相似并不明确)。因此,SCimilarity会排除在细胞本体中具有垂直的、祖先-后代关系的正样本和负样本标签的三元组,并且只从明确相似或明确不相似的细胞中进行学习(图1b)。这就无需手动将每个细胞类型注释进行扁平化处理或统一化,并且可以无缝地扩展跨研究的训练集。

模型设计

SCimilarity模型由一个全连接编码器和一个解码器阶段组成,在每次训练三元组时,会三次复用同一个编码网络,这样在每一批训练后对模型的更新,会平均应用于后续的每一批训练三元组。解码器阶段并非传统三元组损失架构的一部分,但其被纳入其中是为了计算均方误差(MSE)重建损失。

表达谱通过一个编码器网络进行降维处理,从最初的28231个基因开始,经过四个隐藏层,其维度分别为1024、1024、1024和128。128维的输出会进行单位长度归一化处理,这使得所有低维的细胞表征都位于超球面的表面。在训练过程中,输入层会进行40%的随机失活(dropout)处理,即随机将许多基因表达值清零,并且每个隐藏层的随机失活率为50%,以实现最大程度的正则化。

虽然超球面空间很少被用于单细胞图谱的表征,但三元组损失模型常常使用超球面嵌入,以确保模型超参数之间的一致性。在三元组损失训练过程中,目标是将不同类型的细胞放置得足够远。不同类型细胞之间所需的最小距离被称为边界值(margin)。通过将嵌入空间的体积固定为单位长度的128维超球面的表面,边界值在每次模型运行时都能得到一致的解释。如果不进行归一化处理,细胞之间的距离可能会达到无穷远,这样边界值就失去了意义。

在大规模多样化图谱上训练

为了测试SCimilarity框架,作者整合了人类生物学领域的单细胞/单细胞核RNA测序(sc/snRNA-seq)数据集。重点关注使用一种实验平台(10x Genomics Chromium基于液滴的单细胞/单细胞核RNA测序)生成的研究数据,这些数据大多来自基因表达数据库(GEO)或CELLxGENE数据库。这些数据是通过相似的文库制备方案和计算预处理流程生成的。

  • 尽管 SCimilarity 仅在 10x Genomics Chromium 平台的数据上进行训练,但它能有效地推广应用于其他单细胞分析表征平台。

截至2021年3月23日,有753个数据集符合标准。在2018年12月至2021年3月期间,符合标准的样本和细胞数量每6个月至少翻一番。通过编程从333项研究中下载了13,401,599个细胞,以及它们各自的GEO元数据和未标准化的基因计数矩阵,并手动纳入了另外66项来自CELLxGENE或其他大型研究及合作项目的研究,从而形成了一个包含412项研究的语料库,该语料库由来自5142个组织样本的23,381,150个细胞组成,涵盖184个唯一的组织本体术语和132个疾病本体术语(图2)。

作者使用来自56项研究(46项单细胞RNA测序研究和10项单细胞核RNA测序研究)的7886247个单细胞组成的训练集来训练SCimilarity模型,这些研究包含203个由作者根据细胞本体进行注释的术语(每个术语至少在两个数据集中出现)。作者对5000万个最具信息性的细胞三元组进行了采样,并根据研究和细胞类型进行加权(以缓解数据集规模不均衡的问题),要求每个三元组中的锚定细胞和正样本细胞来自两项不同的研究,并使用困难三元组挖掘方法,这样在更新模型梯度时,仅使用最具信息性的三元组。细胞本体注释仅在训练时需要,但在新数据集上使用已训练的SCimilarity模型时,既不需要用户标注标签,也不需要进行微调。

为了进行评估,作者从训练集中留出了15项验证研究(13项单细胞RNA测序研究和2项单细胞核RNA测序研究),这些研究包含1415962个带有细胞本体注释的细胞(图2)。作者从训练集和测试集中排除了对肿瘤、细胞系或诱导多能干细胞衍生细胞进行分析表征的样本,因为这些样本的细胞身份可能不明确。

fig2

  • 图2a. 一个涵盖不同组织和疾病的大规模公开基因表达数据集参考数据库。图中展示了训练集(金色)、测试集(粉色)或未注释数据集(紫色)中,各个研究(最内层圆圈)里不同组织(最外层浅蓝色圆圈)和疾病状态(中间绿色圆圈)的细胞数量(圆圈大小)。SLE代表系统性红斑狼疮;RA代表类风湿关节炎;NAFLD代表非酒精性脂肪性肝病;MS代表多发性硬化症;LCH代表朗格汉斯细胞组织细胞增多症;LAM代表淋巴管平滑肌瘤病;IBD代表炎症性肠病。
  • 图2b. 将SCimilarity与已有的数据整合模型进行基准测试对比。图中展示了针对不同整合方法和SCimilarity(彩色条形图)的本体感知调整兰德指数(研究调整兰德指数,y轴,左上角)、归一化互信息(研究归一化互信息,y轴,上中位置)、批次轮廓系数(y轴,右上角)、细胞类型轮廓系数(y轴,左下角)以及图连通性(y轴,右下角),每种方法都应用于整合两个肾脏数据集、两个肺部数据集、两个外周血单个核细胞(PBMC)数据集以及所有15个留出的(测试)数据集(x轴)。
  • 图2c. SCimilarity能够推广应用于新的数据集,并标记出不同组织和条件下的异常细胞。图中展示了在来自不同疾病(y轴,上方)或健康组织(y轴,下方标注)的每项研究(点)中,与训练数据相似度低(SCimilarity分数<50)的细胞比例(x轴)。

损失函数对搜索的敏感性

对SCimilarity目标函数的18种不同参数组合进行测试,通过改变边界值(α)以及重建损失函数和三元组损失函数的相对权重(β)后发现,这两个损失函数分量会导致模型呈现出不同的行为。利用15项验证研究,评估了模型搜索与输入图谱(查询)相似细胞的能力,以及在低维空间中对不同研究中的相似细胞进行混合(整合)的能力。作者认为,一个良好的相似性度量标准应该既能实现对相似细胞的搜索,又能将不同研究中的相似细胞归为一组。

为了评估查询性能,作者将使用SCimilarity进行的搜索与基因特征评分进行了比较,目标是使这两个量之间具有更高的相关性(不过,细胞查询并不依赖于预定义的特征或注释)。为了在无需统一细胞类型注释的情况下评估跨数据集的整合效果,作者应用了几个基准测试:一种本体感知的平均轮廓宽度(ASW)变体,以及已有的归一化互信息(NMI)、调整兰德指数(ARI)和图连通性基准测试,这些测试用于衡量每个聚类中研究混合的程度。

在查询方面,与现有的基础模型相比,SCimilarity的度量学习架构在潜在空间中更忠实地编码了细胞的相似性。与之前的基础模型(scFoundation的斯皮尔曼相关系数ρ = 0.54,scGPT的ρ = 0.59)相比,SCimilarity对与查询细胞状态相似性的预测与检索基因特征评分的匹配度要高得多(斯皮尔曼相关系数ρ = 0.77)。

在整合方面,将SCimilarity的预训练表征与Harmony、scVI、scanorama和scArches在两个肾脏数据集、两个外周血单个核细胞(PBMC)数据集、两个肺部数据集以及所有15个留出的数据集上进行了比较(图2b),值得注意的是,SCimilarity的整合只是简单地将细胞嵌入到公共空间中,而无需从数据中学习整合方法或进行微调。

因此,SCimilarity的损失函数将忠实的细胞表征(查询)与样本混合(整合)分离开来,并学习能够捕捉有意义生物学信息、减少技术噪声且能推广应用到训练集之外数据的特征。

相关文章:

  • 软件反模式全解手册(26种核心模式详解)
  • 【AI提示词】决策专家
  • reid查找余弦相似度计算修正(二)
  • python-64-前后端分离之图书管理系统的Vue前端
  • 面向对象(OOP)
  • 跨浏览器 Tab 通信工具-emit/on 风格 API(仿 mitt)
  • 【Unity】Unity Transform缩放控制教程:实现3D模型缩放交互,支持按钮/鼠标/手势操作
  • Python 快速搭建一个小型的小行星轨道预测模型 Demo
  • 裴蜀定理扩展欧几里得定理
  • ssh密钥连接远程服务器并用scp传输文件
  • QAI AppBuilder 快速上手(8): 图像修复应用实例2
  • 网络带宽测速工具选择指南iperf3 nttcp tcpburn jperf使用详解
  • Vue 3 的<Teleport>功能与用法
  • 代码随想录算法训练营第十二天
  • 【ES系列】Elasticsearch从入门到精通保姆级教程 | 启篇
  • Java9新特性
  • Python 并发编程指南:协程 vs 多线程及其他模型比较
  • SpringBoot集成RedisSearch
  • 深度学习|注意力机制
  • 【Java中级】11章、注解、元注解介绍、快速入门,了解java注解的基本使用方式【2】