オイラは大したGPUを持っていないので、これまでDeep Learning手法の実装を自分で試すのに苦労していた。デスクトップPCを新調した今も、新しいGPUを買うまで状況は同じだ。

ということで、無料でGPUリソースも使えるクラウド環境 Google Colaboratory 通称Colabの使い方をちゃんと知っておこうと思う。
Google Colaboratory
動画では「Googleドライブに保存されるJupyter Notebook」と解説されているけど、そもそもJupyter Notebookにもあまり馴染みがないので、そこから理解していかなければ。
書いたnotebook(ipynbファイル)はバージョン管理したいので、手始めにGitHubに保存する方法を調べる↓
GitHub でのノートブックの保存と読み込み
Google ColaboratoryはGitHubと完全に統合できるように設計されており、NotebookをGitHubから読み込んだり、NotebookをGitHubに保存することができます。
公開されているNotebookをGitHubから直接読み込む
Colabは認証などの手順無しで、GitHubで公開されているNotebookを直接読み込むことができます。
例えば、以下のURLにあるNotebookなら:https://github.com/googlecolab/colabtools/blob/master/notebooks/colab-github-demo.ipynb
Colabでのリンクは以下URLになります:https://colab.research.google.com/github/googlecolab/colabtools/blob/master/notebooks/colab-github-demo.ipynb
Chrome拡張機能Open in Colabを使用すれば、このようなリンクをワンクリックで生成できます。
ColabからGitHubのリポジトリをブラウジングする
Colabは、GitHubの任意のユーザー/組織、リポジトリ、ブランチに直接リンクする特別なURLもサポートしています。
例えば:
- http://colab.research.google.com/githubを使用すると、通常のGitHubブラウザが表示され、任意の組織、ユーザー名を検索できます。
- http://colab.research.google.com/github/googlecolab/を使用すると、googlecolab組織のリポジトリブラウザが開きます。googlecolabを任意の組織/ユーザーに置き換えると、その組織/ユーザーのリポジトリが表示されます。
- http://colab.research.google.com/github/googlecolab/colabtools/を使用すると、googlecolab組織内のcolabtoolsリポジトリのメインブランチを閲覧できます。 任意のユーザー/組織、リポジトリに置き換えるとその内容を確認できます。
- http://colab.research.google.com/github/googlecolab/colabtools/blob/masterを使用すると、googlecolab組織内のcolabtoolsリポジトリのマスターブランチを閲覧できます。(blobを忘れないこと!) 任意のリポジトリの任意のブランチを指定することができます。
PrivateのNotebookを読み込む
GitHubのPrivateリポジトリからNotebookを読み込むことも可能ですが、Colabがファイルにアクセスできるようにするために追加の手順が必要です。以下の手順を行います:
- http://colab.research.google.com/githubに移動します。
- “Include Private Repos”(Privateリポジトリを含める)チェックボックスをクリックします。
- ポップアップウィンドウでGithubアカウントにサインインし、ColabにPrivateファイルの読み取りを許可します。
- これで、PrivateリポジトリとNotebookがGitHubナビゲーションペインから利用できるようになります。
NotebookをGitHubまたはGoogleドライブに保存する
GitHubがホストするNotebookをColabで開くと、Notebookを編集できる新しいビューが開きます。 ソースの上書きを心配することなく、Notebookを実行・変更できます。
Colab上から変更を保存する場合は、[ファイル]メニューを使用して、変更したノートブックをGoogleドライブに保存するか、GitHubに戻すことができます。
[ファイル]→[ドライブにコピーを保存]または[ファイル]→[GitHubにコピーを保存]を選択し、表示されるプロンプトに従います。 Colab NotebookをGitHubに保存するには、コミットをリポジトリにプッシュする権限をColabに付与する必要があります。
Colabバッジから開く
GitHubがホストするNotebookのコピーは誰でもColabで開くことができます。多くの人がGitHubでホストされているNotebookのライブビューに簡単にアクセスできるように、Colabでは以下のようなshields.ioスタイルのバッジを提供しています。
このバッジのmarkdownでの記述は以下の通りです:[](https://colab.research.google.com/github/googlecolab/colabtools/blob/master/notebooks/colab-github-demo.ipynb)対応するHTMLは以下の通り:
![]()
このテンプレートのNotebook URLを、リンク先のNotebookに置き換えることを忘れないでください。
Colabを始める前のGoogleドライブの環境設定はこちらの記事を参考にしようか↓
https://www.atmarkit.co.jp/ait/articles/1812/10/news145.html
とりあえずPyTorchの簡単なコードを実行してみようね。
https://github.com/omerbsezer/Fast-Pytorch
最近勉強した流れでPGGANを試してみても良いかもね。
https://pytorch.org/hub/facebookresearch_pytorch-gan-zoo_pgan/
無料でColabを使う場合の制限については追々理解していこう。
https://qiita.com/shoji9x9/items/0ff0f6f603df18d631ab
https://qiita.com/tomo_makes/items/b3c60b10f7b25a0a5935
関連記事
OpenCV 3.1から追加されたSfMモジュール
ZBrushのZScript入門
手を動かしながら学ぶデータマイニング
PyTorch3D:3Dコンピュータービジョンライブラリ
SONY製のニューラルネットワークライブラリ『NNabla』
OpenCVのfindEssentialMat関数を使ったサ...
ZBrushで作った3Dモデルを立体視で確認できるVRアプリ...
スクラッチで既存のキャラクターを立体化したい
Zibra Liquids:Unity向け流体シミュレーショ...
3Dモデルを立体視で確認できるVRアプリを作っている
UnityでTweenアニメーションを実装できる3種類の無料...
Alice Vision:オープンソースのPhotogram...
iOSデバイスのためのフィジカル・コンピューティングツールキ...
Point Cloud Libraryに動画フォーマットが追...
ブログの復旧が難航してた話
adskShaderSDK
U-Net:ディープラーニングによるSemantic Seg...
オープンソースの取引プラットフォーム
3D Gaussian Splatting:リアルタイム描画...
Photogrammetry (写真測量法)
OpenCV 3.1のsfmモジュールを試す
iOSで使えるJetpac社の物体認識SDK『DeepBel...
Active Appearance Models(AAM)
機械学習に役立つPythonライブラリ一覧
OpenCV 3.1のsfmモジュールのビルド再び
機械学習について最近知った情報
WordPressのサーバ引っ越し方法を考える
プログラミングスキルとは何か?
Faceshiftで表情をキャプチャしてBlender上でM...
池袋パルコで3Dのバーチャルフィッティング『ウェアラブル ク...
オープンソースの顔認識フレームワーク『OpenBR』
Unity ARKitプラグインサンプルのドキュメントを読む
Faster R-CNN:ディープラーニングによる一般物体検...
UnityプロジェクトをGitHubで管理する
Unity ARKitプラグインサンプルのチュートリアルを読...
CGのためのディープラーニング
CycleGAN:ドメイン関係を学習した画像変換
WordPressプラグインによるサイトマップの自動生成
Math Inspector:科学計算向けビジュアルプログラ...
Seleniumを使ったFXや株の自動取引
機械学習で遊ぶ
疑似3D写真が撮れるiPhoneアプリ『Seene』がアップ...
![改訂版 Pythonユーザのための Jupyter[実践]入門](https://m.media-amazon.com/images/I/51gXCVsVQiL.jpg)


コメント