【发布时间】:2021-08-21 23:53:28
【问题描述】:
我正在尝试使用深度 Q 网络代理解决 OpenAI 健身房 Breakout-V0。
每次当我的代理到达以下地步时:
- replay_memory 已填满,可以开始训练了
- 第一次达到 copy_target_network 间隔
- target_network 第一次预测
Tensorflow 抛出以下错误:
Error when checking input: expected dense_3_input to have shape (33600,) but got array with shape (1,)
当我在调用predict(state) 之前仅1 行打印传入state 数组的形状时,它确认state 的形状是(33600,)
在显示此错误之前,模型能够在训练循环中 predict_on_batch() 使用完全相同的数据(但经过批处理)
有人知道如何解决这个问题吗?如果我遗漏任何内容,我很乐意提供更多详细信息和信息
版本:
Python 3.8.7
TensorFlow 2.4.1
健身房 0.18.0
【问题讨论】:
-
您缺少样本维度,一个样本应该是 (1, 33600)。这里已经回答了数百次。
-
你说得对,我很抱歉。
标签: python tensorflow deep-learning reinforcement-learning