增加时间步索引输入
在许多序列决策任务中,时间步信息(即当前处于第几步)对于模型的学习和决策非常重要。引入时间步索引作为输入,可以帮助模型捕捉到随时间变化的动态特征。例如,在强化学习或序列建模任务中,某些策略或状态的表现可能会随着时间推移而发生变化,模型通过感知时间步索引能够更好地适应不同阶段的决策需求。此外,时间步信息还可以辅助模型判断当前是否接近序列的起始或终止,从而做出更合理的决策。
时间步节点用于表示数据的时间信息。通过配置时间步节点信息,可以将时间步索引作为指定节点的输入。
下面使用一个 .yaml 示例来展示时间步索引的配置方法:
yaml
metadata:
graph:
action:
- observation
next_observation:
- action
- observation
columns:
...
上面是原始的 .yaml 文件。在下面修改后的 .yaml 文件中,我们通过添加关键字 step_input 作为节点的属性,将时间步信息配置为 next_observation 的输入。在训练模型过程中,time_step 会自动添加作为 action 节点的输入。
yaml
metadata:
graph:
action:
- observation
next_observation:
- action
- observation
columns:
...
nodes:
action:
step_input: True
重要提示
不需要在 graph 中添加 time_step 节点作为输入。如果配置了节点的 step_input 属性,时间步节点信息将会自动添加作为节点的输入。