得到未知张量的十分形状

2024-09-29 12:34:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试为OpenAI gym实现简单的Q网络。我得到了州政府的职位。状态用整数表示。我要一个热矢量。所以,我这样做:

input_state = tf.placeholder(tf.int64, shape=(None))
state_oh = tf.one_hot(input_state, env.observation_space.n)

我正在使用(None),除了(),因为我想将批处理传递到列车网络。在

我原以为state_oh的形状像(None, 16),但我得到了<unknown>。这对我来说是个问题,因为我实现了创建完全连接层的函数,它使用tensor.shape来确定输入张量的形状:

^{pr2}$

这不适用于<unknown>形状。在

我如何将一批整数传递给Tensorflow并得到它的第二维(一个热向量的长度)?我希望不要显式地将输入的大小传递给dense()。在


Tags: 网络noneinput状态tf职位整数unknown
1条回答
网友
1楼 · 发布于 2024-09-29 12:34:00

我发现,如果我像这样定义占位符:

input_state = tf.placeholder(tf.int64, shape=[None], name="input_state")

我犯了一个非常愚蠢的错误。正确的形状是[None],而是(None),因为(None)相当于{},意思是“任何形状”。在

如果占位符的形状正确,state_oh的形状将如预期的那样是(?, 16)。在

相关问题 更多 >