1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【備忘録】Unity ML-Agentsで学習開始する方法とTensorBoardで結果を見るまでの流れ

Last updated at Posted at 2022-07-05

【学習の準備と流れ】

1. 学習用スクリプトとyamlファイルを作成.
AgentのコンポーネントのBehavior ParametersのBehavior Nameを固有のものに変更しておく.
そのほか,AgentのコンポーネントのSpace SizeやContinuous Actions,Interface Deviceなど必要なパラメータをセットしておく.

※yamlの2行目はAgentのコンポーネント「Behavior Parameters」の一番上のBehavior Nameと一致させる必要あり.
ここが一致していないと以下のようなエラーが出る

mlagents.trainers.exception.TrainerConfigError: The behavior name PivotAgent_xy_smooth has not been specified in the trainer configuration. 
Please add an entry in the configuration file for PivotAgent_xy_smooth, or set default_settings.



yamlファイルの例

board_config.yaml
behaviors:
  BoardBehavior:
    trainer_type: ppo
    hyperparameters:
      batch_size: 10
      buffer_size: 100
      learning_rate: 3.0e-4
      beta: 5.0e-4
      epsilon: 0.2
      lambd: 0.99
      num_epoch: 3
      learning_rate_schedule: linear
    network_settings:
      normalize: false
      hidden_units: 128
      num_layers: 2
    reward_signals:
      extrinsic:
        gamma: 0.99
        strength: 1.0
    max_steps: 500000
    time_horizon: 64
    summary_freq: 10000

2. Winwdows PowerShellでanaconda起動.必要であればUnityのプロジェクトがある場所までフォルダ移動しておく.
(base) PS C:\Users\Mlab> conda activate ml-agents

3. 1.で作成したyamlファイル(のパス)を指定して学習開始.run-id=の後ろ(ここでは"RollerBall616")が出力フォルダとなる(固有名である必要あり).
(base) PS C:\Users\Mlab> mlagents-learn config/board_config.yaml --run-id=RollerBall616

4. PowerShell上にUnityのロゴが出て,エラーがなければOK.Unity Editorで再生ボタンを押して学習開始.
yamlに記述したハイパーパラメータなどの情報が正しく表示されればOK.学習が進むにつれエピソード数や経過時間などが更新されていく.
PowerShell_UnityLogo.jpg
Unityのロゴというのはこんな感じ↑


【TensorBoardで結果を見る】

1. anaconda起動
(base) PS C:\Users\Mlab> conda activate ml-agents

2. resultsフォルダに移動
(ml-agents) PS C:\Users\Mlab> cd results

3. ログファイルのセット
(ml-agents) PS C:\Users\Mlab\results> tensorboard --logdir=./RollerBall616 --port=6006

出力
TensorFlow installation not found - running with reduced feature set.
Serving TensorBoard on localhost; to expose to the network, use a proxy or pass --bind_all
TensorBoard 2.8.0 at http://localhost:6006/ (Press CTRL+C to quit)

ブラウザで↑のURLにアクセスすれば良い.

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?