Anaconda3 をインストールして Python 開発環境を整える.引き続き,Python の隔離された環境を作り,Unity, ML-Agents, NVIDIA CUDA ツールキット,NVIDIA cuDNN,TensorFlow 1.15 をインストールする.インストールは,conda コマンド等で簡単にできる.
【目次】
先人に感謝.
Chocolatey は,Windows で動くパッケージマネージャ. アプリケーションのインストールや更新が簡単にできるようになる.
※ 注意事項. Chocolatey のライセンス条項は必ず確認すること.
※ 注意事項. Chocolatey を使うと、種々のソフトウェアのインストールが楽になる. このとき、インストールするソフトウェアの利用条件、ライセンス条項は必ず、確認すること.
インストールは,Chocolatey の Web ページの記載の手順に従う.
新しい画面に変わるので確認する
コマンドプロンプトを管理者として実行: 別ページ »で説明
しばらく待つ
※ Unity などをインストール済みのときは、違った画面になる
実行のとき、エラーメッセージが出ないことを確認すること
choco install -y unity unity-standard-assets unity-linux
Anaconda3 は,Anaconda Inc. 社が提供している Python バージョン 3 の言語処理系,開発環境やツール,管理ツールである conda,主要な Python パッケージを1つにまとめたソフトウェアである.次のアプリケーションも同封されている.
conda は Python のパッケージのインストール,各種ソフトウェアのインストール,新しい Python 環境の作成等を行えるソフトウェア
conda は Anaconda3 の根幹となっており「conda を使わない」ということはできない.
手動で選択したいときは,下側のボタンをクリック
※ インストールのときに「All Users」でなく「Just Me」を選んだときの注意点:日本語を含むディレクトリにはインストールしないことにする。 日本語を含むディレクトリが既定(デフォルト)になっているときは、 別のディレクトリを設定すること。
オプションは既定(デフォルト)のままで進める. ※ 「Add Anaconda3 to the system PATH environment variable」をチェックしない.Anaconda3 に同封のプログラムにパスを通すと,使いにくくなる(好みの問題ではある)と考える.Anaconda3 などの起動は Windows のスタートメニューで行うことにする.
※ 「Add Anaconda3 to the system PATH environment variable」にチェックした場合は,システム環境変数 PATH に,自動で追加される
しばらく待つ
https://www.anaconda.com/pycharm
print(1 + 2)
今度は,次の Python プログラムを実行する
import numpy as np %matplotlib inline import matplotlib.pyplot as plt import warnings warnings.filterwarnings('ignore') # Suppress Matplotlib warnings plt.style.use('ggplot') x = [1, 2, 3, 4] y = [3, 5, 2, 4] plt.scatter(x, y)
conda list numpy
「conda-forge」は入っていないはずだが,念のため実行する.
conda 公式のチートシート:
(途中省略)
conda config --remove channels conda-forge
conda update -y -n base conda
conda update -y anaconda
conda update -y --all
conda clean -y --all
「反応が遅い」と感じたら,Enter キーを押してみる.表示が止まっている可能性があるため.
次のコマンドを実行.
「Proceed ([y]/n) ?」 に対しては Enterキー
conda create -n ml-agents
conda info -e
これで、もとからの Python 環境と, 新規作成されたPython 環境(Python のバージョン 3,名前は ai)の共存できた。
activate ml-agents
※ もとの Python 環境に戻るときは「exit」
いま作成した Python 環境で、パッケージの更新などの前準備を行う
次のコマンドを実行.
activate ml-agents
1行ずつ実行
「conda config --remove channels conda-forge」は,conda のチャンネルに「conda-forge」が入っていたら削除する操作.「CondaKeyError: 'channels' 'conda-forge' ...」というエラーメッセージは無視してよい.
conda config --remove channels conda-forge
conda upgrade -y --all
conda clean -y --packages
エラーメッセージが出ないことを確認
conda info
https://github.com/Unity-Technologies/ml-agents/blob/master/docs/Installation.md の記述に従う
いま作成した Python 環境に、種々の Python パッケージをインストールする
Anaconda では,「conda」形式のパッケージを、簡単に扱うことができる. conda を用いてPythonパッケージ以外のソフトウェアをインストールすることもできる
次のページの手順により,インストールを行う
GPU は,グラフィックス・プロセッシング・ユニットの略で、コンピュータグラフィックス関連の機能,乗算や加算の並列処理の機能などがある.
次のコマンドを実行.
activate ml-agents
GPU 版 TensorFlow をインストールする場合
conda install -y -c conda-forge tensorflow-gpu=1.15 tensorflow-datasets conda config --remove channels conda-forge
CPU 版の TensorFlow をインストールする場合
※ このとき,NVIDIA CUDA ツールキット,NVIDIA cuDNN が, TensorFlow に合うように,自動でバージョンダウンされる場合がある. これは問題ない.
conda install -y -c conda-forge tensorflow=1.15 tensorflow-datasets conda config --remove channels conda-forge
バージョン番号が表示されれば OK.下の図とは違うバージョンが表示されることがある.
python -c "import tensorflow as tf; print( tf.__version__ )"
実行結果の中に,実行結果の中に,次のように「device_type: "GPU"」があれば,GPUが認識できている.エラーメッセージが出ていないことを確認しておくこと.
python -c "from tensorflow.python.client import device_lib; print(device_lib.list_local_devices())"
https://github.com/Unity-Technologies/ml-agents/blob/master/ml-agents/setup.py の記述による
次のコマンドを実行.
activate ml-agents
時間がかかるので待つ
conda install -y grpcio jupyter matplotlib numpy pillow protobuf pyyaml conda install -y -c conda-forge h5py conda config --remove channels conda-forge
git の URL: https://git-scm.com/
次のコマンドを実行.
activate ml-agents
実行のとき、エラーメッセージが出ないことを確認すること
cd c:\tools rmdir /s /q ml-agents git clone https://github.com/Unity-Technologies/ml-agents.git
mkdir c:\pytools cd c:\pytools rmdir /s /q imgaug
conda install -y opencv cython scikit-image scipy git clone https://github.com/aleju/imgaug cd imgaug python setup.py build python setup.py install
「python -m pip install」の後ろは、半角スペースと半角ピリオド
実行のとき、エラーメッセージが出ないことを確認すること
「mlagents_envs==0.14」の「0.14」は,エラーの出ない版を指定する.
cd c:\tools\ml-agents cd ml-agents python -m pip install mlagents_envs==0.14 python setup.py build python setup.py install
次のコマンドを実行.説明が表示されれば OK.
実行のとき、エラーメッセージが出ないことを確認すること
エラーメッセージが出たときは,上の操作の代わりに, 「python -m pip install mlagents==0.14」を実行して,mlagents をインストールする
mlagents-learn --help
Unity はゲームエンジン.ここでは、Unity を起動し、Unity ML-Agents の設定を行う
関連ページ: https://github.com/Unity-Technologies/ml-agents/blob/main/docs/Getting-Started.md
スタートメニューを使って起動するのが簡単
Unity ID を持っていないときは、「Sign in with google」などでログインするか、「create one」をクリックして Unity ID を作る
すでに、「Sign in with google」でログインしたことがある場合は、次のような画面が表示される
Unity の利用条件、ライセンス条項を確認し、利用すること
「Edit」 →「Project Settings」 →「Player」 と操作する
次の URL からダウンロードする
https://s3.amazonaws.com/unity-ml-agents/0.5/TFSharpPlugin.unitypackage
ダウンロードしたファイルを実行する
次のような画面が開くので「Import」をクリック
少し待つ
Unity のプロジェクトの画面で、 「Assets」 →「ML-Agents」 →「Plugins」 →「Computer」のディレクトリに、TensorFlow のファイルがあるのを確認する
マウスの右ボタンを押しながらマウスを動かすと、回転する
マウスのホイールで、前後移動するする
※ 階層の画面(Hierarchy window)は、ゲームオブジェクトの階層構造が表示される画面
Ball3DBrain ゲームオブジェクトのプロパティである Brain 要素の Graph Modelフィールドにドラッグする
※すでに設定済みの可能性があるが念のため
これで、事前学習済みのモデルが設定できた。
「Play ボタン」をクリックして、実行を開始する。
事前学習済みのモデルでバランスをとる様子を確認できる
※ 階層の画面(Hierarchy window)は、ゲームオブジェクトの階層構造が表示される画面
うまくボールを受け止めることができていないことを確認する
※ 実行中のときは保存できないので、実行を停止してから保存する
これで、学習を始める準備ができた.Unity の画面は閉じないこと
次のコマンドを実行.
activate ml-agents
cd c:\tools\ml-agents
「\」でなく「/」を使う
mlagents-learn config/trainer_config.yaml --run-id=1 --train
セキュリティ警告が出た場合には許可する
copy c:\tools\ml-agents\models\1-0\editor_Ball3DAcademy_1-0.bytes c:\tools\ml-agents\UnitySDK\Assets\ML-Agents\Examples\3DBall\TFModels
※ 階層の画面(Hierarchy window)は、ゲームオブジェクトの階層構造が表示される画面
※ 実行中のときは保存できないので、実行を停止してから保存する
結果を確認する