344MB 的 RNA 基础模型登上 Nature:中科大开源的 structRFM,把三维结构预测做到 AlphaFold3 同级
导语
蛋白质有 AlphaFold,RNA 一直没有对等的东西。这不是疏忽:RNA 只有四个字母,却会自己跟自己配对折成二级结构,再叠成三维构象,同一段序列在不同条件下能折出不同形状。序列信息量小、结构层次多,模型很难只靠「读序列」学会它。
11 月 4 日,中国科学技术大学周少华、熊鹏团队的开源 RNA 基础模型 structRFM 正式发表在《自然》。核心数字是三个:2100 万条「序列—二级结构」配对数据、一张 344MB 的权重、以及在 CASP15-natural、CASP16、RNA-Puzzles 三套 RNA 三维结构测试集上「与 AlphaFold3 相当」的表现。(本文基于多家媒体转述整理,技术细节以 Nature 论文与作者开源仓库为准。)
先说一句容易被标题盖掉的话:这个模型不是这周才出现的。bioRxiv 预印本 2025 年 8 月就挂出来了,2026 年 5 月更新到第二版。这周发生的是同行评审走完、正刊上线。对做 RNA 的人来说,真正的新闻点是:评审后的版本、完整数据、权重和代码,现在同时可下载了。
3分钟看懂
- 谁做的:中国科学技术大学医学影像智能与机器人(MIRACLE)实验室。第一作者朱河勤,共同通讯周少华、熊鹏。
- 是什么:一个结构引导的 RNA 基础模型。输入一条 RNA 序列,输出三类特征——整条序列的、每个核苷酸的、以及核苷酸两两之间的配对矩阵。
- 怎么训的:2100 万条序列-二级结构配对,序列截到 512 nt,结构注释不是实验测的,是用 RNAcentral + BPfold 算出来的;再把碱基配对关系塞进 BERT 式的掩码语言模型,让模型在猜被遮住的碱基时同时看「它跟谁配对」。
- 一个巧思:单一预测器给的二级结构有系统性偏差,所以作者做了 MUSES——把热力学、概率、深度学习三类预测器的结果集成起来当标签,再用动态掩码比例平衡「结构引导」和「逐位点」两种训练信号。
- 三维怎么来:模型本身不直接出三维。作者做了 Zfold,把 structRFM 的配对矩阵特征喂给 trRosettaRNA(原本吃 SPOT-RNA 的二级结构),在 CASP15-natural(8 条)、CASP16(13 条)、RNA-Puzzles(20 条)上,εRMSD / TM-score / GDT-TS / INF 四项指标与 AlphaFold3 相当。
- 有多大:BERT-base 结构,768 维、12 层、12 头,词表只有 10 个 token(四种碱基加特殊符),最长 514 个位置;Hugging Face 上的 fp32 权重 344MB,反推约 8600 万参数。
- 开源到什么程度:预训练数据在 Zenodo(4.5GB),全部任务数据加各任务 checkpoint 另有一份(3.7GB),代码 MIT,权重同时放在 GitHub Release 和 Hugging Face。
- 最该记住的一句:论文摘要的原话是「performance comparable to AlphaFold3」,限定范围是这三个 RNA-only 测试集,不是「全面超过 AlphaFold3」。
为什么 RNA 需要「自己的」基础模型
蛋白质语言模型能直接迁移,是因为氨基酸字母表有 20 个,序列里已经藏了足够的进化约束。RNA 只有 4 个字母,单看序列,很多功能区是分不出来的——一个 100 nt 的片段可能完全不编码蛋白,功能全在它折成什么形状、露出哪个环。
所以 RNA 模型的核心难题不是「参数不够」,是「结构信号从哪来」。这条路线上有两个现实约束:
- 实验结构太少。PDB 里的 RNA 结构数量比蛋白质少两个数量级,靠实验结构训不出来。
- 算出来的结构有偏。用热力学方法(如 RNAfold)算二级结构快,但对非经典配对和长链不准;用深度学习方法(如 SPOT-RNA)算得准一些,但会把自己训练集的偏好带进来。拿任何单一预测器的输出当标签,模型学到的就是那个预测器的偏差。
structRFM 的应对是两层:数据上铺到 2100 万条(把 RNAcentral 的序列全过一遍 BPfold),标签上用 MUSES 做多源集成,训练上用动态掩码比例让「结构级」和「核苷酸级」两种信号不至于互相淹没。
这套做法不新鲜——蛋白质那边早有类似思路——但在 RNA 上做到这个数据规模并公开,是这次值得记的地方。
344MB 说明了什么
这个数字和最近半年的生物模型新闻形成对照。西湖大学的 Pinal 是 160 亿参数,Molence 的 Mol-1 主打单卡跑超大复合物,都是「往上堆」的路线。structRFM 反过来:8600 万参数、344MB、一张消费级显卡就能跑推理。
原因在词表。config.json 里 vocab_size 是 10,也就是 A、C、G、U 加几个特殊符。蛋白质模型词表 20 起步,通用语言模型动辄十几万,嵌入层本身就吃掉大量参数;RNA 的字母表只有 4,模型的容量几乎全花在注意力层上学「谁跟谁配对」这件事上。
这个选择有代价,也是理解它的关键:
- 好处:小、快、能本地部署,改一改就能接进自己的流程;预训练 100 个 epoch、batch 96、学习率 1e-4 的配置在 README 里直接给了,复现门槛低。
- 代价:词表里没有修饰碱基。m6A、假尿苷这类化学修饰在自然界大量存在、且直接改变结构和功能,这个模型看不见它们,只能当未修饰的 A/U 处理。
- 另一个代价:514 的长度上限。超过就得靠重叠滑窗切段,作者用这个办法把 lncRNA 分类做到了 3000 nt,但那是分类任务,不是整条链的结构预测。
那些数字背后,哪些能信、哪些要留神
论文里可核的部分很扎实,但几处口径值得说清楚:
「与 AlphaFold3 相当」是 RNA-only 靶标上的结论。 测试集是 CASP15-natural 的 8 条、CASP16 的 13 条、RNA-Puzzles 的 20 条,全是 RNA 单链或 RNA 复合物。AlphaFold3 的主场是蛋白-配体复合物,在 RNA-only 场景上它本来就不是最优配置。这个比较有意义,但别读成「RNA 结构预测已经被追平」。
Zfold 不是端到端。 它要 MSA(rMSA)和 structRFM 的配对矩阵两路输入,本质是把 trRosettaRNA 的二级结构输入换成了学习出来的特征。少了 MSA,效果会掉——纯单序列直接出三维,这个模型没做到。
「零样本同源性分类 top 4」是仓库口径,不是论文口径。 README 写的是在 Rfam 和 ArchiveII 上排进前四;论文摘要只说「ranks highly in zero-shot homology classification」。转述时用哪个,取决于你要多严谨。
二级结构标签是算出来的,不是测出来的。 2100 万条配对数据的「结构」来自计算注释(BPfold + MUSES 集成)。这意味着模型的性能上限受限于这些预测器的准确率——它学到的是「当前最好的计算方法认为的结构」,不是「真实的结构」。
数据版本有个小坑。 论文 Data availability 给的 Zenodo DOI 是 18272040(2026-09-02 发布,标题「structRFM pre-training data」),GitHub README 里写的还是旧的 16754363。两边都能下,但按论文的来更稳。
怎么用
第一步,先跑通推理,别急着训。 装包、拉权重、输一条序列看输出形状:
pip install structRFM BPfold
# 权重约 300MB,或直接从 HuggingFace 拉 heqin-zhu/structRFM
python -c "
from transformers import AutoModel, AutoTokenizer
m = AutoModel.from_pretrained('heqin-zhu/structRFM')
t = AutoTokenizer.from_pretrained('heqin-zhu/structRFM')
o = m(**t('GUCCCAACUCUUGCGGGGAGGGAU', return_tensors='pt'))
print(o.last_hidden_state.shape) # [1, 24, 768]
"24 个碱基,出来是 24×768 的逐位点特征,外加一个 768 维的整序列向量和一个 24×24 的配对矩阵。先确认这三样都拿到了,再谈下游。
第二步,想清楚你要哪类特征。 三类特征对应三类任务:整序列向量做分类(ncRNA 归类、家族判定),逐位点特征做位点级预测(剪接位点、修饰位点),配对矩阵做结构(二级结构解码、喂给 Zfold 出三维)。选错了,后面调参都是白费。
第三步,下游任务照仓库的 task 目录抄。 tasks/ 下有 zeroshot、seqcls_ssp、Zfold、splice_site_prediction、IRES 五个子目录,每个都有对应的微调脚本和数据准备说明。要三维就用 Zfold,注意它额外要 rMSA,得自己跑 MSA 工具。
第四步,微调前先做零样本基线。 不训练直接拿特征去分类,看能到多少。这个数字决定了你的任务到底需不需要微调,也决定了后面涨点是真涨还是过拟合。
第五步,长序列自己决定怎么切。 超过 514 nt 的,作者用的是重叠滑窗。窗口多大、重叠多少、切完怎么合并,这三件事没有标准答案,得按你的任务试。
适用场景
- ncRNA 分类与家族判定:新测到的非编码转录本属于哪个家族,这类任务用整序列特征就够。
- 剪接位点、IRES 识别:位点级任务,逐位点特征直接可用。
- RNA 二级结构预测:模型自带的结构特征比纯热力学方法更能处理非经典配对。
- RNA 三维结构预测的前置特征:把配对矩阵喂给 Zfold 或你自己的折叠流程。
- 长非编码 RNA 的粗分类:滑窗方案能覆盖到 3000 nt。
- 小算力环境下的本地部署:344MB 权重,笔记本 GPU 甚至 CPU 都能跑推理。
- 作为其他 RNA 模型的基线:开源、可复现、有完整测试集,适合当对照组。
不适用场景
- 含化学修饰的 RNA。词表只有四种碱基,m6A、假尿苷等修饰一律按未修饰处理,做修饰相关的功能预测会系统性地错。
- 需要实验级精度的药物设计决策。这是结构预测工具,不是结合亲和力预测器,别拿它替代自由能计算或湿实验。
- 单序列直接出三维。Zfold 要 MSA,这条捷径不存在。
- 长度远超 514 nt 的整链三维预测。滑窗是为分类设计的,拼回完整三维会引入接缝误差。
- 非 RNA 的核酸体系。DNA、DNA-RNA 杂合双链不在训练分布里。
- 要引用「超过 AlphaFold3」的场合。论文自己的措辞是 comparable,且限定在三套 RNA 测试集。
避坑
- 别把 2100 万条当成 2100 万个实验结构。那是计算注释出来的配对数据,真实实验结构只有几千条量级。
- 别混用两个 Zenodo DOI。论文是
18272040,README 是16754363,写文章或做复现时统一用论文那个。 - 别忽略
vocab_size=10这件事。它解释了模型为什么这么小,也解释了它为什么看不见修饰——这是设计选择,不是 bug,但决定了能力边界。 - 别拿预印本日期当新闻日期。预印本 2025-08 就公开了,这周的新闻点是正刊接收 + 权重开放。写成「刚刚发布新模型」会被懂行的人抓住。
- 别在长序列上直接套 514 截断。截断会丢掉一半结构信息,尤其对 lncRNA,务必用滑窗。
- 别跳过 MSA 质量检查。Zfold 的上限很大程度由 rMSA 决定,MSA 烂,特征再好也没用。
- 注意 checkpoint 版本。GitHub 最新 release 是 v0.0.8,tag 已到 v0.0.9;HF 上的权重 lastModified 是 2026-01。复现时把版本号记下来。
成本/时间
- 钱:论文在 Nature 是订阅制,摘要和图注免费,全文要机构权限或单篇购买;但数据、权重、代码全免费(MIT + Zenodo)。
- 存储:预训练数据 4.5GB,全部任务数据加 checkpoint 3.7GB,模型权重 344MB。加起来一块 10GB 的盘够。
- 算力:推理侧,单卡甚至 CPU 可用。微调侧,README 给的配置是 batch 96、100 epoch、lr 1e-4、seq len 514、base 规模——按这个规模,单张 24GB 显卡可以跑,具体时长取决于数据量和是否要重跑预训练。
- 时间:环境配好到跑出第一条序列的特征,半小时以内;接一个下游任务做微调,按数据量算,通常以小时到天计;如果要自己重算 2100 万条二级结构注释,那是另一个量级的事。
行动建议
第一步,如果你只想要一个判断:记住三件事——2100 万条计算注释的配对数据、344MB 的 BERT-base、RNA-only 测试集上与 AlphaFold3 相当。这三点决定了它现在的定位:一个轻量、可本地跑、边界清晰的 RNA 特征提取器。
第二步,如果你在做 RNA 相关研究:先拿你手上的一批序列跑零样本,看特征能不能分开你的类别。能分开,就省了训练;分不开,再考虑微调,别一上来就训。
第三步,如果你在评估「要不要把 RNA 结构预测接进管线」:先确认你的靶标长度和是否有修饰。超过 514 nt、或者修饰是关键变量,这个模型解决不了你的核心问题,得先解决预处理。
第四步,如果你在写这类新闻或做技术选型报告:把「预印本 2025-08、正刊 2026-11-04」这条时间线写进去。这一条能立刻区分「读过论文的」和「只读了通稿的」。
参考来源
- Nature 论文《An open structure-guided RNA foundation model for generalizable prediction》:https://www.nature.com/articles/s41586-026-11210-2
- 论文 DOI:https://doi.org/10.1038/s41586-026-11210-2
- GitHub 仓库(代码、checkpoint、task 目录):https://github.com/heqin-zhu/structRFM
- Hugging Face 权重:https://huggingface.co/heqin-zhu/structRFM
- 预训练数据(Zenodo,论文引用版):https://doi.org/10.5281/zenodo.18272040
- bioRxiv 预印本 v1(2025-08-07)/ v2(2026-05-14):https://doi.org/10.1101/2025.08.06.668731
- 新华社 2026-11-05:https://www.news.cn/tech/20261105/4b8618f49b0c41b180d317ab8d9bcf6d/c.html
- 光明网转新华社 2026-11-05:https://tech.gmw.cn/2026-11/05/content_39086188.htm
- IT之家(凤凰网转载)2026-11-05:https://tech.ifeng.com/c/8xncRSrGUYk
- 21 财经 2026-11-05:https://m.21jingji.com/article/20261105/herald/edb6be8b89df99a83d205e50d70c90fb.html
- 中时新闻网 2026-11-05:https://www.chinatimes.com/realtimenews/20261105002903-260409
- 科技部官网转中国科学报 2026-11-05:https://www.ncsti.gov.cn/kjdt/kjrd/rgzn_kjrd/202611/t20261105_261486.html
- Snape Report 2026-11-04:https://snapereport.com/s/ustc-open-sources-structrfm-rna-foundation-model-in-nature
- Digest AI 2026-11-04:https://digestai.news/story/structrfm-model-trains-on-21-million-rna-pairs