将一层从一个 CNN 模型复制到另一个模型。(layer_from_config 在版本 2 中不起作用)

Har*_*lla 3 python keras tensorflow keras-layer

在Keras 2,layer_from_config从除去keras.utils.layer_utils。有谁知道任何替代品。

详细描述:我有一个经过训练的 CNN 模型。我需要将一个图层从该模型复制到另一个模型。之前我用过 layer_from_config 和 set_weights 函数。但是它们在 Keras 2.0 中被删除了。需要帮助才能完成此功能。

谢谢

Nas*_*Ben 5

该函数现在是类 Layers 的类函数(这似乎更有意义)。set_weights 也一样。使用方法(文档是最新的)

layer = Dense(32)
config = layer.get_config()
reconstructed_layer = Dense.from_config(config)
Run Code Online (Sandbox Code Playgroud)

所以你需要知道你要重建的图层的类名。或者您可以构建一个如下所示的字典,其中包含类名(以便您可以将配置存储在某处以在空代码中重建图层):

from keras import layers

config = layer.get_config()
layer = layers.deserialize({'class_name':      layer.__class__.__name__,
                        'config': config})
Run Code Online (Sandbox Code Playgroud)

它有帮助吗?