DNA 基础模型的嵌入表示会不会泄露原始序列?

DNA foundation model 正在变成生信分析的基础设施。从 GenSLM、DNABERT-2 到 Nucleotide Transformer,这些模型可以把任意 DNA 序列编码成固定维度的向量,用于变异检测、调控元件预测、物种分类等下游任务。

很多研究者认为嵌入表示是”安全”的——分享的是向量,不是序列本身。向量只是一组数字,看起来不包含可读的生物学信息。

这篇 2026-03-06 提交的论文 “How Private Are DNA Embeddings?” 挑战了这个假设。


DNA foundation model 的核心能力是把 DNA 序列编码成语义向量。这个过程类似于 NLP 里的 word embedding:把离散的 token 映射到连续向量空间,让语义相似的序列在向量空间里距离更近。

具体流程是先把 DNA 序列切分成 k-mer,用 Transformer 编码器处理,输出每个位置的向量表示或整个序列的聚合向量。这个向量捕获了序列的”语义”——调控模式、编码区域特征、物种特异性等。

嵌入表示即服务(Embeddings-as-a-Service,EaaS)正在变成常见的商业模式:服务提供商部署 DNA foundation model,用户提交序列获得嵌入表示,在本地做下游任务。用户不需要部署大模型,只需要调用 API。

但问题是:你把序列发给服务提供商,服务提供商获得什么信息?如果是原始序列,隐私风险显而易见。但如果只分享嵌入表示呢?


嵌入表示是一个高维向量,比如 768 维或 1024 维。从信息论角度,一个固定维度的向量能表示的信息量是有限的。DNA 序列的长度可以是任意的——短序列几十 bp,长序列几百万 bp。直觉上,把一个长序列压缩成固定维度的向量,必然会有信息损失。

但这篇论文指出:关键不是”能不能完全重建”,而是”能重建多少”。即使只能重建部分序列,也可能泄露敏感信息。

论文的实验分三个层次。第一,给定一个嵌入表示,训练反向模型预测原始序列,评估重建序列与原始序列的匹配度。第二,测试多种 DNA foundation model,比较它们嵌入表示的可逆程度。第三,研究序列长度、模型架构、训练数据对泄露风险的影响。

结果有几个值得注意的发现。短序列的嵌入表示更容易被逆向——对于 100-500 bp 的序列,反向模型可以重建相当比例的正确序列。不同模型的信息泄露程度不同,某些 DNA foundation model 的嵌入表示包含更多可逆信息,这与模型的架构设计和训练方式有关。即使无法完全重建原始序列,嵌入表示也可能泄露序列的关键特征:GC 含量、重复模式、特定 motif 的存在。


DNA 数据与其他类型数据有一个本质区别:DNA 序列是个体的唯一标识。一个人有 30 亿 bp 的基因组,每个人的基因组都是唯一的(除了同卵双胞胎),基因组信息与疾病风险、家族关系、身份识别直接相关。这意味着 DNA 数据的隐私泄露后果比其他数据更严重。你的密码泄露了可以改,你的 DNA 泄露了无法更改。

如果你的研究涉及敏感基因组数据,比如患者样本或法医样本,使用第三方嵌入服务时需要考虑几个问题。

服务提供商能从嵌入表示推断什么?即使你只发送嵌入表示,服务提供商也可能通过反向模型推断原始序列的部分内容。嵌入表示本身是否可以匿名化?这篇论文表明,嵌入表示可能包含足够的信息来识别个体,”只分享向量”不等于”匿名化”。如果你的数据受 GDPR、HIPAA 等法规保护,分享嵌入表示是否被视为分享受保护的健康信息?这个问题目前尚无明确法律界定。

这篇论文研究的是”嵌入表示逆向攻击”,但这只是基因组隐私攻击的一种。其他类型的攻击包括成员推断攻击(判断某个个体是否在训练数据中)、属性推断攻击(从基因组数据推断个体的敏感属性)、重建攻击(从聚合统计数据重建个体基因型)。嵌入表示逆向攻击与这些攻击形成了一个完整的威胁模型:基因组数据在不同处理阶段都有隐私风险。


对研究者来说,嵌入表示不是匿名化手段。不要以为”只分享向量,不分享序列”就安全。选择 DNA foundation model 时,除了看下游任务性能,还要考虑嵌入表示的信息泄露风险。如果处理的是敏感基因组数据,需要评估是否应该在本地部署模型,而不是使用云端 EaaS 服务。

对模型开发者来说,可以考虑在模型架构和训练过程中添加隐私保护机制,比如差分隐私训练、嵌入表示的扰动或噪声注入。在发布模型时,可以提供嵌入表示可逆性的评估报告,帮助用户了解隐私风险。


这篇论文有几个局限。它没有提出防御机制,如何设计”不可逆”的嵌入表示、如何在保护隐私的同时保留语义信息,这些问题留待后续研究。论文主要研究”白盒攻击”——攻击者知道模型的架构和参数,现实中更常见的是”灰盒攻击”——攻击者只能调用模型 API,不知道内部参数。论文研究的是单个序列的嵌入表示,如果攻击者获得大量嵌入表示,是否可以通过聚合分析推断更多信息,这个问题没有涉及。

上周的 BioShield(arXiv:2603.22612)解决的是另一个方向的问题:如何防止 Bio-LLM 被恶意使用。那篇论文提出的是”防御恶意用户”的框架。今天这篇解决的是”防御恶意服务提供商”的问题:当用户把数据发给模型时,模型或其运营者是否能推断用户的敏感信息。

两个问题指向同一个结论:Bio-AI 的安全性需要成为设计和部署时的核心考量,而不是事后补救。


参考文献