Tensorflow无法为形状为(1,)的张量’x:0’提供值,该张量形状为'(?, 128)’

我刚刚浏览了Stack Overflow和其他论坛,但没有找到对我的问题有帮助的内容。不过,这似乎与这个问题有关。

我目前有一个训练好的Tensorflow模型(128个输入和11个输出),我按照Tensorflow的MNIST教程保存了它。

看起来保存是成功的,现在我在这个文件夹中有一个模型,包含3个文件(.meta、.ckpt.data和.index)。然而,我希望恢复它并用于预测:

#encoding[0] => numpy ndarray (128, ) # 无论如何这只是一个只有一个条目的列表#unknowndata = np.array(encoding[0])[None]unknowndata = np.expand_dims(encoding[0], axis=0)print(unknowndata.shape) # 输出 (1, 128)# 恢复预训练的tf模型with tf.Session() as sess:    #saver.restore(sess, "models/model_1.ckpt")    saver = tf.train.import_meta_graph('models/model_1.ckpt.meta')    saver.restore(sess,tf.train.latest_checkpoint('models/./'))    y = tf.get_collection('final tensor') # tf.nn.softmax(tf.matmul(y2, W3) + b3)    X = tf.get_collection('input') # tf.placeholder(tf.float32, [None, 128])    # W1 = tf.get_collection('vars')[0]    # b1 = tf.get_collection('vars')[1]    # W2 = tf.get_collection('vars')[2]    # b2 = tf.get_collection('vars')[3]    # W3 = tf.get_collection('vars')[4]    # b3 = tf.get_collection('vars')[5]    # y1 = tf.nn.relu(tf.matmul(X, W1) + b1)    # y2 = tf.nn.relu(tf.matmul(y1, W2) + b2)    # yLog = tf.matmul(y2, W3) + b3    # y = tf.nn.softmax(yLog)    prediction = tf.argmax(y, 1)    print(sess.run(prediction, feed_dict={i: d for i,d in zip(X, unknowndata.T)}))    # 还尝试过sess.run(prediction, feed_dict={X: unknowndata.T})以及未转置的版本,仍然报错# 输出: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] # 显然其中一个应该是1,并且有特定的百分比

我在这里遇到了问题…

ValueError: 无法为形状为(1,)的张量’x:0’提供值,该张量形状为'(?, 128)’。尽管我打印了’unknowndata’的形状,并且它与(1, 128)匹配。我还尝试了

sess.run(prediction, feed_dict={X: unknownData})) # 尝试了转置等,但没有任何效果,那里我得到了另一个错误

TypeError: 不可哈希的类型: ‘list’

我只想对这个漂亮的Tensorflow训练模型进行一些预测。


回答:

prediction张量是通过对y进行argmax得到的。除了返回prediction外,你还可以在执行sess.run时将y添加到输出馈送中。

output_feed = [prediction, y]preds, probs = sess.run(output_feed, print(sess.run(prediction, feed_dict={i: d for i,d in zip(X, unknowndata.T)}))

preds将包含模型的预测结果,而probs将包含概率分数。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注