DNA 基础模型 Evo 2 与序列建模
DNA 基础模型在大量基因组序列上做自监督预训练,学习碱基在上下文中的分布规律。Evo 2 是面向长上下文的 DNA 序列模型,可以对一段序列给出似然,也能逐位置输出碱基概率;把参考序列和携带变异的序列分别打分,差值就是这个变异的「序列似然变化」,可用于给编码区和非编码区变异排序。相关模型还有 Nucleotide Transformer 这类通用序列表征模型,以及 Enformer、Borzoi 这类直接预测表达和染色质信号的模型,三者目标不同。典型输入是参考基因组、区间坐标和 VCF 中的变异列表。模型给出的是序列统计层面的异常程度,不能直接等同于功能影响或临床意义。
什么时候用
- 非编码区变异缺少现成注释工具的评分,需要一个序列层面的参考指标
- 精细定位后得到一批候选变异,需要排序以决定实验验证顺序
- 评估长程上下文中的变异,例如调控区和结构变异断点附近
- 需要跨物种的通用序列表征,用于下游分类或回归任务
- 想用独立于保守性和注释数据库的证据交叉验证候选变异
不适合的情况
- 临床变异的致病性判定,应按相应分类规范综合多类证据
- 只关心蛋白编码后果的变异,常规注释工具更直接也更可解释
- 需要知道变异影响哪个基因、哪个组织的表达,这类问题应选表达预测模型
需要准备的数据
- 参考基因组
- FASTA 与配套索引,版本需与变异坐标一致(如 GRCh38),混用版本会导致坐标错位
- 变异列表
- VCF 或等效表格,含染色体、位置、参考与替代碱基;需先左对齐并规范化 indel 表示
- 区间定义
- 以变异位点为中心取上下文窗口,窗口大小按模型支持的上下文长度设定
- 校准用标注数据(可选)
- 已知致病与良性变异集合,或 MPRA 等功能实验数据,用于评估打分的区分能力
分析步骤
- 1
核对坐标与参考碱基
从参考基因组取出每个变异位置的碱基,与 VCF 的 REF 字段逐条比对。不一致说明基因组版本或坐标系统不对,必须先解决。做对的标志:全部变异的 REF 校验通过,indel 已左对齐并规范化。
- 2
构造上下文序列
以位点为中心截取等长窗口,生成参考序列和替代序列两条。窗口要足够长以包含可能的调控上下文,但不超过模型支持的长度;靠近染色体末端或装配缺口时需特殊处理。
- 3
计算序列似然
分别对两条序列前向计算,得到总的对数似然或目标位置的碱基概率。两者之差即变异评分。批量计算时固定窗口大小和填充方式,不同设置的分数不可混合比较。
- 4
建立阴性对照分布
在同一区域随机抽取若干不改变已知功能元件的变异,或打乱替代碱基,得到背景评分分布。候选变异的评分要放在这个分布里看,才能说明它有多异常。
- 5
用已知数据校准
用已知致病与良性变异计算 AUC,或与 MPRA、报告基因实验结果算相关性。区分能力接近随机时,不应把评分作为筛选依据,需换方法或缩小应用范围。
- 6
联合常规注释
把评分与基因、功能区、群体频率、保守性和染色质状态等注释合并。多类证据同向的变异优先级最高,仅有模型评分支持的变异需标注为弱证据。
- 7
输出候选与说明
交付排序表、评分分布图和背景对照,注明模型名称、上下文长度、参考基因组版本和打分定义。做对的标志:换一台机器按记录重跑,候选顺序能复现。
关键参数与决策
上下文窗口长度
窗口决定模型能看到多少调控上下文。太短会漏掉远端元件信息,太长会显著增加显存和时间,也可能引入无关区域噪声。常见做法是先固定一个长度做全批打分,再对重点候选换更长窗口做敏感性检查。
打分定义
可用整窗总似然差,也可只用变异位置的碱基对数概率差。前者能反映对周边上下文的影响,但受窗口长度影响大;后者更局部、可比性好。无论选哪种,整批要统一。
链方向
部分模型对正负链不对称。可同时对两条链打分并取平均或较极端者,减少方向带来的偏差;若只用一条链,要在报告中写明。
indel 的处理
插入删除会改变序列长度,总似然不可直接与 SNV 比较。常见做法是把 indel 与 SNV 分开排序,或用长度归一化后的指标,并在结果中分组展示。
阴性对照的取法
对照变异应匹配候选变异的区域类型、GC 含量和距基因距离。对照取自全基因组随机位置时,背景分布会偏低,使候选显得异常。
常见错误
- 参考基因组版本与变异坐标不一致:REF 碱基校验会不过或静默取到错误上下文,所有评分都失去意义。
- indel 未规范化就打分:同一变异的不同表示方式会得到不同窗口和分数,批次之间结果无法比较。
- 没有阴性对照就给阈值:序列似然差的绝对值没有通用含义,必须放在匹配的背景分布中解释。
- 把 SNV 与 indel、不同窗口长度的分数混在一张表里排序:量纲不同,排序结果主要由变异类型决定。
- 用模型评分代替临床变异分类:这类分析属于科研用途,不替代临床诊断或治疗决策,正式解读需按分类规范走。
- 忽略装配缺口和重复区:取到大段 N 或高度重复序列时,似然异常低,会产生大量假阳性候选。
结果怎么看
变异评分排序表
每行一个变异,含评分、所在基因与功能区、群体频率和注释。优先看评分位于背景分布极端且落在已知功能元件内的变异;若排名靠前的变异集中在重复区,说明序列提取环节有问题。
评分与背景分布对比图
候选变异评分叠加在对照分布上。候选明显偏离背景才有意义;两者高度重叠说明该批变异在序列层面没有突出异常,不足以支撑进一步实验。
校准曲线或 ROC
用已知致病与良性变异评估区分能力。AUC 明显高于 0.5 才说明评分在该类变异上可用;编码区表现好而非编码区接近随机是常见情况,应分区域分别报告。
位点级概率曲线
沿区间画出每个位置参考碱基的预测概率。保守的功能元件通常呈现高概率平台,边界清楚;整段曲线平坦无结构,提示该区域模型没有学到可用信号。
和相近方法怎么选
Evo 2 与 Enformer、Borzoi
Evo 2 建模的是 DNA 序列本身的似然,输出与功能表型无关,适合给变异的「序列异常度」排序;Enformer、Borzoi 直接预测表达和染色质信号,能给出组织特异的方向性变化。想知道会影响哪个基因的表达,应选后者。
序列模型评分与 CADD、保守性评分
CADD 等方法整合多种注释并用已知数据训练,非编码区覆盖成熟但依赖注释质量;序列模型只看序列,证据来源独立。两类证据一致的变异置信度更高,不一致时需逐个核查。
DNA 基础模型与常规变异注释流程
VEP、ANNOVAR 这类工具给出的是明确的后果分类和数据库匹配,是正式报告的基础;基础模型评分是补充性的连续指标,主要用于非编码区排序和缩小实验范围,不替代注释流程。
常见问题
Evo 2 能做什么、不能做什么?
它能对给定 DNA 序列给出似然和逐位置碱基概率,由此比较参考序列与携带变异的序列,得到序列层面的异常度评分,也能作为下游任务的序列表征。它不输出表达量变化、不指明受影响的基因或组织,也不给出临床意义。
DNA 大模型预测变异效应准不准?
取决于变异类型和区域。编码区和保守元件内的表现通常好于随机,远端非编码区差异较大。使用前应在自己关心的变异类型上用已知标注数据算一次 AUC,确认区分能力后再用于排序。
上下文窗口该取多长?
在模型支持范围内,窗口至少应覆盖变异所在的功能元件及其邻近区域。实际常见做法是先用一个统一长度批量打分,再对前列候选换一两个更长的窗口,看排序是否稳定;排序随窗口大幅变化说明结论不稳。
需要什么样的计算资源?
长上下文模型显存占用随窗口长度明显增加,批量打分基本需要 GPU。常见策略是先在少量变异上验证流程和参数,再按窗口长度和批大小估算总耗时,分批运行并缓存中间结果。
这类评分可以写进临床报告吗?
不建议作为独立依据。它属于科研分析指标,不替代临床诊断或治疗决策。临床变异解读应遵循既有分类规范,综合群体频率、功能实验、分离分析和已有文献证据。
在 Codar 里怎么做
在 Codar 中给出参考基因组版本和变异列表后,会先核对坐标与 REF 碱基、规范化 indel,再用 Evo 2 对参考序列和替代序列做基因组序列建模与似然打分,并构造匹配的背景对照。交付变异评分排序表、评分与背景分布对比图、位点级概率曲线,以及记录模型设置的可复现脚本。
我有 300 个非编码区候选变异的 VCF(GRCh38),想用 Evo 2 打分排序,并和随机对照位点比一下