最近做了一份安裝Keras 的PPT。想說我已經五個月沒有寫文章了乾脆拿來寫一篇教學好了。這是給Windows的教學,不過Linux基本通用
一、安裝Anaconda
Anaconda是目前最受歡迎的python平台之一,使用conda來管理python虛擬環境使得python各類package相容問題變得很簡單迅速。
到Anaconda網站下載anaconda。https://www.anaconda.com/products/individual
安裝時有一個add enviroment path默認沒有勾,記得勾起來。
二、建立conda 環境
打開Anaconda prompt。
在裡面輸入
conda create –n NLP_course python=3.6# NLP_course 是你的環境名稱
# python=X.X 是指定環境python版本,一般來說3.6 3.7
conda 環境相關指令:
# 進入環境
conda activate NLP_course# 如果忘記名稱
conda env list# 退出環境
conda deactivate# 刪除環境
conda env remove --name <myenv>
[補充] For Linux
linux步驟差不多,wget 官網下載sh檔並執行。記得他會問是否要加入path,記得按y。成功後你的linux前面會出現一個(base)。
如果沒有base代表沒有成功加入環境,輸入conda會出現conda not found。這是因為bash無法辨識conda指令、找不要conda位置。
在家目錄底下輸入
vim .bashrc
拉到最底下寫下export PATH (下圖)並保存,這樣應該就可以使用conda了
有了conda 後就可以輕鬆安裝lib了。
安裝 EX:
conda install -c conda-forge opencv
conda install -c conda-forge matplotlib移除 EX:
conda uninstall opencv
接下來要幫jupyter notebook註冊我們剛剛建立好的python環境。
(在NLP_course環境中)
conda install jupyter
conda install ipykernel# 使用ipykernel,NLP_course(我們剛剛建立的python環境)註冊成一個名字叫做"NLP python"的python環境。
python -m ipykernel install --user --name NLP_course --display-name "NLP python"cd “dir where you want to go”# 打開jupyter notebook
jupyter notebook
打開jupyter notebook後就會發現new一個新的jupyter notebook時出現一個叫做NLP python的選項。
新開一個notebook可以確認一下notebook的python路徑。按shift+Enter執行。
如果開外部檔案,可以在上面的kernel更改notebook環境。
如果跳出no module name win32api,則安裝
conda install -c anaconda pywin32 即可。
[補充] jupyter 相關指令
# 查詢
jupyter kernelspec list# 註冊
python -m ipykernel install --user --name 目標環境 --display-name "取名"# 移除
jupyter kernelspec remove “目標環境”
(記得先jupyter kernelspec list查詢環境名稱)
二、安裝Tensorflow、Keras
更新
如果是要CUDA 11以上的人,不能直接無腦conda install ,可以參考這篇 (我實測可行):
以下為正題 CUDA 11以下
進入你的windows cmd。輸入nvida-smi。如果你出現'nvidia-smi 不是內部或外部命令、可執行的程式或批次檔。則進入C:\Program Files\NVIDIA Corporation\NVSMI,再輸入nvidia-smi即可。
記住你的Driver Version。
如果你還是找不到nvidia-smi,則去下載Geforce Experience https://www.nvidia.com/zh-tw/geforce/geforce-experience/。
可以在驅動程式這裡看到自己的驅動程式版本或是去更新驅動。
[補充] ubuntu 18.04 顯卡驅動安裝
可以參考這一篇
知道自己的顯卡驅動後進入: https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html\ 查看驅動與CUDA ToolKit相應版本。
接著進入Tensorflow官網查看CUDA與tensorflow相應版本。 https://www.tensorflow.org/install/source_windows
安裝相應tensorflow版本。
conda install tensorflow-gpu=X.X.X #X.X.X為你的Tensorflow版本如果失敗用pip安裝,但是你得自行安裝cudatoolkit與cudnn
pip install tensorflow-gpu==X.X.X
在安裝的時候tensorflow-gpu會順便幫你把cudatoolkit、cudnn對應版本安裝上去。如果不確定CUDA有沒有安裝上去。在conda 輸入 conda list 就能看到安裝好的cudatoolkit、cudnn、tensorflow-gpu。
接下來測試一下tensorflow是否能正確使用GPU資源。在python內輸入
import tensorflow as tftf.__version__tf.test.is_gpu_available()# 或是版本比較低的tensorflow :
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
如果成功輸出True並有看到自己的GPU型號就代表成功了。
一些常見錯誤解決:
如果是 CUDA與cudnn版本錯誤或沒有自動安裝上去,你可以手動裝:
conda install cudnn=7.6.0
conda install cudatoolkit=10.0.130
不過還是要注意顯卡驅動與CUDA相應版本。
cudnn安裝版本資訊:
如果 import tensorflow 時numpy跳出警告,這是因為numpy版本太高了。
自己google自己的tensorflow版本與numpy的對應版本。
如 tensorflow 1.12.0 版本是 numpy 1.15.4
conda install numpy=1.15.4
接下來安裝Keras,如果你是Tensorflow 2.0以上,那就不用安裝Keras了。2.0版本已經把Keras整合進去了。如果你不是去https://docs.floydhub.com/guides/environments/ 查看相應版本。
例如 我就是 Keras 2.2.4版本。
conda install keras=2.2.4
安裝完成後import keras,如果出現Using Tensorflow backend代表成功了。
如果你是2.0版本以上,可以試試。
import tensorflow.keras as keras