❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!
🥦 微信公众号|搜一搜:蚝油菜花 🥦
🧪 「Western Blot再见!MIT蛋白质AI颠覆实验室:亚细胞定位5分钟出结果,还能设计「导航蛋白」」
大家好,我是蚝油菜花。如果你也在生物实验室经历过——
- 👉 花3周做荧光标记,只为一个蛋白质的亚定位
- 👉 熬夜设计突变体,却被导师说「定位预测不靠谱」
- 👉 想定制靶向蛋白,却卡在序列设计第一步…
今天介绍的 MIT ProtGPS 将彻底改变游戏规则!这个登上《Nature Machine Intelligence》的AI模型,只需输入氨基酸序列:
- ✅ 5分钟预测12种亚细胞定位概率
- ✅ 自动生成能精准导航到核仁/核斑点的蛋白质
- ✅ 揪出导致定位异常的致病突变
现在,连诺奖得主实验室都在用它加速癌症靶点研究——你的移液枪准备好迎接AI革命了吗?
🚀 快速阅读
ProtGPS 是一个基于深度学习的蛋白质语言模型,主要用于预测蛋白质在细胞内的亚细胞定位。
- 核心功能:预测蛋白质在12种不同亚细胞区域的分布概率,生成具有特定亚细胞定位的新型蛋白质序列。
- 技术原理:基于 ESM2 架构的 Transformer 模型,结合神经网络分类器,学习蛋白质序列中的复杂模式和相互关系。
ProtGPS 是什么
ProtGPS(Protein Localization Prediction Model)是由麻省理工学院(MIT)和怀特黑德生物医学研究所联合开发的蛋白质语言模型。该模型旨在通过分析蛋白质的氨基酸序列,预测其在细胞内的亚细胞定位。ProtGPS 基于进化尺度的蛋白质变换器(Transformer)架构,能够学习蛋白质序列中的复杂模式和相互关系,从而预测蛋白质在12种不同亚细胞区域(如核仁、核斑点等)的分布概率。
ProtGPS 的独特之处在于它不仅能预测蛋白质的定位,还能生成新的蛋白质序列,使其特异性地组装到特定的亚细胞区域。此外,ProtGPS 还可以识别导致蛋白质亚细胞定位改变的致病突变,为理解细胞功能和疾病机制提供了新的工具和视角。
ProtGPS 的主要功能
- 预测蛋白质定位:预测蛋白质在12种不同亚细胞区域(如核仁、核斑点、应激颗粒等)的定位概率。
- 设计特异性蛋白质:生成新的蛋白质序列,使其特异性地组装到目标亚细胞区域(如核仁或核斑点)。
- 识别致病突变:分析突变对蛋白质亚细胞定位的影响,预测致病突变是否会导致蛋白质分布异常。
ProtGPS 的技术原理
- 基于 Transformer 的序列学习:ProtGPS 使用 ESM2(Evolutionary Scale Model 2)架构,这是一种基于 Transformer 的蛋白质语言模型。它能够同时学习输入序列中所有氨基酸之间的关系,捕捉蛋白质序列中的复杂模式和相互作用。
- 神经网络分类器联合训练:将 ESM2 与神经网络分类器联合训练,分类器的任务是根据 ESM2 提取的特征,预测蛋白质在不同亚细胞区域的定位概率。训练数据集包括5480个人类蛋白质序列,这些序列被注释为属于12种不同的亚细胞区域。
- 生成蛋白质序列的算法:为了设计具有特定亚细胞定位的蛋白质,ProtGPS 使用马尔可夫链蒙特卡洛(MCMC)算法。该算法在生成蛋白质序列时考虑了蛋白质的化学空间和内在无序性,确保生成的序列符合自然蛋白质的分布,并能特异性地定位到目标亚细胞区域。
- 致病突变分析:ProtGPS 通过比较野生型和突变型蛋白质的定位预测结果,识别那些导致蛋白质分布改变的突变。使用信息论中的 Shannon 熵和 Wasserstein 距离来量化突变对蛋白质定位预测不确定性的影响。
如何运行 ProtGPS
1. 安装环境
首先,安装 mamba(推荐)或 conda:
bash Miniforge-pypy3-Linux-x86_64.sh
然后创建并激活环境:
mamba env create -f environment.yml
mamba activate protgps
2. 下载模型检查点
从zenodo
下载模型检查点并解压到 checkpoints/protgps
文件夹。
3. 加载预训练模型
加载 ESM2 和 DR-BERT 模型:
import torch
torch.hub.set_dir("checkpoints/esm2")
model, alphabet = torch.hub.load("facebookresearch/esm:main", "esm2_t6_8M_UR50D")
from transformers import AutoModel, AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("Dr-BERT/DrBERT-7GB", cache_dir="checkpoints/drbert")
model = AutoModel.from_pretrained("Dr-BERT/DrBERT-7GB", cache_dir="checkpoints/drbert")
4. 训练
运行以下命令进行训练:
python scripts/dispatcher.py --config configs/protein_localization/full_prot_comp_pred.json --log_dir /path/to/logdir
5. 推理
编辑并运行 notebook/Predict.ipynb
笔记本来进行预测。
6. 生成蛋白质
生成具有特定亚细胞定位的蛋白质:
cd esm/examples/lm-design
./generate_nucleolus.sh
./generate_nuclear_speckle.sh
7. 分析
分析脚本位于 notebook/Analysis.ipynb
,使用的数据可以从zenodo repository
获取。
- zenodo repository:https://zenodo.org/records/14795445
资源
- GitHub 仓库:https://github.com/pgmikhael/protgps
❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!
🥦 微信公众号|搜一搜:蚝油菜花 🥦