类型错误:reduce_sum() 有一个意外的关键字参数"reduction_indices"?



使用这个函数后,我写在tf == 1。我已经更新了tensorflow 2.0。我正面临下面提到的相同错误

colors = tf.constant(img, dtype=tf.float32)
model = tf.keras.models.model_from_json(json.load(open("model.json"))["model"], custom_objects={})
model.load_weights("model_weights.h5")
predictions = model.predict(colors, batch_size=32, verbose=0)
# Output is one-hot vector for 9 class:["red","green","blue","orange","yellow","pink", "purple","brown","grey"]
predictions = tf.one_hot(np.argmax(predictions, 1), 9)
# Sum along the column, each entry indicates no of pixels
res = tf.reduce_sum(predictions, reduction_indices= 0 ).numpy()
# Threshold is 0.5 (accuracy is 96%) change threshold may cause accuracy decrease
if res[0] / (sum(res[:-1]) + 1) > 0.5:
return "red"
elif res[1] / (sum(res[:-1]) + 1) > 0.5:
return "green"
elif res[2] / (sum(res[:-1]) + 1) > 0.5:
return "blue"
else:
return "other"

错误信息如下TypeError: reduce_sum() got an unexpected keyword argument 'reduction_indices'

我认为你的问题是reduction_indices在Tensorflow 2中被弃用了。X,所以试着做:

tf.reduce_sum(predictions, axis= 0)

是等价的

我认为你的问题是reduction_indexes在Tensorflow中被弃用

tf.reduce_sum(predictions, axis= 0)

是等价的

这对我有用:)+ 1