Описание elem_type соответствующего типа вывода модели onnx

предисловие

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, включая имя вывода и тип данных выходного тензора, то есть elem_type. Если вы хотите изменить вывод, вам нужно выяснить, какие типы существуют. Здесь числа соответствуют различным типам. Я проверил Интернет и не нашел объяснения, поэтому я записал его здесь, чтобы помочь будущим поколениям .

тип данных (elem_type)

Там 16 видов, не считая двойных, не знаю почему.

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



Все остальные числа не определены, и при использовании связанных моделей будет сообщено об ошибке напрямую.

Guess you like

Origin blog.csdn.net/weixin_43945848/article/details/122474749