ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

AlphaFold 蛋白质结构预测实战:从氨基酸序列到可靠的三维结构

AlphaFold 蛋白质结构预测实战:从氨基酸序列到可靠的三维结构 AlphaFold 蛋白质结构预测实战从氨基酸序列到可靠的三维结构【免费下载链接】alphafoldOpen source code for AlphaFold 2.项目地址: https://gitcode.com/GitHub_Trending/al/alphafold还在为一份蛋白质结构数据等实验室数周结果晶体质量又不好吗AlphaFold 是 DeepMind 开源的推理代码核心能力是蛋白质结构预测直接给你一条氨基酸序列几小时甚至几分钟内输出它的三维结构精度已接近实验方法。本文按装环境 → 跑第一次预测 → 读懂置信度的顺序带你走完全流程读完你就能在自己的序列上跑出结构并判断这个结果到底能不能用。第一次预测环境搭建与跑通第一个结构 AlphaFold 只支持 Linux需要一块放得下遗传数据库的磁盘和一张 NVIDIA GPU具体看一眼这张表项目要求操作系统仅 Linux不支持 Windows / macOS磁盘下载约 556 GB解压后 2.62 TB推荐 SSDGPU现代 NVIDIA 显卡显存越大能预测的蛋白越大CPU / 内存完整数据库12 vCPU / 85 GB官方测试配置reduced_dbs8 vCPU / 8 GB 即可安装过程可以浓缩成三段命令。先在系统里装好 Docker、NVIDIA Container ToolkitGPU 支持和下载工具aria2多数发行版包管理器里叫aria2然后# 1. 获取代码 git clone https://gitcode.com/GitHub_Trending/al/alphafold.git cd ./alphafold # 2. 下载遗传数据库与模型参数556 GB强烈建议后台运行 # 注意下载目录不能放在仓库目录内否则 docker build 会慢得离谱 scripts/download_all_data.sh /data/alphafold_dbs download.log 2 download_all.log # 3. 构建 Docker 镜像并安装宿主机的 Python 依赖 docker build -f docker/Dockerfile -t alphafold . pip3 install -r docker/requirements.txt先有个心理准备第 2 步才是真正的耗时大头556 GB 按带宽从几小时到几天都有可能。真正快的是预测本身——环境装好后一条 100 残基的蛋白在 A100 上约 5 秒就出结构。装完可以顺手验证容器能看到 GPU输出里没有 GPU 列表就去检查 NVIDIA Container Toolkit 的安装docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi准备一个 FASTA 文件就两行序列标题和序列本体序列换成你自己的sequence_name MKTAYIAKQRQISFVKSHFSR...然后跑第一次预测。参数含义--fasta_paths是输入序列--max_template_date限制可参考的模板结构不想让模型偷看某年之后的实验结构就设在那之前--data_dir指向下载目录--output_dir需要绝对路径python3 docker/run_docker.py \ --fasta_pathsyour_protein.fasta \ --max_template_date2022-01-01 \ --data_dir/data/alphafold_dbs \ --output_dir/home/user/absolute_path_to_the_output_dir常用的可选参数按需要加--model_presetmonomer单体预测默认值复合物改成multimer--db_presetreduced_dbs用精简数据库MSA 搜索更快--num_multimer_predictions_per_model1multimer 默认每模型 5 个种子设 1 快很多--use_precomputed_msastrue复用上一次运行的 MSA只适合调参场景--models_to_relaxnone跳过 Amber 松弛步骤跑完后结果存放在--output_dir下以 FASTA 基名命名的子目录里ranked_0.pdb就是置信度最高的结构怎么判断它靠不靠谱后面结果解读一节细讲。速度参考仅结构预测部分A100不含 MSA 与模板搜索耗时残基数预测时间秒1004.9500291,000962,0004505,00018,824约 5.2 小时核心机制序列是怎么变成三维坐标的你可以把它理解成AlphaFold 先问一圈——拿目标序列去海量已知同源序列和已知相似结构里找线索再由神经网络把这些线索合成三维坐标。具体来说管线分四步走同源序列搜索MSAJackHMMER 依次搜 UniRef90 和 MGnifyHHblits 再搜 BFD 和 UniRef30把找到的同源序列拼成多序列比对。进化上保守的位置往往就是结构骨架的线索。模板搜索HHsearch 在 PDB70 库里找序列相似的候选结构再结合 PDB seqres 库细化从对应的 PDBmmCIF文件取出原子坐标。模板相当于一份长得像的参考答案。模型预测以上信息打包成输入特征5 个不同超参数配置的模型各跑一次内部含 3 轮 recycling 自反馈输出 5 个结构及各自的置信度。排序与松弛5 个结果按 pLDDT 排序最优的一个进 Amber 力场松弛修掉局部的立体化学冲突。换句话说MSA 回答这个区域在进化上保守吗模板回答长得像的蛋白长什么样神经网络的工作是把两类线索拼成坐标。数据管线主要在 alphafold/data/pipeline.py神经网络本体在 alphafold/model/model.py整体流程的编排在 run_alphafold.py。当前版本是 v2.3.0multimer 权重经过重训训练数据延长到 2021-09-30多了约 30%电镜结构是原来的 4 倍训练裁剪从 384 扩大到 640 残基训练链数8→20和 MSA 序列数1,152→2,048也提高了。一句话大复合物的预测比上一代稳了不少。实战场景四个最常用的玩法如何快速预测单个单体蛋白适用手上就一条序列想看它折叠成什么样这是最高频的用法。python3 docker/run_docker.py \ --fasta_pathsmonomer.fasta \ --max_template_date2021-11-01 \ --model_presetmonomer \ --data_dir$DOWNLOAD_DIR \ --output_dir/home/user/output_dir预期产物output_dir/monomer/下的ranked_0.pdb最高置信度结构同目录还有 5 个未松弛/松弛后的模型和置信度数据。如何预测蛋白质复合物同源/异源多聚体适用你知道复合物由哪些链组成。关键是 FASTA 的写法——每条链写一个条目同源三聚体就同一条序列写三遍A2B3 这样的异源体就 A 写两遍、B 写三遍。python3 docker/run_docker.py \ --fasta_pathsmultimer.fasta \ --max_template_date2021-11-01 \ --model_presetmultimer \ --data_dir$DOWNLOAD_DIR \ --output_dir/home/user/output_dir注意两点multimer 依赖 UniProt 数据库完整下载已包含默认每模型 5 个随机种子共 25 个预测赶时间可加--num_multimer_predictions_per_model1。产物同样是ranked_*.pdb另外多一个 PAE 矩阵描述链间相对取向的置信度下一节细讲。如何批量顺序预测多个蛋白适用有一批相互独立的靶点想挨个预测。多个 FASTA 用逗号分隔传给--fasta_paths脚本会依次折叠每个输出目录以文件基名命名所以文件名别重复python3 docker/run_docker.py \ --fasta_pathsmonomer1.fasta,monomer2.fasta \ --max_template_date2021-11-01 \ --model_presetmonomer \ --data_dir$DOWNLOAD_DIR \ --output_dir/home/user/output_dir序列量大到几百条时官方脚本是针对单靶点优化的没有提供 bulk 脚本README 的建议是基于RunModel.predict方法自建并行系统或者直接接受重复调用的开销。如何平衡速度与准确性适用硬件有限或处于探索阶段。优先把--db_presetreduced_dbs加上切到精简数据库需要 8 vCPU / 8 GB 内存 / 600 GB 磁盘数据库也要用精简版下载scripts/download_all_data.sh DOWNLOAD_DIR reduced_dbs。如果结果稳定、还想再榨一点精度可以换monomer_casp148 倍集成但计算量翻 8 倍平均 GDT 只提升 0.1主要用于复现 CASP14。只调参数不改序列时加--use_precomputed_msastrue复用已有 MSA能省掉最贵的那步。结果解读怎么判断预测可不可信 跑完后结果在--output_dir下以 FASTA 基名命名的子目录里。文件不用全看盯这三个ranked_0.pdb置信度最高的结构直接拿进 PyMOL 之类工具看。注意它的 B-factor 列存的是 pLDDT方向和传统 B-factor 相反——数值越高越好拿去分子替换时别搞反。result_model_*.pkl模型原始输出含plddt数组每残基 0–100、ptm标量仅 pTM 模型和predicted_aligned_error矩阵PAE。ranking_debug.json排序用的 pLDDT 值和模型名映射方便回溯为什么选了这条。实用的判断阈值经验值可对照可视化工具里的 pLDDT 色条pLDDT 80通常是折叠良好的区域可以放心用。pLDDT 50–80整体折叠基本可信重点看具体哪些残基偏低。pLDDT 50常见于固有无序区或低置信区别对这里的局部结构过度解读。pTM评估整体结构打包是否可信分数低时即使局部 pLDDT 高域间相对位置也别信。PAE预测对齐误差越低越好两个区域之间数值低说明相对取向可信高则说明这段朝向不确定。对 multimer 来说这是判断两条链界面是否扎实的最直接证据。想确认松弛步骤后还剩多少立体化学冲突看relax_metrics.json少量剩余违规属正常。边界与常见坑哪些情况别用 ⚠️先说清楚它不擅长什么复合物组成未知不知道蛋白是单体还是多聚体比如基因组尺度预测时README 建议用单体模型multimer 模型默认你已知化学计量比如 A2B3。只输出蛋白本身的结构配体结合态、翻译后修饰、核酸复合物都不在这个开源版本覆盖范围内。临床用途README 明确写了输出仅供理论建模不用于临床。成本方面也说实话磁盘开销是最大的门槛下载 556 GB、解压后 2.62 TB放不下就改用 reduced_dbs约 600 GB。显存决定能预测的上限GPU 显存越大支持的蛋白越大。multimer 默认 25 个预测算力不小5,000 残基的复合物光结构部分在 A100 上要 5 小时以上。常见坑按碰到频率排下载目录放进仓库目录里——Docker 构建上下文变大构建慢得离谱DOWNLOAD_DIR一定放仓库外。数据库目录权限不足——HHblits 这类 MSA 工具会报晦涩难懂的外部错误检查目录及子目录的读写权限。Docker 构建时 GPG 签名错误NVIDIA CUDA 源未签名——按 README 安装章节给出的 workaround 处理。想复现 CASP14 结果却复现不了——输出受数据库版本和随机种子影响同一条序列在不同版本数据库下 MSA 可能差很多README 以 T1064 为例。要复现就锁定同版本数据库至少用--max_template_date2020-05-14限制模板。--use_precomputed_msastrue之后换了序列——这个开关不校验序列、数据库和配置是否变过它假定输出目录结构和序列与第一次运行相同。延伸入口不想装环境先在浏览器里试官方简化版 notebooknotebooks/AlphaFold.ipynb可在 Colab 直接运行社区另有 ColabFold 版本精度未经官方验证。v2.3.0 的模型变更细节在docs/technical_note_v2.3.0.mdCASP15 基线预测结果在docs/casp15_predictions.zip可以拿来自检你的结果水平。论文引用BibTeX在 README 末尾的 Citing this work 一节发表时按说明引用 AlphaFold 及如用了AlphaFold-Multimer 两篇文献。环境搭好之后结构预测的边际成本其实很低——你的蛋白在一千残基以内的话一个下午能排着队预测好几个。【免费下载链接】alphafoldOpen source code for AlphaFold 2.项目地址: https://gitcode.com/GitHub_Trending/al/alphafold创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表