1
votes
model = ResNet50(weights='imagenet', include_top=False, input_shape = (150, 150, 3), pooling = 'max')
final_output = Dense(264, activation = 'softmax')(model.output)
model = Model(inputs = model.input, outputs = final_output)

This is the model I trained in colab. I tried to load this in Kaggle error is shown : 'Unknown layer: Functional'

complete traceback:

--------------------------------------------------------------------------- ValueError Traceback (most recent call last) in ----> 1 model = tk.models.load_model('../input/cornell-submission-model/resnet50_3.h5')

/opt/conda/lib/python3.7/site-packages/tensorflow/python/keras/saving/save.py in load_model(filepath, custom_objects, compile) 182 if (h5py is not None and ( 183 isinstance(filepath, h5py.File) or h5py.is_hdf5(filepath))): --> 184 return hdf5_format.load_model_from_hdf5(filepath, custom_objects, compile) 185 186 if sys.version_info >= (3, 4) and isinstance(filepath, pathlib.Path):

/opt/conda/lib/python3.7/site-packages/tensorflow/python/keras/saving/hdf5_format.py in load_model_from_hdf5(filepath, custom_objects, compile) 176 model_config = json.loads(model_config.decode('utf-8')) 177 model = model_config_lib.model_from_config(model_config, --> 178 custom_objects=custom_objects) 179 180 # set weights

/opt/conda/lib/python3.7/site-packages/tensorflow/python/keras/saving/model_config.py in model_from_config(config, custom_objects) 53 'Sequential.from_config(config)?') 54 from tensorflow.python.keras.layers import deserialize # pylint: disable=g-import-not-at-top ---> 55 return deserialize(config, custom_objects=custom_objects) 56 57

/opt/conda/lib/python3.7/site-packages/tensorflow/python/keras/layers/serialization.py in deserialize(config, custom_objects) 107 module_objects=globs, 108 custom_objects=custom_objects, --> 109 printable_module_name='layer')

/opt/conda/lib/python3.7/site-packages/tensorflow/python/keras/utils/generic_utils.py in deserialize_keras_object(identifier, module_objects, custom_objects, printable_module_name) 360 config = identifier 361 (cls, cls_config) = class_and_config_for_serialized_keras_object( --> 362 config, module_objects, custom_objects, printable_module_name) 363 364 if hasattr(cls, 'from_config'):

/opt/conda/lib/python3.7/site-packages/tensorflow/python/keras/utils/generic_utils.py in class_and_config_for_serialized_keras_object(config, module_objects, custom_objects, printable_module_name) 319 cls = get_registered_object(class_name, custom_objects, module_objects) 320 if cls is None: --> 321 raise ValueError('Unknown ' + printable_module_name + ': ' + class_name) 322 323 cls_config = config['config']

ValueError: Unknown layer: Functional

Please help me with this

1
Hi...Have you find the resolution for this?Kunal Patil
@KunalP here is the model I was talking about kaggle.com/timothyalexjohn/moa-imbalanced-multi-label please download the model and try loading the model to tf.keras you will also get an error... Please help me understand the error and rectify it...Thank YouTimothy Alex John

1 Answers

0
votes

The ResNet50 model contains a number of repeating blocks. I am not familiar with Colab, but based on the error you received, my guess is that the block of layers is implemented as custom layer and you should have its implementation defined and declared in custom_objects dictionary