【 AIoT 】於 Azure VM 中使用單一 NVIDIA GPU 訓練影像
內容
- 學習目標
 - 前置準備作業
 - 訓練花朵影像
 - 驗證訓練完成的模型
 
前置準備作業
- 已建立 Azure GPU Ubuntu VM 且已安裝 Cuda
 
訓練花朵影像
Step 1. 遠端登入的 Azure VM
-  
macOS 參考文件 - 透過瀏覽器開啟下方網址
 -  
Windows 參考文件 - 透過瀏覽器開啟下方網址
-  
使用 Putty
 -  
使用 Windows PowerShell
 
 -  
 
Step 2. 建立資料夾並切換路徑
-  
請在終端機中輸入下方指令
mkdir ~/tensorflow-sample && cd ~/tensorflow-sample
 
Step 3. 下載 Google - tensorflow-for-poets-2 訓練程式
 -  
下載
-  
請在終端機中輸入下方指令
git clone https://github.com/googlecodelabs/tensorflow-for-poets-2
 
 -  
 -  
切換路徑
-  
請在終端機中輸入下方指令
cd tensorflow-for-poets-2
 
 -  
 
Step 4. 下載花朵訓練影像
-  
下載
-  
請在終端機中輸入下方指令
wget http://download.tensorflow.org/example_images/flower_photos.tgz
 
 -  
 -  
解壓縮
-  
請在終端機中輸入下方指令
tar zxvf flower_photos.tgz
 
 -  
 
Step 5. 建立放置 model 的資料夾
-  
請在終端機中輸入下方指令
mkdir model
 
Step 6. pip 升級與安裝套件
-  
pip 升級
-  
請在終端機中輸入下方指令
pip install --upgrade pip
 
 -  
 -  
安裝
tensorflow-gpu套件-  
請在終端機中輸入下方指令
pip install tensorflow-gpu==1.13.2
 
 -  
 
Step 7. 使用 GPU 訓練程式
-  
取得 GPU 編號
-  
請在終端機執行下方指令
nvidia-smi
 
 -  
 -  
請在終端機執行下方指令 ( 訓練時間約 5 ~ 10 分鐘 )

 
Step 8. 查看執行狀況
- 請開啟兩個登入到 Azure GPU VM 的終端機 
-  
終端機 1 中輸入下方指令
tail -f ~/tensorflow-sample/tensorflow-for-poets-2/nohup.log
 -  
終端機 2 中輸入下方指令
watch -n 2 nvidia-smi
 
 -  
 
驗證訓練完成的模型
Step 1. 編輯程式
-  
請在終端機中輸入下方指令
sudo vi ~/tensorflow-sample/tensorflow-for-poets-2/scripts/label_image.py
 -  
輸入
/input_layer進行搜尋
 -  
修改資料 ( 輸入
i進入編輯模式 )-  
將
input_layer = "input"修改成input_layer = "Mul" -  
將
input_height後方的數字改成299 -  
將
input_width後方的數字改成299-  
修改前

 -  
修改後

 
 -  
 
 -  
 -  
存檔並離開
-  
① 點選
esc鍵到指令模式 -  
② 輸入
:wq!
 
 -  
 
Step 2. 花朵識別
-  
切換路徑
-  
請在終端機中輸入下方指令
cd ~/tensorflow-sample/tensorflow-for-poets-2
 
 -  
 -  
下載測試影像
-  
請在終端機中輸入下方指令
wget https://i.imgur.com/F55o4EM.jpg -O test-flower.jpeg
 
 -  
 -  
使用 Model 識別花朵
- 請在終端機中輸入下方指令
 
