OpenMed CodonRoBERTa 多物種 mRNA 語言模型發布
TL;DR – OpenMed 發布了一個端到端的蛋白質工程流程,新增了由新一代 Transformer 語言模型驅動的密碼子優化階段,其中 CodonRoBERTa‑large‑v2 的困惑度達 4.10,CAI 斯皮爾曼相關係數為 0.404,且一個涵蓋 25 種生物的多物種套件僅需 55 GPU 小時(約 $165)訓練完成。該套件包含一個通用的 311M 參數模型與三個專用模型(人類、E. coli、CHO),表現超越先前方法,並能快速生成可表達的 DNA。
1. 發布內容
| 元件 | 描述 | 關鍵結果 |
|---|---|---|
| 蛋白質摺疊 | ESMFold v1 對 30 個蛋白質鏈的預測 | 平均 PTM = 0.79(高拓撲結構置信度) |
| 序列設計 | 使用 scaffold 7K00 的 ProteinMPNN | 氨基酸恢復率 42 % |
| mRNA 優化 | 新型 Transformer 模型在 25 萬 E. coli CDS 上訓練,再擴展至 38.1 萬 CDS,涵蓋 25 種物種 | CodonRoBERTa‑large‑v2:困惑度 4.10,CAI 斯皮爾曼 0.404;4 個生產模型涵蓋 25 種生物,僅需 55 GPU 小時訓練 |
摺疊與設計階段重用既有的開源工具(ESMFold、ProteinMPNN)。密碼子優化階段則為全新設計:一組以密碼子級序列為基礎、具物種條件的 RoBERTa 風格語言模型。
2. 架構探索 – 哪種 Transformer 對密碼子最有效?
| 模型 | 參數 | 架構 | 訓練資料(25 萬 E. coli CDS) |
|---|---|---|---|
| CodonBERT(基線) | 6 M | BERT‑tiny(6 層) | – |
| ModernBERT‑base | 90 M | ModernBERT(22 層,RoPE) | – |
| CodonRoBERTa‑base | 92 M | RoBERTa(12 層) | – |
| CodonRoBERTa‑large | 312 M | RoBERTa(24 層) | – |
| CodonRoBERTa‑large‑v2 | 312 M | RoBERTa(24 層,優化學習率與預熱) | – |
在 E. coli 測試集上的結果
| 模型 | 困惑度 | CAI 斯皮爾曼 | 同義恢復率 |
|---|---|---|---|
| CodonRoBERTa‑large‑v2 | 4.10 | 0.404 | 7.7 % |
| CodonRoBERTa‑base | 4.01 | 0.219 | 8.5 % |
| CodonRoBERTa‑large | 4.01 | 0.025 | 7.6 % |
| ModernBERT‑base | 26.24 | 0.070 | 8.5 % |
| CodonBERT(基線) | 17.18 | –0.629 | 0 % |
重點發現
- RoBERTa 在困惑度上比 ModernBERT 優異六倍,在 CAI 相關性上也優異六倍,顯示傳統 RoBERTa MLM 架構更適合密碼子序列的統計結構。
- 在英文文本上預訓練會損害表現 – 從英文檢查點初始化 ModernBERT 會降低其學習密碼子模式的能力。
- 超參數調校比模型大小更重要 – v2 檢查點(lr 5e‑5,預熱 2k 步)在困惑度略高情況下,CAI 相關性提升 16 倍。
- 92M 參數的基礎模型是實用的低成本替代方案 – 其困惑度與大型模型相當,但參數僅為三分之一。
3. 端到端流程
3.1 使用 ESMFold 進行蛋白質摺疊
- 工具:Meta 的 ESMFold v1(單序列,無 MSA)。
- 在 30 個 PDB 鏈上的表現:平均 PTM = 0.79,每殘基 pLDDT ≈ 34(多鏈目標較低)。在 A100 上每蛋白質摺疊時間為 10–30 秒。
3.2 使用 ProteinMPNN 進行序列設計
- 工具:ProteinMPNN(基於圖的逆摺疊)。
- 在 scaffold 7K00 上的結果:生成三條序列;最佳序列在溫度 0.1 時恢復 42 % 的原始氨基酸。
3.3 使用 CodonRoBERTa 進行 mRNA 優化
- 問題 – 傳統 CAI 表獨立替換每個密碼子,忽略上下文,導致重複且有時次優的序列。
- 解決方案 – 在密碼子標記上使用掩碼語言建模(MLM),學習上下文相關的密碼子偏好。模型根據周圍上下文預測被掩碼的密碼子,捕捉長距離依賴關係。
- 評估指標
- 困惑度 – CodonRoBERTa‑large‑v2 為 4.10(約每掩碼有 4 個等可能密碼子)。
- CAI 斯皮爾曼相關係數 – 0.404(p < 10⁻²⁰),顯示與生物學上偏好的密碼子使用高度一致。
- 同義恢復率 – 頂 1 同義預測達 12.1 %,顯示模型尊重氨基酸約束。
- 使用範例(Python,Hugging Face Transformers):
from transformers import RobertaForMaskedLM model = RobertaForMaskedLM.from_pretrained("OpenMed/CodonRoBERTa-large-v2") tokenizer = CodonTokenizer() # 69-標記密碼子詞彙 seq = "ATG GCT AAA GGT ..." inputs = tokenizer(seq, return_tensors="pt") with torch.no_grad(): scores = model(**inputs).logits
4. 擴展至 25 種物種 – 一個通曉所有生物的單一模型
4.1 資料工程
- 下載 25 種生物的 RefSeq CDS(19 種細菌、3 種酵母、3 種哺乳動物)。
- 驗證步驟:起始/終止密碼子、長度 % 3 = 0、無內部終止。
- 最終資料集:381 283 條序列(約 3 GB),每物種 95 %/5 % 訓練/測試分割。
4.2 物種條件詞彙編碼器
- 將 69 種密碼子詞彙擴展為包含 25 種特殊物種標記,形成 94 種標記 詞彙。
- 每條序列以物種標記開頭(例如
[HUMAN]),使模型能學習物種特異的密碼子偏見,同時在所有物種間共享參數。
4.3 通用基礎模型
- 架構:RoBERTa‑large(311.9 M 參數),搭配 94 種標記詞彙。
- 訓練:在 4 × A100 GPU 上訓練 48 小時,50 k 步(約 4.5 個週期),bf16 混合精度,完全分片資料平行(FSDP)。
- 測試困惑度:24.9 – 高於單物種模型,因模型需捕捉 25 種不同的密碼子使用模式。
4.4 物種專用微調
| 物種 | 訓練序列數 | 微調步數 | GPU 小時 | 測試困惑度 |
|---|---|---|---|---|
| 人類(治療性 mRNA) | 131 k | 15 k | 4 h | 24.3 |
| E. coli(細菌表達) | 8.5 k | 5 k | 0.5 h | 25.3 |
| CHO(生物製藥哺乳動物) | 42.5 k | 10 k | 2.5 h | 25.5 |
人類專用模型在參數遠少於通用基礎模型的情況下,困惑度仍降低 2.4 %,證實了從多物種基礎進行遷移學習的優勢。
4.5 模型套件(發布於 Hugging Face)
OpenMed/CodonRoBERTa-large-multispecies– 通用 311M 參數模型。OpenMed/CodonRoBERTa-large-human– 人類細胞專用模型(整體最佳)。OpenMed/CodonRoBERTa-large-ecoli– E. coli 專用模型。OpenMed/CodonRoBERTa-large-cho– CHO 細胞專用模型。OpenMed/CodonRoBERTa-large-v2– 單物種 E. coli 模型,困惑度最低(4.10),CAI 相關係數最高(0.404)。OpenMed/CodonRoBERTa-base– 92M 參數高效替代方案。
所有模型皆採用 Apache‑2.0 授權,儲存在 safetensors 中,可透過 from_pretrained() 加載。
5. 端到端工作流程範例
- 摺疊 – 使用 ESMFold 獲取目標蛋白的 3D 結構。
- 設計 – 執行 ProteinMPNN,固定功能殘基,生成候選氨基酸序列。
- 驗證 – 使用 ESMFold 重新摺疊候選序列;保留 pLDDT/PTM 值高的序列。
- 優化 – 將選定的氨基酸序列傳遞給適當的 CodonRoBERTa 專用模型(例如
CodonRoBERTa-large-human),以獲得密碼子優化的 DNA 字串。 - 合成 – 訂購 DNA,克隆並在指定宿主中測試表達。
整個計算流程在單一 GPU 上不到一小時即可完成典型蛋白質,將歷史上需數週濕實驗迭代的過程大幅壓縮。
6. 在領域中的定位與未來方向
6.1 與當代模型的比較
| 模型 | 參數 | 資料量 | 物種條件 | 報告的 CAI / 翻譯效率指標 |
|---|---|---|---|---|
| OpenMed CodonRoBERTa | 312 M | 381 k CDS(25 種物種) | 單一模型搭配 25 個標記 | CAI 斯皮爾曼 0.404(人類專用) |
| mRNABERT(Xiong et al., 2025) | 86 M | 18 M 序列 | 無物種標記 | 翻譯效率 R² 0.66 |
| NUWA(Zhong et al., 2026) | – | 115 M 序列,約 25 k 種物種 | 三種領域專用模型 | 在 11/13 基準上超越 CodonBERT |
OpenMed 的獨特貢獻
- 一個單一、物種條件模型,可提示任意 25 種覆蓋物種,與 NUWA 的三種獨立領域模型不同。
- 展示了遷移學習:在僅 8.5 k E. coli CDS 上微調通用基礎模型,即可產生表現優於基礎模型的專用模型。
- 提供完整、可執行的流程(摺疊 → 設計 → 密碼子優化),所有程式碼與權重均以寬鬆授權釋出。
6.2 進行中的研究 – CodonJEPA
- 目標 – 以聯合嵌入預測架構(JEPA)取代標記級 MLM,使同義密碼子在嵌入空間中無法區分。
- 早期結果(15 k 步,相同資料):
- 同義穩健性(餘弦相似度)= 0.9997(JEPA)對比 0.9414(MLM)。
- 觀察到維度崩塌(單一成分佔 91% 變異);正在進行更強的 VICReg 正則化。
- 若崩塌問題解決,JEPA 可能提供本質上具氨基酸感知能力的密碼子嵌入,這是 MLM 無法達成的能力。
6.3 路線圖(未來 12 個月)
- 在公開的 3600 萬序列 mRNABERT 資料集上擴展 CodonRoBERTa,並加入與 ProtT5‑XL 的對比對齊。
- 將微調擴展至額外物種(酵母、小鼠、Pichia),並發布更新的專用檢查點。
- 透過修復崩塌問題,完成 CodonJEPA,與 mRNABERT 比較,並作為可選嵌入層整合至流程中。
- 透過 RFdiffusion 增強流程以進行從頭骨架生成,並新增表達穩定性預測頭。
7. 實際部署
- 推論硬體 – 單一 A100(≥ 16 GB VRAM)或任何具 ≥ 12 GB 的 GPU(適用於 92M 參數基礎模型)。
- 軟體堆疊 – PyTorch 2.5+,
transformers≥ 4.40,flash‑attn2用於高效注意力,FSDP 用於訓練。 - 授權 – 所有元件(ESMFold、ProteinMPNN、OpenMed 模型)皆採 MIT 或 Apache‑2.0 授權,允許商業使用。
- 成本 – 整體訓練成本約為 $165(AWS 預付實例,4 × A100,55 GPU 小時)。
8. 參考文獻
- Jumper, J. et al. “Highly accurate protein structure prediction with AlphaFold.” Nature (2021).
- Lin, Z. et al. “Evolutionary‑scale prediction of atomic‑level protein structure with a language model.” Science (2023).
- Dauparas, J. et al. “Robust deep learning‑based protein sequence design using ProteinMPNN.” Science (2022).
- Cheng, J. et al. “CodonBERT: a language model for codon optimization.” Nucleic Acids Research (2024).
- Xiong, Y. et al. “mRNABERT: advancing mRNA sequence design with a universal language model and comprehensive dataset.” Nature Communications (2025).
- Zhong, Y. et al. “Large mRNA language foundation modeling with NUWA for unified sequence perception and generation.” bioRxiv (2026).
- Warner, B. et al. “ModernBERT: Smarter, Better, Faster, Longer.” arXiv (2024).
完整的程式碼、訓練檢查點與 25 種物種 CDS 資料集將於 Hugging Face 上以 OpenMed 組織名義釋出。
Sources
相關
- Dispatch
- Dispatch
- Dispatch
- Dispatch
- Dispatch