前言
onnx_model = onnx.load("modify.onnx")
graph = onnx_model.graph
graph.output
#输出如下:
[name: "add_result_0"
type {
tensor_type {
elem_type: 1
shape {
dim {
}
}
}
}
]
以上代码能打印出一个onnx模型格式定义的标准输出,包含输出的名字,输出的tensor的数据类型,即elem_type,如果想修改输出,就得弄清楚有哪些类型,这里以数字对应各种类型,在网上查了一圈没搜到说明,于是于此记录以帮助后来人。
数据类型(elem_type)
共有16种,不包括double,不知道为什么。
elem_type: 1 --> float32
elem_type: 2 --> uint8
elem_type: 3 --> int8
elem_type: 4 --> uint16
elem_type: 5 --> int16
elem_type: 6 --> int32
elem_type: 7 --> int64
elem_type: 8 --> string
elem_type: 9 --> boolean
elem_type: 10 --> float16
elem_type: 11 --> float64
elem_type: 12 --> uint32
elem_type: 14 --> uint64
elem_type: 15 --> complex128
elem_type: 16 --> bfloat16
其余的数字全为undefined,使用相关模型会直接报错。