AlphaFold 蛋白质结构预测:从一条序列到可信三维结构的完整实操路径
AlphaFold 蛋白质结构预测从一条序列到可信三维结构的完整实操路径【免费下载链接】alphafoldOpen source code for AlphaFold 2.项目地址: https://gitcode.com/GitHub_Trending/al/alphafold手上只有一条 FASTA 氨基酸序列想在两天内拿到一份可信的三维结构还要知道哪些残基可信、哪些只是猜测AlphaFoldDeepMind 开源的 AlphaFold 2 推理流水线做的事就一件输入蛋白质序列输出 5 个候选结构、按置信度排序的 PDB 文件和逐残基的 pLDDT 分数。 它解决了什么这个仓库提供 AlphaFold v2 的完整推理代码外加处理多链复合物的 AlphaFold-Multimer 模块。输入是一个 FASTA 文件输出是ranked_0.pdb这样的结构文件同时附带result_model_*.pkl里的原始模型输出含 pLDDT、pAE、pTM 等置信度数组。与实验方法相比它的优势可以直接量化维度X 射线晶体学/冷冻电镜AlphaFold单目标耗时数周到数月A100 上 300 残基约 13 秒不含 MSA 搜索失败场景无法结晶/纯化的蛋白直接无解低置信度区域会显式标注而不是整体失败批量成本每个结构单独实验一条命令循环即可README 给出 5000 残基约 5.2 小时的参考值官方在 CASP14蛋白质结构预测的年度竞赛中用它拿下了多个目标下图两个目标域分别得到 GDT 90.7 和 93.3GDT-TS 是 0–100 的模拟相似度分越接近 100 越接近实验结构。AlphaFold 在 CASP14 中两个目标的结构预测GDT 分别为 90.7 和 93.3⏱️ 10 分钟跑通第一个结果先明确硬件底线官方验证配置12 vCPU、85GB 内存、A100Linux不支持其他系统 一块 NVIDIA GPUDocker 和 NVIDIA Container Toolkitaria2下载工具磁盘完整数据库 3TB用reduced_dbs预设最低 600GB、8 vCPU、8GB 内存最小路径四步下载体积大务必放后台跑git clone https://gitcode.com/GitHub_Trending/al/alphafold cd alphafold # 下载数据库reduced_dbs 表示精简版约 600GB scripts/download_all_data.sh /data/af_dbs reduced_dbs dl.log 21 docker build -f docker/Dockerfile -t alphafold . pip3 install -r docker/requirements.txt准备一个单序列 FASTA然后python3 docker/run_docker.py \ --fasta_pathsmonomer.fasta --max_template_date2022-01-01 \ --model_presetmonomer --db_presetreduced_dbs \ --data_dir/data/af_dbs --output_dir/home/user/output闭环完成跑完在/home/user/output/monomer/下拿到ranked_0.pdb置信度最高的预测结构。注意DOWNLOAD_DIR不要放在仓库目录里否则 Docker 构建上下文会被拖慢。 核心机制拆解MSA 搜索从数据库里找进化证据做什么为目标序列构建 MSA多序列比对即把目标蛋白与数据库里的同源序列逐列对齐。怎么做jackhmmer先扫 UniRef90 和 MGnify再用hhblits迭代搜 BFD/UniRef30结果去重后送入模型同时hhsearch在 PDB70 中检索最多 20 个结构模板。为什么同一位置上的保守突变携带结构约束——如果两个位置的残基总是一起变化它们大概率在空间上靠近。MSA 的深度直接决定预测上限这也是完整库2.62TB和精简库的核心差异。Evoformer StructureModule网络如何折叠做什么从序列特征生成原子坐标。怎么做EvoformerIteration定义在 alphafold/model/modules.py交替精化 MSA 行表征和残基对表征把进化信息逐步转成几何约束StructureModulealphafold/model/folding.py在此基础上迭代预测全原子结构每轮用当前的距离图distogram残基对距离的概率分布和 pLDDT 头反馈修正。为什么这样做单次前向得到的结构往往带局部穿模和键角异常多轮预测—修正迭代让输出逐步收敛到物理合理的构象和数值方法里的松弛过程是同一个思想。Amber 弛豫与模型排序从网络输出到可交付结构做什么把 5 个独立模型的输出变成 1 个最优交付结构。怎么做用 pLDDT逐残基置信度0–100对 5 个模型排序默认只对排名第一的模型跑 OpenMM Amber 力场的能量最小化消除键长键角违例见 alphafold/relax/relax.py。为什么网络输出对局部几何不严格弛豫后结构才能直接用于对接、分子动力学等下游计算--models_to_relaxall可放宽为全部松弛代价是时间。 一个完整场景实战单链酶的结构预测准备一条约 300 残基的酶序列FASTA 内容即target_name 一行序列。数据库用reduced_dbs见上节。执行python3 docker/run_docker.py \ --fasta_pathsenzyme.fasta \ --max_template_date2022-01-01 # 只用该日期前的模板 --model_presetmonomer \ --db_presetreduced_dbs \ --data_dir/data/af_dbs --output_dir/home/user/output300 残基在 A100 上的纯推理约 13 秒加上 MSA 搜索和弛豫单卡几分钟到十几分钟量级。调参如果第一次跑完想只换参数比如弛豫开关、模型预设重跑最耗时的 MSA 搜索不必重复python3 docker/run_docker.py \ --fasta_pathsenzyme.fasta --max_template_date2022-01-01 \ --model_presetmonomer_ptm \ --use_precomputed_msastrue \ --models_to_relaxnone --data_dir/data/af_dbs \ --output_dir/home/user/output--use_precomputed_msastrue直接复用上次写到output_dir的 MSA 文件要求序列和输出目录不变monomer_ptm预设额外输出 PAE 矩阵--models_to_relaxnone跳过弛豫适合快速对比。拿到结果输出目录结构固定——enzyme/ ranked_{0..4}.pdb # 按置信度排序的 5 个结构 ranking_debug.json # 每个模型的 pLDDT relax_metrics.json # 弛豫后剩余的几何违例 result_model_*.pkl # 原始输出plddt、PAE、pTM 数组 msas/ # 各数据库的命中文件 timings.json # 各阶段耗时交付文件是ranked_0.pdbpLDDT 就存在 PDB 的 B 因子列里注意方向和普通 B 因子相反值越高越好。 读懂输出别只看分数指标含义看到这个数值你该怎么做pLDDT ≥ 90H 级结构高度可信接近实验精度直接用于对接、设计等下游任务pLDDT 70–90M 级局部结构可信可用但功能位点建议对照同源实验结构核验pLDDT 50–70L 级方向性正确但细节不可靠只看大尺度拓扑别依赖具体原子位置pLDDT 50D 级大概率是无序区或预测失败把这段当作柔性连接区处理不要建模PAE 对角块低、非对角块高域内可靠域间相对位置不确定结构不能当成刚体整体使用做对接前先分域pTM标量整体折叠/域堆积的全局置信度与 pLDDT 交叉验证pLDDT 均值高但 pTM 低说明整体组装可疑relax_metrics.json 违例数弛豫后剩余的键长键角问题数量大时检查该区域 pLDDT大概率本就低置信分级标准来自代码里的_confidence_categoryD/L/M/H 四档逐残基的 JSON 由 alphafold/common/confidence.py 生成和上面表格一一对应。️ 踩坑手册症状Docker 构建奇慢构建上下文巨大原因DOWNLOAD_DIR放进了仓库目录数据库文件全被塞进构建上下文。 解法数据库目录放仓库外例如/data/af_dbs通过--data_dir传入。症状MSA 工具报出含糊的外部错误原因下载目录或数据库文件缺少读写权限。 解法sudo chmod 755 --recursive $DOWNLOAD_DIR后重跑。症状多序列 FASTA 用monomer预设跑结果不对原因FASTA 里含多条序列时会被按多链复合物折叠monomer预设并不合适。 解法显式加--model_presetmultimer且需已下载 UniProt 和 PDB seqres 库。症状2000 残基的大蛋白 OOM 或跑数小时原因显存随序列长度增长5000 残基推理就要约 5.2 小时A100不含 MSA。 解法换更大显存的卡复合物场景用--num_multimer_predictions_per_model1把默认 25 次预测降到 5 次精度损失很小小蛋白批量推理可加大alphafold/model/config.py里的global_config.subbatch_size。 效率与资源调优数据库预设按场景切日常用--db_presetreduced_dbs600GB 磁盘、8 vCPU、8GB 内存可跑追求 MSA 深度再上full_dbs2.62TB。收益硬件门槛从工作站降到普通云主机。数据库放 SSDMSA 搜索阶段对磁盘 IO 敏感官方明确建议 SSD。收益jackhmmer/hhblits 阶段显著提速这部分往往比 GPU 推理还慢。重复调参用--use_precomputed_msastrue同序列多次运行时跳过最贵的 MSA 搜索。收益调参迭代从小时级压到分钟级。 下一步怎么走✅ 通读 docs/technical_note_v2.3.0.md搞清 v2.3.0 相对 CASP14 模型的结构改动✅ 用--model_presetmultimer跑一个蛋白复合物或同源寡聚体对比 PAE 矩阵里的界面区域✅ 对照docs/casp15_predictions.zip里的基线预测理解人工干预对结果的影响范围✅ 批量场景基于RunModel.predict自写循环或用make_fixed_size把输入 pad 成统一尺寸减少编译次数✅ 把relax_metrics.json和timing.json纳入自己的质检流程而不是只看 pLDDT 均值把一条 300 残基的序列丢进reduced_dbs预设跑一遍是你验证整条流水线最快的方式——结构出图后剩下的都是参数问题。【免费下载链接】alphafoldOpen source code for AlphaFold 2.项目地址: https://gitcode.com/GitHub_Trending/al/alphafold创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
上一篇/下一篇内容由系统自动关联
返回资讯列表 →