天天看點

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

作者:NVIDIA英偉達中國
使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

NVIDIA TAO 工具套件提供了一個低代碼 AI 架構,無論是新手還是資料科學專家都可以使用這個平台加速視覺 AI 模型開發。有了 TAO 工具套件,開發人員可以進行遷移學習,通過适應和優化,在短時間内達到最先進的精度和生産級吞吐量。

NVIDIA 釋出了 NVIDIA TAO 套件 5.0 ,帶來了 AI 模型開發方面的突破性功能提升。新功能包括開源架構、基于 Transformer 的預訓練模型、AI 輔助的資料标注,以及在任何平台上部署模型的能力。

釋出亮點包括:

  • 以開放的 ONNX 格式導出模型,支援在 GPU、CPU、MCU、神經加速器等裝置上部署。
  • 先進的視覺 Transformer 訓練,可提高準确性和魯棒性,防止圖像損壞和噪聲。
  • 新增 AI 輔助資料注釋,加快了分割掩碼的标記任務。
  • 支援例如光學字元檢測和連體網絡模型等用于光學檢測的新型計算機視覺任務和預訓練模型。
  • 開放源代碼,可提供定制解決方案,加快開發和內建速度。

使用指南:

  • 通路 TAO 工具套件入門頁面,檢視教學視訊和快速入門指南。
  • 從 NGC 下載下傳 TAO 工具套件和預訓練模型。
使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

圖 1:NVIDIA TAO 工具套件工作流程圖

在任何平台、任何位置部署 NVIDIA TAO

NVIDIA TAO 工具套件 5.0 支援 ONNX 模型導出。無論是 GPU 、CPU 、MCU 、DLA 還是 FPGA 的邊緣或雲上的任何計算平台,都可以部署使用 NVIDIA TAO 工具套件訓練的模型。NVIDIA TAO 工具套件簡化了模型訓練過程,優化了模型的推理吞吐量,為數千億台裝置的 AI 提供了動力。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

圖 2:NVIDIA TAO 工具套件體系

用于建構、完善和部署機器學習模型和算法的平台 Edge Impulse 将 TAO 工具套件內建到其邊緣 AI 平台中。通過整合,Edge Impulse 現在可以提供先進的視覺 AI 功能和模型,并對其現有産品進行補充。開發者可以利用 TAO,使用該平台為任何邊緣裝置建構生産型 AI。

視訊加載中...

視訊 1. 利用 NVIDIA TAO 并部署在 Cortex-M7 MCU 上的

Edge Impulse 平台訓練 AI 模型

全球領先的嵌入式微控制器制造商意法半導體,将 TAO 內建到其 STM32Cube AI 開發者工作流程中。借助 TAO,該公司能夠在 STM32 微控制器驅動的各種物聯網和邊緣用例中,根據它們的最大算力和記憶體運作各種複雜 AI 功能。

有了 NVIDIA TAO 工具套件,即使是 AI 新手也可以在微控制器的計算和記憶體預算内優化和量化 AI 模型,使其在 STM32 MCU 上運作。開發人員還可以導入自己的模型,并使用 TAO 工具套件進行微調。有關這項工作的更多資訊,請參閱下面的視訊。

通路 GitHub 頁面(),了解更多關于意法半導體用例資訊。

視訊加載中...

視訊 2: 了解如何在一個 STM 微控制器上

部署使用 TAO 工具套件優化的模型

雖然 TAO 工具套件模型可以在任何平台上運作,但這些模型在使用 TensorRT 進行推理的 NVIDIA GPU 上才能實作最高吞吐量。在 CPU 上,這些模型使用 ONNX-RT 進行推理。一旦軟體可用,将提供複制這些數字的腳本和配方。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

表 1:幾種 NVIDIA TAO 工具套件視覺模型的性能比較(以 FPS 為機關),包括 NVIDIA GPU 上的新視覺 Transformer 模型

AI 輔助的資料标注和管理

