单细胞组学大模型(8)--- scGenePT,scGPT和GenePT的结合,实验数据和文本数据的交融模型

ops/2025/1/15 20:19:26/


–https://doi.org/10.1101/2024.10.23.619972

研究团队和单位

Theofanis Karaletsos–Head Of AI - Science at Chan Zuckerberg Initiative

(Chan Zuckerberg Initiative是扎克伯格和他妻子Chan成立的科研&教育机构)

研究简介

研究背景:


–https://doi.org/10.1038/s41551-024-01284-6

GenePT模型中已经证明使用基因的文本信息(NCBI gene数据库中对基因的描述),可以执行细胞聚类、基因调控网络和疾病状态预测的生物学任务,但并没有做对基因扰动预测的任务。

所以,scGenePT模型是把基因文本数据和单细胞测序数据结合起来,实现更好的基因扰动预测的任务。基因文本信息包含:NCBI基因card的描述、Uniport数据库的蛋白描述、基因功能注释。

这一切都是基于已有的大语言模型(chatGPT、Gemini、Deepseek等),能够理解基因的文本所代表的含义,理解基因的功能差异和表达模式,进而能够为实验数据比如scRNA-seq提供额外的信息。

研究目的

基因扰动预测的任务通常从两个角度来解决:要么是基础模型,在预训练期间大规模地从数据中学习表示,然后针对扰动预测作为下游任务进行微调(例如 scGPT);要么是专门的模型,从较小规模、更精选的数据中学习,并将特定的任务相关结构化信息直接嵌入到模型架构中(例如 GEARS)。

文章研究目的是想证明:

  • (1) 能否构建足够强大的模型来学习特定于专门任务的结构化生物学信息,而无需将其硬编码到模型架构中?
  • (2) 使用语言文本来补充实验数据的多模态方法能否帮助我们实现这一目标?
  • (3) 精选放入模型中的知识是否会产生重大影响?

因此作者采用了一个仅在 scRNA-seq count上训练的预训练基础模型 scGPT,并在基因水平上将语言注入到模型架构中。每个基因都通过 LLM embedding获得文本表示,该embedding聚合了来自各种先验知识的基因信息。

研究结果

  • (1) 在单细胞扰动建模中,GO信息为生物学学习的基因表示提供了附加的和互补的价值。
  • (2) 文本基因表示不如生物学学习的基因表示强大,但提供了有用的信息。
  • (3) 不同类型的文本知识提供不同类型的先验信息。在测试的数据集中,GO 注释在单基因扰动中帮助最大,而 NCBI 蛋白质描述为基因相互作用的扰动效应建模提供了更好的帮助。
  • (4) 通过仔细地管理我们引入到 scGPT 转录组基础模型中的辅助语言编码数据,我们可以达到甚至有时超过将结构化信息明确地硬编码到模型架构中的定制模型的性能。

1.方法

1.1 扰动模型的概念

扰动有很多种类型——遗传扰动(例如 CRISPR)、化学扰动(例如药物治疗)、环境扰动、感染(例如病毒)、自然等位基因变异(例如基因突变)。

在基于转录组学的模型中,更多是关注于遗传扰动,对基因进行敲除(降低基因表达值或表达值弄成0)。怎么理解这个扰动模型的过程呢:

  • 1.扰动模型实际上是对预训练好的模型进行微调。预训练模型是在完整基因表达下进行训练的,已经学到了基因之间的关系,不同基因表达值的分布对其它基因的影响。
  • 2.扰动就是把基因的表达值mask掉,或者做扰动token把需要扰动的基因标记上,把扰动token做成embedding,在把数据输入到模型之前,和原本预训练模型的输入进行矩阵运算(一般是加和)。
  • 3.让模型进行计算,预测扰动后的基因表达矩阵。
  • 4.最后统计哪些基因在扰动后表达值变化很大,则该基因和扰动基因有很强的关联性。


正如scGPT模型中的condition token,它等于扰动token。

1.2 原本的scGPT模型输入:

基因扰动表示如下:如果要扰动该基因,则标签为0,如果不扰动则为1(扰动的基因是自定义的),一般一次只扰动1到2个基因。

scGPT的输入是由3部分组成:基因token的embedding、基因表达值的embedding和基因扰动embedding:

这样一个细胞 t t t 的embedding就是:

然后把细胞embedding输入到scGPT的transformer架构中进行扰动后基因表达值的预测:

