AI時代的網站與手機App建置與開發Part19 - 啟用電腦配備的GPU, 提升深度學習的效率
· 摘要
使用ML.NET進行機器學習訓練的時候, 如果欲處理問題和電腦視覺有關, 包括:影像分類和物件偵測, 或是欲處理問題和自然語言有關, 包括:文字分類, 句子相似性, 問題解答, 和具名實體辨識, 等等需要強大訓練速度的案例, 您就會看到ML.NET提供的[本機率(GPU)]選項, 表示如果您的電腦配備NVIDIA GPU, 就可以經由啟用電腦配備的GPU, 大幅提升深度學習的速度.
下圖所示即為CPU與GPU運算速度的比較, 您可以明顯看出GPU的運算速度遠遠勝過CPU的運算速度:
![]() |
在這篇文章中, 我們將要為大家介紹如何啟用電腦配備的NVIDIA GPU, 利於執行深度學習訓練時的效率提升.
注意
電腦配備的GPU必須經過正確的設定才能夠發揮提升深度學習運算速度的好處.
· 檢查電腦配備的NVIDIA GPU
首先我們要檢查電腦中是否有配備NVIDIA GPU. 請按下Windows Key + X組合鍵, 再點選[裝置管理員]功能, 您就會看到[裝置管理員]的執行視窗, 展開其中的[顯示卡]項目, 就可以看到電腦是否有配備NVIDIA GPU, 例如圖1的畫面顯示的就是配備有NVIDIA GeForce RTX 4060 Laptop GPU的電腦的[裝置管理員]視窗::
· 設定並啟用電腦配備的NVIDIA GPU
Microsoft
ML.NET主要是依賴CPU的運算力訓練機器學習模型, 如果需要利用GPU, 只能透過兩個途徑:
1) 安裝TensorFlow套件, 透過與TensorFlow套件的整合, 利用NIVIDIA GPU訓練模型
2) 安裝ONNX Runtime, 透過與ONNX Runtime的整合, 利用NIVIDIA GPU訓練模型. 目前這個方案也是只支援NIVIDIA GPU, 但是未來計畫會納入支援Intel GPU與AMD GPU.
首先請啟動Visual Studio 2022, 建立.NET Core平台相關的專案, 然後啟動[命令提示字元], 切換至專案所在的資料夾, 再執行以下的三個指令:
dotnet add
package Microsoft.ML
dotnet add
package SciSharp.TensorFlow.Redist
dotnet add
package Microsoft.ML.TensorFlow
分別安裝Microsoft.ML, SciSharp.TensorFlow.Redist, 和Microsoft.ML.TensorFlow三個套件, 安裝套件的畫面如圖2所示:
安裝妥Microsoft.ML, SciSharp.TensorFlow.Redist, 和Microsoft.ML.TensorFlow三個套件之後, 我們還需要安裝CUDA Toolkit和cuDNN函式庫.
首先請啟動瀏覽器, 瀏覽至Install CUDA
Toolkit, 下載並安裝CUDA Toolkit, 如圖3所示:
做好之後, 請再瀏覽至NVIDIA cuDNN, 下載並解壓縮NVIDIA函式庫, 並記下放置解壓縮後的NVIDIA函式庫的資料夾名稱.
圖4所示即為下載並解壓縮NVIDIA函式庫的畫面
· 建立CUDA Toolkit與cuDNN函式庫相關的環境變數
請按下Windows Key + X組合鍵, 再點選[設定 | 系統資訊 | 進階系統設定]功能, 點選[環境變數]鍵, 點選[使用者變數]清單中的[Path]環境變數, 再點選[編輯]鍵, 加入以下4個路徑:
1) C:\Program Files\NVIDIA GPU Computing
Toolkit\CUDA\v11.7\bin
2) C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\extras\CUPTI\lib64
3) C:\Program Files\NVIDIA GPU Computing
Toolkit\CUDA\v11.7\include
4) C:\cuDNN\bin
請注意:
1. 上述環境變數中的v11.7為安裝的CUDA Toolkit的版本, 請依據所安裝的CUDA Toolkit版本修改環境變數的內容.
2. 上述環境變數中的cuDNN為放置解壓縮後的cuDNN函數庫的內容的資料夾名稱, 請依據放置解壓縮後的cuDNN函數庫的內容的資料夾名稱修改環境變數的內容.
圖5所示為設定妥環境變數內容的畫面
完成所有的設定之後, 使用滑鼠的右鍵點選[方案總管]視窗中的專案名稱, 執行[加入 | 機器學習模型]功能, 再選擇電腦視覺有關的場景, 包括:影像分類和物件偵測, 或是選擇和自然語言有關的場景, 包括:文字分類, 句子相似性, 問題解答, 和具名實體辨識, 就可以看到支援選取[本機(GPU)]設備訓練機器學習模型的選項, 如圖6所示:







留言
張貼留言