因此,我尝试了上面提到过可教机器的链接,因为
事实证明您导出的模型
tensorflow.keras来自
kerasAPI
,而不是直接来自API。这两个是不同的。因此,在加载时,它可能使用了可能与keras API不兼容的 tf.ragged 张量。
问题的解决方案:
不要使用Tensorflow的keras高级API保存模型时直接导入keras。将所有导入
tensorflow.keras
更改为Change:
from keras.preprocessing.image import img_to_arrayfrom keras.models import load_model
对此:
from tensorflow.keras.preprocessing.image import img_to_arrayfrom tensorflow.keras.models import load_model
它将解决您的问题。
编辑:
您所有的进口商品,都应该来自
Keras或
tensorflow.keras。尽管是相同的API,但造成这些问题的地方却有所不同。也为
tensorflow后端
tf.keras是首选,因为Keras
2.3.0是最后一个主要版本将支持比tensorflow其他后端。
自TensorFlow 2.0起,此版本使该API与tf.keras
API同步。但是请注意,它不支持大多数TensorFlow
2.0功能,尤其是急于执行的功能。如果需要这些功能,请使用tf.keras。这也是多后端Keras的最后一个主要版本。展望未来,我们建议用户考虑在TensorFlow
2.0中将其Keras代码切换为tf.keras。