对应图中scGenePT的部分为:

1.3 基因文本数据示例

NCBI对基因的描述:

NCBI对基因的描述+UniProtKB对蛋白的描述:

Gene Ontology包含基因分子功能描述、分子组成描述和生物学过程描述:

1.4 融入基因文本embedding示例:

现在是4种基因的embedding进行加和,加和后构架成细胞embedding输入到scGPT原本的模型当中。

文本的embedding用GPT-3.5-text-embedding-ada-002模型生成。

最后的基因embedding是:

然后输入到scGPT的模型中:

1.5 scGenePT模型架构


综合上面所描述的,scGenePT模型的架构由scGPT和GenePT组合而成。

1.6 模型训练

模型是在GPU H100上基于scGPT进行微调的,训练数据为全人类基因组数据集。每个实验均运行了5次,每次使用不同的随机种子。

模型大部分超参数与scGPT保持一致。

在训练过程中,每个对照样本(即未经扰动的样本)会与一个扰动(湿实验测量结果)及其对应的模型扰动(即扰动后的基因表达数据)配对。前者是为“真实值”,后者是预测值。模型的目标是学习如何从对照样本和扰动信息中预测扰动后的基因表达数据。

对于每个对照/扰动对,研究随机抽取n=1536个基因,并通过最小化所有采样基因的真实值与预测扰动响应之间的均方误差(MSE)来进行训练,最后选择在验证数据上MSE损失最低的模型作为最佳模型。

在这里插入图片描述


http://www.ppmy.cn/ops/150378.html

相关文章

SQL刷题快速入门(二)

其他章节:SQL刷题快速入门(一) 承接上一章节,本章主要讲SQL的运算符、聚合函数、SQL保留小数的几种方式三个部分 运算符 SQL 支持多种运算符,用于执行各种操作,如算术运算、比较、赋值、逻辑运算等。以下…

2025最新JAVA面试八股文【基础篇】

1、面向对象和面向过程的区别 2、标识符的命名规则 3、Java自动装箱与拆箱 4、 方法重载和方法重写的区别 5、 equals与 的区别 6、 Hashcode的作用 7、 String、StringBuffer 和 StringBuilder 的区别是什么? 8、ArrayList和linkedList的区别 9、 HashMap和HashTabl…

Wireshark抓包教程(2024最新版个人笔记)

改内容是个人的学习笔记 Wireshark抓包教程(2024最新版)_哔哩哔哩_bilibili 该课程笔记1-16 wireshark基础 什么是抓包工具:用来抓取数据包的一个软件 wireshark的功能:用来网络故障排查;用来学习网络技术 wireshark下…

基于Springboot + vue实现的购物推荐网站

🥂(❁◡❁)您的点赞👍➕评论📝➕收藏⭐是作者创作的最大动力🤞 💖📕🎉🔥 支持我:点赞👍收藏⭐️留言📝欢迎留言讨论 🔥🔥&…

linux运行程序和批处理详解

在 Linux 中,运行程序和执行批处理任务是非常常见的操作。Linux 提供了多种方法来执行程序,包括通过命令行直接运行、使用脚本自动化任务、以及通过批处理机制执行多个命令。以下是关于如何运行程序和批处理任务的详细说明。 1. 运行程序 1.1 直接运行…

C#版 软件开发6大原则与23种设计模式

开发原则和设计模式一直是软件开发中的圣经, 但是这仅仅适用于中大型的项目开发, 在小型项目的开发中, 这些规则会降低你的开发效率, 使你的工程变得繁杂. 所以只有适合你的才是最好的. 设计模式六大原则1. 单一职责原则(Single Responsibility Principle&#xff0…

【网络云SRE运维开发】2025第2周-每日【2025/01/10】小测-【第10章 ACL理论和实操考试】

文章目录 选择题(10个)理论题(5个)实操题(1个) 【网络云SRE运维开发】2025第2周-每日【2025/01/10】小测-【第10章 ACL理论和实操考试】 以下是以华为交换机和路由器为例的ACL访问控制列表理论实操考试和面…

【IPy模块01】Python运维模块之IP 地址、网段的基本处理

实用的IP地址处理模块IPy IP地址规划是网络设计中非常重要的一个环节,规划的好坏会直接影响路由协议算法的效率,包括网络性能、可扩展性等方面,在这个过程当中,免不了要计算大量的IP地址,包括网段、网络掩码、广播地址…