首页 > 解决方案 > 具有动态维度的 TensorFlow 占位符实例

问题描述

我正在使用 Tensorflow 对 MNIST 进行分类,并且正在尝试实现两个功能

data = model.x # placeholder of data. shape is (None, 782)
label = model.y #placeholder of label. shape is (None,)
logit = model.logit # placeholder of logit. shape is (None, 10)

这三个是我在自定义类中工作的占位符变量。

我想要做的是只获得对应的labellogits want = logit[tf.range(n), label]

但是我无法n从变量中获取,因为它被声明为动态维度。此外,当我将 n 作为随机值(例如 100)时,我会收到错误消息

TypeError: Only integers, slices (`:`), ellipsis (`...`), tf.newaxis (`None`) and scalar tf.int32/tf.int64 tensors are valid indices, got <tf.Tensor 'range_14:0' shape=(100,) dtype=int32>

我现在该怎么办?我如何访问和获取价值label

标签: tensorflow

解决方案


推荐阅读