今回はAWSでDeepLabCutをGUIで動かせるようにします。
今回はCPUを使用する形となります。
前提条件と注意点
- RDP接続環境もしくはVNCクライアント
- AWSアカウントとクレジットカード
- 1日1.7$から5$のコスト(リージョン東京の場合)
- UbuntuでのGUIの環境準備(Mac)又はVNC接続の場合はこちらの記事を参考
- 今回はWSL2を使用しました。
EC2インスタンスの作成
AMIとインスタンスタイプは今回はこちらを選択します。
- Ubuntu Server 20.04 LTS (HVM), SSD Volume Type
- t2.xlarge
ストレージの追加では無料枠の必ず30GBに設定してください。
セキュリティグループの設定では以下の画像を参考に設定してください。

VNCを経由する場合はRDPの設定は必要ありません。
インスタンスを起動します。
Ubuntuの環境準備(RDP接続の場合)
インスタンスにSSHで接続します。
※WSL2を用いる場合pemファイルをWSL管理下のディレクトリまで移動してください。
$ mv 〇〇〇.pem /
$ chmod 400 〇〇〇.pem
以下のコマンドを実行します。
$ sudo apt -y update
$ sudo apt install -y ubuntu-desktop
$ sudo apt install -y xrdp
$ sudo sed -e 's/^new_cursors=true/new_cursors=false/g' -i /etc/xrdp/xrdp.ini
$ sudo systemctl restart xrdp
$ sudo systemctl enable xrdp.service
$ DESKTOP=/usr/share/ubuntu:/usr/local/share:/usr/share:/var/lib/snapd/desktop
$cat <<EOF > ~/.xsessionrc
export GNOME_SHELL_SESSION_MODE=ubuntu
export XDG_CURRENT_DESKTOP=ubuntu:GNOME
export XDG_DATA_DIRS=${DESKTOP}
export XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg
EOF
$ cat <<EOF | sudo tee /etc/polkit-1/localauthority/50-local.d/xrdp-color-manager.pkla
[Netowrkmanager]
Identity=unix-user:*
Action=org.freedesktop.color-manager.create-device
ResultAny=no
ResultInactive=no
ResultActive=yes
EOF
$ sudo passwd ubuntu #任意のパスワードを入力してください。
DeepLabCutに必要なソフトウェアをインストールします。
$ sudo apt install -y git
$ sudo apt install -y build-essential libgstreamer-plugins-base1.0-dev libgtk-3-dev libpulse-dev
Anaconda3 4.8.2 をインストールしてPATHを通しアップデートします。
$ wget https://repo.anaconda.com/archive/Anaconda3-2020.02-Linux-x86_64.sh
$ bash Anaconda3-2020.02-Linux-x86_64.sh
$ export PATH=~/anaconda3/bin:$PATH
$ source ~/.bashrc
$ conda update --all
DeepLabCutのインストール
無事にAnaconda3がインストールされれば(base)となるはずです。
以下のコマンドを実行し、仮想環境を作成してください。
$ git clone https://github.com/DeepLabCut/DeepLabCut.git
$ cd ~/#任意のディレクトリ/DeepLabCut/conda-environments
$ conda env create -f DEEPLABCUT.yaml
少し時間がかかりますが、環境が無事に作成されれば以下のような表示となります。
$ conda activate DEEPLABCUT
(DEEPLABCUT)$
デフォルトでインストールされているwxPythonではGUIで起動しないため、
こちらのコマンドを必ず入力してください。
こちらにも時間がかかります。
(DEEPLABCUT)$ pip install --upgrade wxPython
RDP接続
今回はインスタンスにRDP接続します。

ターミナルを開きます。以下のコマンドを実行します。
$ python -m deeplabcut

起動が成功するとこのようなウィンドウが生成されます。
これでAWS上でDeepLabCutをGUIで使うことができます!