Contrastive Learning: 细胞界的"找不同"游戏:对比学习如何让AI在数十亿个细胞中自学成才
Contrastive learning approaches in single-cell models.
Overview
WeChat科普推文 第15期 · 2026-05-20
话题: 对比学习、自监督预训练
1990 年,心理学家 Eleanor Gibson 设计了一个著名的实验:她把刚会爬的婴儿放在一块玻璃板上,玻璃板下方一半是棋盘格图案的"浅滩",另一半则是模拟的"视觉悬崖"。婴儿们毫不犹豫地避开了悬崖的一边——尽管没有人教过他们"悬崖意味着危险",他们只是通过对比两种视觉深度线索,自学了世界的三维结构。
三十多年后,这个古老的智慧在人工智能领域焕发出惊人的生命力。2023 年,当一群计算生物学家试图让 AI 从数千万个单细胞的基因表达数据中"自学成才"时,他们发现了一个优雅的解决方案:与其费尽心思给每个细胞贴标签,不如让 AI 自己玩一个大规模的"找相似"游戏。这个游戏的名字,叫做对比学习(contrastive learning)。
一、为什么单细胞数据是 AI 的噩梦?
要理解对比学习的革命性,我们得先弄清楚它要解决的问题有多棘手。
想象你走进一座图书馆,里面藏着一亿本书。每本书大约有两万个"单词"(基因),但这些单词的排列顺序被彻底打乱了——它们不像自然语言那样按句子、段落、章节编排,而更像是一个词语的"购物袋",只知道每个词出现了多少次,却不知道谁挨着谁。更糟的是,这些书是用三百种不同的印刷机印出来的:墨水浓淡不一,纸张质地参差,甚至同一本书的不同印次看起来也判若两册。而你的任务是:"请找出哪些是医学教科书、哪些是小说、哪些来自同一个作者。"不许看封面,不许读目录。
这正是单细胞 RNA 测序(scRNA-seq)数据的真实处境。每个细胞被检测到约 2000 到 5000 个基因的表达值,但这些基因没有天然"顺序"。不同实验室、不同测序平台产生的数据存在系统性偏差——学界称之为批次效应(batch effect)——让同一类细胞在不同数据集里看起来截然不同。传统生物信息学对此的应对堪称一套"手工作坊":先做数据标准化,再跑批次校正算法(如 Harmony、Seurat 的 CCA),然后降维聚类,最后靠专家查阅文献、比对 marker 基因来手动注释细胞类型。每一个新数据集,几乎都要把这条流水线重走一遍。
这就引出了一个关键问题:有没有一种方法,能让 AI 直接从海量无标签的细胞数据中,学习到细胞的"本质特征",而不依赖任何人工标注?
答案是:有。它来自一个看似毫不相干的领域——自监督学习中的对比学习。
二、"找相似":一个三岁小孩都能懂的思想实验
在进入技术细节之前,让我们用一个生活场景建立直觉。
假设你从未见过猫和狗。我给你看 100 张动物照片,但我不告诉你哪只是猫、哪只是狗。我只告诉你一条规则:"同一只动物的不同照片应该彼此相似,不同动物的照片应该彼此远离。"
你开始观察。第一张照片里有一只毛茸茸的、尖耳朵的动物。换一个角度拍的第二张照片里,它的耳朵形状、毛色纹理都高度一致——你判断它们应该在"特征空间"里靠得很近。另一张照片里的动物有长鼻子、大耳朵,和刚才那个尖耳朵的家伙差异极大——你把它推得远远的。
经过几千次这样的"拉近-推开"操作,你脑海中会慢慢浮现出一个内在的"动物图谱":长鼻子的归一堆,尖耳朵的归另一堆,即使你根本不知道它们分别叫"大象"和"猫"。
这就是对比学习的核心思想:不要告诉我标签,只要告诉我哪些样本相似、哪些不相似,我自己就能学会数据的内在结构。
在数学上,这个思想被封装进一个叫做 InfoNCE(Information Noise-Contrastive Estimation,噪声对比估计的信息论版本)的损失函数里。它做的事极为直观:对于一个"锚点"样本(anchor),计算它与"正样本"(positive,应该相似的那个)的相似度,以及它与大量"负样本"(negatives,应该不相似的那些)的相似度。然后最大化正样本的相似度、最小化负样本的相似度。用一句大白话概括:拉近朋友,推开路人。
三、把对比学习装进单细胞模型
现在,我们把上述直觉移植到单细胞领域。整个流程可以分为三步。
第一步:构建正样本对。 给定一个细胞的基因表达谱,如何产生一个"应该与之相似"的版本?答案是数据增强(augmentation):给原始数据加一点随机噪声(模拟测序的随机性),随机屏蔽一部分基因(模拟单细胞数据中常见的"dropout"现象——某些基因明明有表达却没被测到),或者对表达值做微小的扰动。增强后的细胞版本与原始细胞构成一对正样本。这里的关键是:增强操作不能改变细胞的"身份"——就像给猫的照片加个滤镜,它还是同一只猫。
第二步:定义负样本。 同一批次中所有其他细胞都是天然的负样本——它们"不应该"和锚点细胞相似。当然,如果两个细胞恰好是同一种类型,这种假设会出错,但大数定律保证了在百万级细胞的规模下,绝大多数负样本确实属于不同的细胞类型,偶尔的"假阴性"对最终结果影响甚微。
第三步:训练编码器。 用一个神经网络(通常是 Transformer 架构)将每个细胞的约 20000 维基因表达向量映射到一个低维空间(比如 128 维或 256 维)。在这个紧凑的空间里,正样本对被拉近,负样本对被推开。反复迭代数百万次。
这里有一个深邃的洞察:模型从未被明确告知"这是 T 细胞""那是 B 细胞""那是上皮细胞",但它被迫去捕捉那些能让同一个细胞的不同观测版本彼此一致的"不变特征"。 而这些不变特征,碰巧就是细胞的生物学本质:细胞类型、功能状态、发育阶段、疾病相关通路活性等等。换句话说,对比学习通过一个"找相同"的游戏,意外地教会了 AI 一个技能——识别细胞的"身份"。
2021 年,Han 等人发表的 CLEAR(Contrastive Learning for single-cell RNA-seq)方法是这一领域的开路之作。它直接将 SimCLR(计算机视觉中最经典的对比学习框架)适配到 scRNA-seq 数据上,在多个数据集上展示了一个令人振奋的结果:完全不使用任何细胞类型标签,只靠对比学习学到的表示,在下游聚类任务中的表现就能达到甚至超过有监督方法。 这意味着,对比学习不仅有效,而且在某些场景下,它学到的"无师自通"的表示比人工标签教导出来的还要好。
到了 2023-2024 年,这个思想被放大到工业级规模。scGPT 虽然主打的旗号是生成式预训练(预测被遮住的基因表达值),但其设计哲学中流淌着对比学习的血液——通过自监督信号让模型在无标注数据上建立对细胞状态的深刻理解。而像 scFoundation(1000 万细胞级预训练)、CellPLM 等模型则更直接地将对比学习目标纳入训练框架。Geneformer 虽然使用了排序学习(rank-based learning),其本质也与对比学习共享了同一种哲学:通过自监督信号让模型学习基因之间的上下文关系,而非依赖人工标注。
四、对比学习的四大"超能力"
为什么对比学习在单细胞数据上如此有效?有四个根本原因。
第一,它天然适配"无标签"场景。 单细胞数据分析最大的瓶颈就是标注成本。要准确标注一个细胞的类型,需要资深生物学家查阅文献、验证 marker 基因、排除批次效应干扰,整个过程极其耗时。对比学习允许模型在海量无标注数据上预训练,只在最后微调时才动用少量珍贵的标注样本——这与 NLP 领域的 BERT、GPT 预训练范式一脉相承,也是"基础模型"理念得以成立的根本前提。
第二,它自动学会了"去批次"。 对比学习天然鼓励模型忽略那些在不同数据增强版本之间变化、但在正样本对之间保持不变的特征。批次效应恰恰是那种"不稳定"的特征——同一个细胞类型在不同批次中表达谱有整体偏移,但通过合理设计的数据增强策略,模型会被迫学会无视这些偏移,专注于捕捉细胞本身的生物学信号。这意味着,对比学习实际上是一种隐式的批次校正,不需要额外运行 Harmony 之类的后处理工具。
第三,它产生的表示空间具有优美的几何性质。 对比学习优化的是特征空间中样本间的相对位置,而非绝对的重建精度。这使得学到的细胞表示在余弦相似度下具有出色的语义对齐性:同类型的细胞天然聚拢,不同类型的细胞天然分离。更重要的是,这种聚类结构是"球形"的——每一群细胞在空间中形成一个紧致的球体——这对下游的聚类、可视化和最近邻分类都极为友好。
第四,它天然支持多模态融合。 在多模态单细胞数据中(如同一个细胞同时测了 RNA 表达、ATAC 染色质可及性和表面蛋白),对比学习可以跨模态拉近同一个细胞的不同"视角"——例如,让同一个细胞的 RNA 嵌入靠近它的 ATAC 嵌入,同时远离其他细胞的嵌入。这正是 CITE-seq 和 10x Multiome 数据分析中最前沿的技术路线之一。不是让模型去背标签,而是让模型去"感悟":同一个细胞从不同角度观察,应该给出自洽的描述。
五、一条技术演化的清晰脉络
让我们回顾对比学习在单细胞领域的进化谱系:
- 2018–2020 年:计算机视觉领域,SimCLR、MoCo、BYOL 等对比学习框架相继提出,证明自监督对比学习可以在 ImageNet 上达到甚至超越有监督学习的水平。NLP 领域的 BERT 证明了"预训练 + 微调"范式的统治力。
- 2021 年:CLEAR 将 SimCLR 框架适配到 scRNA-seq 数据,首次系统验证了对比学习在细胞表示学习中的有效性。同年,scVI 的变体开始引入对比正则化。
- 2022 年:scSim 等方法出现,不再满足于简单的随机数据增强,而是引入生物学先验——比如基因调控网络、蛋白质互作网络——来构建更有意义的正样本对。这意味着,对比学习从"盲目增强"进化到了"知情增强"。
- 2023 年:大规模预训练模型(scGPT、Geneformer、scFoundation)集中爆发。它们各自的技术路线不尽相同——生成式、排序式、对比式、混合式——但都共享了"自监督预训练 + 下游微调"的核心范式。对比学习的哲学已经渗透进几乎所有主流模型的设计基因中。
- 2024–2025 年:出现将对比学习与生成式建模统一起来的框架(如 scHybridBERT),以及利用对比学习在跨物种、跨模态场景中实现零样本迁移的工作。对比学习从"单一模态内的找相似"走向了"跨模态、跨物种的对齐"。
一条清晰的脉络浮现出来:对比学习从 NLP 和计算机视觉迁移到单细胞领域后,经历了"简单适配 → 引入生物学先验 → 大规模预训练 → 多模态/跨物种泛化"的演化路径。 每一步都将单细胞 AI 推向更高的泛化能力和更广的应用边界。
六、生成式 vs. 对比式:一场"道统"之争?
有人会问:既然 scGPT 和 Geneformer 主要用的是生成式目标(预测被遮住的基因表达值),对比学习还有独立存在的必要吗?
这是一个好问题,背后牵涉到自监督学习中两种哲学取向的深层张力。
生成式学习(masked gene prediction)做的事是:把一个细胞的基因表达谱遮掉一部分,让模型根据剩下的部分把遮掉的补回来。这类似于"完形填空"。它的优势在于:能学到基因之间精细的共表达关系和调控逻辑,对生物学机制建模更为直接。
对比学习做的事是:让模型判断两个细胞观测版本是否来自同一个"本源"细胞。这类似于"找相似"。它的优势在于:学到的是更高层级的语义不变性——细胞是什么"身份"、处于什么"状态"——而对细微的技术噪音更为鲁棒。
在实践中,两者并不互斥。恰恰相反,最强大的单细胞模型往往同时使用两种目标。scGPT 的主损失函数是生成式的(对预测表达值做 MSE),但其训练框架中也融合了对比学习的思想。这种"双目标预训练"的策略在 NLP 中已被 BERT 系列所验证(MLM + NSP),在单细胞领域也正在成为趋势。
可以做一个比喻:生成式学习像一位工匠,仔细修复一幅画作上每一道细微的裂缝;对比学习像一位策展人,从远处判断这幅画属于哪个时代、哪个流派。一位关注笔触,一位把握风格。两者放在一起,才能既看到细节又统摄全局。
七、回到 Gibson 的婴儿
回到文章开头那个爬在玻璃板上的婴儿。婴儿不需要被告知"这是悬崖""那是平地"——他只需要多次对比两种视觉深度线索,就能自学世界的三维结构。同样,对比学习让 AI 不需要被告知"这是 T 细胞""那是神经元"——它只需要知道"这两个观测来自同一个本源细胞,那一个不是",就能自学出细胞的生物学语义。
这种"不教而会"的能力,正是当代 AI 最迷人的特质之一。而它在单细胞领域的落地,不仅仅是一次"技术迁移"——它揭示了一个更根本的事实:生命系统中最重要的知识,往往并不写在标签里,而是编码在比较与关系之中。 细胞之所以是它自己,不在于它被称作什么名字,而在于它和谁相似、和谁不同。而这,恰恰是对比学习最擅长回答的问题。
一句话总结:对比学习教会 AI 的,不是"这是什么细胞",而是"什么算作相似"——而这个更根本的问题,恰好是整个单细胞生物学的核心。