我将Keras模型转换为Onnx。但是,Onnx模型中的权重是转置的。
应该这样工作吗?
我希望只有在有显式转置运算符的情况下。
我的Keras非常简单(Fashion Mnist模型): 输入28x28(展平)==>完全连接128x1 ==>完全连接10x1
我将下一个代码用于将keras转换为onnx:
import onnxmltools
import onnx
import keras
keras_model_fname = "fashion_mnist.h5"
onnx_filename = 'fashion_mnist.onnx'
# Load Keras model
keras_model = keras.models.load_model(keras_model_fname)
# Convert the Keras model into ONNX
onnx_model = onnxmltools.convert_keras(keras_model)
# Save as protobuf
onnx.save(onnx_model, onnx_filename)
要在调试的keras和onnx模型中确认权重已转置,并比较权重向量。