目前使用 AutoKeras 最方便快速的方式除了雲端的 Google Colaboratory 外,就是在本機端安裝 Jupyter Notebook 來跑簡單的機器學習的範例。
如果需要更快速的運算跟訓練模型,就需要充分利用本機端原本就有的 GPU ,當然有額外的錢外接一張eGPU也是不錯的選擇。
這篇文章主要是介紹安裝 AutoKeras 與本機端支援 GPU 運行的流程。
Step1. 安裝 Anaconda 來建置環境跑 AutoKeras
使用 Anaconda 的好處是他擁有豐富的套件包與良好的套件管理,在資源(硬碟)足夠的情況下,安裝它可以為我們省去很多套件相關的麻煩。
Anaconda 是一種 Python 語言的免費增值開源發行版,用於進行大規模數據處理, 預測分析, 和科學計算, 致力於簡化包的管理和部署。Anaconda 使用 軟體包管理系統 Conda 進行包管理。
Step2. 安裝 Nvidia CUDA Toolkit
要能在本機端支援 GPU 的運算,前提是你的顯卡有支援 CUDA 架構 3 .5 以上的版本。
Step3. 安裝 cuDNN 函式庫
cuDNN
全名為:NVIDIACUDA®深度神經網絡庫
是用於 深度神經網絡
的GPU加速庫。 cuDNN為標準例程提供高度調整的實現,例如卷積,池化,規範化和激活層。而 cuDNN 同時也是 NVIDIA 深度學習SDK
的一部分。
全球深度學習研究人員和框架開發人員依靠 cuDNN
實現高性能 GPU 加速。它允許他們專注於訓練神經網絡和開發軟件應用程序,而不是花時間在低級 GPU 性能調適上。 cuDNN
加速了廣泛使用的深度學習框架,包括 Caffe2
,MATLAB
,Microsoft Cognitive Toolkit
, TensorFlow
, Theano
和 PyTorch
。
首先,前往 NVIDIA DEVELOPER 官網,點擊下載 cuDNN。
解壓縮檔案後會得到一個 CUDA 資料夾,分別含有
bin
、include
、lib
三個資料夾
將其內部的檔案,分別移至 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6
路徑下的對應資料夾中
例如: bin
裡面,需包含 cudnn64_8.dll
再分別將三個資料夾的檔案拖移至對應的位置後,將下列路徑加入環境變數中,以利將來調用
- C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6\bin
- C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6\extras\CUPTI\lib64
- C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6\include
- C:\cuda\bin
打開控制台→系統及安全性→進階系統設定→進階→環境變數(或是直接在控制台中搜尋 PATH)
尋找「系統變數」中「Path」的部份並用左鍵雙擊,新增上面的變數
Step4. 測試 tensorflow GPU 是否有正常運行
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
如果你的輸出訊息有出現你的顯卡型號就表示可以正常運行了 !
Debug1. 如果會當機或者 kernal 會死掉,可以檢視下面的步驟
在最新版本 (cuDNN v8.3.1 (November 22nd, 2021), for CUDA 11.5) 會有此問題,
去官網下載 zlib 的package,然後將 zlibwpi.dll 這個檔案的資料夾設定進系統的環境變數。
就可以正常運行 GPU 了。
環境變數記得設定
Debug2. 如果你有安裝 tensorflow + tensorflow-gpu 可能會出問題
從 TensorFlow 2.1 開始,透過 pip 安裝 tensorflow
即同時包含 GPU 支援,無需通過特定的 pip tensorflow-gpu
安裝 GPU 版本。
探索更多來自 懶泥陳的閱讀書房 的內容
訂閱後即可透過電子郵件收到最新文章。
KK
您好..請問您同時安裝autokeras及CUDA/cuDNN(為了使用tensorflow-gou),會有問題嗎?我發現如果裝了CUDA/cuDNN,autokeras運作會有問題
user
在最新版本(cuDNN v8.3.1 (November 22nd, 2021), for CUDA 11.5)才會有此問題
後來看到官方的安裝指南中有提到要另外放一個DLL
zlibwapi.dll
看你要放在哪裡,再把路徑加到環境變數就可以了,然後要記得重啟電腦
kk
按照您的方法, 有成功了, 感謝!