如何使用Cloud ML Engine來訓練Deep Neural Network [Part 1]

[Part 1]先講解如何設定GCP,[Part 2]開始進行訓練。

Denis Hsieh
Denis Brain
4 min readAug 6, 2017

--

Google 帳號是必要的

使用Google的服務當然需要Google帳號,而且要提供付費資料也就是信用卡相關資訊,不過目前平台有提供300美元的試用優惠,相當划算!

有兩種方式可以使用這個引擎,一種是command-line,另一種是Datalab。這邊我選擇command-line,也許下次可以介紹一下如何使用Datalab。

安裝 Cloud SDK

可以參考官方文件 Quickstart for Mac OS X[1]。如果你不是使用MacOS的話也沒關係,文件也有提供其他作業系統的安裝指引。

注意:如果你的Python環境是用Pyenv安裝的話,請不要將Cloud SDK安裝在virtualenv虛擬出來的環境,因為在這樣的情況下會出現奇怪的錯誤,我也不知道為什麼。

  1. 確定 Python 2.7 被正確安裝在系統上(官方使用 Python2.7版本)
python -V

2. 下載安裝檔並解包放在你想要的位置,基本上現在的電腦應該都有支援64 bits

3. 執行下面那個指令來設置 Cloud SDK,他會自動把路徑加到環境變數裡。在執行完成後,請不要刪掉 “google-cloud-sdk” 資料夾,因為所有相關的程式檔都在裡面,並沒有被複製到其他系統路徑裡。 以下是步驟:

./google-cloud-sdk/install.sh
  • 輸入 Y
  • Zsh 是我預設的 shell,留白按下 ENTER 即可
  • 上面兩段指令會被加入 .zshrc 檔案裡用來設定路徑,如果你是用bash,那就是 .bashrc 檔案
  • 重新啟動你的 terminal,這些設定就會生效了

初始化 Cloud SDK

執行以下指令:

gcloud init

接著會有一些步驟 I’ll show you~

  • 使用 [default] 設定就選第一個選項,也可以建立新的設定就選第二個選項
  • 選擇第一個選項,使用現在的帳號;用其他帳號選擇第二個選項
  • 我只有一個project,所以選一
  • 這樣就設定完成了!最後它也提供了一些訊息可以參考

執行 gcloud 核心指令

  • 列出儲存在本機的帳號資格
gcloud auth list

會列出這樣的帳號清單:

Credentialed accounts:
- example-user-1@gmail.com (active)
- example-user-2@gmail.com
  • 列出使用中 SDK configuration 中的特性:
gcloud config list

會列出這樣的特性清單:

[core]
account = example-user-1@gmail.com
disable_usage_reporting = False
project = example-project
  • 檢視 Cloud SDK 安裝及設定的相關資訊:
gcloud info
  • 要查詢 gcloud 的指令或其他主題:
gcloud help

例如以下指令:

gcloud help compute instances create

gcloud 會提供一些幫助主題包括:指令的描述、旗標或選項的清單以及如何使用的範例

Cloud ML Engine

接下來的步驟可以參考這個連結Cloud ML Engine — Quickstart using the Command-Line[3]。

在開始前會有三點必須注意:

  1. 選擇或創建一個 Cloud Platform 專案
  2. 將你的專案加入帳單
  3. 啟動兩種APIs — Cloud Machine Learning Engine API & Compute Engine API

開始步驟:

  • 選擇或創建一個專案
  • 啟動 APIs 後,還需要新增 credentials
  • 新增 Cloud ML Engine 的 credential,不過這個 API 不需要新增 credential,所以直接到下一步
  • 新增 Compute Engine API 的 credential
  • 然後就據實回答上面的問題就可以了
  • 輸入一些相關資料
  • 我需要的服務是 Cloud ML Engine 所以就選擇 ML Engine Admin(權限最大)
  • 如果你有照著我的步驟走的話,圖片裡的1.~4.步驟就可以不鳥他了,直接從第 5. 步驟開始
  • 執行圖片中的第 7. 步驟後,會啟動Web來進行登入認證,完成後就是這樣囉!
  • 查驗一下 Cloud SDK 的元件
  • 現在是空的,當你開始建立 models 後會在這裡看到
  • 試著用 Python 執行一個簡單的 Tensorflow program
  • 如果出現上面的警告訊息,請不用擔心!那只是因為無法使用某些底層的指令而無法加速運算,而且我們真正的運算會在雲端上,所以忽略它即可

到這邊總算是把相關的設定都完成啦~(一直覺得設定的工作很麻煩又累人@@),如果你想多了解關於 GCP 的相關資訊可以參考這個連結 Google Cloud Platform Documentation[4]。這樣我們就可以往下個階段前進囉XD

References

2017.09.03 last updated

--

--

Denis Hsieh
Denis Brain

人生就是在絢爛與平靜中,不斷循環的過程。