日本少妇高潮抽搐_黄色三级三级三级三级三级|HD中文字幕在线播放,美女毛片电影,国产视频一区二区在线观看,女邻居的大乳中文字幕2

語言識別:使用 PyTorch 構建端到端 AI 解決方案

語言識別是從多個音頻輸入樣本中識別主要語言的過程。在自然語言處理(NLP)中,語言識別是一個重要的問題,也是一個具有挑戰性的問題。有許多與語言相關的任務,例如在手機上輸入文本、查找您喜歡的新聞文章或發現您可能遇到的問題的答案。所有這些任務都由NLP模型提供支持。為了決定在特定時間點調用哪個模型,我們必須執行語言識別。

本文介紹了使用英特爾? PyTorch 擴展(針對英特爾處理器進行了優化的 PyTorch AI 框架的一個版本)和英特爾??神經壓縮器(一種在不犧牲準確性的情況下加速人工智能推理的工具)進行語言識別的深入解決方案和代碼示例。

代碼示例演示了如何使用擁抱人臉語音大腦* 工具套件訓練模型以執行語言識別,并使用英特爾?人工智能分析工具包 (AI Kit) 對其進行優化。用戶可以修改代碼示例,并使用通用語音數據集識別多達 93 種語言。

語言識別方法

在建議的解決方案中,用戶將使用英特爾人工智能分析工具包容器環境來訓練模型,并利用英特爾優化的 PyTorch 庫執行推理。還有一個選項可以使用英特爾神經壓縮器量化訓練的模型,以加快推理速度。

數據

對于此代碼示例,將使用通用語音數據集,特別是日語和瑞典語的通用語音語料庫 11.0。該數據集用于訓練強調通道注意力、傳播和聚合時間延遲神經網絡 (ECAPA-TDNN),該網絡使用 Hugging Face SpeechBrain 庫實現。延時神經網絡 (TDNN),又名一維卷積神經網絡 (1D CNN),是多層人工神經網絡架構,用于對網絡每一層具有移位不變性和模型上下文的模式進行分類。ECAPA-TDNN是一種新的基于TDNN的揚聲器嵌入提取器,用于揚聲器驗證;它建立在原始的 X-Vector 架構之上,更加強調信道注意力、傳播和聚合。

實現

下載 Common Voice 數據集后,通過將 MP3 文件轉換為 WAV 格式來對數據進行預處理,以避免信息丟失,并分為訓練集、驗證集和測試集。

使用Hugging Face SpeechBrain庫使用Common Voice數據集重新訓練預訓練的VoxLingua107模型,以專注于感興趣的語言。VoxLingua107 是一個語音數據集,用于訓練口語識別模型,這些模型可以很好地處理真實世界和不同的語音數據。此數據集包含 107 種語言的數據。默認情況下,使用日語和瑞典語,并且可以包含更多語言。然后,此模型用于對測試數據集或用戶指定的數據集進行推理。此外,還有一個選項可以利用SpeechBrain的語音活動檢測(VAD),在隨機選擇樣本作為模型的輸入之前,僅從音頻文件中提取和組合語音片段。此鏈接提供了執行 VAD 所需的所有工具。為了提高性能,用戶可以使用英特爾神經壓縮器將訓練好的模型量化為整數 8 (INT8),以減少延遲。

訓練

訓練腳本的副本將添加到當前工作目錄中,包括 - 用于創建 WebDataset 分片,- 執行實際訓練過程,以及 - 配置訓練選項。用于創建 Web數據集分片和 YAML 文件的腳本經過修補,可與此代碼示例選擇的兩種語言配合使用。create_wds_shards.pytrain.pytrain_ecapa.yaml

在數據預處理階段,執行腳本隨機選擇指定數量的樣本,將輸入從MP3轉換為WAV格式。在這里,這些樣本中有 80% 將用于訓練,10% 用于驗證,10% 用于測試。建議至少 2000 個樣本作為輸入樣本數,并且是默認值。prepareAllCommonVoice.py

在下一步中,將從訓練和驗證數據集創建 WebDataset 分片。這會將音頻文件存儲為 tar 文件,允許為大規模深度學習編寫純順序 I/O 管道,以便從本地存儲實現高 I/O 速率——與隨機訪問相比,大約快 3-10 倍。

