首页 > 解决方案 > 优化 ONNX 模型 - 来自 tensorflow.keras - 错误:内核未定义

问题描述

尝试优化这个简单的模型:

from tensorflow import keras
import keras2onnx
from onnx.shape_inference import infer_shapes
from onnx.optimizer import optimize

model = keras.Sequential([
    keras.layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)),
    keras.layers.GlobalAveragePooling2D(),
    keras.layers.Dense(10)])

model = keras2onnx.convert_keras(model)
model = infer_shapes(model)
model = optimize(model)

导致以下错误:

File ".../lib/python3.7/site-packages/onnx/optimizer.py", line 55, in optimize
    optimized_model_str = C.optimize(model_str, passes)
IndexError: Input conv2d/kernel:0 is undefined!

我正在使用 tensorflow=2.1.0、onnx=1.7.0 和 keras2onnx=1.6.1。

任何想法如何解决这个问题?

标签: tensorflowtf.kerasonnx

解决方案


推荐阅读