• <xmp id="om0om">
  • <table id="om0om"><noscript id="om0om"></noscript></table>
  • 3 月 19 日下午 2 點,鎖定 NVIDIA AI 網絡中文專場。立即注冊觀看
    人工智能/深度學習

    與 NVIDIA Clara Imaging 和 MD.AI 合作驗證 AI 模型

    使用 NVIDIA Clara 構建的醫療成像 AI 模型現在可以在云計算的 MD.ai 上本地運行,從而使用現代 web 瀏覽器實現協作模型驗證和快速注釋項目。這些 NVIDIA Clara 模型可免費用于任何 MD.ai 合作研究項目,如器官或腫瘤分割。

    人工智能解決方案已被證明有助于簡化放射學和企業成像工作流程。然而,創建、共享、測試和縮放計算機視覺模型的過程并不像所有模式、條件和結果那樣簡化。需要幾個關鍵組件來創建穩健的模型,并支持最多樣化的采集設備和患者群體。這些關鍵組件可以包括為未注成像研究創建基本事實的能力,以及在全球范圍內合作評估模型與驗證數據的使用的能力。

    MD.ai 的實時協作標注平臺和英偉達 Clara 深度學習培訓框架有助于創建更健壯的模型構建和協作。

    在這篇文章中,我們將介紹 Clara Train MMAR 的基礎知識,以及準備使用 MD.ai 所需的步驟。只需幾個步驟,您就可以在 MD.ai 上部署這些預訓練模型中的任何一個,以實現無縫的基于 web 的評估和協作。在 MD.ai 上部署之后,這些模型可以用于任何現有或新的 MD.ai 項目。

    A diagram of a typical AI model training and validation pipeline from unlabeled data to annotation, training, and validation.
    圖 1 。培訓和驗證 AI 模型所需的工作流程 .

    NVIDIA Clara Train

    Clara 訓練框架是一個基于 Python 的應用程序包 NVIDIA Clara Train SDK. 該框架旨在基于 NVIDIA 研究人員內部構建的優化、即用、預訓練的醫學成像模型,在醫學成像領域快速實施深度學習解決方案。

    Clara 培訓框架使用模型的標準結構 醫學模型檔案 ( MMAR ),其中包含預培訓模型以及定義用于培訓、微調、驗證和推理的端到端開發工作流的腳本。

    Components of Clara Train include pretrained models, AI-assisted annotation, training pipelines and deployment pipelines. MONAI components include data loaders and transforms, network architectures, and training and evaluation engines.
    圖 2.Clara Train SDK 和 MONAI 深度學習框架高級架構.

    Clara Train v4.0 + SDK 使用基于組件的體系結構,該體系結構構建于基于 PyTorch 的開源框架 MONAI (人工智能醫療開放網絡) 。 MONAI 提供了醫療成像領域優化的基礎功能,可用于在本機 PyTorch 范式中構建培訓工作流。 Clara Train SDK 使用這些基礎組件(如優化的數據加載程序、轉換、丟失函數、優化器和度量)來實現打包為 MMAR 的端到端培訓工作流。

    MD.ai

    MD.ai 提供了一個基于 web 的云本地注釋平臺,支持臨床醫生和研究人員團隊之間通過共享工作空間進行實時協作。您還可以加載多個深度學習模型以進行實時評估。

    該平臺為數據集構建和 AI 項目創建提供了一個簡單無縫的界面。它為用戶提供了一套廣泛的工具,用于注釋數據和構建機器學習算法,以加速人工智能在醫學中的應用,特別關注醫學成像。

    User interface of MD.ai displaying outputs from a brain segmentation model deployed on the platform.
    圖 3 。顯示大腦分割的 MD.ai 用戶界面 .

    將此功能與在 MD.ai 平臺上快速部署 Clara 訓練模型 MMAR 的能力相結合,可以為您提供一個端到端的工作流,該工作流涵蓋快速模型開發、模型訓練、微調、推理以及快速評估和可視化。這種端到端的能力簡化了模型從研發到生產的過程。

    解決方案概述

    Clara Train 的起點是NGC Clara Train 采集. 在這里,您可以找到 Clara Train SDK 容器、一組免費提供的、經過預訓練的模型,以及一組 Jupyter 筆記本電腦,其中介紹了 SDK 的主要概念。所有 Clara Train 模型共享前面提到的 MMAR 格式。

    Clara Train MMAR 定義了一個標準結構,用于存儲定義模型開發工作流所需的文件,以及執行模型進行驗證和推斷時生成的文件。該結構定義如下:

    ROOT config config_train.json config_finetune.json config_inference.json config_validation.json config_validation_ckpt.json environment.json commands set_env.sh train.sh train with single GPU train_multi_gpu.sh train with 2 GPUs finetune.sh transfer learning with CKPT infer.sh inference with TS model validate.sh validate with TS model validate_ckpt.sh validate with CKPT validate_multi_gpu.sh validate with TS model on 2 GPUs validate_multi_gpu_ckpt.sh validate with CKPT on 2 GPUs export.sh export CKPT to TS model resources log.config ... docs license.txt Readme.md ... models model.pt model.ts final_model.pt eval all evaluation outputs: segmentation / classification results metrics reports, etc.

    所有提供用于 Clara Train 的預訓練模型,以及使用 Clara Train 框架開發的自定義模型都使用此結構。為了準備與 MD.ai 一起使用的 MMAR ,我們假設一個預先訓練的模型,并將重點放在部署的幾個關鍵組件上。

    第一個組件是 environment.json 文件,它定義了模型的公共參數,包括數據集路徑和模型檢查點。例如, Clara 序列分段任務中的 environment.json 文件定義了以下參數:

    { "DATA_ROOT": "/workspace/data/Task09_Spleen_nii", "DATASET_JSON": "/workspace/data/Task09_Spleen_nii/dataset_0.json", "PROCESSING_TASK": "segmentation", "MMAR_EVAL_OUTPUT_PATH": "eval", "MMAR_CKPT_DIR": "models", "MMAR_CKPT": "models/model.pt" "MMAR_TORCHSCRIPT": "models/model.ts"
    }

    準備與 MD.ai 集成的模型時,請確保 MMAR 的models/目錄中包含經過培訓的MMAR_CKPTMMAR_TORCHSCRIPT。它們分別通過執行捆綁的train.shexport.sh生成。

    • train.sh腳本執行模型訓練,這需要輸入數據集使用DATA_ROOTDATASET_JSON,并生成 MMAR _ CKPT 。
    • infer.sh腳本將此檢查點序列化到用于推斷的MMAR_TORCHSCRIPT中。

    對于預訓練模型,提供了檢查點和 TorchScript ,您可以關注推理管道。使用 MMAR 的infer.sh腳本執行推斷:

    1 #!/usr/bin/env bash
    2 my_dir="$(dirname "$0")"
    3 . $my_dir/set_env.sh
    4 echo "MMAR_ROOT set to $MMAR_ROOT"
    5
    6 CONFIG_FILE=config/config_validation.json
    7 ENVIRONMENT_FILE=config/environment.json
    8 python3 -u -m medl.apps.evaluate \
    9 -m $MMAR_ROOT \
    10 -c $CONFIG_FILE \
    11 -e $ENVIRONMENT_FILE \
    12 --set \
    13 DATASET_JSON=$MMAR_ROOT/config/dataset_0.json \
    14 output_infer_result=true \
    15 do_validation=false

    此腳本對environment.json中定義的完整數據集的config_validation.json中定義的驗證子集進行推斷。如果參考測試數據隨 MMAR 一起提供,則必須定義該數據的路徑。集成 MMAR 時, MD.ai 直接處理數據集,這些值作為集成的一部分被覆蓋。

    要在 MD.AI 上部署您自己的預訓練 AI 模型進行推理,您必須已經有一個現有項目或在平臺上創建一個新項目。項目還必須包含用于測試模型的數據集。有關更多信息,請參閱 立項

    接下來,要部署 AI 模型,必須將推理代碼轉換為與平臺兼容的特定格式。以下文件是成功部署的最低要求:

    • config.yaml
    • mdai_deploy.py
    • requirements.txt
    • model-weights

    有關這些文件的更多信息,請參閱 MD.ai 接口代碼

    對于 NVIDIA Clara 型號,我們已為您進一步簡化了此功能,無需從頭開始編寫這些文件。我們為 NGC 目錄支持的每個不同類別的深度學習模型提供了框架代碼:分類、分段等。您可以下載特定于模型的框架代碼,進行一些調整,這些調整將在本文后面介紹,然后將模型上傳到 MD.ai 上進行推斷。

    推理步驟

    準備好 MMAR 后,下面介紹如何直接使用它在 MD.ai 上運行模型。這篇文章將引導您了解一個已經部署在平臺上的示例細分模型 在 MD.ai 上運行分段模型的框架代碼 ,它實際上是 NVIDIA 的 CT spleen segmentation 模型的代碼。

    現在,要使用相同的 MMAR 格式部署 肝臟和腫瘤分割 模型,請執行以下步驟:

    1. 下載 分割模型的框架代碼
    2. 從 NGC 目錄下載 用于肝臟和腫瘤分割模型的 MMAR
    3. 在下載的框架代碼中,用下載的 MMAR 文件夾替換/workspace/clara_pt_spleen_ct_segmentation_1文件夾。
    4. /workspace/config_mdai.json文件中,進行以下更改:
    1 {
    2 “type” : “segmentation”,
    3 “root_folder”: “clara_pt_spleen_ct_segmentation_1”,
    4 “out_classes” : 2,
    5 “data_list_key”: “test”
    6 }
    • root_folder – 將此鍵值替換為下載的 MMAR 文件夾的名稱,例如肝臟和腫瘤示例的 clara _ pt _ liver _和_ tumor _ ct _ segmentation _ 1 。
    • out_classes – 將此值替換為模型的輸出類數,如本例中的 3 (背景: 0 、肝臟: 1 和腫瘤: 2 )。
    • data_list_key – 替換為 MMAR 的 config / config _ interference.json 文件的 data _ list _ key 屬性中提到的密鑰名稱,例如 testing 。
    1. /mdai文件夾中,進行以下更改:
    • config.yaml文件 , 中,將clara_version鍵更改為您的模型使用的適當版本(例如, 3.1.01 或 4.0 )。
    1 base_image: nvidia
    2 clara_version: 4.0
    3 device_type: gpu
    • 在[EZX29 ] , 中添加了任何額外的依賴項,比英偉達 Clara 基本圖像和文件中已經存在的那些依賴性要多。

    這將為您的模型在 MD.ai 上的部署做好準備。脾臟和肝臟腫瘤分割模型都已部署在 MD.ai 平臺上,并且是 可供評估

    分類模型也可以執行類似的步驟,盡管我們正在努力進一步簡化這種集成。有關將胸部 X 光分為 15 種異常的示例 NVIDIA 模型的骨架代碼,請參見 GitHub 上的 示例:用于胸部 x 光疾病分類的 NVIDIA MMAR 。該型號也是 部署在公共站點上

    當代碼準備就緒時,必須將其包裝在 zip 文件中,以便將其上載到 MD.ai 上進行推斷。有關更多信息,請參閱 Deploying models

    您的模型現在可以在 MD.ai 中對您選擇的任何數據集進行嘗試了!

    Visualization of model outputs from NVIDIA Clara train's spleen segmentation and liver and tumor segmentation models deployed on MD.ai
    圖 4 。 MD.ai 上的分段示例

    最好的是,所有模型只需在MD.ai平臺上部署一次。一旦NVIDIA Clara 模型部署到MD.ai上,它就可以通過使用模型克隆功能在任何MD.ai項目中使用。下面是一個例子,通過復制[EZX37 ]值,將英偉達肝分割模型克隆為一個新的MD AI項目:

    Example GIF of cloning deployed models on MD.ai from one project to another.
    圖 5 。基于 MD.ai 的模型克隆工作流 .

    未來特征

    我們正致力于簡化集成,以盡量減少部署 MMAR 所需的步驟,并計劃消除所有代碼修改,以便只需單擊一個按鈕即可輕松部署。

    MD.ai 計劃預先部署 NGC 上可用的所有模型,以便您可以通過從我們的公共項目克隆直接使用它們,從而避免您自己部署 MMAR 的過程。我們還將創建 NVIDIA Clara 入門包,這樣您就可以輕松地開始使用預裝到項目中的選定型號。

    另一個重要的計劃是增加對在 MD.AI 上訓練 AI 模型的支持。當我們有了這個平臺,您可以有效地使用英偉達 AI 輔助注釋產品在平臺上幫助用戶注釋得更快更容易,而不是從頭開始。

    總結

    在本文中,我們重點介紹了每個平臺的關鍵組件以及在 MD.ai 上快速部署使用 NVIDIA Clara 構建的醫療成像模型所需的步驟。

    嘗試在MD.ai中的 live demo 的英偉達 Clara [VZX57 ]和 Spleen 分割模型。如果您有任何疑問,請聯系 hello@md.aiclaraimaging@nvidia.com

    ?

    0

    標簽

    人人超碰97caoporen国产