Help us understand the problem. What is going on with this article?

Unity ML-Agents 環境構築とサンプルの動作確認 (Mac)

More than 1 year has passed since last update.

はじめに

ML-Agentsのドキュメントの流れを日本語として残しました。
公式サイト https://github.com/Unity-Technologies/ml-agents
ドキュメント https://github.com/Unity-Technologies/ml-agents/blob/master/docs/Readme.md

まとめ動画

https://youtu.be/ugcfWpy_jZQ

インストール

Unity

・Unity 2017.4 or Later:https://store.unity.com/download (Unity持ってない人のみ)
・ML-Agents Toolkit:git clone https://github.com/Unity-Technologies/ml-agents.git (ターミナルで実行すればml-agentsフォルダが出来上がる)

PythonとML-Agentsパッケージのインストール

Windows Users

後日記入:https://github.com/Unity-Technologies/ml-agents/blob/master/docs/Installation-Windows.md

Mac and Unix Users

・Python3.6:https://www.python.org/downloads/
・pip3:https://packaging.python.org/guides/installing-using-linux-tools/#installing-pip-setuptools-wheel-with-linux-package-managers (pip3を持ってない人のみ)
ターミナルで ml-agents>ml-agentsディレクトリまで移動し、以下を実行

pip3 install .

うまくインストールできていれば、上層のml-agentsディレクトリで

mlagents-learn --help

を入力すれば以下が表示される(表示されないならコメントください)。
スクリーンショット 2018-10-16 22.25.07.png

UnityにML-Agentsを導入する

  • Unityを起動
  • 先ほどのml-agentsフォルダのUnitySDKプロジェクトを開く
  • Edit>Project Setting > Playerで以下を設定 (.Net4.x とENABLE_TENSORFLOW)
    スクリーンショット 2018-10-16 22.31.40.png
  • File>Save Project

TensorFlowSharp pluginをダウンロードしてUnityにインポートする
https://s3.amazonaws.com/unity-ml-agents/0.5/TFSharpPlugin.unitypackage
インポートはここからダウンロードしたプラグインを選べばできる
スクリーンショット 2018-10-17 13.10.28.png

サンプル

ここではサンプルである、3DBallを動かす。
UnityエディタでAssets/ML-Agents/Examples/3DBall内にある3DBallのsceneを開く.
スクリーンショット 2018-10-17 13.09.30.png

3DBallの学習済モデルを動かす

  • 以下のように、Ball3DAcademy>Ball3DBrainのBrain TypeをInternalに設定する。
    スクリーンショット 2018-10-17 13.11.40.png

  • 学習済モデルであるAssets/ML-Agents/Examples/3DBall/TFModels内の3DBallGraph Model に設定する

スクリーンショット 2018-10-17 13.14.46.png

  • Unityエディタで再生ボタンを押せば学習済モデルの動作確認をすることができる

まとめ:学習済モデルを確認する場合は、BrainをInternalにし、Graph Mpdelにデータを設定して再生する

学習モデルを作成する(学習させる)

Unityエディタの準備

学習は外部で行われるので、Unityがバックグラウンドで動作でき、不必要な表示がでないように設定する。そのために以下のように
PlayerSettingsを設定する
- Run in Backgroundにチェック
- Display Resolution DialogをDisabled
スクリーンショット 2018-10-17 13.29.01.png

学習

  • 先ほどBrainをInternalとしたが、学習させる場合はExternalとする。
  • ターミナルを開いて、ml-agentsディレクトリ(mlagents-learn --helpが正常に表示される場所)で以下のコマンドを実行する
mlagents-learn config/trainer_config.yaml --run-id=firstRun --train

うまくいけば以下の画像が表示されるので、Unityエディタに戻り、再生ボタンをおす。
スクリーンショット 2018-10-17 13.24.14.png
学習が終了すれば、Ctrl+Cを押して実行を終了する。

  • UnitySDK/Assets/ML-Agents/Examples/3DBall/TFModels/フォルダに******.bytesファイルができているので、UnityエディタのAssets/ML-Agents/Examples/3DBall/TFModelsにドラッグする
  • 後は上で行ったようにBrainをInternalにし、Graph Mpdelに生成されたデータを設定して再生すれば確認できる

次への課題

次は、自作アプリに応用する場合の記事を書く

simanezumi1989
大学時代に微分方程式の定性的理論に関する研究が国際誌に掲載せれたことが自慢です。
http://fromalgorithm.jimdo.com
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした