【機械学習】AWSでDeepLabCutをGUIで使う (CPU)

今回は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接続します。

ユーザ名は ubuntu パスワードは先ほど設定したものです。

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

$ python -m deeplabcut

起動が成功するとこのようなウィンドウが生成されます。

これでAWS上でDeepLabCutをGUIで使うことができます!

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA