面向基因扰动细胞响应预测的检索增强生成框架 Retrieval-Augmented Generation for Predicting Cellular Responses to Gene Perturbation
首次将检索增强生成引入单细胞扰动预测,细胞类型感知的可微检索显著提升跨细胞类型泛化能力
前置知识
Perturb-seq 单细胞扰动响应
Perturb-seq 是一类结合 CRISPR 基因扰动与单细胞 RNA 测序的高通量实验技术,能在数千个单细胞尺度上同时测量某种基因扰动(通常是单基因敲除)后的全转录组响应。每个扰动对应一个细胞群体,任务是根据对照细胞群体预测被扰动后的细胞群体分布。
本文要解决的核心预测任务就是 Perturb-seq 的单基因扰动响应,理解这一点才能读懂为什么需要建模「细胞分布」而非单一表达值。
RAG(检索增强生成)
RAG 在 NLP 中是一种将外部知识库检索结果与生成模型结合的范式:给定查询,先从语料库中检索 top-K 相关文档,再把这些文档作为上下文送入生成器。传统 RAG 使用预训练文本/图像编码器计算相似度,检索阶段通常是冻结且不可微的。
本文把 RAG 的核心思想迁移到单细胞领域,但需要回答一个关键问题:当「相关」概念没有现成定义时,RAG 是否仍有效?
Gumbel-Softmax 与 Straight-Through 估计器
Gumbel-Softmax 是一种可微的离散采样技巧:给定类别 logits $\pi = (\pi_1, \ldots, \pi_n)$,加入 Gumbel 噪声 $g_i \sim \mathrm{Gumbel}(0,1)$ 后取 softmax 得到近似 one-hot 的连续分布 $y_i = \frac{\exp((\log \pi_i + g_i)/\tau)}{\sum_j \exp((\log \pi_j + g_j)/\tau)}$。温度 $\tau$ 越接近 0 越接近离散采样。Straight-Through 技巧在前向用 hard argmax,反向用 soft 梯度,从而既能做离散决策又能反向传播。
这是 PT-RAG 第二阶段的核心组件,让模型在「选/不选某个候选扰动」的离散决策上仍可端到端优化。
GenePT 基因嵌入
GenePT 是 2023 年提出的基因基础模型,将 NCBI 基因描述文本送入 GPT-3.5 编码得到 1536 维嵌入,使基因可以通过自然语言语义计算相似度。语义相近、功能相关的基因在 GenePT 空间中距离更近。
PT-RAG 第一阶段的语义检索完全建立在 GenePT 之上,提供「扰动之间的相似性」先验。
STATE 框架与分布损失
STATE(2025)将扰动响应预测建模为序列到序列的转换问题:用冻结的 cell encoder 编码对照细胞群体、可训练的扰动编码器编码扰动身份,二者相加后送入 Transformer 生成被扰动细胞群体。训练时使用 Energy Distance 等分布距离作为损失而非逐基因 MSE,从而匹配整群细胞的分布结构。
PT-RAG 直接以 STATE 为 baseline 和主干架构,理解这一点能快速看懂图 1 的 Generation baseline 分支。
研究动机
在系统生物学和药物发现中,准确预测单细胞对基因扰动(CRISPR knock-out)的转录组响应是关键问题。现有深度学习方法如 scGen、CPA、GEARS、CellOT、STATE 已经能在已知细胞类型上学习从对照群体到扰动群体的映射,但它们存在一个根本性限制:模型生成预测时只用「对照细胞状态 + 扰动身份」,完全不利用「具有相似生物效应的其它扰动响应」。这在「跨细胞类型泛化」场景中尤其致命——当目标细胞类型只给出 30% 扰动的 few-shot 监督、其余 70% 完全未见时,模型没有任何机制借助训练集中其它细胞类型上观察到的「相关扰动响应」来推断新细胞类型下的响应。表 1 显示,简单的「无 RAG」STATE 在 1635 个跨细胞类型测试扰动上 Pearson DEG 只有 0.624,MAE 0.298,W2 距离 646.1,泛化能力明显不足。
本文的目标是本文目标是构建一个检索增强生成框架 PT-RAG,使模型在预测未见细胞类型的扰动响应时,能动态检索与目标扰动「生物功能相关」的其它扰动在训练细胞类型中的响应作为上下文,从而提升跨细胞类型预测精度。论文设定了三个可量化目标:(1)整体指标(Pearson DEG、Spearman DEG、MSE、MAE、W1、W2、Energy)相对 STATE 取得统计显著提升;(2)证明 vanilla RAG(无 Gumbel-Softmax、无细胞类型感知)在该任务上会严重失败,从而验证可微检索的必要性;(3)通过 Jaccard 相似度量化证明模型确实学到了细胞类型相关的检索模式(不同细胞类型上同一查询基因的检索结果重叠度低于 20%)。
与已有工作不同的是,本文识别出 RAG 从 NLP 迁移到单细胞领域时两个被忽视的瓶颈:第一,没有预训练扰动检索器,扰动相似度没有公认度量,one-hot 不带语义、GenePT 仅反映功能描述而非细胞效应,检索目标必须学习;第二,标准 RAG 的检索只依赖查询扰动(query-only),对所有细胞类型返回相同上下文,而同一扰动在 T 细胞、神经元、肝细胞中的下游效应可能完全不同,因此「细胞类型无关」的检索在生物学上不合理。已有生物领域 RAG 工作(GeneRAG、scRAG、E1)都把 LLM 当生成器、文本作检索对象;STATE、CellOT 等扰动预测方法则完全没有引入检索机制。PT-RAG 的独特定位是:把 RAG 拓展到「检索内容(扰动嵌入)和生成目标(细胞分布)都不是文本」的领域,并证明只有「端到端可微、同时条件化于细胞状态和扰动身份」的选择机制才能让 RAG 真正带来增益。
核心方法
直观上,PT-RAG 的核心假设是「生物功能相似的扰动会引发相似的细胞响应」。因此,给定一个目标扰动 (pert) 和对照细胞群 (xctrl),与其直接生成扰动后细胞群,不如先在训练集中找出「和 pert 最相关」的 K 个扰动,然后根据当前细胞状态挑选其中真正有用的若干个,把它们的响应特征作为额外条件送入生成器。这相当于给生成器一份「参考案例」。技术路线上,PT-RAG 用两阶段管线实现:(1)第一阶段在 GenePT 嵌入空间做余弦相似度检索,把候选池从 2009 缩减到 K=32 个扰动;(2)第二阶段用一个三层 MLP(编码 [hctrl; hpert; hcktx] 三元组)给每个候选打分,再用 Straight-Through Gumbel-Softmax 做硬性二元选择(包含/排除),实现端到端可微的、细胞类型感知的检索。整个生成器主干沿用 STATE 的 Llama Transformer,最终损失是 Energy Distance 分布损失 + $\lambda_{sparse}=0.1$ 的 L1 稀疏正则(鼓励少选而非全选)。
PT-RAG 与已有方法(包括 Vanilla RAG)最本质的区别在于「检索本身必须被学习且必须条件化于细胞状态」。具体地讲三点:其一,Vanilla RAG 使用固定的 GenePT 余弦相似度排序,对所有细胞类型给出同样的 top-K 上下文,而 PT-RAG 通过三元组 [hctrl; hpert; hcktx] 评分让选择同时依赖目标扰动和当前细胞状态,从而学出「对 K562 有用、对 Jurkat 没用」的差异化上下文;其二,Vanilla RAG 的检索完全不可微,PT-RAG 用 Straight-Through Gumbel-Softmax 让离散选择可以反向传播,于是「不帮助预测的扰动」会在训练中自动被降权;其三,PT-RAG 用 L1 稀疏惩罚避免模型退化为「全选所有候选」的平凡解(消融显示 $\lambda_{sparse}=0$ 时 Pearson DEG 跌到 0.134)。这三者合起来,使得 PT-RAG 是第一个把 RAG 真正推广到「无预训练检索器 + 检索内容非文本 + 生成目标非文本」场景的可微框架。
方法步骤详情
完整方法按以下顺序执行。第一步,构建扰动数据库 D:对训练集中全部 $|\mathcal{P}|\approx 2009$ 个扰动预先计算 GenePT 嵌入 $h_g^{pt} \in \mathbb{R}^{1536}$,存为矩阵;查询时用余弦相似度检索并剔除查询自身。第二步,编码控制细胞和扰动身份:xctrl 送入冻结的预训练 Cell Encoder(arcinstitute/SE-600M)得到 hctrl∈R^128;查询扰动 $h_g^{pt}$ 经单层可训练 MLP PertEncoder 投影到 hpert∈R^128。第三步,第一阶段语义检索:在 GenePT 空间做 top-K 余弦检索 $R_{pert} = \mathrm{TOPK}(h_g^{pt}, \mathcal{P})$,得到 K=32 个候选扰动索引 p(1)...p(K);这一步高效但不可微,作用是把候选池从 2009 缩到 32。第四步,第二阶段可微评分:对每个候选 k 构造三元组 $c_k = [h_{ctrl}; h_{pert}; h_{cxt}^k]$(其中 $h_{cxt}^k = \mathrm{PertEncoder}(h_g^{pt,p(k)})$),经过 LayerNorm 后送入两层 MLPscore 输出二元 logits $s_k \in \mathbb{R}^2$(exclude / include)。第五步,Straight-Through Gumbel-Softmax 采样:在前向传播取 hard 0/1 决策 $w_k = \mathrm{GumbelSoftmax}(s_k, \tau=0.5)[\mathrm{include}]$,反向传播使用 soft 梯度的直通估计器,使检索选择可参与端到端优化。第六步,上下文聚合:每个三元组再经 MLPproj 投影为 h'k,加权求和得到 $z = \sum_{k=1}^{K} w_k h'_k$(只保留被选中的扰动)。第七步,细胞响应生成:把 z 送入基于 Llama 的 Transformer Generator 输出扰动后细胞群体 $\hat{x}_{pert}$。第八步,训练:总损失 $\mathcal{L} = \mathcal{L}_{dist} + \lambda_{sparse} \mathcal{L}_{sparse}$,其中分布损失采用 Energy Distance,稀疏损失 $\mathcal{L}_{sparse} = \frac{1}{K} \sum_k w_k$ 鼓励少选,使用 Adam 优化器(lr=1e-3, weight decay=5e-4)训练最多 50000 步,每 2000 步验证一次。
技术新颖性
技术新颖性体现在三个层面。架构层面,本文首次将 RAG 引入单细胞扰动预测,构建了「非文本检索内容 + 非文本生成目标 + 无预训练检索器」的可微 RAG 管线,论文明确声明这是 to the best of our knowledge 的首次尝试。优化层面,作者没有直接套用 NLP 中可微 RAG 的做法(如 Gumbel-Top-K、期望效用最大化),而是针对「选择/不选一个候选」这一二元决策重新设计了 Straight-Through Gumbel-Softmax 评分器,并将 L1 稀疏惩罚作为关键组件——消融研究证明没有稀疏惩罚,模型会陷入「全选所有候选」的退化模式,性能从 Pearson 0.604 骤降到 0.134。生物学洞察层面,作者通过 Jaccard 相似度(平均仅 0.191,即 19% 重叠)和具体例子(WARS、DDRX27、MRPL39、RPS2、TPRKB)证明学到的检索模式不仅在数学上细胞类型相关,更与真实的 tRNA 合成、核糖体生物合成、细胞周期调控等通路偏好一致,这是单纯套用 NLP RAG 无法得到的结果。
实验结果
在 Replogle-Nadig 数据集跨 4 个细胞类型(K562、Jurkat、RPE1、HepG2)共 1635 个测试扰动上,PT-RAG 在 10 项指标中有 9 项取得最佳或并列最佳。核心数据:基因水平 Pearson DEG 相关从 STATE 的 0.624 提升到 0.633(pFDR=2.44e-8),Spearman DEG 从 0.403 提升到 0.412(pFDR=4.89e-10),MAE 从 0.298 降到 0.295(pFDR=9.33e-5)。最具说服力的改进在分布相似性上:W1 从 35.70 降到 35.41(pFDR=3.41e-6),W2 从 646.1 降到 633.7(pFDR=5.47e-8),Energy 距离从 9.41 降到 9.33(pFDR=0.082)。第二个关键发现是 vanilla RAG 的灾难性失败:尽管使用了与 PT-RAG 同样的 GenePT 检索和 K=32,其 Pearson DEG 仅 0.396(比 STATE 低 37%)、MAE 高达 0.429、W2 高达 1189.5(几乎翻倍)。作者进一步在 K∈{2,5,10,32} 上做消融,发现 vanilla RAG 性能随 K 提升极其有限(Pearson 从 0.293 到 0.351 仍未追上 STATE),证明失败根源不在检索池大小,而在不可微 + 细胞类型无关的设计。第三个关键发现是 Jaccard 相似度分析:对 33 个共有基因,在 4 个细胞类型上 PT-RAG 检索 top-10 的平均 Jaccard 仅为 0.185-0.196(即约 19% 重叠),强有力地证明模型确实学到了细胞类型相关的检索而非仅基于查询扰动的固定模式。具体生物学例子包括 WARS(tRNA 合成酶)在 Jurkat 选 EARS2/DARS/VARS、HepG2 选 SARS2/GART/TARS、K562 选 FARSB/KARS/FARS2、RPE1 选 KARS/GART/TARS/QARS 的差异化选择;MRPL39(线粒体核糖体蛋白)在 HepG2 中还会拉入 RPL13(胞质核糖体蛋白)反映肝细胞的高代谢需求。稀疏正则化消融显示 $\lambda_{sparse}=0$ 时模型选取 31.949/32 个扰动且 Pearson DEG 跌至 0.134,$\lambda_{sparse}\in\{0.01, 0.10, 1.00\}$ 时选取数分别为 12.5、6.6、4.9 且性能稳定,证明稀疏项是不可缺少但具体数值不敏感。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| 跨细胞类型扰动响应预测(4 细胞类型平均) | Pearson DEG(↑) | 0.633 ± 0.048 | STATE: 0.624 ± 0.048;STATE+GenePT: 0.631 ± 0.051;Vanilla RAG: 0.396 ± 0.063 | 相对 STATE +0.009(pFDR=2.44e-8),相对 Vanilla RAG +0.237(+60%) |
| 跨细胞类型扰动响应预测(4 细胞类型平均) | Spearman DEG(↑) | 0.412 ± 0.051 | STATE: 0.403 ± 0.046;STATE+GenePT: 0.411 ± 0.052;Vanilla RAG: 0.307 ± 0.041 | 相对 STATE +0.009(pFDR=4.89e-10),相对 Vanilla RAG +0.105(+34%) |
| 跨细胞类型扰动响应预测(4 细胞类型平均) | MAE(↓) | 0.295 ± 0.018 | STATE: 0.298 ± 0.020;STATE+GenePT: 0.296 ± 0.017;Vanilla RAG: 0.429 ± 0.021 | 相对 STATE -0.003(pFDR=9.33e-5),相对 Vanilla RAG -0.134(-31%) |
| 跨细胞类型扰动响应预测(4 细胞类型平均) | W1 Wasserstein(↓) | 35.41 ± 1.62 | STATE: 35.70 ± 1.76;STATE+GenePT: 35.53 ± 1.68;Vanilla RAG: 48.48 ± 1.71 | 相对 STATE -0.29(pFDR=3.41e-6),相对 STATE+GenePT -0.12(pFDR=0.082) |
| 跨细胞类型扰动响应预测(4 细胞类型平均) | W2 Wasserstein(↓) | 633.7 ± 58.4 | STATE: 646.1 ± 63.6;STATE+GenePT: 638.7 ± 60.6;Vanilla RAG: 1189.5 ± 83.3 | 相对 STATE -12.4(pFDR=5.47e-8),相对 STATE+GenePT -5.0(pFDR=0.041) |
| 跨细胞类型扰动响应预测(4 细胞类型平均) | Energy Distance(↓) | 9.33 ± 1.15 | STATE: 9.41 ± 1.18;STATE+GenePT: 9.40 ± 1.15;Vanilla RAG: 14.18 ± 1.17 | 相对 STATE -0.08(pFDR=0.082,边缘显著) |
| HepG2 单细胞类型 | W2(↓) | 631.8 ± 42.3 | STATE: 668.5;STATE+GenePT: 637.7;Vanilla RAG: 1198.5 | 相对 STATE -36.7,相对 STATE+GenePT -5.9 |
| RPE1 单细胞类型 | Pearson DEG(↑) | 0.640 ± 0.042 | STATE: 0.621;STATE+GenePT: 0.633;Vanilla RAG: 0.450 | 相对 STATE +0.019,相对 STATE+GenePT +0.007 |
局限与改进
作者明确承认的局限有两点:其一,PT-RAG 引入额外的 1.7× FLOPs/批(从 1.67B 增至 2.86B,每细胞 60M FLOPs)开销,这是 Gumbel-Softmax 打分带来的代价,需要在实际部署时权衡;其二,目前只在单基因扰动(single-gene knock-out)上验证,未涉及组合扰动、化合物处理、CRISPRa/i 等场景。从我的独立观察看,还存在三个隐含限制:(a)K=32 的检索池大小虽然作者做了 K=16/32 消融证明稳定,但没有探索更极端的 K(如 K=64、K=128),不能排除在更大候选池下检索选择机制是否仍能有效去噪;(b)实验仅在 Replogle-Nadig 单一数据集上做 4 个细胞类型评估,没有跨数据集验证(如 Norman 2019、sci-Plex 药物数据集),泛化结论是否成立仍待证明;(c)论文强调 Jaccard 0.19 的「低重叠」是学习细胞类型感知的证据,但作者也承认这仅是 suggestive 而非严格生物学验证——例如 WARS 在不同细胞类型选不同 tRNA 合成酶的解释是合理的,但仍缺少湿实验闭环验证。
独立分析的弱点
通过仔细审视方法与实验,我识别出四个值得改进的弱点。弱点一,GenePT 嵌入的「语义 ≠ 细胞效应」问题没有完全解决:GenePT 基于 NCBI 描述文本编码,对一个基因的功能描述在不同细胞类型下其实是一样的,因此第一阶段检索给出的 K=32 候选在所有细胞类型中完全相同;这意味着细胞类型感知的负担全部落在第二阶段 Gumbel-Softmax 上——如果 K=32 中没有真正适合当前细胞类型的候选,第二阶段也「巧妇难为无米之炊」。改进方向:可以引入细胞状态条件化的嵌入(如 scGPT、Geneformer 这类细胞上下文基础模型)来动态调整第一阶段检索池。弱点二,K=32 是硬编码的超参数,作者虽然做了 K=16/32 消融但都是「训练后」的回看,没有自适应机制;如果查询扰动是个相对孤立的基因(无功能近邻),K=32 候选可能质量普遍不高;如果查询扰动属于高度保守通路,可能 K=8 就够了。改进方向:可以加一个「候选质量预测器」动态决定 K,或在训练中加课程学习让模型从 K=8 渐进到 K=32。弱点三,第二阶段的 MLPscore 只用了简单的 [hctrl; hpert; hcktx] 拼接和 LayerNorm,没有利用扰动间的二阶关系(如两两候选之间的关系),可能漏掉「候选之间互补 vs 冗余」的信息。改进方向:可以引入 cross-attention 让候选之间互相通信,类似 Set Transformer 的思路。弱点四,计算开销不均衡:当前 PT-RAG 对所有扰动都做完整的两阶段检索,但实际上对 K562 这类训练充分的细胞类型,检索的边际收益可能很小;可以加入「何时跳过检索」的早退机制,对高置信度预测直接走 baseline 路径。
未来方向
作者在结论部分明确提出了三个未来方向:(1)把 PT-RAG 拓展到组合扰动(多基因同时敲除)、化学化合物扰动和 CRISPRa/i 激活/抑制场景,因为现实药物筛选和合成生物学往往涉及多模态扰动;(2)探索 GraphRAG,把基因调控网络(如 STRING、GeneMANIA 数据库)作为图结构先验融入检索,让候选扰动不仅是「语义近」还是「调控网络近」;(3)对学到的选择模式做系统化生物分析,把 PT-RAG 视为「基因功能关系发现工具」补充现有 pathway 数据库。基于本文成果可延伸的方向还包括:把 PT-RAG 的可微检索思想应用到单细胞多组学(RNA+ATAC+protein 联合预测);用更先进的离散-连续混合优化(如 REINFORCE 替代 Gumbel-Softmax)减少训练方差;以及把 19% Jaccard 重叠率本身作为下游任务——预测「某基因在两个细胞类型间检索模式的相似度」可以作为新的细胞类型相似度度量。
复现评估
复现性整体较好但有一定门槛。代码已开源在 https://github.com/difra100/PT-RAG_ICLR,包含完整的训练脚本和评估流程。数据完全公开:Replogle 原始数据来自 Replogle et al. 2022 (Cell) 和 Nadig et al. 2024 (bioRxiv),GenePT 嵌入也可公开下载,扰动数据库基于这二者交集的 2009 个扰动。预训练模型方面使用了 HuggingFace 上的 arcinstitute/SE-600M 作为冻结的 Cell Encoder,需要先下载。算力需求:单 NVIDIA A100 40GB,每个目标细胞类型训练到收敛需要 30k-40k 步,约 8-10 小时;4 个细胞类型共需约 32-40 小时 A100 时。超参数方面作者给出了完整配置(Adam, lr=1e-3, weight decay=5e-4, batch size 64, 序列长度 64 cells, K=32, τ=0.5, λsparse=0.1)。难度评估:中等偏上,主要工作量在(a)搭建 GenePT 检索流水线、Cell Encoder 嵌入和扰动数据库,(b)实现 Straight-Through Gumbel-Softmax 的反向传播(PyTorch 有现成的 torch.nn.functional.gumbel_softmax 但需注意 hard=True 的实现细节),(c)Mann-Whitney U + Benjamini-Hochberg FDR 统计检验的复现。论文明确标注 LLM 仅用于文本润色而非科学构思,降低了「方法是否真的来自 LLM」的疑虑。
论文图表
图 5 由 4 个子图组成,展示 MAE、Energy、W2 与「实际检索的扰动数量」随 λsparse 的变化。λsparse=0 时检索了 31.949/32 个扰动(接近全选),W2 高达 651.744、Energy 11.974、MAE 0.362;非零 λsparse 时检索数分别降至 12.536、6.612、4.915,W2 降至 631-635、Energy 降至 9.46-9.48、MAE 稳定在 0.305。
图 4-5 合起来完整说明:稀疏项是性能与效率的开关,且不敏感于具体数值;这是论文将 λsparse 设为 0.1 的实证依据。