python - Keras MobileNet 无法以前保存模型 h5 文件
问题描述
我刚刚用 keras 训练了一个 MobileNet 模型(使用 tensorflow 作为后端)。训练完成后,我保存了模型
# serialize weights to HDF5
model_with_weights = os.path.join(model_dir, "model.h5")
model.save(model_with_weights)
print("Saved model to disk")
现在我想重新加载相同的模型......所以我尝试了这个(模型在正确的目录中)
model = load_model('model.h5', custom_objects={
'relu6': keras.applications.mobilenet.relu6,
'DepthwiseConv2D': keras.applications.mobilenet.DepthwiseConv2D})
但是我收到了这个错误,我不知道该怎么做才能加载以前训练过的模型。
File "load_model.py", line 79, in <module>
'relu6': keras.applications.mobilenet.relu6})
File "/home/seba/Projects/venv3.5/lib/python3.5/site-packages/tensorflow/python/keras/_impl/keras/engine/saving.py", line 241, in load_model
model = model_from_config(model_config, custom_objects=custom_objects)
File "/home/seba/Projects/venv3.5/lib/python3.5/site-packages/tensorflow/python/keras/_impl/keras/engine/saving.py", line 318, in model_from_config
return deserialize(config, custom_objects=custom_objects)
File "/home/seba/Projects/venv3.5/lib/python3.5/site-packages/tensorflow/python/keras/_impl/keras/layers/serialization.py", line 64, in deserialize
printable_module_name='layer')
File "/home/seba/Projects/venv3.5/lib/python3.5/site-packages/tensorflow/python/keras/_impl/keras/utils/generic_utils.py", line 173, in deserialize_keras_object
list(custom_objects.items())))
File "/home/seba/Projects/venv3.5/lib/python3.5/site-packages/tensorflow/python/keras/_impl/keras/engine/network.py", line 1098, in from_config
process_node(layer, node_data)
File "/home/seba/Projects/venv3.5/lib/python3.5/site-packages/tensorflow/python/keras/_impl/keras/engine/network.py", line 1056, in process_node
layer(input_tensors[0], **kwargs)
File "/home/seba/Projects/venv3.5/lib/python3.5/site-packages/keras/engine/topology.py", line 606, in __call__
previous_mask = _collect_previous_mask(inputs)
File "/home/seba/Projects/venv3.5/lib/python3.5/site-packages/keras/engine/topology.py", line 2834, in _collect_previous_mask
mask = node.output_masks[tensor_index]
AttributeError: 'Node' object has no attribute 'output_masks'
有人可以指出我正确的方向吗?
解决方案
推荐阅读
- angular - 将在应用程序引导之前检索到的数据注入到 AppModule 中导入的模块中
- python - 如何在没有互联网/Anaconda(或任何类似免费软件)的 Windows 10 PC 中安装 pandas?
- git - 在所有分支的文件中查找所有出现的文本
- c# - 在 VTK 中从 2D 标签到 3D 空间中的点绘制一条线
- c# - Ini-parser 不读取整个文件
- javascript - 在每次输入更改时提交表单的最佳实践
- ios - Flutter:尝试将 Flutter 应用程序安装到真实 iOS 设备时出现无法安装“Runner”错误
- windows - gcc 找到但未在 Windows git bash 上执行
- php - 如何将数组中的对象值放入字符串
- javascript - React 延迟加载 - 何时使用