(更新)
2/14記事公開
NVIDIA DIGITSを用いた学習済モデルの構築方法は後日公開予定
※いいね数を見て興味を持つ人が多ければ急いで更新します。
【やることの流れ】
1.Google Cloud Platformの無料トライアルに登録
2.Google Compute Engine上にGPU(NVIDIA Tesla K80)付きのVMインスタンスを構築
3.VMインスタンスにVNC(リモートデスクトップ)接続環境を構築
4.ディープラーニング用のラベリングツールをインストール、ラベリング実施
5.NVIDIA DIGITSを用いてディープラーニングを実行し、学習済モデルを構築
【前提と留意事項】
・GPUを利用するとき以外はGPU或いはInstanceを停止してください(物凄い勢いで無料枠を消費します。)
・GCP、GPU、ディープラーニング未経験でも問題なし(ただし、Linuxの基本的操作スキルは必要)
・GCPは無料枠(3万円分)の利用を想定(Gmailアカウントを持っていること)
・インスタンスの起動時に課金されるため、使用時以外は停止することを推奨
・海外サイトでも情報公開しているため画像内の言語は英語(日本語とボタン等の配置は同じ)
#GCPの無料トライアルに登録
- 大まかな流れ
- GCP無料トライアル登録
- GCE有効化
- アカウントアップグレード
- GPUの制限解除
Google Cloud Platformにアクセス
「TRY GCP FREE」をクリック
適宜入力して、「AGREE AND CONTINUE」をクリック
所属やクレジットカード情報を入力して、「START MY FREE TRIAL」をクリック
※カード情報を入力しますが、無料枠を超えて勝手に課金されることは有りません
#GCPにGPU使用の伺いを立てる
GCPでGPUを使用する場合は、Googleに設定を変更してもらう必要があります
(ですので、登録後すぐにGPUを使用することはできません)
まずCompute Engineを有効にするために、GCP consoleのHOME画面左のメニューより、
Compute Engine > VM Instance (VMインスタンス) をクリック
Enable Billing(課金を有効にする)をクリックする
※クリックしても無料枠を超えて勝手に課金されることは有りません。
有効になるまで少し待ちます(完了すると以下の文言が消えます。)
初期設定ではGPUの使用に制限がかかっているため、GCPに設定変更を依頼
まず、HOME画面左のメニューより、 IAM&admin (IAMと管理)>Quotas (割り当て) をクリック
GPUを有効にするために、アカウントのアップグレードを行う
アップグレード後は再読み込みを実施すると画面に反映される
GPUの割り当てを編集するために、Metric(指標)>GPUs (all regions)のみを選択
チェックボックスをチェックして、「EDIT QUOTAS(割り当てを編集)」をクリック
New quota limitに0以外の数値を入れて、適当にリクエスト文言を入力してリクエスト登録
早ければ30分くらいで設定完了メールが届き、GPUが使用できるようになる
#Google Compute Engine上にGPU(NVIDIA Tesla K80)付きのVMインスタンスを構築
- 大まかな流れ
- VNC接続用にファイヤーウォールの設定
- GCEでGPU付きVMインスタンスの設定
まず、後々VNC接続できるようにVM作成の前に、5901ポートを開ける設定をする
HOME画面左のメニューから、VPC Network(VPCネットワーク) > Firewall Rules(ファイヤーウォールルール)をクリック
上部の「Create a firewall rule(ファイヤーウォール ルールを作成)」を押下し、以下の通り設定し作成する
この例のTarget Tags(ターゲットタグ)の「vnc-server」がVMインスタンスで紐づけるIDになる
次に、GPU付きVMインスタンスの設定
GCEのVMインスタンスページでCreate(作成)をクリック
インスタンスの詳細設定(以下の通り設定しないとGPUは使用できない)
Name:適切な名前を入力
Region(リージョン):us-west1(Oregon)(オレゴン)
Zone(ゾーン):us-west1-b
ここでMachine type(マシンタイプ)でCustomize(カスタマイズ)をクリックすると、
vCpuとGPU有無を設定可能になる
Number of GPUs(GPU数):1
GPU type(GPUモデル):NVIDIA Tesla K80
Boot diskで変更をクリックし、
Boot disk:Ubuntu 16.04 LTS
Size:50GBに変更する
VNC接続可能なファイヤーウォールルールを紐づけるために、
Management, security, disks, networking, sole tenancy
(管理、セキュリティ、ディスク、ネットワーク、単一テナンシー)をクリックして、
Networking>Network Tagsにファイヤーウォールルールで作成したタグ名を入力して作成
1分程度待つと、上記設定のVMインスタンスが構築され、SSHログイン可能になる
#VMインスタンスにVNC(リモートデスクトップ)接続環境を構築
- 大まかな流れ
- デスクトップ環境のインストール
- VNCサーバのインストール
- VNC接続の確認
※ここから先、基本的なLinux操作ができる前提で進める
デスクトップ環境をインストールするために、console上からSSHを押下してログインする
まず、apt-getのアップデートを行う
sudo apt-get update
続いて、gnome-coreをインストール
sudo apt-get install gnome-core
最後に、gnome-panelをインストール
sudo apt-get install gnome-panel
ここから、VNCサーバのインストール
sudo apt-get install vnc4server
一旦、VNCサーバを起動して、設定ファイルを生成する
※初回はパスワード設定を求められる
vncserver
VNCサーバの設定を変更するために、一旦、VNCサーバを停止する
vncserver -kill :1
設定を変更するために、xstartupを編集
vim .vnc/xstartup
- xstartupの編集内容
- #unset SESSION_MANAGERの#を外します。
- [ -x /etc/vnc/xstartup ]以下の全ての行の先頭に#を付けます。
- 一番下に以下の設定を追加します。
- metacity &
- gnome-settings-daemon &
- gnome-panel &
再びVNCサーバを起動
vncserver
※自動起動にしていないため、インスタンスを立ち上げる度にVNCサーバを起動すること
VNC接続の確認
まずVNCクライアントを用意、ここではGoogle Chromeのアプリを使用するためインストール
VNC® Viewer for Google Chrome™
External IP(外部IP)がVNCで接続するためのIPアドレスを以下から確認
VNC Viewerを起動し、Addressに「外部IP:5901」を入力して接続
接続パスワードを入力して、成功するとUbuntuデスクトップが表示される
** <注意>GPUを利用するとき以外はGPU或いはInstanceを停止してください(物凄い勢いで無料枠を消費します。) **