gpt4 book ai didi

python - ValueError : Cannot feed value of shape () for Tensor 'input_example_tensor:0' , 其形状为 '(?,)'

转载 作者:行者123 更新时间:2023-11-28 19:04:06 25 4
gpt4 key购买 nike

为什么会出现这个错误?

我找不到与我的案例类似的答案,并解释了为什么会这样。那里有很多关于此类错误的信息,但似乎它取决于很多原因,并且对于不同的情况,它可以有不同的解决方案。

所以我尝试加载 TensorFlow 训练模型,然后将其转换为 TensorFlow Serving 模型格式并进行预测。

iris_data.py从下面导入文件。

这就是我导出模型的方式(train 已经导出,我只是从磁盘加载它):

import tensorflow as tf
import iris_data
from tensorflow.contrib import predictor

# Fetch the data
(train_x, train_y), (test_x, test_y) = iris_data.load_data()

# Feature columns describe how to use the input.
my_feature_columns = []
for key in train_x.keys():
my_feature_columns.append(tf.feature_column.numeric_column(key=key))

# Build 2 hidden layer DNN with 10, 10 units respectively.
classifier = tf.estimator.DNNClassifier(
feature_columns=my_feature_columns,
# Two hidden layers of 10 nodes each.
hidden_units=[10, 10],
# The model must choose between 3 classes.
n_classes=3,
model_dir='G:\AI models')

#converting into TensorFlow Serving model format
path = 'G:\AI models\serve'
feature_spec = tf.feature_column.make_parse_example_spec(my_feature_columns)
export_input_fn = tf.estimator.export.build_parsing_serving_input_receiver_fn(feature_spec)
servable_model_path = classifier.export_savedmodel(path, export_input_fn, as_text=True)

以下是我尝试使用 TensorFlow Serving 模型进行预测的方法:

 expected = ['Setosa', 'Versicolor', 'Virginica']
predict_x = {
'SepalLength': [5.1, 5.9, 6.9],
'SepalWidth': [3.3, 3.0, 3.1],
'PetalLength': [1.7, 4.2, 5.4],
'PetalWidth': [0.5, 1.5, 2.1],
}
path = 'G:\AI models\serve\\1519413839'
predict_fn = predictor.from_saved_model(path)
predictions = predict_fn(
{"inputs": predict_x})

最后报错:

ValueError: Cannot feed value of shape () for Tensor 'input_example_tensor:0', which has shape '(?,)'

最佳答案

您必须使用示例 API 传递示例:

feature = {
'SepalLength': tf.train.Feature(float_list=tf.train.FloatList(value=[5.1])),
'SepalWidth': tf.train.Feature(float_list=tf.train.FloatList(value=[3.3])),
'PetalLength': tf.train.Feature(float_list=tf.train.FloatList(value=[1.7])),
'PetalWidth': tf.train.Feature(float_list=tf.train.FloatList(value=[0.5]))
}
example = tf.train.Example(
features=tf.train.Features(
feature=feature
)
)
serialized_example = example.SerializeToString()

predictions = predict_fn({"inputs": [serialized_example]})

当然,如果你愿意,你可以传递很多例子。

有用的链接:http://shzhangji.com/blog/2018/05/14/serve-tensorflow-estimator-with-savedmodel/

关于python - ValueError : Cannot feed value of shape () for Tensor 'input_example_tensor:0' , 其形状为 '(?,)',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48955382/

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