常量中的“ strip” onnx图(初始化程序)

时间:2018-11-06 16:41:30

标签: onnx

我有一个其中包含大常量的onnx图/模型,因此加载和解析它需要很多时间。我可以从图形中“剥离”数据,以便检查没有其数据的图形节点吗?

1 个答案:

答案 0 :(得分:0)

Initializer是GraphProto中的字段之一。您应该能够使用简单的python脚本清除初始化字段。我尚未测试以下代码,但应该是这样的:

import onnx

def clear_initializer(model_path):
    model = onnx.load_model(model_path)
    model.graph.ClearField('initializer')
    onnx.save_model(model)

参考: https://developers.google.com/protocol-buffers/docs/reference/python/google.protobuf.message.Message-class https://github.com/onnx/onnx/blob/2e7099ee7c37b196c197c9a084a97698a41da232/onnx/init.py