Unityにml-agentsという機械学習のライブラリがあるのは何となく知っていたけど、LEGOの件でUnityをいじれるようになったので、Unityの動画を見ながら試してみた。
一緒に同書籍のKindle版(PDF版の方が良かったかも…)を購入してまずは環境をセットアップした。しかし、いろいろ書籍と動画で違うところがあって、動画を元に作業を行った。(Unityの操作とかは動画の方がわかりやすいし。)
Anacondaのインストールの前に
Anacondaをインストールするのに、他のPython環境用にpyenvを使っていたので、pyenvとAnacondaの共存したいと思って調べたら、pyenvのプラグインとして、pyenv-virtualenvというツールがあるのがわかった。
ここでは、Anacondaのインストールとcondaコマンドでの仮想Python環境を整えるまでの操作を記録しておきます。
pyenv-virtualenvのインストール
pyenv-virtualenvはbrewでインストール出来る。(私はpyenv-virtualenvのインストール前にsystemをカレントにして、それ以外のPythonをuninstallしておきました。)
brew update brew install pyenv-virtualenv
Anacondaのインストール
次にpyenvからanaconda3-2020.02をインストール。
pyenv install --list | grep anaconda3 pyenv install anaconda3-2020.02
そしてAnacondaを有効にします。
pyenv global anaconda3-2020.02
condaコマンドでml-agents用の仮想環境をcreate & activate
condaコマンドでml-agents用の仮想環境をcreate & activateをしますが、activateはpyenvから行います。
conda create -n ml-agents python=3.7 pyenv activate anaconda3-2020.02/envs/ml-agents
pip install での注意
動画でml-agentsライブラリのインストールをpipコマンドで行っていますが、私の環境では2回目のpip installでエラーが出ました。調べたら –use-feature=2020-resolver オプションを付ければOKとの事で、次のようになりました。特にエラーになったpip installの後で –use-feature のオプションを付けたpip installコマンドを再度実行して問題ありませんでした。pipコマンドが最新だと問題ないのかも知れないです。
pip install -e ./ml-agents-envs pip install --use-feature=2020-resolver -e ./ml-agents
学習の定義ファイル
学習の定義ファイルが動画を止めて入力するのが面倒なので、上に書籍のサポートページへのリンクを貼っておいたので、そこからダウンロードしてそれを使う(動画と同じかどうかはわかりませんので、確認してから使ってください)といいと思います。私は動画を見て入力しましたが、フォーマットとか知らなかったので、タブでインデントを付けてエラーになったり、タイプミスしてエラーになったりで面倒でした。