用戶將修改 YAML 文件。這包括設置 WebDataset 分片的最大數量值、將神經元輸出為感興趣的語言數量、要在整個數據集上訓練的紀元數以及批大小。如果在運行訓練腳本時 CPU 或 GPU 內存不足,則應減小批大小。

在此代碼示例中,將使用 CPU 執行訓練腳本。運行腳本時,“cpu”將作為輸入參數傳遞。中定義的配置也作為參數傳遞。train_ecapa.yaml

運行腳本以訓練模型的命令是:

python train.py train_ecapa.yaml --device "cpu"

將來,培訓腳本 train.py 將設計為適用于英特爾? GPU,如英特爾?數據中心 GPU Flex 系列、英特爾數據中心 GPU Max 系列和英特爾 Arc? A 系列,并更新了英特爾??擴展 PyTorch。

運行訓練腳本以了解如何訓練模型和執行訓練腳本。建議將此遷移學習應用使用第四代英特爾至強?可擴展處理器,因為它通過其英特爾高級矩陣擴展(英特爾??? AMX)指令集提高了性能。

訓練后,檢查點文件可用。這些文件用于加載模型以進行推理。

推理

推理管道

運行推理之前的關鍵步驟是修補 SpeechBrain 庫的預訓練文件,以便可以運行 PyTorch TorchScript* 以改善運行時。TorchScript 要求模型的輸出只是張量。interfaces.py

用戶可以選擇使用 Common Voice 中的測試集或他們自己的 WAV 格式自定義數據運行推理。以下是推理腳本 () 可用于運行的選項:inference_custom.py and inference_commonVoice.py

輸入選項描述
-p指定數據路徑。
-d指定波采樣的持續時間。默認值為 3
-s指定采樣波的大小,默認值為 100。
--瓦德(僅限“inference_custom.py”)啟用 VAD 模型以檢測活動語音。VAD 選項將識別音頻文件中的語音片段,并構造一個僅包含語音片段的新.wav文件。這提高了用作語言識別模型輸入的語音數據的質量。
--易派克使用英特爾擴展 PyTorch 優化運行推理。此選項會將優化應用于預訓練模型。使用此選項應可提高與延遲相關的性能。
--ground_truth_compare(僅限“inference_custom.py”)啟用預測標簽與地面真實值的比較。
--詳細打印其他調試信息,例如延遲。

必須指定數據的路徑。默認情況下,將從原始音頻文件中隨機選擇 100 個 3 秒的音頻樣本,并用作語言識別模型的輸入。

LibriParty數據集上預訓練的小型卷積遞歸深度神經網絡(CRDNN)用于處理音頻樣本并輸出檢測到語音活動的片段。這可以通過選項在推理中使用。--vad

如下圖所示,將檢測到語音的時間戳是從 CRDNN 模型傳送的,這些時間戳用于構建僅包含語音的較短的新音頻文件。從這個新的音頻文件中采樣將更好地預測所說的主要語言。

音頻波形文件可視化

自行運行推理腳本。運行推理的示例命令:

python inference_custom.py -p data_custom -d 3 -s 50 --vad

這將對您提供的位于data_custom文件夾中的數據運行推理。此命令使用語音活動檢測對 50 個隨機選擇的 3 秒音頻樣本執行推理。

如果要運行其他語言的代碼示例,請下載其他語言的通用語音語料庫 11.0 數據集。

針對 PYTORCH 和英特爾神經壓縮器的英特爾擴展優化

PyTorch

英特爾擴展擴展了 PyTorch 的最新功能和優化,從而進一步提升了英特爾硬件的性能。查看如何安裝 PyTorch 的英特爾擴展。擴展可以作為 Python 模塊加載,也可以作為C++庫鏈接。Python 用戶可以通過導入 .intel_extension_for_pytorch

  • CPU 教程提供了有關適用于英特爾 CPU 的 PyTorch 英特爾擴展的詳細信息。源代碼可在主分支處獲得。
  • GPU 教程提供了有關適用于英特爾 GPU 的 PyTorch 英特爾擴展的詳細信息。源代碼可在 xpu-master 分支獲得。

要使用英特爾 PyTorch 擴展優化模型以進行推理,可以傳入該選項。使用插件優化模型。TorchScript 加快了推理速度,因為 PyTorch 以圖形模式運行。使用此優化運行的命令是:--ipex

python inference_custom.py -p data_custom -d 3 -s 50 --vad --ipex --verbose

注意:需要該選項才能查看延遲測量值。--verbose

自動混合精度(如 bfloat16 (BF16) 支持)將在代碼示例的未來版本中添加。

英特爾神經壓縮器

這是一個在 CPU 或 GPU 上運行的開源 Python 庫,它:

  • 執行模型量化,以減小模型大小并提高深度學習推理的部署速度。
  • 跨多個深度學習框架自動執行常用方法,例如量化、壓縮、修剪和知識蒸餾。
  • 是 AI 套件的一部分

通過在傳入模型和驗證數據集的路徑的同時運行腳本,可以將模型從 float32 (FP32) 精度量化為整數 8 (INT8)。以下代碼可用于加載此 INT8 模型以進行推理:quantize_model.py

from neural_compressor.utils.pytorch import load
model_int8 = load("./lang_id_commonvoice_model_INT8", self.language_id)
signal = self.language_id.load_audio(data_path)
prediction = self.model_int8(signal)

請注意,加載量化模型時需要原始模型。使用 FP32 量化訓練模型到 INT8 的命令是:quantize_model.py

python quantize_model.py -p ./lang_id_commonvoice_model -datapath $COMMON_VOICE_PATH/commonVoiceData/commonVoice/dev

以上是關于使用 PyTorch 構建端到端 AI 解決方案的一些介紹。

- END -


我們有個AI研發云平臺
集成多種AI應用,大量任務多節點并行
應對短時間爆發性需求,連網即用
跑任務快,原來幾個月甚至幾年,現在只需幾小時
5分鐘快速上手,拖拉點選可視化界面,無需代碼
支持高級用戶直接在云端創建集群 

掃碼免費試用,送200元體驗金,入股不虧~

更多電子書歡迎掃碼關注小F(ID:iamfastone)獲取

你也許想了解具體的落地場景:
王者帶飛LeDock!開箱即用&一鍵定位分子庫+全流程自動化,3.5小時完成20萬分子對接
這樣跑COMSOL,是不是就可以發Nature了
Auto-Scale這支仙女棒如何大幅提升Virtuoso仿真效率?

1分鐘告訴你用MOE模擬200000個分子要花多少錢
LS-DYNA求解效率深度測評 │ 六種規模,本地VS云端5種不同硬件配置
揭秘20000個VCS任務背后的“搬桌子”系列故事
155個GPU!多云場景下的Amber自由能計算
怎么把需要45天的突發性Fluent仿真計算縮短到4天之內?

5000核大規模OPC上云,效率提升53倍
提速2920倍!用AutoDock Vina對接2800萬個分子

從4天到1.75小時,如何讓Bladed仿真效率提升55倍?
從30天到17小時,如何讓HSPICE仿真效率提升42倍?


關于為應用定義的云平臺:
當仿真外包成為過氣網紅后…
和28家業界大佬排排坐是一種怎樣的體驗?
這一屆科研計算人趕DDL紅寶書:學生篇

楊洋組織的“太空營救”中, 那2小時到底發生了什么?
一次搞懂速石科技三大產品:FCC、FCC-E、FCP
Ansys最新CAE調研報告找到阻礙仿真效率提升的“元兇”
國內超算發展近40年,終于遇到了一個像樣的對手
幫助CXO解惑上云成本的迷思,看這篇就夠了
花費4小時5500美元,速石科技躋身全球超算TOP500

相關推薦

發表評論

電子郵件地址不會被公開。 必填項已用*標注

微信掃一掃

微信掃一掃

微信掃一掃,分享到朋友圈

語言識別:使用 PyTorch 構建端到端 AI 解決方案
返回頂部

顯示

忘記密碼?

顯示

顯示

獲取驗證碼

Close