You need to enable JavaScript to run this app.
导航

如何在火山引擎中使用 NVIDIA Clara 平台--以 AutoDock 为例

最近更新时间2023.04.19 16:41:35

首次发布时间2022.07.04 17:29:01

背景

AI技术已经成为医疗健康和生命科学领域发展的重要驱动力,以计算机视觉、自然语言处理、机器学习等为代表的人工智能技术已广泛渗透于医学影像、健康管理、生信分析、医疗信息化、药物研发、临床科研等多样化场景中。
生物医学健康行业在应用AI技术时,往往存在一些难点,例如IT建设前期投入大、模型训练耗费大量算力、搭建和优化专用模型训练环境耗时较多等,这些都会影响企业的创新研究效率和业务开展。
火山引擎机器学习平台与NVIDIA技术合作,通过公有云、专业工具的结合,为企业解决上述难题。针对算力需求高的领域,提供海量高性能、价格优惠的算力,云原生模型训练与推理平台,以及NVIDIA针对行业特有任务优化打磨的系列工具。减少企业前期IT基础资源的投入,并可以快速搭建行业专用的环境,使企业可以将更多资源集中在算法开发、产品迭代,以加速市场布局,提升公司发展速度。
通过NVIDIA与火山引擎的合作,NVIDIA Clara 平台成为火山引擎机器学习平台的组成部分,有助于创建训练任务、在线服务和其他工作负载,其中包含可通过NGC(NVIDIA GPU Cloud)下载的医疗健康相关的软件工具。本文将以常见的 AutoDock 工具为例,介绍如何在平台上引入 NGC。

方案价值

本文档可以帮助用户快速在火山引擎机器学习平台中,使用 NVIDIA Clara 的镜像。本方案的价值主要在于:

  • 利用 NVIDIA Clara 加速研发: 作为医疗健康和生命科学领域的智能计算引擎,NVIDIA Clara 为加速基因组分析、药物发现、NLP、医学图像和医疗设备提供 SDK、容器等工具集。这些工具有助于快速启动AI模型开发并加速工作流程。

  • 按需使用,降低成本: 火山引擎机器学习平台提供的海量算力,可以供企业按需使用、按量付费,尤其在业务快速发展期、算力使用量不稳定的情况下,可以更加灵活的满足算力需求。

  • 减少环境适配和运维工作量: 火山引擎的技术团队将与NVIDIA合作,保障工具适配性,陆续对更多工具进行验证和优化、对客户进行技术支持。因此,企业不必费心搭建复杂的环境,从而减少后续在系统运维方面的投入。

使用场景

作为医疗保健和生命科学领域的应用程序框架,NVIDIA Clara 为开发人员、数据科学家、生物信息学家、人工智能工程师和研究人员提供了多个软件库、SDK 和应用程序。
在火山引擎机器学习平台中创建训练任务时,可以使用NVIDIA提供的公网镜像。
经过验证的镜像包括:

  • AutoDock AutoDock-GPU套件是一系列包含在 NVIDIA Clara Discovery 中,还在不断扩展的、用于分子对接和虚拟筛选的方法的集合。主要用于基于结构的药物发现和探索生物分子结构和功能的基本机制。AutoDock-GPU的更多信息,请访问 https://autodock.scripps.edu官方 GitHub 页面

  • GROMACS(GROningen MAchinefor Chemical Simulations)是一整套分子动力学模拟功能程序包,也包含在 Clara Discovery 中,能广泛用于模拟研究蛋白质、脂质、DNA 及RNA 等生物分子的性质。与其它分子动力学模拟软件相比,GROMACS 具有诸多优势, 包括:运算速度快、软件开源免费、力场种类丰富、软件程序包功能多而且强大等。GROMACS 不断在核心算法上进行优化以实现模拟效率的稳步提升,同时还对并行模式进行扩展以适应GPU等硬件加速平台。

  • MONAI 是一个用于医学成像的开源 AI 框架,而 NVIDIA FLARE 是一个用于创建联邦学习范例的 SDK。采用简单易用的CLI界面,可以让开发者更快的构建起数据标注、训练和调整的AI应用开发流程。除此之外,还提供预先训练好的模型,可以通过迁移学习,联邦学习和AutoML等技术快速开启医疗图像AI的开发。

如果有其他镜像需求,可以通过工单或客服告知,火山引擎机器学习平台将陆续验证、适配更多NVIDIA镜像。
更多工具请访问NVIDIA Clara 网站,了解可加快基因组学、药物发现、医学成像、NLP 和医疗仪器工作流程的工具。

相关概念

使用前提

  • 注册、激活 NGC 账户并创建 NGC 的 API 密钥(用于拉取 NGC 的镜像),详见NGC入门指南

    • 由于在 NGC 中无法二次查看用户名和密钥,建议妥善保管或保存至本地;一旦重新获取密钥,原始密钥将会失效。
  • 机器学习平台【队列】中存在 >= 1 个有权限的队列。

操作步骤

  1. 下载示例数据示例代码。解压数据并把示例代码的文件 check.py 移动至示例数据 AD-GPU_set_of_42-master 目录中。

  2. 登录机器学习平台,单击左侧导航栏中的【自定义任务】进入列表页面。

  3. 单击列表页面左上方的【+ 创建自定义任务】进入创建页面。

  4. 在创建页面填写相关配置项:

    • 填写任务名称,如test_nv_image
    • 选择镜像,在弹出的抽屉页中选择公网镜像,在仓库类型处选择私有,在镜像地址处填写 NGC 中 AutoDock 的镜像地址 nvcr.io/hpc/autodock:2020.06,然后依次填写 NGC 的用户名和密钥。
      • 拉取 NGC 镜像时用户名为常量 $oauthtoken
      • 若想避免公网延时及登录信息重复填写,建议将 NGC 的镜像迁移至平台镜像仓库统一管理,具体步骤参考迁移外部镜像到镜像仓库,后续仅需选择自定义镜像中的 AutoDock 镜像即可。

    • 上传数据及代码,在选择源代码抽屉页中选择选择文件夹并上传AD-GPU_set_of_42-master文件夹。

    • 填写如下入口命令。

    cd /root/code/AD-GPU_set_of_42-master && gunzip ./data/*/*map.gz && python3 check.py
    
    • 在所属队列处选择预付费队列,并选择某个包含了 GPU 的队列。

      • 如果当前已经购买过资源组但没有可用队列时,请先创建队列

      • 如果尚未购买过资源组,请创建资源组后再创建队列。

    • 在实例配置中选择自定义,并选择某个 GPU 类型的实例规格,如ml.g1v.2xlarge 提交训练任务。

  5. 后续可在【自定义训练】的列表页 / 详情页中查看该任务的运行情况。

  6. 通过任务详情页【日志】功能可以查看任务运行过程中的日志。