保存后无法立即在 google colab Pro 上加载经过训练的 tf.keras 模型

时间:2021-01-22 02:26:54

标签: model google-colaboratory tensorflow2.0 valueerror

我们使用的是 TF.2.4.0 并生成了多个模型,如下所示:

model = models [model_name]
    model.compile (optimizer = tf.keras.optimizers.RMSprop (lr=0.01),
                   loss = tf.keras.losses.Huber (),
                   metrics = metrics_list)
    history = model.fit (train_generator, steps_per_epoch = train_steps, epochs = epochs,
                         validation_data = val_generator, validation_steps = val_steps, verbose=1)
    model.save (f'{model_name}_{epochs}.h5')

但是当我们通过

加载它们时
models = {}
models ['dense'] = tf.keras.models.load_model('myDense_2.h5’)

我们得到错误:

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-35-0da6ff3dd6dd> in <module>()
      1 models = {}
      2 
----> 3 models ['dense'] = tf.keras.models.load_model('myDense_2.h5')



13 frames

/usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/layers/core.py in build(self, input_shape)
   1180     last_dim = tensor_shape.dimension_value(input_shape[-1])
   1181     if last_dim is None:
-> 1182       raise ValueError('The last dimension of the inputs to `Dense` '
   1183                        'should be defined. Found `None`.')
   1184     self.input_spec = InputSpec(min_ndim=2, axes={-1: last_dim})

ValueError: The last dimension of the inputs to `Dense` should be defined. Found `None`.

您知道为什么我们会收到此错误吗?

任何帮助将不胜感激。

0 个答案:

没有答案