簡體   English   中英

嘗試使用 tensorflow 2 預測 SavedModel 時出錯

[英]Error while trying to predict on SavedModel using tensorflow 2

我正在嘗試使用以下代碼對保存的模型進行預測

 features = np.ones((20, 40, 3), dtype=np.float32)
 features = tf.convert_to_tensor(value, dtype=tf.float32)
 imported_model = tf.saved_model.load(export_dir=os.path.join(os.path.join(model_path, directory)))
 import_fn = imported_model.signatures["serving_default"]
 import_fn(features)

使用 Tensorflow 2 運行時出現以下錯誤。當我使用saved_model_cli 時,模型預測工作正常。

tensorflow.python.framework.errors_impl.InvalidArgumentError:  In[0] is not a matrix. Instead it has shape [20,40,3]
     [[node dense/BiasAdd (defined at model_manager.py:54) ]] [Op:__inference_pruned_318590]

保存的cli命令如下

saved_model_cli run --dir ./model_dir --tag_set serve --signature_def serving_default --input_exprs 'input=np.ones((20, 40, 3), dtype=np.float32)'

InvalidArgumentError通常是由輸入中的數據類型不匹配引起的。

根據您的錯誤“ In[0] 不是矩陣。相反,它具有形狀 [20,40,3] ”。
您可以嘗試操作輸入數據以正確匹配模型最初訓練的輸入類型和形狀。 Python IDE相比,您還可以檢查當您使用saved_model_cli時模型如何處理您的輸入。 當您使用使用 saved_model_cli 時正在完成的 Python IDE 時,您可能會遺漏一些預處理步驟。

您可以在此鏈接中閱讀更多有關使用Saved_Model 格式用法的信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM