使用TensorBoard 观察训练
按照上一节中描述的方式使用mlagents-learn
命令将训练,在首次训练过程中,ml-agents
会在根目录下创建一个results
目录,并将结果与过程中的统计信息,保存到改目录下对应run-id
的文件夹中。
为了在培训期间或之后观察培训过程,请启动TensorBoard:
- 打开终端或控制台窗口 -> CD到ML-Agents Toolkit的安装目录。 -> 输入命令运行:
tensorboard --logdir=results/run-id --port=6006
--logdir : 训练统计信息存放目录
results:
ml-agents
创建的,存放训练数据及结果的目录
run-id : 上节执行训练的命令mlagents-learn /config/Pyramids.yaml --run-id=Pyramids
中的Pyramids
,ml-agents
会把本次训练的结果存在Pyramids
目录下--port : TensorBoard使用的端口,如果不行指定端口,则不需要改参数
- 打开浏览器窗口,然后导航到localhost:6006,就能查看详细的训练数据了。
注意: TensorBoard使用的默认端口是6006。如果端口6006上正在运行现有会话,则可以使用--port选项指定端口(如6007)启动新会话。
注意:如果不分配run-id
标识符,请mlagents-learn
使用默认字符串“ ppo”。所有统计信息将保存到同一子文件夹中,并在TensorBoard中显示为一个会话。几次运行后,在这种情况下显示可能会变得难以解释。您可以删除results
目录下的文件夹以清除旧的统计信息。
在TensorBoard窗口的左侧,您可以选择要显示的某个run-id
训练结果。您可以选择多个run-id
来比较统计信息。TensorBoard窗口还提供有关如何显示和平滑图形的选项。
ML-Agents培训计划保存以下统计信息:
mlagents-TensorBoard环境统计
-
Environment/Lesson
-绘制从课程到课程的进度。只有在进行课程培训时才需要关注。 -
Environment/Cumulative Reward
-所有特工的平均累积情节奖励。在成功的培训课程中应增加。 -
Environment/Episode Length
-环境中所有特工的每个情节的平均长度。
政策统计
-
Policy/Entropy
(PPO; BC)-模型决策的随机性。在成功的培训过程中应缓慢降低。如果它减小得太快,beta
则应增加超参数。 -
Policy/Learning Rate
(PPO; BC)-训练算法在搜索最佳策略时需要走多大步。应随时间减少。 -
Policy/Value Estimate
(PPO)-代理访问的所有状态的平均值估计。在成功的培训课程中应增加。 -
Policy/Curiosity Reward
(PPO +好奇心)-这对应于每集产生的平均累积内在报酬。
学习损失功能
-
Losses/Policy Loss
(PPO)-政策损失函数的平均幅度。与策略(决定操作的过程)在多大程度上相关。在成功的培训课程中,其强度应降低。 -
Losses/Value Loss
(PPO)-价值函数更新的平均损失。与模型能够预测每个状态的值的程度相关。在坐席正在学习时,该值应增加,然后在奖励稳定后减少。 -
Losses/Forward Loss
(PPO +好奇心)-逆模型损失函数的平均幅度。对应于模型对新观测编码的预测能力。 -
Losses/Inverse Loss
(PPO + Curiosity)-正向模型损失函数的平均幅度。与模型能够很好地预测两次观察之间采取的行动相对应。 -
Losses/Cloning Loss
(BC)-行为克隆损失的平均幅度。对应于模型模拟演示数据的程度。
网友评论