對于所有 AI 項目來說,資料标注仍然是一個昂貴且耗時的過程。對于 CV 任務尤其如此,比如需要在标注對象周圍生成像素級别分割掩碼的分割任務。通常,分割掩碼的成本是對象檢測或分類的 10 倍。

通過 TAO 工具套件 5.0 ,用最新的 AI 輔助标注功能對分割掩碼進行标注,速度更快,成本更低。現在,您可以使用弱監督分割架構 Mask Auto Labeler (MAL)來輔助進行分割注釋,以及固定和收緊用于對象檢測的邊界框。實況資料中對象周圍的松散邊界框可能會導緻非最佳檢測結果。但是,通過 AI 輔助标注,您可以将邊界框收緊到對象上,進而獲得更準确的模型。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

圖 3:TAO 工具套件的自動标記

MAL 是一個基于 Transformer 的掩碼自動标注架構,用于僅使用方框标注的執行個體分割。MAL 将方框裁剪圖像作為輸入内容,并有條件地生成掩碼僞标簽。它對輸入和輸出标簽都使用了 COCO 注釋格式。

MAL 顯著縮小了自動标注和人工标注在掩碼品質方面的差距。使用 MAL 生成的掩碼訓練的執行個體分割模型幾乎可以比對全監督對應模型的性能,保留了高達 97.4% 的全監督模型的性能。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

圖 4:MAL 網絡架構

訓練 MAL 網絡時,任務網絡和教師網絡(共享相同的轉換器結構)協同工作以實作與類無關的自我訓練。這樣就可以優化具有條件随機場(CRF)損失和多執行個體學習(MIL)損失的預測掩碼。

TAO 工具套件在自動标注流程和資料擴充流程中都使用了 MAL 。具體而言,使用者可以在空間增強的圖像上生成僞掩碼(例如,剪切或旋轉),并使用生成的掩碼細化和收緊相應的邊界框。

最先進的視覺 Transformer

Transformer 已經成為 NLP 中的标準架構,這主要是因為自注意力架構,同時它們還因一系列視覺 AI 任務而廣受歡迎。一般來說,基于 Transformer 的模型因為具有魯棒性、可推廣性和對大規模輸入執行并行處理的能力,會優于傳統的基于 CNN 的模型。所有這些優點都提高了訓練效率,對圖像損壞和噪聲提供了更好的魯棒性,并對不可視的對象更好地進行泛化。

TAO 工具套件 5.0 為流行的 CV 任務提供了幾種最先進的(SOTA)視覺 Transformer ,具體如下。

全注意力網絡

全注意力網絡(FAN)是 NVIDIA Research 的一個基于 Transformer 的主幹,它在抵禦各種破壞方面實作了最優的魯棒性。這類主幹可以很容易地推廣到新的領域,并且對噪聲、模糊等更具魯棒性。

FAN 子產品背後的一個關鍵設計是注意力通道處理子產品,它可以實作穩健的表征學習。FAN 可以用于圖像分類任務以及諸如對象檢測和分割之類的下遊任務。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

圖 5 :與 FAN Small (右)相比,ResNet50 (中)損壞圖像的激活熱圖

FAN 系列支援四個主幹,如表 2 所示。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

表 2:具有尺寸和精度的 FAN 主幹

全局視野視覺 Transformer

全局上下文視覺 Transformer(GC-ViT)是 NVIDIA Research 的一種新架構,可實作非常高的準确性和計算效率。GC-ViT 解決了視覺 Transformer 中缺乏誘導性偏差的問題 。通過使用局部自注意,它在 ImageNet 上使用較少的參數獲得了更好的結果。

局部自我注意與全局視野自我注意相結合,可以有效地模拟長距離和短距離的空間互動。圖 6 顯示了 GC-ViT 模型體系結構。有關更多詳細資訊,請參見 Global Context Vision Transformers ()。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

圖 6:GC-ViT 模型架構

