HuggingFace镜像/mmsplice
模型介绍
文件和版本
分析

MMSplice

遗传变异对剪接影响的模块化建模

免责声明

本项目是 Jun Cheng 等人发表的论文 MMSplice: modular modeling improves the predictions of genetic variant effects on splicing 的非官方实现。

MMSplice 的官方代码库位于 gagneurlab/MMSplice_MTSplice。

[!TIP] MultiMolecule 团队已确认,所提供的模型和检查点能够生成与原始实现相同的中间表示。

MMSplice 的发布团队未为本模型撰写此模型卡片,本模型卡片由 MultiMolecule 团队编写。

模型详情

MMSplice 是一个用于预测遗传变异对前体 mRNA 剪接影响的模块化神经网络。它将外显子及其侧翼内含子分解为五个区域,并通过独立的小型卷积子网络对每个区域进行评分。为了估计变异效应,模型会同时在参考序列和替代序列上运行,每个模块的得分差异通过固定的线性模型组合成 delta-logit-PSI 剪接效应评分。有关训练过程的更多信息,请参阅 训练详情 部分。

模型规格

模块数量参数数量(百万)浮点运算次数(百万)乘加运算次数(百万)
50.0575.712.79

(浮点运算次数和乘加运算次数基于 220 bp 的外显子及侧翼序列输入进行测量。)

链接

  • 代码:multimolecule.mmsplice
  • 数据:包含 MPRA 外显子跳跃变异效应测量数据的人类剪接位点和外显子数据
  • 论文:MMSplice: modular modeling improves the predictions of genetic variant effects on splicing
  • 开发团队:Jun Cheng、Thi Yen Duong Nguyen、Kamil J. Cygan、Muhammed Hasan Çelik、William G. Fairbrother、Žiga Avsec、Julien Gagneur
  • 模型类型:具有五个区域特异性子网络的模块化一维卷积神经网络,用于剪接变异效应预测
  • 原始代码库:gagneurlab/MMSplice_MTSplice

用法

模型文件依赖于 multimolecule 库。您可以使用 pip 安装它:

pip install multimolecule

直接使用

模块分数

>>> import torch
>>> from multimolecule import RnaTokenizer, MmSpliceForSequencePrediction

>>> tokenizer = RnaTokenizer.from_pretrained("multimolecule/mmsplice")
>>> model = MmSpliceForSequencePrediction.from_pretrained("multimolecule/mmsplice")
>>> _ = model.eval()
>>> left_intron = "A" * 100
>>> exon = "C" * 20
>>> right_intron = "G" * 100
>>> reference = tokenizer(left_intron + exon + right_intron, add_special_tokens=False, return_tensors="pt")
>>> output = model.model(**reference)
>>> output["logits"].shape
torch.Size([1, 5])

变异效应

>>> import torch
>>> from multimolecule import RnaTokenizer, MmSpliceForSequencePrediction

>>> tokenizer = RnaTokenizer.from_pretrained("multimolecule/mmsplice")
>>> model = MmSpliceForSequencePrediction.from_pretrained("multimolecule/mmsplice")
>>> _ = model.eval()
>>> left_intron = "A" * 100
>>> exon = "C" * 20
>>> right_intron = "G" * 100
>>> reference = tokenizer(left_intron + exon + right_intron, add_special_tokens=False, return_tensors="pt")
>>> alternative_exon = exon[:10] + "U" + exon[11:]
>>> alternative = tokenizer(left_intron + alternative_exon + right_intron, add_special_tokens=False, return_tensors="pt")
>>> output = model(
...     reference["input_ids"],
...     alternative_input_ids=alternative["input_ids"],
... )
>>> output["logits"].shape
torch.Size([1, 1])

接口

  • 输入长度:外显子序列,包含100 nt上游内含子上下文和100 nt下游内含子上下文
  • 标记化:禁用特殊标记;嵌入层将 A/C/G/U 标识符映射到四个上游通道,并将 N、填充、特殊和未知标记映射到全零列
  • 输出(仅参考调用,input_ids / inputs_embeds):每个模块的得分向量 logits,形状为 (batch_size, 5)

变异效应

  • 参考+替代调用(同时传入 alternative_input_ids / alternative_inputs_embeds):额外返回 alternative_logits 和每个模块的 delta_logits = alternative_logits - logits
  • MmSpliceForSequencePrediction:需要同时提供参考和替代序列;返回组合的标量 delta-logit-PSI 得分,形状为 (batch_size, 1)

训练详情

MMSplice 被训练为五个独立的模块,用于处理剪接数据,这些模块通过线性模型组合,以预测变异对剪接包含百分比(PSI)的影响。

训练数据

受体、供体、外显子和内含子模块的训练数据来源于人类参考转录本的剪接位点和外显子数据。组合线性模型是根据外显子跳跃变异的大规模平行报告基因测定(MPRA)进行拟合的。

训练流程

预训练

每个模块都以序列到标量的目标进行训练,对其所在区域进行评分。然后,模块得分(及其参考/替代的差异)通过一个固定的线性模型组合,形成 delta-logit-PSI 剪接效应得分。

引用

@article{cheng2019mmsplice,
  title     = {MMSplice: modular modeling improves the predictions of genetic variant effects on splicing},
  author    = {Cheng, Jun and Nguyen, Thi Yen Duong and Cygan, Kamil J and {\c{C}}elik, Muhammed Hasan and Fairbrother, William G and Avsec, {\v{Z}}iga and Gagneur, Julien},
  journal   = {Genome Biology},
  volume    = 20,
  number    = 1,
  pages     = {48},
  year      = 2019,
  publisher = {Springer},
  doi       = {10.1186/s13059-019-1653-z}
}

[!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 issues。

有关论文/模型的问题或意见,请联系 MMSplice 论文 的作者。

许可证

本模型实现采用 GNU Affero General Public License 许可证。

如需其他条款和说明,请参考我们的 许可证常见问题。

SPDX-License-Identifier: AGPL-3.0-or-later