ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

5 步跑通 AlphaFold 蛋白质结构预测:手把手把单条 FASTA 序列变成可信 3D 结构

5 步跑通 AlphaFold 蛋白质结构预测:手把手把单条 FASTA 序列变成可信 3D 结构 5 步跑通 AlphaFold 蛋白质结构预测手把手把单条 FASTA 序列变成可信 3D 结构【免费下载链接】alphafoldOpen source code for AlphaFold 2.项目地址: https://gitcode.com/GitHub_Trending/al/alphafold你手上有一条蛋白序列想知道它折叠后是什么三维形状、哪些残基特别可信、哪些区域偏软。过去这些答案大多要等实验结构或者拿相似模板硬套。DeepMind 开源的AlphaFold 2当前版本 2.3.2能直接吃进一条 FASTA 序列吐出带置信度分数的 PDB 结构文件还能预测多链蛋白复合物。这篇文章面向第一次在本地部署它的新手从下载遗传数据库到读懂每一个输出文件一步步带你在 GPU 机器上跑通第一次蛋白质结构预测。读完这篇文章你能做什么在一台 Linux NVIDIA GPU 机器上完成 AlphaFold 2 的完整部署并验证 GPU 可用。输入一条 FASTA 序列输出按置信度排序的ranked_0.pdb并解释 pLDDT 分数。切换--model_preset在单体monomer和多链复合物multimer模式之间切换。根据磁盘空间在full_dbs和reduced_dbs两套数据库配置之间做出选择。看懂输出目录里的结构文件、松弛指标和计时文件判断这次预测是否成功。为什么值得自己部署一套在线预测服务虽然省事但往往拿不到本地这套的复合物支持、调参能力和可复现性。下面是本地部署相对其他路径的差异供你判断方案能给你什么门槛 / 限制实验结构X 射线 / NMR真实的原子级结构需要设备和样品只有目标蛋白恰好被测过时才有在线预测服务快速出图、零部署离线不可用复合物与参数定制能力有限本地部署 AlphaFold 2单体 复合物、可调种子/循环、可复现、离线需要 NVIDIA GPU 和大块磁盘下面这张图对比了两个 CASP14 目标绿色是实验结构蓝色是 AlphaFold 的预测下方 GDT 分数越高代表两者越接近。如果你只关心单条序列、不想折腾大磁盘仓库也提供了一份简化的 Colab notebook见 notebooks/AlphaFold.ipynb可以先用它熟悉概念再决定是否上本地全量部署。⚙️ 环境准备部署前先看这几项AlphaFold 2 只支持 LinuxWindows 和 macOS 都不行。硬件要求取决于你选哪套数据库先用下面的表核对自己机器够不够项目要求操作系统Linux不支持 Windows / macOSGPU现代 NVIDIA GPU显存越大能预测的蛋白越大A100 或同级参考CPU至少 8 核 vCPUreduced_dbs最低门槛内存reduced_dbs约 8 GBfull_dbs建议更高磁盘reduced_dbs约 600 GBfull_dbs约 3 TB强烈建议 SSD容器运行时Docker NVIDIA Container ToolkitGPU 支持两套数据库的差异主要体现在磁盘和速度上数据库预设解压后总大小下载大小特点full_dbs默认约 2.62 TB约 556 GB与 CASP14 一致序列搜索最全reduced_dbs约 600 GB较小用精简版 BFD速度更快、门槛更低提醒数据库目录DOWNLOAD_DIR不要放在 AlphaFold 仓库内部否则构建 Docker 镜像时会把几十上百 GB 的数据拷进构建上下文速度会很难看。 快速上手5 步跑通 AlphaFold 蛋白质结构预测第 1 步装 Docker 和 GPU 容器工具先安装 Docker再装 NVIDIA Container Toolkit并配置好非 root 用户运行 Docker。GPU 是结构预测的主力这一步不能省。第 2 步克隆仓库git clone https://gitcode.com/GitHub_Trending/al/alphafold cd alphafold进入仓库目录后续所有命令都在这里执行。第 3 步下载遗传数据库与模型参数需要系统里装好aria2cDebian 系可用sudo apt install aria2。因为要下几百 GB强烈建议放后台跑scripts/download_all_data.sh DOWNLOAD_DIR download.log 2 download_all.log 磁盘紧张时加第二个参数下精简版scripts/download_all_data.sh DOWNLOAD_DIR reduced_dbs。下载脚本见 scripts/download_all_data.sh。第 4 步验证 GPU 并构建镜像先用一条命令确认容器能拿到 GPU输出里应能列出你的显卡docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi能识别到 GPU 后构建镜像docker build -f docker/Dockerfile -t alphafold .第 5 步安装运行脚本依赖pip3 install -r docker/requirements.txt装完这些部署就齐了可以进入下面的场景实操。 场景实操从单条序列到复合物预测单条蛋白monomer把序列写进 FASTA一个文件只放一条sequence_name MKTAYIAKQRQISFVKSHFSR默认就是单体模式直接跑python3 docker/run_docker.py \ --fasta_pathsmonomer.fasta \ --max_template_date2021-11-01 \ --data_dir$DOWNLOAD_DIR \ --output_dir/home/user/absolute_path_to_output--fasta_paths目标序列的 FASTA 路径。--max_template_date模板结构只取这个日期之前发布的避免偷看答案。--data_dir/--output_dir数据库目录和输出目录输出目录建议填绝对路径。预测蛋白复合物multimer复合物就是同一个 FASTA 文件里放多条链同聚体就是同一条序列重复多次异聚体是不同序列。除了换预设还必须提前下好 UniProt 数据库python3 docker/run_docker.py \ --fasta_pathsmultimer.fasta \ --max_template_date2020-05-14 \ --model_presetmultimer \ --data_dir$DOWNLOAD_DIR \ --output_dir/home/user/absolute_path_to_output--model_presetmultimer会启用 AlphaFold-Multimer 的 5 个模型。多链模式下每个模型默认跑 5 个种子共 25 次预测想省时间可用--num_multimer_predictions_per_model1降到单种子。批量预测与降配数据库多个目标用逗号分隔一次命令顺序折叠同时用精简数据库把硬件门槛拉低python3 docker/run_docker.py \ --fasta_pathsmonomer1.fasta,monomer2.fasta \ --model_presetmonomer \ --db_presetreduced_dbs \ --data_dir$DOWNLOAD_DIR \ --output_dir/home/user/absolute_path_to_output注意所有 FASTA 的文件名不含后缀必须互不相同否则脚本会直接报错因为输出目录就靠这个命名。对大型复合物可加--models_to_relaxall松弛全部模型更慢默认best只松弛置信度最高的那个。 看懂结果输出目录与置信度指标预测结束后--output_dir下会按每个目标建一个子目录结构大致如下target_name/ ranked_0.pdb ... ranked_4.pdb # 按置信度排序ranked_0 最高 relaxed_model_*.pdb # 经 Amber 松弛后的结构 unrelaxed_model_*.pdb # 模型直接输出的原始结构 ranking_debug.json # 排序用的 pLDDT 与模型映射 relax_metrics.json # 松弛后剩余违规等指标 result_model_*.pkl # pLDDT / pTM / PAE 等原始数组 timings.json # 各阶段耗时 msas/ # 中间产物多序列比对结果判断一次预测是否可信主要看三个指标指标存哪怎么读pLDDT0–100result_model_*.pkl与 PDB 的 B-factor 列越高越可信100 最稳也能用来定位低置信区域pTM标量仅 pTM / multimer 模型评估整体结构打包是否靠谱PAEN×N 矩阵仅 pTM / multimer 模型残基对之间的预期误差低值区说明相对位置可信挑结果时的经验法则优先看ranked_0.pdb它是置信度最高、且默认已松弛的版本如果只想要最干净的原始输出再看unrelaxed_model_*.pdb。参考速度单卡 A100不含 MSA 与模板搜索仅结构预测、3 次 recycle残基数预测耗时秒1004.9500291000962000450500018824序列越长耗时增长越快长目标建议用 SSD 并保证足够的 MSA 搜索时间预算。❓ 常见问题磁盘装不下 2.6 TB 的完整数据库怎么办换成reduced_dbs下载脚本加reduced_dbs参数运行时加--db_presetreduced_dbs。它用精简版 BFD把磁盘降到约 600 GB8 核 CPU、8 GB 内存即可。容器识别不到 GPU先确认 NVIDIA Container Toolkit 装对、Docker 能用非 root 用户运行再用第 4 步那条nvidia-smi命令自检。识别不到通常是容器 GPU 透传没配好而不是 AlphaFold 本身的问题。ranked_0.pdb和relaxed_model_*.pdb到底选哪个日常用ranked_0.pdb它按置信度排第一且默认已做 Amber 松弛几何更合理。需要对比松弛前 vs 松弛后时再回看unrelaxed_*.pdb。继续深入以上跑通你就拥有了一个可离线、可调参、支持单体的复合物预测管线。接下来可以顺着三条线展开读 docs/technical_note_v2.3.0.md 了解 v2.3.0 把训练数据截止推到 2021-09-30、训练裁剪从 384 提到 640 残基、多链从 8 条加到 20 条等改动翻 alphafold/model/config.py 里的MODEL_PRESETS看懂每个预设到底由哪几个模型组成需要大批量推理时参考 run_alphafold.py 的predict_structure与 alphafold/data/pipeline.py 的预处理逻辑做并行扩展。输出仅用于理论建模请结合置信度谨慎解读。【免费下载链接】alphafoldOpen source code for AlphaFold 2.项目地址: https://gitcode.com/GitHub_Trending/al/alphafold创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表