如表 3 所示,GC-ViT 家族包含六個主幹,從 GC-ViT-xxTiny (計算效率高)到 GC-ViT-Large (非常準确)。GC-ViT 大型模型在 ImageNet-1K 資料集上可以實作 85.6 的 Top-1 精度,用于圖像分類任務。該體系結構還可以用作其他 CV 任務的主幹,如對象檢測、語義和執行個體分割。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

表 3:具有尺寸和精度的 GC-ViT 主幹

DINO

DINO(具有改進去噪錨框的檢測 Transformer)是最新一代檢測 Transformer(DETR),達到了一個比上一代更快的訓練收斂時間。Deformable DETR (D-DETR)至少需要 50 個 epochs 才能收斂,而 DINO 可以在 COCO 資料集上在 12 個 epochs 内收斂。而且,與 D-DETR 相比,它還實作了更高的精度。

DINO 通過在訓練期間去噪實作更快的收斂,這有助于提案生成階段的二分比對過程。由于二分比對的不穩定性,類 DETR 模型的訓練收斂速度較慢。二分比對減少了對人工和計算繁重的 NMS 操作的需求。但是,它通常需要更多的訓練,因為在二分比對期間,不正确的基本事實也可以與預測相比對。

為了解決這個問題, DINO 引入了有噪聲的正負真實框來處理“無對象”場景。是以,DINO 的訓練收斂得非常快。更多資訊,請參閱 DINO: 帶有改進的去噪錨框的 DETR,可用于端到端對象檢測()。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

圖 7:DINO 架構

TAO 工具套件中的 DINO 是靈活的,可以與傳統的 CNNs 主幹(如 ResNets )和基于 Transformer 的主幹(如 FAN 和 GC-ViT)相結合。表 4 顯示了在各種版本的 DINO 和常用的 YOLOv7 上 COCO 資料集的準确性。有關更多詳細資訊,請參見 YOLOv7: 為實時物體檢測器設定了新的先進技術的可訓練的免費套件()。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

表 4:COCO 資料集上的 DINO 和 D-DETR 準确性

SegFormer

SegFormer 是一種基于 Transformer 的輕量級語義分割方法。它的編碼器由輕量級 MLP 層制成,避免了使用位置編碼(主要由 Transformers 使用),這使得推理在不同分辨率下有效。

将 FAN 主幹網添加到 SegFormer MLP 解碼器中會産生一個高度魯棒性和高效的語義分割模型。混合式 FAN-基站 + SegFormer 是 2022 年魯棒視覺挑戰大賽中語義分割項目的獲勝架構。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

圖 8:具有 FAN 預測功能的 SegFormer (右)其在噪音輸入時的一個圖像情況(左)

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

表 5:SegPreer 與 PSPNet 的魯棒性對比

在下面的視訊中,您将看到 SegFormer 如何保持加速自動駕駛汽車開發的高效率的同時,生成強魯棒性的語義分割。

視訊加載中...

視訊 3. NVIDIA DRIVE 實驗室片段,

關于提升自動駕駛汽車安全的 AI 分割模型

目标檢測和分割之外的 CV 任務

除了傳統對象檢測和分割,NVIDIA TAO 工具套件也加速了其他的各種 CV 任務。TAO 工具套件 5.0 中新增的字元檢測和識别模型使開發人員能夠從圖像和文檔中提取文本。文檔轉換實作了自動化,并加速了在保險和金融等行業的用例。

當被分類的對象變化很大時,檢測圖像中的異常是有用的,但不可能用所有的變化進行訓練。例如,在工業檢測中,缺陷可以是任何形式的。如果訓練資料之前沒有發現缺陷,那麼使用簡單的分類器可能會導緻許多遺漏的缺陷。

對于這樣的用例,将測試對象直接與黃金參考進行比較将獲得更好的準确性。TAO 工具套件 5.0 的特點是暹羅神經網絡,在該網絡中,模型計算出被測對象和黃金參考之間的差異,以便在對象有缺陷時進行分類。

使用 AutoML 實作超參數優化的

自動化教育訓練

自動化機器學習(AutoML)自動執行手動任務,即在給定資料集上查找所需 KPI 的最佳模型和超參數。它可以通過算法推導出最佳模型,并抽象出 AI 模型建立和優化的大部分複雜性。

