從頭開始創(chuàng)建一個新的人工智能深度學習模型是一個非常耗費時間和資源的過程。解決這個問題的一個常見方法是采用遷移學習。為了使這一過程更加簡單,NVIDIA TAO Toolkit,它可以將工程時間框架從 80 周縮短到 8 周。 TAO 工具包支持計算機視覺和對話 AI ( ASR 和 NLP )用例。
在本文中,我們將介紹以下主題:
安裝 TAO 工具包并訪問預訓練模型
微調預訓練語音轉錄模型
將微調模型導出到 NVIDIA Riva
跟隨 download the Jupyter notebook。
安裝 TAO 工具包并下載預訓練模型
在安裝 TAO 工具包之前,請確保您的系統(tǒng)上安裝了以下組件:
Python [3 。 6 。 9]
docker ce 》 19 。 03 。 5
nvidia-DOCKR2 3 。 4 。 0-1
有關安裝 nvidia docker 和 docker 的更多信息,請參閱Prerequisites。您可以使用 pip 安裝 TAO 工具包。我們建議使用virtual environment以避免版本沖突。

安裝完成后,下一步是獲得一些經過預訓練的模型。 NVIDIA 提供了許多人工智能或機器學習模型,不僅在對話人工智能領域,而且在 NGC 或 NVIDIA GPU 云上的廣泛領域。 NGC 目錄是一套精心策劃的 GPU 優(yōu)化軟件,用于 AI 、 HPC 和可視化。
要從 NGC 下載資源,請使用NGC API key登錄注冊表。您可以免費創(chuàng)建和使用一個。

圖 1 。獲取 NGCAPI 密鑰
CitriNet是由 NVIDIA 構建的最先進的自動語音識別( ASR )模型,可用于生成語音轉錄。您可以從Speech to Text English Citrinet型號卡下載此型號。

為了提供流暢的體驗,工具包在后臺下載并運行 Docker 容器,使用前面提到的規(guī)范文件。所有細節(jié)都隱藏在 TAO 啟動器中。您可以通過定義 JSON 文件~/.tao_mounts.json來指定裝載 Docker 容器的首選位置。您可以在Jupyter notebook中找到裝載文件。

這樣,您就安裝了 TAO 工具包,下載了一個經過預訓練的 ASR 模型,并指定了 TAO 工具包啟動器的安裝點。在下一節(jié)中,我們將討論如何使用 TAO 工具包在您選擇的數(shù)據(jù)集上微調此模型。
微調模型
使用 TAO 工具包微調模型包括三個步驟:
下載規(guī)范文件。
預處理數(shù)據(jù)集。
使用超參數(shù)進行微調。
圖 3 顯示了微調模型所需的步驟。

圖 2 。 TAO 工具包工作流
步驟 1 :下載規(guī)范文件
NVIDIA TAO Toolkit 是一種低代碼或無代碼的解決方案,通過規(guī)范文件簡化模型的培訓或微調。通過這些文件,您可以自定義特定于模型的參數(shù)、培訓師參數(shù)、優(yōu)化器和所用數(shù)據(jù)集的參數(shù)。可以將這些規(guī)范文件下載到先前裝載的文件夾:

以下是 TAO 工具包附帶的 YAML 文件。有關更多信息,請參閱Downloading Sample Spec Files。
create_tokenizer.yaml
dataset_convert_an4.yaml
dataset_convert_en.yaml
dataset_convert_ru.yaml
evaluate.yaml
export.yaml
finetune.yaml
infer_onnx.yaml
infer.yaml
train_citrinet_256.yaml
train_citrinet_bpe.yaml
這些規(guī)范文件可供自定義和使用。從預處理和模型評估到推理和導出模型,都有相應的功能。這使您能夠完成開發(fā)或定制模型的過程,而無需構建復雜的代碼庫。下載等級庫文件后,現(xiàn)在可以繼續(xù)預處理數(shù)據(jù)。
步驟 2 :預處理數(shù)據(jù)集
在本演練中,您將使用CMU’s AN4 Dataset,這是一個小型普查數(shù)據(jù)集,其中包含地址、數(shù)字和其他個人信息的記錄。這與客戶支持對話中對話的初始步驟所需的轉錄類型類似。具有類似內容的較大自定義數(shù)據(jù)集可用于實際應用程序。
您可以直接下載和解壓縮 AN4 數(shù)據(jù)集,或使用以下命令:

TAO 工具包培訓和微調模塊期望數(shù)據(jù)以特定格式呈現(xiàn)。可以使用 dataset _ convert 命令完成此預處理。我們將 AN4 和 Mozilla 的通用語音數(shù)據(jù)集的規(guī)范文件與 TAO 啟動器一起打包。您可以在步驟 1 中定義的目錄中找到這些規(guī)范文件。
這些清單文件(圖 3 )包含在后面的步驟中使用的以下信息:
音頻文件的路徑
每個文件的持續(xù)時間
每個文件的文字內容

