基于碱基分辨率的卷积神经网络,用于从DNA序列预测PRO-cap转录起始信号。
本项目是Kelly Cochran等人发表的论文《Dissecting the cis-regulatory syntax of transcription initiation with deep learning》(https://doi.org/10.1101/2024.05.28.596138)的非官方实现。
ProCapNet的官方代码库位于kundajelab/ProCapNet。
[!TIP] MultiMolecule团队已确认,所提供的模型和检查点能够生成与原始实现相同的中间表示。
ProCapNet的发布团队未为本模型撰写此模型卡片,本模型卡片由MultiMolecule团队编写。
ProCapNet是一种卷积神经网络(CNN),经训练可从原始DNA序列预测碱基分辨率的PRO-cap转录起始信号。其架构很大程度上借鉴了Jacob Schreiber的bpnet-lite,并共享BPNet的膨胀卷积主干以及图谱/计数分解机制。输出为双链(正链/负链),具有可映射性感知,并通过ProCapNetForProfilePrediction.postprocess进行重建。有关训练过程的更多信息,请参阅训练详情部分。
| 输入长度 | 图谱长度 | 层数 | 隐藏层大小 | 参数数量(百万) | 浮点运算次数(十亿) | 乘加运算次数(十亿) |
|---|---|---|---|---|---|---|
| 2114 | 1000 | 9 | 512 | 6.43 | 27.17 | 13.58 |
浮点运算次数(FLOPs)和乘加运算次数(MACs)是在标准的2114 bp ProCapNet输入窗口上测量的。
模型文件依赖于 multimolecule 库。您可以使用 pip 安装它:
pip install multimolecule您可以直接使用该模型预测 DNA 序列的 PRO-cap 转录起始图谱:
>>> from multimolecule import DnaTokenizer, ProCapNetForProfilePrediction
>>> tokenizer = DnaTokenizer.from_pretrained("multimolecule/procapnet")
>>> model = ProCapNetForProfilePrediction.from_pretrained("multimolecule/procapnet")
>>> output = model(**tokenizer(("ACGT" * 529)[:2114], return_tensors="pt"))
>>> output.keys()
odict_keys(['profile_logits', 'count_logits'])
>>> output["profile_logits"].shape
torch.Size([1, 1000, 2])
>>> output["count_logits"].shape
torch.Size([1, 1])
>>> track = model.postprocess(output)
>>> track.shape
torch.Size([1, 1000, 2])重组后的track是可用的基准分辨率预测结果。最后一个维度堆叠了num_strands(正链、负链)的PRO-cap信号预测值。
(profile_logits, count_logits);通过ProCapNetForProfilePrediction.postprocess重组基准分辨率的PRO-cap轨迹ProCapNet经过训练,可预测人类细胞系中基准分辨率的双链PRO-cap转录起始信号。
已发布的ProCapNet模型使用约2 kb的基因组窗口,基于PRO-cap信号进行训练。K562模型的训练数据来源于K562 PRO-cap实验ENCSR261KBX。训练和测试区域、观测信号轨迹以及贡献分数均通过同一ENCODE发布版本分发。
模型采用复合损失函数进行训练:对每个位置的双链图谱形状采用(链合并的)多项分布负对数似然损失,同时对log(count + 1)总计数采用均方误差回归损失。
@article{cochran2024procapnet,
author = {Cochran, Kelly and Yin, Melody and Mantripragada, Anika and Schreiber, Jacob and Marinov, Georgi K. and Shah, Sagar R. and Yu, Haiyuan and Lis, John T. and Kundaje, Anshul},
title = {Dissecting the cis-regulatory syntax of transcription initiation with deep learning},
journal = {bioRxiv},
year = 2024,
doi = {10.1101/2024.05.28.596138},
note = {Preprint}
}[!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。
有关论文/模型的问题或意见,请联系 ProCapNet 论文 的作者。
本模型实现采用 GNU Affero General Public License 许可证。
如需其他条款和说明,请参考我们的 许可证常见问题。
SPDX-License-Identifier: AGPL-3.0-or-later