SuperAPI AI 工具集

ai-for-science-deepfri-tf-npu

智能体与模型

查看项目

更新于 10-15 17:19

技能介绍

用途:将蛋白质功能预测框架 DeepFRI(原始实现基于 TensorFlow/Keras)以 TF Community 方式(TF 2.6.5 + npu_device)直接部署到昇腾 NPU,无需转换为 PyTorch。相比 TF→PyTorch 迁移,代码改动极小(仅添加初始化),精度风险低,但需在 aarch64 上源码编译 TF。

主要能力:支持 DeepCNN(序列输入)与 DeepFRI GCN(接触图+序列)两类模型,覆盖 MF、BP、CC、EC 四种 Ontology;提供 CPU 与 NPU 精度对比验证方法。

使用方式:前置条件为 Ascend910 系列、CANN ≥ 8.0、Python 3.8.x、TensorFlow 2.6.5、npu_device 0.1(来自 Ascend-cann-tfplugin 8.0.RC3)、Bazel 3.7.2。步骤包括:克隆仓库并下载 CPU 版预训练模型;搭建 TF 2.6.5 + npu_device 环境(详见 ascend-tf-community Skill);在 predict.py 添加 --npu 参数与 npu_device.open().as_default();运行推理,如 python predict.py --npu -s '序列' -ont mf -o npu_result -v;用 verify_accuracy.py 对比 CPU 与 NPU 结果。GCN 模型需在 Predictor.py 添加 CuDNNLSTM→标准 LSTM 自动兼容加载逻辑。

适用场景:纯推理部署、快速验证、希望与原始 TF 代码保持同步的项目。

限制:aarch64 必须源码编译 TF 2.6.5;GPU 版预训练模型中的 CuDNNLSTM 在 TF 2.6 上无法加载,需使用 CPU 版模型;NPU 默认 HF32 混合精度,绝对分数有约 1e-2 差异(预测排名一致);首次推理有算子编译开销;部分动态 shape 算子可能 fallback 到 CPU。