gpt4 book ai didi

python - 如何同时使用Tensorflow tf.nn.Conv2d进行训练和预测?

转载 作者:太空宇宙 更新时间:2023-11-03 21:30:45 25 4
gpt4 key购买 nike

我目前正在深入研究 tensorflow ,我对 tf.nn.Conv2d(input, filter, strides, padding) 的正确使用感到有点困惑。虽然乍一看很简单,但我无法听到以下问题:

过滤器、步幅、填充的使用对我来说很清楚。然而,尚不清楚的是输入的正确应用。

我来自一个强化学习 Atari (Pong) 问题,其中我想使用网络进行批量训练并(以一定的概率)在每个步骤中进行预测。这意味着,为了训练,我将向网络提供一整批 100 个单元,每个单元由 3 个大小分别为 160、128 的帧组成。使用 tensorflow 的 NHWC 格式,我对 input 的输入将是形状为 (100,160,128,3)tf.placeholder。因此,为了训练,我喂了 100 个 160x128x3 的包。

但是,在某种情况下预测网络的输出(随着乒乓 Racket 上升或下降)时,我仅向网络提供 160x128x3 的一包(即一包三帧) 。现在这就是 tensorflow 崩溃的地方。它期望 (100,160,128,3) 但收到 (1,160,128,3)

现在我很困惑。我显然不想将批量大小设置为 1 并且始终只提供一个包进行训练。但我该如何继续呢?如何使用 tf.nn.conv2d 来实现这一点?

如果有人能引导我走向正确的方向,我将非常感激

预先感谢您的帮助!凯文

最佳答案

您需要如下设置占位符 tf.placeholder(shape=(None,160,128,3) ....) ,在第一维中没有 None 时,您的占位符将灵活地适应您提供的任何值(1 或 100)。

关于python - 如何同时使用Tensorflow tf.nn.Conv2d进行训练和预测?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53540424/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com