基准测试#

准确率#

准确率基准测试衡量 ProteinMPNN 从已知蛋白质的 3D 结构中预测氨基酸序列的能力。此基准测试也称为序列恢复率。

序列恢复率是评估 ProteinMPNN 性能的关键指标,因为它量化了神经网络生成与自然界中发现的天然序列高度相似的蛋白质序列的能力。此指标通过比较 ProteinMPNN 生成的设计氨基酸序列与目标蛋白质的相应天然序列来计算。

序列恢复率确定了在设计序列中,每个位置与天然序列相同的残基百分比。较高的序列恢复率表明该模型更成功地捕捉到定义天然蛋白质的内在序列特征和进化约束,这表明设计出的蛋白质更可能采用正确的结构和功能。

例如,ProteinMPNN 已证明平均序列恢复率达到 52.4%,这显著高于传统方法(如 Rosetta)实现的 32.9% 恢复率,突显了其在准确设计模仿天然蛋白质的蛋白质序列方面的卓越能力。[1][2]

性能#

ProteinMPNN 运行时间取决于许多因素,例如输入中的原子数量、链的数量、需要生成的序列数量、提供的温度列表等等。

作为整体性能的良好代表,我们将 ProteinMPNN 的主要性能特征衡量为每秒平均氨基酸数量。

示例基准测试脚本#

此 NIM 附带一个简单的基准测试脚本,可以测量准确率和性能。它有助于确保神经网络在一些已知蛋白质上提供合理的结果。

该脚本已打包在 NIM 的 Docker 镜像中。您可以使用以下命令查看和研究基准测试

docker run --entrypoint cat nvcr.io/nim/ipd/proteinmpnn:1.0.0 /opt/benchmark.py

要执行基准测试,请按照以下步骤操作

  1. 确保 NIM 正在运行,如快速入门指南中所述。

  2. 基准测试脚本会自动下载测试数据集。为了节省时间和带宽,建议提供本地缓存目录。这样,脚本将能够重用已下载的数据。执行以下命令设置缓存目录。

export LOCAL_NIM_CACHE=~/.cache/nim
  1. 执行基准测试。

docker run -it --net host -v "$LOCAL_NIM_CACHE":/home/nvs/.cache/nim \
       nvcr.io/nim/ipd/proteinmpnn:1.0.0 /opt/benchmark.py