Tensorflow Keras图层关键字不理解

Tensorflow Keras图层关键字不理解,tensorflow,keras,layer,Tensorflow,Keras,Layer,尽管论坛上有几次讲座,我还是无法解决我的问题。为什么我的代码返回: --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-56-bd4a70a33726> in <module>() ----&g

尽管论坛上有几次讲座,我还是无法解决我的问题。为什么我的代码返回:

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-56-bd4a70a33726> in <module>()
----> 1 dd_model = tf.keras.models.load_model("/content/drive/MyDrive/Colab/project/liver/firts_model.h5")

16 frames
/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/utils/generic_utils.py in validate_kwargs(kwargs, allowed_kwargs, error_message)
    806   for kwarg in kwargs:
    807     if kwarg not in allowed_kwargs:
--> 808       raise TypeError(error_message, kwarg)
    809 
    810 

TypeError: ('Keyword argument not understood:', 'output_shape')

属性“out\u shape”似乎不正确,而其他属性(过滤器、步幅)则很好。

问题在于
\uuuuuu init\uuuuuu
中,如果在
get\u config
中使用变量名,则必须在
\uuu init\uuuuuu
中为该参数使用完全相同的名称:

class Deconvolution3D(Layer):
  def __init__(self, filters, kernel_size, strides, output_shape):
    super().__init__()
    self.filters = filters
    self.strides = strides
    self.kernel_size = kernel_size
    self.output_shape_ = output_shape

这是因为您在
get\u config
中创建并返回的字典稍后将被反序列化,并且键将作为关键字参数传递,这意味着字典中的键必须与构造函数的
\uuu init\uuu
函数参数名称匹配。

您在谈论什么论坛?感谢您的帮助,但始终存在相同的问题:@rj17您需要澄清什么是“相同的问题”@rj17您可能需要重新培训您的模型,因为您的旧模型中包含以前的类定义。我如何在GColab上(重新培训)我的旧模型?我曾尝试重新启动环境和内核,但始终使用同一句话“TypeError:('Keyword argument not Understanding:','output_shape')”
class Deconvolution3D(Layer):
  def __init__(self, filters, kernel_size, strides, output_shape):
    super().__init__()
    self.filters = filters
    self.strides = strides
    self.kernel_size = kernel_size
    self.output_shape_ = output_shape