TAO 工具套件中的 AutoML 完全配置了用于自動優化模型的超參數。無論是 AI 專家還是新手,都可以輕松使用。對于新手,Jupyter 使用指南提供了一種簡單且有效的建立準确的 AI 模型的方法。

對于專家來說,TAO 工具套件可讓您自由掌控要調整的超參數以及用于掃描的算法。TAO 工具套件目前支援兩種優化算法:貝葉斯優化和超參數優化。這些算法可以掃描一系列超參數,以找到給定資料集的最佳組合。

AutoML 支援多種 CV 任務,包括一些新的視覺 Transformer, 如 DINO、D-DETR、SegFormer 等。表 6 顯示了支援網絡的完整清單(标粗的項目是 TAO 工具套件 5.0 的新增項目)。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

表 6 :TAO 工具套件中 AutoML 支援的模型, 包括幾個新的視覺轉換器模型 (标粗的項目是 TAO 工具套件 5.0 的新項目)

用于工作流程內建的 REST API

TAO 工具套件是子產品化和雲原生的,這意味着它可以作為容器使用,并且可以使用 Kubernetes 進行部署和管理。TAO 工具套件可以作為自管理服務部署在任何公共或私有雲、DGX 或工作站上。此外 TAO 工具套件提供定義完善的 REST API,使其易于內建到您的開發工作流程中。開發人員可以調用 API 端點來執行所有訓練和優化任務。這些 API 端點可以從任何應用程式或使用者界面調用,然後通過遠端觸發進行訓練作業。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

圖 9:用于雲原生部署的 TAO 工具套件架構

更好的推理優化方案

為了簡化産品化并提高推理吞吐量,TAO 工具套件提供了多種交鑰匙性能優化技術。其中包括模型修剪、低精度量化和 TensorRT 優化,與公共模型庫的同類模型相比,這些技術加起來可以提供一個 4 到 8 倍的性能提升。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

圖 10:在各種 GPU 上優化的 TAO 工具套件和公共模型之間的性能比較

開放靈活,具有更好的支撐

因為 AI 模型是基于複雜的算法預測輸出的,這可能會使人們很難了解系統是如何做出決定的,并且很難調試、診斷和修複錯誤。可解釋人工智能(XAI)通過解釋 AI 模型如何做出決策來應對這些調整。這不僅有助于人類了解 AI 輸出背後的推理過程,也使診斷和修複錯誤變得更容易。這種透明度有助于建立對 AI 系統的信任。

為了提高透明度和可解釋性,TAO 工具套件将以開源形式提供。開發人員将能夠從内部層檢視特征圖,并繪制激活熱圖,以更好地了解人工智能預測背後的推理過程。此外,通路源代碼将使開發人員能夠靈活地建立定制的 AI,提高調試能力,并增加對其模型的信任。

NVIDIA TAO 工具套件現已推出,可通過 NVIDIA AI Enterprise (NVAIE) 購買。NVAIE 為公司提供關鍵業務支援、NVIDIA AI 專家答疑以及優先安全修複。了解 NVAIE () 并獲得 AI 專家的指導。

與雲服務內建

NVIDIA TAO 工具套件可以內建到您使用的各種 AI 服務中,如 Google Vertex AI、AzureML、Azure Kubernetes 服務、Google GKE 和 Amazon EKS。

使用 NVIDIA TAO Toolkit 5.0 體驗最新的視覺 AI 模型開發工作流程

圖 11:TAO 工具套件 5.0 與各種 AI 服務內建

總結

TAO 工具套件提供了一個平台,任何開發者在任何服務、任何裝置上都可以使用,可以輕松地遷移學習他們的自定義模型,執行量化和修剪,管理複雜的訓練工作流程,并在無需編碼的情況下執行人工智能輔助注釋。

*為提供 TAO 工具套件 5.0 版本的準确資訊,本文已在原版基礎上進行了修訂。

繼續閱讀