我正在遵循有关in_top_k的TF文档:https://www.tensorflow.org/api_docs/python/tf/nn/in_top_k,其中指出targets
应该是batch size
的向量
尽管如此,我不断收到以下错误提示:
InvalidArgumentError(请参阅上面的回溯):目标必须是 一维 [[节点:in_top_k / InTopKV2 = InTopKV2 [T = DT_INT32,_device =“ / job:localhost /副本:0 / task:0 / device:CPU:0”](Cas t_2 / _4305,sub / _4307,in_top_k / InTopKV2 / k)]]
在我的情况下,我的predictions
和targets
输入具有以下形状:
Tensor("Cast_2:0", shape=(128, 1000), dtype=float32, device=/device:GPU:0)
Tensor("sub:0", shape=(128,), dtype=int32, device=/device:GPU:0)
从我的理解来看,targets
标签仍然有些问题,尽管使用了tf.reshape或tf.squeeze的不同组合,但我似乎找不到错误的出处。有什么办法可以解决此问题?