在深度强化学习(Deep Reinforcement Learning, DRL)的收敛图中,横坐标选择 steps
或者 episodes
主要取决于算法的设计和实验的需求,两者的差异和使用场景如下:
-
Steps(步数):
- 定义:一个 step 通常指的是在环境中执行一次动作并收到一次反馈(即状态转移和奖励)。因此,
steps
代表的是智能体与环境交互的总次数。 - 使用场景:当我们关心算法每一步(action)如何影响学习效果,或想评估算法在更细粒度时间尺度下的学习过程时,常用
steps
作为横坐标。对于一些环境来说,steps
可以更好地反映学习的进展,尤其是当每个 episode 的长度不固定或差异较大时,steps
会提供更一致的度量。 - 适用算法:比如在一些连续控制任务中,steps 更有意义,因为这些任务中的 episode 可能较长或很难明确划分。
- 定义:一个 step 通常指的是在环境中执行一次动作并收到一次反馈(即状态转移和奖励)。因此,
-
Episodes(回合):
- 定义:一个 episode 是智能体从环境的初始状态开始执行动作,直到到达终止状态(例如游戏结束、目标达成、或者智能体失败等)。一个 episode 包含了多个 steps。
- 使用场景:当我们关心智能体在整个任务中的表现变化时,
episodes
作为横坐标更常见。通常,用于表示算法在完成完整任务(例如游戏、导航等)过程中逐渐收敛的情况,适合于那些有明确开始和结束的任务。 - 适用算法:例如在基于离散动作空间的任务(如游戏、迷宫导航等)中,episodes 更容易反映智能体在每次尝试完成任务时的表现。
选择依据:
- 任务的结构:如果任务有明确的回合(例如一个游戏关卡),那么使用
episodes
更直观。如果任务没有明显的回合,或者回合长度变化较大,steps
可能是更好的选择。 - 评估目标:如果你想观察智能体在每一个决策点的学习情况,用
steps
可能更合适;如果你更关注智能体在整个任务(回合)中的学习进展,episodes
会更合理。 - 算法特点:一些算法可能对每步的细粒度表现(如
steps
)更加敏感,而另一些算法则关注整体表现(如episodes
)。
简而言之,steps
适用于精细粒度的分析,episodes
适用于较高层次的任务表现分析。