使用二维深度神经网络和迁移学习进行RNA二级结构预测的预训练模型。
这是Jaswinder Singh等人发表的论文《RNA secondary structure prediction using an ensemble of two-dimensional deep neural networks and transfer learning》(https://doi.org/10.1038/s41467-019-13395-9)的非官方实现。
SPOT-RNA的官方代码库位于jaswindersingh2/SPOT-RNA。
[!TIP] MultiMolecule团队已确认,所提供的模型和检查点能够生成与原始实现相同的中间表示。
SPOT-RNA的发布团队并未为此模型撰写此模型卡片,本模型卡片由MultiMolecule团队编写。
SPOT-RNA是一种二维卷积神经网络,用于从单个RNA序列预测RNA二级结构(碱基对接触图)。它可以预测标准碱基对(Watson-Crick和摆动碱基对)和非标准碱基对,包括假结和其他三级相互作用。
该模型的特点包括:
L x L x 8的特征矩阵。MultiMolecule提供的SPOT-RNA为单个检查点,即multimolecule/spotrna。
| 参数数量(百万) | 浮点运算次数(十亿) | 乘加运算次数(十亿) |
|---|---|---|
| 17.46 | 8642.10 | 4302.16 |
模型文件依赖于 multimolecule 库。您可以使用 pip 安装该库:
pip install multimolecule您可以通过MultiMolecule二级结构分析流程直接使用SPOT-RNA:
import multimolecule # you must import multimolecule to register models
from transformers import pipeline
predictor = pipeline("rna-secondary-structure", model="multimolecule/spotrna")
output = predictor("GGGCUAUUAGCUCAGUUGGUUAGAGCGCACCCCUGAUAAGGGUGAGGUCGCUGAUUCGAAUUCAGCAUAGCUCA")以下是如何使用该模型在 PyTorch 中预测 RNA 二级结构的方法:
import torch
from multimolecule import RnaTokenizer, SpotRnaModel
tokenizer = RnaTokenizer.from_pretrained("multimolecule/spotrna")
model = SpotRnaModel.from_pretrained("multimolecule/spotrna")
sequence = "GGGCUAUUAGCUCAGUUGGUUAGAGCGCACCCCUGAUAAGGGUGAGGUCGCUGAUUCGAAUUCAGCAUAGCUCA"
input = tokenizer(sequence, return_tensors="pt")
output = model(**input)
contact_map = output.contact_map # (1, L, L) base-pair probability matrixSPOT-RNA 采用两阶段迁移学习方法进行训练,用于 RNA 二级结构预测。
L x 4 矩阵。-1。L x 4 外连接为 L x L x 8。N token 从标准四碱基特征中排除。论文中提到训练在 Nvidia GTX TITAN X GPU 上运行。
N_A 超参数搜索:16 到 32 个残差块。D_RES 超参数搜索:32 到 72 个卷积通道。D_BL 超参数搜索:每个方向 128 到 256 个 2D-BLSTM 隐藏单元。N_B 超参数搜索:0 到 4 个全连接块。D_FC 超参数搜索:256 到 512 个全连接隐藏单元。预训练的 TR0 模型在 TR1 上使用相同的架构和优化设置进行重训练。
@article{singh2019rna,
title = "{RNA} secondary structure prediction using an ensemble of two-dimensional deep neural networks and transfer learning",
author = "Singh, Jaswinder and Hanson, Jack and Paliwal, Kuldip and Zhou, Yaoqi",
journal = "Nature Communications",
doi = "10.1038/s41467-019-13395-9",
publisher = "Springer Science and Business Media LLC",
url = "https://doi.org/10.1038/s41467-019-13395-9",
volume = 10,
number = 1,
pages = "5407",
month = nov,
year = 2019,
copyright = "https://creativecommons.org/licenses/by/4.0",
language = "en"
}[!NOTE] 本仓库中分发的制品是 MultiMolecule 项目的一部分。 如果 MultiMolecule 对您的研究有所帮助,请按以下方式引用 MultiMolecule 项目:
@software{chen_2024_12638419,
author = {Chen, Zhiyuan and Zhu, Sophia Y.},
title = {MultiMolecule},
doi = {10.5281/zenodo.12638419},
publisher = {Zenodo},
url = {https://doi.org/10.5281/zenodo.12638419},
year = 2024,
month = may,
day = 4
}有关模型卡片的任何问题或意见,请使用 MultiMolecule 的 GitHub 议题功能。
有关论文/模型的问题或意见,请联系 SPOT-RNA 论文 的作者。
本模型实现采用 GNU Affero General Public License 进行许可。
如需其他条款和说明,请参考我们的 许可证常见问题解答。
SPDX-License-Identifier: AGPL-3.0-or-later