1. Episode(回合)
回合(episode)表示智能体从开始执行任务到完成任务(例如成功到达目标或触发失败条件)的全过程。
-
例如,如果我们训练一个四足机器人走到一个目标点,一个回合就是从机器人开始走到目标的过程。每次完成任务(无论是成功还是失败),就是一个回合。
例子:四足机器人开始走,经过 1000 步后到达目标位置,这一过程就是 一个回合(episode)。
2. 时间步(Time Step)
时间步(time step)是指智能体在回合中每一次与环境交互的单位时间。每次交互通常包括三个步骤:智能体获取当前状态、采取行动并获得奖励和下一个状态。
-
例如,在每个时间步,四足机器人会根据当前的状态(如位置、速度等)决定采取一个动作(例如迈出一步、转向等)。每一次的状态-动作-奖励-下一状态的转换就是一个时间步。
例子:在四足机器人的回合中,每一次迈步或做出决策都是一个 时间步。
3. Batch(批次)
批次(batch)是指在一次训练中,使用的数据集的集合。批次通常是训练过程中数据的一个子集,用于更新模型的参数。
-
例如,如果我们有 1000 条数据记录来训练一个模型,可能会把这些数据分成多个批次进行训练。
例子:假设我们有 5000 个机器人行走回合的数据记录,每 1000 条记录为一个 批次(batch)。每次训练时,我们都会使用其中一个批次来更新模型。
4. Batch Size(批次大小)
批次大小(batch size)是指在每次训练更新中,使用的样本数量。
-
例如,如果我们选择 batch size = 32,这意味着在每次训练过程中,我们会随机选择 32 条数据样本来进行训练。
例子:在 5000 条数据中,假设 batch size = 32,那么每次训练时会使用 32 条数据来更新模型,直到遍历完所有的数据。
5. Mini-batch(小批量)
小批量(mini-batch)是指将大的批次(batch)分成多个较小的批次进行训练。它结合了 批量梯度下降 和 随机梯度下降 的优点。每次训练中使用的小批量数据会被用来计算梯度并更新模型。
-
例如,如果我们有 5000 条数据,mini-batch 可以设置为 32 或 64,这意味着每次训练时,我们会从这些数据中抽取一个小批量来进行更新。
例子:假设我们有 5000 条数据,每个小批量的大小为 32,那么会将数据分成 5000 / 32 ≈ 156 个小批量,每次训练时使用其中的一个小批量来进行参数更新。
6. Epoch(训练周期)
Epoch 是指整个数据集被用于训练一次的过程。一个 epoch 中包括了对整个数据集的遍历和相应的参数更新。
-
例如,如果我们有 5000 条数据,且 batch size = 32,那么每个 epoch 会有 5000/32 ≈ 156 次小批量的训练更新。
例子:假设我们对四足机器人进行训练,数据集有 5000 条训练数据。如果 epoch = 1,那么在这一周期中,模型将会遍历整个数据集 1 次,进行 156 次小批量更新。