圖 3 。已處理清單文件的結構

此命令將音頻文件轉換為 WAV 文件,并生成訓練和測試清單文件。
在大多數(shù)情況下,您都會進行預處理,但 CitriNet 模型是一個特例。它需要以子詞標記化的形式進行進一步處理,為文本創(chuàng)建子詞詞匯表。這與 Jasper 或 QuartzNet 不同,因為在它們的情況下,詞匯表中只有單個字符被視為元素。在 CitriNet 中,子字可以是一個或多個字符。這可以使用以下命令完成:

到目前為止,您已經建立了一個工具,為諸如遷移學習之類的復雜問題提供低代碼或無代碼解決方案。您已經下載了一個預訓練的模型,將音頻文件處理為必要的格式,并執(zhí)行了標記化。您使用的命令不到 10 個。現(xiàn)在,所有必要的細節(jié)都已散列出來,您可以繼續(xù)微調模型。
步驟 3 :使用超參數(shù)進行微調
正如在前面的步驟中所做的那樣,您正在與規(guī)范文件交互。有關更多信息,請參閱Creating an Experiment Spec File。如果要調整 FFT 窗口大小的大小,可以指定幾乎所有內容,從特定于訓練的參數(shù)(如優(yōu)化器)到特定于數(shù)據(jù)集的參數(shù),再到模型配置本身。
是否要更改學習速率和調度程序,或者在詞匯表中添加新字符?無需打開代碼庫并對其進行掃描以進行更改。所有這些定制都很容易獲得,并可在整個團隊中共享。這減少了在嘗試新想法和分享結果以及模型配置方面的摩擦,從而提高了準確性。

以下是如何微調數(shù)據(jù)集:

最后,要繼續(xù),請根據(jù)需要修改規(guī)范文件并運行以下命令。此命令使用先前下載的數(shù)據(jù)集微調下載的模型。有關更多信息,請參閱Fine-Tuning the Model。

在對模型進行微調或培訓后,自然會評估模型并評估是否需要進一步微調。為此, NVIDIA 為evaluate your model和run inference提供了功能。
將微調模型導出到 Riva
在生產環(huán)境中部署模型會帶來一系列挑戰(zhàn)。為此,您可以使用NVIDIA Riva,一種 GPU 加速 AI 語音 SDK 來開發(fā)實時轉錄和虛擬助理等應用程序。
Riva 使用其他 NVIDIA 產品:
NVIDIA Triton Inference Server用于簡化大規(guī)模生產中模型的部署。
NVIDIA TensorRT用于通過優(yōu)化 NVIDIA GPU s 的模型來加速模型并提供更好的推理性能。
如果您對使用本演練中微調的模型感興趣,可以使用以下命令將其導出到 Riva 。

在下一篇文章中,我們將介紹如何安裝 NVIDIA Riva 在生產環(huán)境中部署這些模型,以及如何使用NGC Catalog中的眾多模型之一。
關于作者
About Tanay Varshney
Tanay Varshney 是 NVIDIA 的一名深入學習的技術營銷工程師,負責廣泛的 DL 軟件產品。他擁有紐約大學計算機科學碩士學位,專注于計算機視覺、數(shù)據(jù)可視化和城市分析的橫斷面。
About Sirisha Rella
Sirisha Rella 是 NVIDIA 的技術產品營銷經理,專注于計算機視覺、語音和基于語言的深度學習應用。 Sirisha 獲得了密蘇里大學堪薩斯城分校的計算機科學碩士學位,是國家科學基金會大學習中心的研究生助理。
審核編輯:郭婷
-
NVIDIA
+關注
關注
14文章
5598瀏覽量
109809 -
人工智能
+關注
關注
1817文章
50111瀏覽量
265565
發(fā)布評論請先 登錄
人工智能與機器學習在這些行業(yè)的深度應用
穿孔機頂頭檢測儀 機器視覺深度學習
航天宏圖人工智能技術深度賦能社會治理現(xiàn)代化
利用超微型 Neuton ML 模型解鎖 SoC 邊緣人工智能
深度學習對工業(yè)物聯(lián)網(wǎng)有哪些幫助
自動駕駛中Transformer大模型會取代深度學習嗎?
挖到寶了!人工智能綜合實驗箱,高校新工科的寶藏神器
挖到寶了!比鄰星人工智能綜合實驗箱,高校新工科的寶藏神器!
超小型Neuton機器學習模型, 在任何系統(tǒng)級芯片(SoC)上解鎖邊緣人工智能應用.
人工智能學習17問:從入門到避坑,新手最關心的問題全在這
人工智能技術的現(xiàn)狀與未來發(fā)展趨勢
最新人工智能硬件培訓AI 基礎入門學習課程參考2025版(大模型篇)
邊緣計算如何顛覆人工智能變革
用樹莓派搞深度學習?TensorFlow啟動!
使用遷移學習定制人工智能深度學習模型
評論