【发布时间】:2019-12-07 01:24:15
【问题描述】:
我正在尝试在 PyTorch 中建立一个通用的强化学习框架,以利用所有利用 PyTorch DataSet 和 DataLoader 的高级实用程序,如 Ignite 或 FastAI,但我遇到了阻碍强化学习数据的动态特性:
- 数据项是从代码生成的,而不是从文件中读取的,它们依赖于之前的操作和模型结果,因此每个 nextItem 调用都需要访问模型状态。
- 训练集的长度不是固定的,因此我需要动态批量大小以及动态总数据集大小。我的偏好是使用终止条件函数而不是数字。我可以“可能”使用填充来做到这一点,就像在 NLP 句子处理中一样,但这是一个真正的 hack。
到目前为止,我的 Google 和 StackOverflow 搜索都取得了不错的成绩。这里有人知道将 DataLoader 或 DataSet 与强化学习一起使用的现有解决方案或解决方法吗?我讨厌放弃对依赖于那些的所有现有库的访问。
【问题讨论】:
标签: pytorch reinforcement-learning dataloader