Webブラウザ経由でどこからでもアクセスできてVisual Studio Codeのようにコード補完もしっかりあり、ついでにCPU/GPUも両方つかえる機械学習の開発環境。そんな駅から徒歩3分オートロックの家電付き物件並みの環境を構築する方法を解説します。
Amazon SageMaker Studio Labを機械学習の開発環境として使用し、文字通りIDEのサーバーであるCode ServerをStudio Lab上で起動します。これにより、Studio Lab内にあるJupyter NotebookをIDEで編集できます。
Amazon SageMaker Studio Labのアカウント登録手順はAmazon SageMaker Studio Lab の使い方を参照してください。code-server
を使う上で大事なポイントとしてTerminalがありストレージがついています。無料/メールアドレスのみで利用できます。
環境構築手順
Amazon SageMaker Studio Labにログインしたら次の手順を実行します。
- File > New > からTerminalを起動する
-
conda install -c conda-forge code-server
を実行しcode-server
をインストールする -
PASSWORD=xxxxxx code-server --auth password
を実行しcode-server
をパスワード認証つきで起動する。-
xxxxx
は任意の(セキュアな)パスワードを設定してください
-
-
https://yyyyy.sagemaker.aws/studiolab/default/jupyter/proxy/8080/
にアクセスする。-
yyyyy
は、利用しているStudio Labによって異なります。ブラウザのURL欄を確認してください。 - パスワードの入力が求められるので設定したパスワードを入力してください。
-
ブラウザからアクセスすると次のような画面が出ていると思います。
code-server
のコマンドを実行したTerminalは次のような出力がされています。
(studiolab) studio-lab-user@default$ PASSWORD=xxxxx code-server --auth password
[2022-05-24T11:48:51.793Z] info code-server 4.4.0 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
[2022-05-24T11:48:51.794Z] info Using user-data-dir ~/.local/share/code-server
[2022-05-24T11:48:51.809Z] info Using config file ~/.config/code-server/config.yaml
[2022-05-24T11:48:51.809Z] info HTTP server listening on http://127.0.0.1:8080/
[2022-05-24T11:48:51.810Z] info - Authentication is enabled
[2022-05-24T11:48:51.810Z] info - Using password from $PASSWORD
[2022-05-24T11:48:51.810Z] info - Not serving HTTPS
ここからはVisual Studio Codeと使い勝手はほぼ同じです。Pythonの拡張をインストールします。
Studio Lab上のファイルシステムが連携されており、Notebookを開くことができます。KernelもStudio Labで作っていたものに切り替えることができます。
コード補完
PyTorchの実装例ですが、ちゃんと補完されてきます。
結論
手元のPCのスペックが足りなくても十分なリソースの開発環境が用意できるのは、機械学習を学ぶ個人だけでなくハンズオンなどでも便利です。コードの補完が効いた開発環境でぜひ機械学習を学んでいただければと思います!Studio Labで学べる教材は次のページで紹介しています。
SageMaker Studio Lab Community
良い機械学習学習ライフを!