最近, 機械学習を始めてみようという方に, 勉強環境としてGoogle Colaboratory[1]をおススメすることがよくある.
Google Colaboratory概要
・機械学習の環境構築がほぼ不要(TensorFlow, Keras, PyTorch, Chainer等インストール済)
・GPUを含めて無料で利用可能(連続12hまで)
・Google Driveと連携可
こう書くと, 誰でもまずは使ってみようと思うだろう.
確かに, 環境構築など必要なく, すぐにチュートリアルなどを試せて便利.
関連記事:
・Google Colaboratory (1) ― ファイルをアップロード/ダウンロードする
・Google Colaboratory (2) ― FuseでGoogle Driveをマウントする
・Google Colaboratory (3) ― ファイルブラウザで簡単アップロード!!
だが, 使っていると不便な点も少々ある.
よく聞かれるのが, 「PCのデータセット等をColab上のプログラムで扱いたい場合に, どうやればよいかわからない」 といったことである.
前回, ファイルのアップロード/ダウンロードについて少し紹介したが, 今回はGoogle ColaboratoryからGoogle Driveをマウントする手順を紹介する.
1. Google Driveのマウント[2][3]
手順:
1) google-drive-ocamlfuseのインストール
!apt-get install -y -qq software-properties-common python-software-properties module-init-tools !add-apt-repository -y ppa:alessandro-strada/ppa 2>&1 > /dev/null !apt-get update -qq 2>&1 > /dev/null !apt-get -y install -qq google-drive-ocamlfuse fuse
2) Colab用のAuth token生成
from google.colab import auth auth.authenticate_user()
実行すると, Googleアカウントへのアクセス許可を求められるので, 許可してトークンを発行し, テキストボックスに張り付ける.
3) Drive FUSE library用のcredential生成
from oauth2client.client import GoogleCredentials creds = GoogleCredentials.get_application_default() import getpass !google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URL vcode = getpass.getpass() !echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}
実行すると, 2)と同様に, Google Driveへのアクセス許可を求められるので, 許可してトークンを発行し, テキストボックスに張り付ける.
4) Google Driveをマウント
!mkdir -p drive !google-drive-ocamlfuse drive
これで, Google Driveのマウント完了!!
試しに, 以下を実行すると
!ls drive BigQuery Colab Notebooks Documents images public
これで, Google Drive上のデータセット等も自由にアクセスすることができる.
Colabでは, コードはGoogle Drive上に簡単に保存できる仕組みがあるのだから, 同じアカウントのGoogle Driveにはこんなマウント処理しなくても簡単にアクセスできるようにしてほしいものだ...
----
参照URL:
[1] Hello, Colaboratory - Colaboratory - Google
[2] Google Colaboratory で Google Drive の特定のフォルダをマウントする方法
[3] Drive FUSE example.ipynb - Corabolately
プログラマのためのGoogle Cloud Platform入門 サービスの全体像からクラウドネイティブアプリケーション構築まで
|
Google Cloud Platformではじめる機械学習と深層学習
|
ゲーム開発が変わる!Google Cloud Platform 実践インフラ構築 (NextPublishing)
|
Google Cloudを使い倒せ! ゲームチェンジ時代の企業改革
|