簡體   English   中英

使用已安裝的環境將 Keras 模型轉換為 coreml 的問題

[英]Issues converting Keras model to coreml with the installed environment

我有一個 Keras 模型,正在按照 coreml 文檔將其轉換為 coreml。 這是代碼 - -

import coremltools
import tensorflow 
from tensorflow import keras
coreml_model = coremltools.converters.keras.convert("basic.keras.h5")
coremltools.utils.save_spec(coreml_model, 'basic_v1.mlmodel')

但是,運行它會給我帶來很多錯誤,我認為這些錯誤與機器上的環境有關。 我在一台裝有 python 2 的 Mac 上,我安裝了 python3 並正在使用它。 我還安裝了張量流 2(來自網站的最新版本)。 這是我得到的錯誤-

W1227 10:13:28.989016 4604394944 __init__.py:74] TensorFlow version 2.0.0 detected. Last version known to be fully compatible is 1.14.0 .
W1227 10:13:29.083386 4604394944 __init__.py:128] Keras version 2.3.1 detected. Last version known to be fully compatible of Keras is 2.2.4 .
Traceback (most recent call last):
File "convert_to_coreml.py", line 4, in <module>
coreml_model = coremltools.converters.keras.convert("basic.keras.h5")
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/coremltools/converters/keras/_keras_converter.py", line 792, in convert
respect_trainable=respect_trainable)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/coremltools/converters/keras/_keras_converter.py", line 579, in convertToSpec
respect_trainable=respect_trainable)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/coremltools/converters/keras/_keras2_converter.py", line 317, in _convert
model = _keras.models.load_model(model, custom_objects = custom_objects)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/engine/saving.py", line 492, in load_wrapper
return load_function(*args, **kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/engine/saving.py", line 584, in load_model
model = _deserialize_model(h5dict, custom_objects, compile)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/engine/saving.py", line 274, in _deserialize_model
model = model_from_config(model_config, custom_objects=custom_objects)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/engine/saving.py", line 627, in model_from_config
return deserialize(config, custom_objects=custom_objects)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/layers/__init__.py", line 168, in deserialize
printable_module_name='layer')
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/utils/generic_utils.py", line 147, in deserialize_keras_object
list(custom_objects.items())))
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/engine/sequential.py", line 301, in from_config
custom_objects=custom_objects)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/layers/__init__.py", line 168, in deserialize
printable_module_name='layer')
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/utils/generic_utils.py", line 149, in deserialize_keras_object
return cls.from_config(config['config'])
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/engine/base_layer.py", line 1179, in from_config
return cls(**config)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/legacy/interfaces.py", line 91, in wrapper
return func(*args, **kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/layers/core.py", line 877, in __init__
self.kernel_initializer = initializers.get(kernel_initializer)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/initializers.py", line 515, in get
return deserialize(identifier)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/initializers.py", line 510, in deserialize
printable_module_name='initializer')
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/keras/utils/generic_utils.py", line 140, in deserialize_keras_object
': ' + class_name)
ValueError: Unknown initializer: GlorotUniform

我不是 python 人,但最后一行指向一些 Keras 問題(每個谷歌),但我正在導入 Keras,版本似乎沒問題。 任何幫助表示贊賞。

您正在嘗試使用glorot_uniform .h5文件寫入器和讀取器使用的庫版本不同,並且不兼容。

你執行了

from tensorflow import keras

@lintex 提供以下建議

import keras

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM