onnx 1.13.0__cp310-cp310-win_amd64.whl → 1.14.0__cp310-cp310-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of onnx might be problematic. Click here for more details.

Files changed (1057) hide show
  1. onnx/__init__.py +116 -70
  2. onnx/backend/__init__.py +2 -0
  3. onnx/backend/base.py +3 -0
  4. onnx/backend/sample/__init__.py +2 -0
  5. onnx/backend/sample/ops/__init__.py +8 -6
  6. onnx/backend/sample/ops/abs.py +1 -1
  7. onnx/backend/test/__init__.py +4 -1
  8. onnx/backend/test/case/__init__.py +4 -2
  9. onnx/backend/test/case/base.py +2 -0
  10. onnx/backend/test/case/model/__init__.py +8 -9
  11. onnx/backend/test/case/model/expand.py +4 -3
  12. onnx/backend/test/case/model/gradient.py +4 -3
  13. onnx/backend/test/case/model/sequence.py +4 -3
  14. onnx/backend/test/case/model/shrink.py +4 -4
  15. onnx/backend/test/case/model/sign.py +4 -3
  16. onnx/backend/test/case/model/single-relu.py +4 -4
  17. onnx/backend/test/case/model/stringnormalizer.py +4 -3
  18. onnx/backend/test/case/node/__init__.py +18 -12
  19. onnx/backend/test/case/node/abs.py +4 -3
  20. onnx/backend/test/case/node/acos.py +4 -3
  21. onnx/backend/test/case/node/acosh.py +4 -3
  22. onnx/backend/test/case/node/adagrad.py +4 -3
  23. onnx/backend/test/case/node/adam.py +4 -3
  24. onnx/backend/test/case/node/add.py +4 -3
  25. onnx/backend/test/case/node/ai_onnx_ml/__init__.py +0 -0
  26. onnx/backend/test/case/node/ai_onnx_ml/array_feature_extractor.py +30 -0
  27. onnx/backend/test/case/node/ai_onnx_ml/binarizer.py +27 -0
  28. onnx/backend/test/case/node/and.py +4 -3
  29. onnx/backend/test/case/node/argmax.py +6 -7
  30. onnx/backend/test/case/node/argmin.py +6 -7
  31. onnx/backend/test/case/node/asin.py +4 -3
  32. onnx/backend/test/case/node/asinh.py +4 -3
  33. onnx/backend/test/case/node/atan.py +4 -3
  34. onnx/backend/test/case/node/atanh.py +4 -3
  35. onnx/backend/test/case/node/averagepool.py +43 -4
  36. onnx/backend/test/case/node/batchnorm.py +4 -3
  37. onnx/backend/test/case/node/bernoulli.py +8 -7
  38. onnx/backend/test/case/node/bitshift.py +4 -3
  39. onnx/backend/test/case/node/bitwiseand.py +13 -11
  40. onnx/backend/test/case/node/bitwisenot.py +8 -6
  41. onnx/backend/test/case/node/bitwiseor.py +13 -11
  42. onnx/backend/test/case/node/bitwisexor.py +13 -11
  43. onnx/backend/test/case/node/blackmanwindow.py +4 -4
  44. onnx/backend/test/case/node/cast.py +218 -8
  45. onnx/backend/test/case/node/castlike.py +106 -12
  46. onnx/backend/test/case/node/ceil.py +4 -3
  47. onnx/backend/test/case/node/celu.py +4 -3
  48. onnx/backend/test/case/node/center_crop_pad.py +26 -3
  49. onnx/backend/test/case/node/clip.py +4 -3
  50. onnx/backend/test/case/node/col2im.py +5 -4
  51. onnx/backend/test/case/node/compress.py +4 -3
  52. onnx/backend/test/case/node/concat.py +4 -3
  53. onnx/backend/test/case/node/constant.py +4 -3
  54. onnx/backend/test/case/node/constantofshape.py +4 -3
  55. onnx/backend/test/case/node/conv.py +4 -6
  56. onnx/backend/test/case/node/convinteger.py +4 -5
  57. onnx/backend/test/case/node/convtranspose.py +4 -3
  58. onnx/backend/test/case/node/cos.py +4 -3
  59. onnx/backend/test/case/node/cosh.py +4 -3
  60. onnx/backend/test/case/node/cumsum.py +4 -3
  61. onnx/backend/test/case/node/deformconv.py +170 -0
  62. onnx/backend/test/case/node/depthtospace.py +4 -3
  63. onnx/backend/test/case/node/dequantizelinear.py +46 -3
  64. onnx/backend/test/case/node/det.py +4 -3
  65. onnx/backend/test/case/node/dft.py +4 -4
  66. onnx/backend/test/case/node/div.py +4 -3
  67. onnx/backend/test/case/node/dropout.py +4 -4
  68. onnx/backend/test/case/node/dynamicquantizelinear.py +4 -3
  69. onnx/backend/test/case/node/einsum.py +4 -4
  70. onnx/backend/test/case/node/elu.py +4 -3
  71. onnx/backend/test/case/node/equal.py +28 -3
  72. onnx/backend/test/case/node/erf.py +4 -3
  73. onnx/backend/test/case/node/exp.py +4 -3
  74. onnx/backend/test/case/node/expand.py +4 -3
  75. onnx/backend/test/case/node/eyelike.py +4 -3
  76. onnx/backend/test/case/node/flatten.py +4 -3
  77. onnx/backend/test/case/node/floor.py +4 -3
  78. onnx/backend/test/case/node/gather.py +4 -3
  79. onnx/backend/test/case/node/gatherelements.py +4 -3
  80. onnx/backend/test/case/node/gathernd.py +5 -4
  81. onnx/backend/test/case/node/gemm.py +4 -3
  82. onnx/backend/test/case/node/globalaveragepool.py +4 -4
  83. onnx/backend/test/case/node/globalmaxpool.py +4 -5
  84. onnx/backend/test/case/node/greater.py +4 -3
  85. onnx/backend/test/case/node/greater_equal.py +4 -3
  86. onnx/backend/test/case/node/gridsample.py +4 -3
  87. onnx/backend/test/case/node/groupnormalization.py +5 -4
  88. onnx/backend/test/case/node/gru.py +10 -9
  89. onnx/backend/test/case/node/hammingwindow.py +4 -4
  90. onnx/backend/test/case/node/hannwindow.py +4 -4
  91. onnx/backend/test/case/node/hardmax.py +4 -3
  92. onnx/backend/test/case/node/hardsigmoid.py +4 -3
  93. onnx/backend/test/case/node/hardswish.py +4 -3
  94. onnx/backend/test/case/node/identity.py +4 -3
  95. onnx/backend/test/case/node/if.py +4 -3
  96. onnx/backend/test/case/node/instancenorm.py +4 -3
  97. onnx/backend/test/case/node/isinf.py +4 -3
  98. onnx/backend/test/case/node/isnan.py +4 -3
  99. onnx/backend/test/case/node/layernormalization.py +4 -3
  100. onnx/backend/test/case/node/leakyrelu.py +4 -3
  101. onnx/backend/test/case/node/less.py +4 -3
  102. onnx/backend/test/case/node/less_equal.py +4 -3
  103. onnx/backend/test/case/node/log.py +4 -3
  104. onnx/backend/test/case/node/logsoftmax.py +4 -3
  105. onnx/backend/test/case/node/loop.py +4 -3
  106. onnx/backend/test/case/node/lppool.py +279 -0
  107. onnx/backend/test/case/node/lrn.py +4 -3
  108. onnx/backend/test/case/node/lstm.py +10 -9
  109. onnx/backend/test/case/node/matmul.py +4 -3
  110. onnx/backend/test/case/node/matmulinteger.py +4 -3
  111. onnx/backend/test/case/node/max.py +5 -4
  112. onnx/backend/test/case/node/maxpool.py +9 -4
  113. onnx/backend/test/case/node/maxunpool.py +4 -3
  114. onnx/backend/test/case/node/mean.py +4 -3
  115. onnx/backend/test/case/node/meanvariancenormalization.py +4 -3
  116. onnx/backend/test/case/node/melweightmatrix.py +4 -4
  117. onnx/backend/test/case/node/min.py +5 -4
  118. onnx/backend/test/case/node/mish.py +4 -3
  119. onnx/backend/test/case/node/mod.py +4 -3
  120. onnx/backend/test/case/node/momentum.py +4 -3
  121. onnx/backend/test/case/node/mul.py +4 -3
  122. onnx/backend/test/case/node/neg.py +4 -3
  123. onnx/backend/test/case/node/negativeloglikelihoodloss.py +4 -3
  124. onnx/backend/test/case/node/nonmaxsuppression.py +4 -3
  125. onnx/backend/test/case/node/nonzero.py +4 -3
  126. onnx/backend/test/case/node/not.py +4 -3
  127. onnx/backend/test/case/node/onehot.py +5 -4
  128. onnx/backend/test/case/node/optionalgetelement.py +4 -3
  129. onnx/backend/test/case/node/optionalhaselement.py +4 -3
  130. onnx/backend/test/case/node/or.py +4 -3
  131. onnx/backend/test/case/node/pad.py +36 -5
  132. onnx/backend/test/case/node/pool_op_common.py +20 -2
  133. onnx/backend/test/case/node/pow.py +4 -3
  134. onnx/backend/test/case/node/prelu.py +4 -3
  135. onnx/backend/test/case/node/qlinearconv.py +4 -3
  136. onnx/backend/test/case/node/qlinearmatmul.py +4 -3
  137. onnx/backend/test/case/node/quantizelinear.py +50 -3
  138. onnx/backend/test/case/node/rangeop.py +4 -3
  139. onnx/backend/test/case/node/reciprocal.py +4 -3
  140. onnx/backend/test/case/node/reduce_log_sum.py +4 -3
  141. onnx/backend/test/case/node/reduce_log_sum_exp.py +4 -3
  142. onnx/backend/test/case/node/reducel1.py +4 -3
  143. onnx/backend/test/case/node/reducel2.py +4 -3
  144. onnx/backend/test/case/node/reducemax.py +4 -3
  145. onnx/backend/test/case/node/reducemean.py +4 -3
  146. onnx/backend/test/case/node/reducemin.py +4 -3
  147. onnx/backend/test/case/node/reduceprod.py +4 -3
  148. onnx/backend/test/case/node/reducesum.py +4 -3
  149. onnx/backend/test/case/node/reducesumsquare.py +4 -3
  150. onnx/backend/test/case/node/relu.py +4 -3
  151. onnx/backend/test/case/node/reshape.py +4 -3
  152. onnx/backend/test/case/node/resize.py +73 -321
  153. onnx/backend/test/case/node/reversesequence.py +4 -3
  154. onnx/backend/test/case/node/rnn.py +10 -9
  155. onnx/backend/test/case/node/roialign.py +193 -3
  156. onnx/backend/test/case/node/round.py +4 -3
  157. onnx/backend/test/case/node/scan.py +4 -3
  158. onnx/backend/test/case/node/scatter.py +4 -3
  159. onnx/backend/test/case/node/scatterelements.py +4 -3
  160. onnx/backend/test/case/node/scatternd.py +4 -4
  161. onnx/backend/test/case/node/selu.py +4 -3
  162. onnx/backend/test/case/node/sequence_map.py +4 -4
  163. onnx/backend/test/case/node/sequenceinsert.py +4 -3
  164. onnx/backend/test/case/node/shape.py +4 -3
  165. onnx/backend/test/case/node/shrink.py +4 -3
  166. onnx/backend/test/case/node/sigmoid.py +4 -3
  167. onnx/backend/test/case/node/sign.py +4 -3
  168. onnx/backend/test/case/node/sin.py +4 -3
  169. onnx/backend/test/case/node/sinh.py +4 -3
  170. onnx/backend/test/case/node/size.py +4 -3
  171. onnx/backend/test/case/node/slice.py +4 -3
  172. onnx/backend/test/case/node/softmax.py +4 -3
  173. onnx/backend/test/case/node/softmaxcrossentropy.py +4 -3
  174. onnx/backend/test/case/node/softplus.py +4 -3
  175. onnx/backend/test/case/node/softsign.py +4 -3
  176. onnx/backend/test/case/node/spacetodepth.py +6 -3
  177. onnx/backend/test/case/node/split.py +4 -3
  178. onnx/backend/test/case/node/splittosequence.py +79 -0
  179. onnx/backend/test/case/node/sqrt.py +4 -3
  180. onnx/backend/test/case/node/squeeze.py +2 -0
  181. onnx/backend/test/case/node/stft.py +4 -4
  182. onnx/backend/test/case/node/stringnormalizer.py +4 -4
  183. onnx/backend/test/case/node/sub.py +4 -3
  184. onnx/backend/test/case/node/sum.py +4 -3
  185. onnx/backend/test/case/node/tan.py +4 -3
  186. onnx/backend/test/case/node/tanh.py +4 -3
  187. onnx/backend/test/case/node/tfidfvectorizer.py +4 -3
  188. onnx/backend/test/case/node/thresholdedrelu.py +4 -3
  189. onnx/backend/test/case/node/tile.py +4 -3
  190. onnx/backend/test/case/node/topk.py +4 -3
  191. onnx/backend/test/case/node/transpose.py +8 -7
  192. onnx/backend/test/case/node/trilu.py +4 -3
  193. onnx/backend/test/case/node/unique.py +4 -3
  194. onnx/backend/test/case/node/unsqueeze.py +4 -3
  195. onnx/backend/test/case/node/upsample.py +4 -3
  196. onnx/backend/test/case/node/where.py +4 -3
  197. onnx/backend/test/case/node/xor.py +4 -3
  198. onnx/backend/test/case/test_case.py +2 -0
  199. onnx/backend/test/case/utils.py +10 -1
  200. onnx/backend/test/cmd_tools.py +22 -13
  201. onnx/backend/test/data/light/README.md +16 -0
  202. onnx/backend/test/data/light/light_bvlc_alexnet.onnx +0 -0
  203. onnx/backend/test/data/light/light_bvlc_alexnet_output_0.pb +1 -0
  204. onnx/backend/test/data/light/light_densenet121.onnx +0 -0
  205. onnx/backend/test/data/light/light_densenet121_output_0.pb +1 -0
  206. onnx/backend/test/data/light/light_inception_v1.onnx +0 -0
  207. onnx/backend/test/data/light/light_inception_v1_output_0.pb +1 -0
  208. onnx/backend/test/data/light/light_inception_v2.onnx +0 -0
  209. onnx/backend/test/data/light/light_inception_v2_output_0.pb +1 -0
  210. onnx/backend/test/data/light/light_resnet50.onnx +0 -0
  211. onnx/backend/test/data/light/light_resnet50_output_0.pb +1 -0
  212. onnx/backend/test/data/light/light_shufflenet.onnx +0 -0
  213. onnx/backend/test/data/light/light_shufflenet_output_0.pb +1 -0
  214. onnx/backend/test/data/light/light_squeezenet.onnx +0 -0
  215. onnx/backend/test/data/light/light_squeezenet_output_0.pb +1 -0
  216. onnx/backend/test/data/light/light_vgg19.onnx +0 -0
  217. onnx/backend/test/data/light/light_vgg19_output_0.pb +1 -0
  218. onnx/backend/test/data/light/light_zfnet512.onnx +0 -0
  219. onnx/backend/test/data/light/light_zfnet512_output_0.pb +1 -0
  220. onnx/backend/test/data/node/test_acos/test_data_set_0/output_0.pb +0 -0
  221. onnx/backend/test/data/node/test_acosh/test_data_set_0/output_0.pb +1 -1
  222. onnx/backend/test/data/node/test_ai_onnx_ml_array_feature_extractor/model.onnx +19 -0
  223. onnx/backend/test/data/node/test_ai_onnx_ml_array_feature_extractor/test_data_set_0/input_0.pb +0 -0
  224. onnx/backend/test/data/node/test_ai_onnx_ml_array_feature_extractor/test_data_set_0/input_1.pb +0 -0
  225. onnx/backend/test/data/node/test_ai_onnx_ml_array_feature_extractor/test_data_set_0/output_0.pb +0 -0
  226. onnx/backend/test/data/node/test_ai_onnx_ml_binarizer/model.onnx +0 -0
  227. onnx/backend/test/data/node/test_ai_onnx_ml_binarizer/test_data_set_0/input_0.pb +1 -0
  228. onnx/backend/test/data/node/test_ai_onnx_ml_binarizer/test_data_set_0/output_0.pb +0 -0
  229. onnx/backend/test/data/node/test_asin/test_data_set_0/output_0.pb +1 -1
  230. onnx/backend/test/data/node/test_asinh/test_data_set_0/output_0.pb +1 -1
  231. onnx/backend/test/data/node/test_atan/test_data_set_0/output_0.pb +1 -1
  232. onnx/backend/test/data/node/test_atanh/test_data_set_0/output_0.pb +2 -2
  233. onnx/backend/test/data/node/test_averagepool_1d_default/model.onnx +0 -0
  234. onnx/backend/test/data/node/test_averagepool_2d_ceil/model.onnx +0 -0
  235. onnx/backend/test/data/node/test_averagepool_2d_default/model.onnx +0 -0
  236. onnx/backend/test/data/node/test_averagepool_2d_dilations/model.onnx +0 -0
  237. onnx/backend/test/data/node/test_averagepool_2d_dilations/test_data_set_0/input_0.pb +0 -0
  238. onnx/backend/test/data/node/test_averagepool_2d_dilations/test_data_set_0/output_0.pb +0 -0
  239. onnx/backend/test/data/node/test_averagepool_2d_pads/model.onnx +0 -0
  240. onnx/backend/test/data/node/test_averagepool_2d_pads_count_include_pad/model.onnx +0 -0
  241. onnx/backend/test/data/node/test_averagepool_2d_precomputed_pads/model.onnx +0 -0
  242. onnx/backend/test/data/node/test_averagepool_2d_precomputed_pads_count_include_pad/model.onnx +0 -0
  243. onnx/backend/test/data/node/test_averagepool_2d_precomputed_same_upper/model.onnx +0 -0
  244. onnx/backend/test/data/node/test_averagepool_2d_precomputed_strides/model.onnx +0 -0
  245. onnx/backend/test/data/node/test_averagepool_2d_same_lower/model.onnx +0 -0
  246. onnx/backend/test/data/node/test_averagepool_2d_same_upper/model.onnx +0 -0
  247. onnx/backend/test/data/node/test_averagepool_2d_strides/model.onnx +0 -0
  248. onnx/backend/test/data/node/test_averagepool_3d_default/model.onnx +0 -0
  249. onnx/backend/test/data/node/test_basic_deform_conv_with_padding/model.onnx +0 -0
  250. onnx/backend/test/data/node/test_basic_deform_conv_with_padding/test_data_set_0/input_0.pb +0 -0
  251. onnx/backend/test/data/node/test_basic_deform_conv_with_padding/test_data_set_0/input_1.pb +0 -0
  252. onnx/backend/test/data/node/test_basic_deform_conv_with_padding/test_data_set_0/input_2.pb +0 -0
  253. onnx/backend/test/data/node/test_basic_deform_conv_with_padding/test_data_set_0/output_0.pb +0 -0
  254. onnx/backend/test/data/node/test_basic_deform_conv_without_padding/model.onnx +0 -0
  255. onnx/backend/test/data/node/test_basic_deform_conv_without_padding/test_data_set_0/input_0.pb +0 -0
  256. onnx/backend/test/data/node/test_basic_deform_conv_without_padding/test_data_set_0/input_1.pb +0 -0
  257. onnx/backend/test/data/node/test_basic_deform_conv_without_padding/test_data_set_0/input_2.pb +0 -0
  258. onnx/backend/test/data/node/test_basic_deform_conv_without_padding/test_data_set_0/output_0.pb +0 -0
  259. onnx/backend/test/data/node/test_bitwise_and_i16_3d/test_data_set_0/input_0.pb +0 -0
  260. onnx/backend/test/data/node/test_bitwise_and_i16_3d/test_data_set_0/input_1.pb +0 -0
  261. onnx/backend/test/data/node/test_bitwise_and_i16_3d/test_data_set_0/output_0.pb +0 -0
  262. onnx/backend/test/data/node/test_bitwise_and_i32_2d/test_data_set_0/input_0.pb +0 -0
  263. onnx/backend/test/data/node/test_bitwise_and_i32_2d/test_data_set_0/input_1.pb +0 -0
  264. onnx/backend/test/data/node/test_bitwise_and_i32_2d/test_data_set_0/output_0.pb +0 -0
  265. onnx/backend/test/data/node/test_bitwise_and_ui64_bcast_3v1d/test_data_set_0/input_0.pb +0 -0
  266. onnx/backend/test/data/node/test_bitwise_and_ui64_bcast_3v1d/test_data_set_0/input_1.pb +0 -0
  267. onnx/backend/test/data/node/test_bitwise_and_ui64_bcast_3v1d/test_data_set_0/output_0.pb +0 -0
  268. onnx/backend/test/data/node/test_bitwise_and_ui8_bcast_4v3d/test_data_set_0/input_0.pb +0 -0
  269. onnx/backend/test/data/node/test_bitwise_and_ui8_bcast_4v3d/test_data_set_0/input_1.pb +0 -0
  270. onnx/backend/test/data/node/test_bitwise_and_ui8_bcast_4v3d/test_data_set_0/output_0.pb +0 -0
  271. onnx/backend/test/data/node/test_bitwise_not_2d/test_data_set_0/input_0.pb +0 -0
  272. onnx/backend/test/data/node/test_bitwise_not_2d/test_data_set_0/output_0.pb +0 -0
  273. onnx/backend/test/data/node/test_bitwise_not_3d/test_data_set_0/input_0.pb +0 -0
  274. onnx/backend/test/data/node/test_bitwise_not_3d/test_data_set_0/output_0.pb +0 -0
  275. onnx/backend/test/data/node/test_bitwise_not_4d/test_data_set_0/input_0.pb +0 -0
  276. onnx/backend/test/data/node/test_bitwise_not_4d/test_data_set_0/output_0.pb +0 -0
  277. onnx/backend/test/data/node/test_bitwise_or_i16_4d/test_data_set_0/input_0.pb +0 -0
  278. onnx/backend/test/data/node/test_bitwise_or_i16_4d/test_data_set_0/input_1.pb +0 -0
  279. onnx/backend/test/data/node/test_bitwise_or_i16_4d/test_data_set_0/output_0.pb +0 -0
  280. onnx/backend/test/data/node/test_bitwise_or_i32_2d/test_data_set_0/input_0.pb +0 -0
  281. onnx/backend/test/data/node/test_bitwise_or_i32_2d/test_data_set_0/input_1.pb +0 -0
  282. onnx/backend/test/data/node/test_bitwise_or_i32_2d/test_data_set_0/output_0.pb +0 -0
  283. onnx/backend/test/data/node/test_bitwise_or_ui64_bcast_3v1d/test_data_set_0/input_0.pb +0 -0
  284. onnx/backend/test/data/node/test_bitwise_or_ui64_bcast_3v1d/test_data_set_0/input_1.pb +0 -0
  285. onnx/backend/test/data/node/test_bitwise_or_ui64_bcast_3v1d/test_data_set_0/output_0.pb +0 -0
  286. onnx/backend/test/data/node/test_bitwise_or_ui8_bcast_4v3d/test_data_set_0/input_0.pb +0 -0
  287. onnx/backend/test/data/node/test_bitwise_or_ui8_bcast_4v3d/test_data_set_0/input_1.pb +0 -0
  288. onnx/backend/test/data/node/test_bitwise_or_ui8_bcast_4v3d/test_data_set_0/output_0.pb +0 -0
  289. onnx/backend/test/data/node/test_bitwise_xor_i16_3d/test_data_set_0/input_0.pb +0 -0
  290. onnx/backend/test/data/node/test_bitwise_xor_i16_3d/test_data_set_0/input_1.pb +0 -0
  291. onnx/backend/test/data/node/test_bitwise_xor_i16_3d/test_data_set_0/output_0.pb +0 -0
  292. onnx/backend/test/data/node/test_bitwise_xor_i32_2d/test_data_set_0/input_0.pb +0 -0
  293. onnx/backend/test/data/node/test_bitwise_xor_i32_2d/test_data_set_0/input_1.pb +0 -0
  294. onnx/backend/test/data/node/test_bitwise_xor_i32_2d/test_data_set_0/output_0.pb +0 -0
  295. onnx/backend/test/data/node/test_bitwise_xor_ui64_bcast_3v1d/test_data_set_0/input_0.pb +0 -0
  296. onnx/backend/test/data/node/test_bitwise_xor_ui64_bcast_3v1d/test_data_set_0/input_1.pb +0 -0
  297. onnx/backend/test/data/node/test_bitwise_xor_ui64_bcast_3v1d/test_data_set_0/output_0.pb +0 -0
  298. onnx/backend/test/data/node/test_bitwise_xor_ui8_bcast_4v3d/test_data_set_0/input_0.pb +0 -0
  299. onnx/backend/test/data/node/test_bitwise_xor_ui8_bcast_4v3d/test_data_set_0/input_1.pb +0 -0
  300. onnx/backend/test/data/node/test_bitwise_xor_ui8_bcast_4v3d/test_data_set_0/output_0.pb +0 -0
  301. onnx/backend/test/data/node/test_cast_BFLOAT16_to_FLOAT/model.onnx +0 -0
  302. onnx/backend/test/data/node/test_cast_DOUBLE_to_FLOAT/model.onnx +0 -0
  303. onnx/backend/test/data/node/test_cast_DOUBLE_to_FLOAT16/model.onnx +0 -0
  304. onnx/backend/test/data/node/test_cast_FLOAT16_to_DOUBLE/model.onnx +0 -0
  305. onnx/backend/test/data/node/test_cast_FLOAT16_to_FLOAT/model.onnx +0 -0
  306. onnx/backend/test/data/node/test_cast_FLOAT16_to_FLOAT8E4M3FN/model.onnx +0 -0
  307. onnx/backend/test/data/node/test_cast_FLOAT16_to_FLOAT8E4M3FN/test_data_set_0/input_0.pb +2 -0
  308. onnx/backend/test/data/node/test_cast_FLOAT16_to_FLOAT8E4M3FN/test_data_set_0/output_0.pb +0 -0
  309. onnx/backend/test/data/node/test_cast_FLOAT16_to_FLOAT8E4M3FNUZ/model.onnx +0 -0
  310. onnx/backend/test/data/node/test_cast_FLOAT16_to_FLOAT8E4M3FNUZ/test_data_set_0/input_0.pb +2 -0
  311. onnx/backend/test/data/node/test_cast_FLOAT16_to_FLOAT8E4M3FNUZ/test_data_set_0/output_0.pb +0 -0
  312. onnx/backend/test/data/node/test_cast_FLOAT16_to_FLOAT8E5M2/model.onnx +0 -0
  313. onnx/backend/test/data/node/test_cast_FLOAT16_to_FLOAT8E5M2/test_data_set_0/input_0.pb +2 -0
  314. onnx/backend/test/data/node/test_cast_FLOAT16_to_FLOAT8E5M2/test_data_set_0/output_0.pb +0 -0
  315. onnx/backend/test/data/node/test_cast_FLOAT16_to_FLOAT8E5M2FNUZ/model.onnx +0 -0
  316. onnx/backend/test/data/node/test_cast_FLOAT16_to_FLOAT8E5M2FNUZ/test_data_set_0/input_0.pb +2 -0
  317. onnx/backend/test/data/node/test_cast_FLOAT16_to_FLOAT8E5M2FNUZ/test_data_set_0/output_0.pb +0 -0
  318. onnx/backend/test/data/node/test_cast_FLOAT8E4M3FNUZ_to_FLOAT/model.onnx +0 -0
  319. onnx/backend/test/data/node/test_cast_FLOAT8E4M3FNUZ_to_FLOAT/test_data_set_0/input_0.pb +0 -0
  320. onnx/backend/test/data/node/test_cast_FLOAT8E4M3FNUZ_to_FLOAT/test_data_set_0/output_0.pb +0 -0
  321. onnx/backend/test/data/node/test_cast_FLOAT8E4M3FNUZ_to_FLOAT16/model.onnx +0 -0
  322. onnx/backend/test/data/node/test_cast_FLOAT8E4M3FNUZ_to_FLOAT16/test_data_set_0/input_0.pb +0 -0
  323. onnx/backend/test/data/node/test_cast_FLOAT8E4M3FNUZ_to_FLOAT16/test_data_set_0/output_0.pb +0 -0
  324. onnx/backend/test/data/node/test_cast_FLOAT8E4M3FN_to_FLOAT/model.onnx +0 -0
  325. onnx/backend/test/data/node/test_cast_FLOAT8E4M3FN_to_FLOAT/test_data_set_0/input_0.pb +0 -0
  326. onnx/backend/test/data/node/test_cast_FLOAT8E4M3FN_to_FLOAT/test_data_set_0/output_0.pb +0 -0
  327. onnx/backend/test/data/node/test_cast_FLOAT8E4M3FN_to_FLOAT16/model.onnx +0 -0
  328. onnx/backend/test/data/node/test_cast_FLOAT8E4M3FN_to_FLOAT16/test_data_set_0/input_0.pb +0 -0
  329. onnx/backend/test/data/node/test_cast_FLOAT8E4M3FN_to_FLOAT16/test_data_set_0/output_0.pb +0 -0
  330. onnx/backend/test/data/node/test_cast_FLOAT8E5M2FNUZ_to_FLOAT/model.onnx +0 -0
  331. onnx/backend/test/data/node/test_cast_FLOAT8E5M2FNUZ_to_FLOAT/test_data_set_0/input_0.pb +0 -0
  332. onnx/backend/test/data/node/test_cast_FLOAT8E5M2FNUZ_to_FLOAT/test_data_set_0/output_0.pb +0 -0
  333. onnx/backend/test/data/node/test_cast_FLOAT8E5M2FNUZ_to_FLOAT16/model.onnx +0 -0
  334. onnx/backend/test/data/node/test_cast_FLOAT8E5M2FNUZ_to_FLOAT16/test_data_set_0/input_0.pb +0 -0
  335. onnx/backend/test/data/node/test_cast_FLOAT8E5M2FNUZ_to_FLOAT16/test_data_set_0/output_0.pb +0 -0
  336. onnx/backend/test/data/node/test_cast_FLOAT8E5M2_to_FLOAT/model.onnx +0 -0
  337. onnx/backend/test/data/node/test_cast_FLOAT8E5M2_to_FLOAT/test_data_set_0/input_0.pb +0 -0
  338. onnx/backend/test/data/node/test_cast_FLOAT8E5M2_to_FLOAT/test_data_set_0/output_0.pb +0 -0
  339. onnx/backend/test/data/node/test_cast_FLOAT8E5M2_to_FLOAT16/model.onnx +0 -0
  340. onnx/backend/test/data/node/test_cast_FLOAT8E5M2_to_FLOAT16/test_data_set_0/input_0.pb +0 -0
  341. onnx/backend/test/data/node/test_cast_FLOAT8E5M2_to_FLOAT16/test_data_set_0/output_0.pb +0 -0
  342. onnx/backend/test/data/node/test_cast_FLOAT_to_BFLOAT16/model.onnx +0 -0
  343. onnx/backend/test/data/node/test_cast_FLOAT_to_DOUBLE/model.onnx +0 -0
  344. onnx/backend/test/data/node/test_cast_FLOAT_to_FLOAT16/model.onnx +0 -0
  345. onnx/backend/test/data/node/test_cast_FLOAT_to_FLOAT8E4M3FN/model.onnx +0 -0
  346. onnx/backend/test/data/node/test_cast_FLOAT_to_FLOAT8E4M3FN/test_data_set_0/input_0.pb +0 -0
  347. onnx/backend/test/data/node/test_cast_FLOAT_to_FLOAT8E4M3FN/test_data_set_0/output_0.pb +0 -0
  348. onnx/backend/test/data/node/test_cast_FLOAT_to_FLOAT8E4M3FNUZ/model.onnx +0 -0
  349. onnx/backend/test/data/node/test_cast_FLOAT_to_FLOAT8E4M3FNUZ/test_data_set_0/input_0.pb +0 -0
  350. onnx/backend/test/data/node/test_cast_FLOAT_to_FLOAT8E4M3FNUZ/test_data_set_0/output_0.pb +0 -0
  351. onnx/backend/test/data/node/test_cast_FLOAT_to_FLOAT8E5M2/model.onnx +0 -0
  352. onnx/backend/test/data/node/test_cast_FLOAT_to_FLOAT8E5M2/test_data_set_0/input_0.pb +0 -0
  353. onnx/backend/test/data/node/test_cast_FLOAT_to_FLOAT8E5M2/test_data_set_0/output_0.pb +0 -0
  354. onnx/backend/test/data/node/test_cast_FLOAT_to_FLOAT8E5M2FNUZ/model.onnx +0 -0
  355. onnx/backend/test/data/node/test_cast_FLOAT_to_FLOAT8E5M2FNUZ/test_data_set_0/input_0.pb +0 -0
  356. onnx/backend/test/data/node/test_cast_FLOAT_to_FLOAT8E5M2FNUZ/test_data_set_0/output_0.pb +0 -0
  357. onnx/backend/test/data/node/test_cast_FLOAT_to_STRING/model.onnx +0 -0
  358. onnx/backend/test/data/node/test_cast_STRING_to_FLOAT/model.onnx +0 -0
  359. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT16_to_FLOAT8E4M3FN/model.onnx +0 -0
  360. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT16_to_FLOAT8E4M3FN/test_data_set_0/input_0.pb +2 -0
  361. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT16_to_FLOAT8E4M3FN/test_data_set_0/output_0.pb +0 -0
  362. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT16_to_FLOAT8E4M3FNUZ/model.onnx +0 -0
  363. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT16_to_FLOAT8E4M3FNUZ/test_data_set_0/input_0.pb +2 -0
  364. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT16_to_FLOAT8E4M3FNUZ/test_data_set_0/output_0.pb +0 -0
  365. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT16_to_FLOAT8E5M2/model.onnx +0 -0
  366. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT16_to_FLOAT8E5M2/test_data_set_0/input_0.pb +2 -0
  367. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT16_to_FLOAT8E5M2/test_data_set_0/output_0.pb +0 -0
  368. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT16_to_FLOAT8E5M2FNUZ/model.onnx +0 -0
  369. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT16_to_FLOAT8E5M2FNUZ/test_data_set_0/input_0.pb +2 -0
  370. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT16_to_FLOAT8E5M2FNUZ/test_data_set_0/output_0.pb +0 -0
  371. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT_to_FLOAT8E4M3FN/model.onnx +0 -0
  372. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT_to_FLOAT8E4M3FN/test_data_set_0/input_0.pb +0 -0
  373. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT_to_FLOAT8E4M3FN/test_data_set_0/output_0.pb +0 -0
  374. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT_to_FLOAT8E4M3FNUZ/model.onnx +0 -0
  375. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT_to_FLOAT8E4M3FNUZ/test_data_set_0/input_0.pb +0 -0
  376. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT_to_FLOAT8E4M3FNUZ/test_data_set_0/output_0.pb +0 -0
  377. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT_to_FLOAT8E5M2/model.onnx +0 -0
  378. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT_to_FLOAT8E5M2/test_data_set_0/input_0.pb +0 -0
  379. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT_to_FLOAT8E5M2/test_data_set_0/output_0.pb +0 -0
  380. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT_to_FLOAT8E5M2FNUZ/model.onnx +0 -0
  381. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT_to_FLOAT8E5M2FNUZ/test_data_set_0/input_0.pb +0 -0
  382. onnx/backend/test/data/node/test_cast_no_saturate_FLOAT_to_FLOAT8E5M2FNUZ/test_data_set_0/output_0.pb +0 -0
  383. onnx/backend/test/data/node/test_castlike_BFLOAT16_to_FLOAT/model.onnx +0 -0
  384. onnx/backend/test/data/node/test_castlike_BFLOAT16_to_FLOAT_expanded/model.onnx +0 -0
  385. onnx/backend/test/data/node/test_castlike_DOUBLE_to_FLOAT/model.onnx +0 -0
  386. onnx/backend/test/data/node/test_castlike_DOUBLE_to_FLOAT16/model.onnx +0 -0
  387. onnx/backend/test/data/node/test_castlike_DOUBLE_to_FLOAT16_expanded/model.onnx +0 -0
  388. onnx/backend/test/data/node/test_castlike_DOUBLE_to_FLOAT_expanded/model.onnx +0 -0
  389. onnx/backend/test/data/node/test_castlike_FLOAT16_to_DOUBLE/model.onnx +0 -0
  390. onnx/backend/test/data/node/test_castlike_FLOAT16_to_DOUBLE_expanded/model.onnx +0 -0
  391. onnx/backend/test/data/node/test_castlike_FLOAT16_to_FLOAT/model.onnx +0 -0
  392. onnx/backend/test/data/node/test_castlike_FLOAT16_to_FLOAT_expanded/model.onnx +0 -0
  393. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FNUZ_to_FLOAT/model.onnx +0 -0
  394. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FNUZ_to_FLOAT/test_data_set_0/input_0.pb +1 -0
  395. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FNUZ_to_FLOAT/test_data_set_0/input_1.pb +0 -0
  396. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FNUZ_to_FLOAT/test_data_set_0/output_0.pb +0 -0
  397. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FNUZ_to_FLOAT_expanded/model.onnx +0 -0
  398. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FNUZ_to_FLOAT_expanded/test_data_set_0/input_0.pb +1 -0
  399. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FNUZ_to_FLOAT_expanded/test_data_set_0/input_1.pb +0 -0
  400. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FNUZ_to_FLOAT_expanded/test_data_set_0/output_0.pb +0 -0
  401. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FN_to_FLOAT/model.onnx +0 -0
  402. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FN_to_FLOAT/test_data_set_0/input_0.pb +1 -0
  403. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FN_to_FLOAT/test_data_set_0/input_1.pb +0 -0
  404. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FN_to_FLOAT/test_data_set_0/output_0.pb +0 -0
  405. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FN_to_FLOAT_expanded/model.onnx +0 -0
  406. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FN_to_FLOAT_expanded/test_data_set_0/input_0.pb +1 -0
  407. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FN_to_FLOAT_expanded/test_data_set_0/input_1.pb +0 -0
  408. onnx/backend/test/data/node/test_castlike_FLOAT8E4M3FN_to_FLOAT_expanded/test_data_set_0/output_0.pb +0 -0
  409. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2FNUZ_to_FLOAT/model.onnx +0 -0
  410. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2FNUZ_to_FLOAT/test_data_set_0/input_0.pb +1 -0
  411. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2FNUZ_to_FLOAT/test_data_set_0/input_1.pb +0 -0
  412. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2FNUZ_to_FLOAT/test_data_set_0/output_0.pb +0 -0
  413. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2FNUZ_to_FLOAT_expanded/model.onnx +0 -0
  414. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2FNUZ_to_FLOAT_expanded/test_data_set_0/input_0.pb +1 -0
  415. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2FNUZ_to_FLOAT_expanded/test_data_set_0/input_1.pb +0 -0
  416. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2FNUZ_to_FLOAT_expanded/test_data_set_0/output_0.pb +0 -0
  417. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2_to_FLOAT/model.onnx +0 -0
  418. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2_to_FLOAT/test_data_set_0/input_0.pb +1 -0
  419. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2_to_FLOAT/test_data_set_0/input_1.pb +0 -0
  420. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2_to_FLOAT/test_data_set_0/output_0.pb +0 -0
  421. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2_to_FLOAT_expanded/model.onnx +0 -0
  422. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2_to_FLOAT_expanded/test_data_set_0/input_0.pb +1 -0
  423. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2_to_FLOAT_expanded/test_data_set_0/input_1.pb +0 -0
  424. onnx/backend/test/data/node/test_castlike_FLOAT8E5M2_to_FLOAT_expanded/test_data_set_0/output_0.pb +0 -0
  425. onnx/backend/test/data/node/test_castlike_FLOAT_to_BFLOAT16/model.onnx +0 -0
  426. onnx/backend/test/data/node/test_castlike_FLOAT_to_BFLOAT16_expanded/model.onnx +0 -0
  427. onnx/backend/test/data/node/test_castlike_FLOAT_to_DOUBLE/model.onnx +0 -0
  428. onnx/backend/test/data/node/test_castlike_FLOAT_to_DOUBLE_expanded/model.onnx +0 -0
  429. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT16/model.onnx +0 -0
  430. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT16_expanded/model.onnx +0 -0
  431. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FN/model.onnx +0 -0
  432. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FN/test_data_set_0/input_0.pb +0 -0
  433. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FN/test_data_set_0/input_1.pb +1 -0
  434. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FN/test_data_set_0/output_0.pb +1 -0
  435. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FNUZ/model.onnx +0 -0
  436. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FNUZ/test_data_set_0/input_0.pb +0 -0
  437. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FNUZ/test_data_set_0/input_1.pb +1 -0
  438. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FNUZ/test_data_set_0/output_0.pb +1 -0
  439. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FNUZ_expanded/model.onnx +0 -0
  440. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FNUZ_expanded/test_data_set_0/input_0.pb +0 -0
  441. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FNUZ_expanded/test_data_set_0/input_1.pb +1 -0
  442. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FNUZ_expanded/test_data_set_0/output_0.pb +1 -0
  443. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FN_expanded/model.onnx +0 -0
  444. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FN_expanded/test_data_set_0/input_0.pb +0 -0
  445. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FN_expanded/test_data_set_0/input_1.pb +1 -0
  446. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E4M3FN_expanded/test_data_set_0/output_0.pb +1 -0
  447. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2/model.onnx +0 -0
  448. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2/test_data_set_0/input_0.pb +0 -0
  449. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2/test_data_set_0/input_1.pb +1 -0
  450. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2/test_data_set_0/output_0.pb +1 -0
  451. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2FNUZ/model.onnx +0 -0
  452. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2FNUZ/test_data_set_0/input_0.pb +0 -0
  453. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2FNUZ/test_data_set_0/input_1.pb +1 -0
  454. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2FNUZ/test_data_set_0/output_0.pb +1 -0
  455. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2FNUZ_expanded/model.onnx +0 -0
  456. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2FNUZ_expanded/test_data_set_0/input_0.pb +0 -0
  457. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2FNUZ_expanded/test_data_set_0/input_1.pb +1 -0
  458. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2FNUZ_expanded/test_data_set_0/output_0.pb +1 -0
  459. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2_expanded/model.onnx +0 -0
  460. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2_expanded/test_data_set_0/input_0.pb +0 -0
  461. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2_expanded/test_data_set_0/input_1.pb +1 -0
  462. onnx/backend/test/data/node/test_castlike_FLOAT_to_FLOAT8E5M2_expanded/test_data_set_0/output_0.pb +1 -0
  463. onnx/backend/test/data/node/test_castlike_FLOAT_to_STRING/model.onnx +0 -0
  464. onnx/backend/test/data/node/test_castlike_FLOAT_to_STRING_expanded/model.onnx +0 -0
  465. onnx/backend/test/data/node/test_castlike_STRING_to_FLOAT/model.onnx +0 -0
  466. onnx/backend/test/data/node/test_castlike_STRING_to_FLOAT_expanded/model.onnx +0 -0
  467. onnx/backend/test/data/node/test_center_crop_pad_crop_negative_axes_hwc/model.onnx +0 -0
  468. onnx/backend/test/data/node/test_center_crop_pad_crop_negative_axes_hwc/test_data_set_0/input_0.pb +0 -0
  469. onnx/backend/test/data/node/test_center_crop_pad_crop_negative_axes_hwc/test_data_set_0/input_1.pb +0 -0
  470. onnx/backend/test/data/node/test_center_crop_pad_crop_negative_axes_hwc/test_data_set_0/output_0.pb +0 -0
  471. onnx/backend/test/data/node/test_center_crop_pad_crop_negative_axes_hwc_expanded/model.onnx +0 -0
  472. onnx/backend/test/data/node/test_center_crop_pad_crop_negative_axes_hwc_expanded/test_data_set_0/input_0.pb +0 -0
  473. onnx/backend/test/data/node/test_center_crop_pad_crop_negative_axes_hwc_expanded/test_data_set_0/input_1.pb +0 -0
  474. onnx/backend/test/data/node/test_center_crop_pad_crop_negative_axes_hwc_expanded/test_data_set_0/output_0.pb +0 -0
  475. onnx/backend/test/data/node/test_col2im_pads/test_data_set_0/output_0.pb +0 -0
  476. onnx/backend/test/data/node/test_constant/model.onnx +0 -0
  477. onnx/backend/test/data/node/test_constant_pad/model.onnx +0 -0
  478. onnx/backend/test/data/node/test_constant_pad_axes/model.onnx +0 -0
  479. onnx/backend/test/data/node/test_constant_pad_negative_axes/model.onnx +0 -0
  480. onnx/backend/test/data/node/test_constant_pad_negative_axes/test_data_set_0/input_0.pb +1 -0
  481. onnx/backend/test/data/node/test_constant_pad_negative_axes/test_data_set_0/input_1.pb +0 -0
  482. onnx/backend/test/data/node/test_constant_pad_negative_axes/test_data_set_0/input_2.pb +1 -0
  483. onnx/backend/test/data/node/test_constant_pad_negative_axes/test_data_set_0/input_3.pb +1 -0
  484. onnx/backend/test/data/node/test_constant_pad_negative_axes/test_data_set_0/output_0.pb +1 -0
  485. onnx/backend/test/data/node/test_cosh/test_data_set_0/output_0.pb +1 -1
  486. onnx/backend/test/data/node/test_cosh_example/test_data_set_0/output_0.pb +0 -0
  487. onnx/backend/test/data/node/test_deform_conv_with_mask_bias/model.onnx +0 -0
  488. onnx/backend/test/data/node/test_deform_conv_with_mask_bias/test_data_set_0/input_0.pb +0 -0
  489. onnx/backend/test/data/node/test_deform_conv_with_mask_bias/test_data_set_0/input_1.pb +0 -0
  490. onnx/backend/test/data/node/test_deform_conv_with_mask_bias/test_data_set_0/input_2.pb +0 -0
  491. onnx/backend/test/data/node/test_deform_conv_with_mask_bias/test_data_set_0/input_3.pb +0 -0
  492. onnx/backend/test/data/node/test_deform_conv_with_mask_bias/test_data_set_0/input_4.pb +0 -0
  493. onnx/backend/test/data/node/test_deform_conv_with_mask_bias/test_data_set_0/output_0.pb +0 -0
  494. onnx/backend/test/data/node/test_deform_conv_with_multiple_offset_groups/model.onnx +0 -0
  495. onnx/backend/test/data/node/test_deform_conv_with_multiple_offset_groups/test_data_set_0/input_0.pb +0 -0
  496. onnx/backend/test/data/node/test_deform_conv_with_multiple_offset_groups/test_data_set_0/input_1.pb +0 -0
  497. onnx/backend/test/data/node/test_deform_conv_with_multiple_offset_groups/test_data_set_0/input_2.pb +0 -0
  498. onnx/backend/test/data/node/test_deform_conv_with_multiple_offset_groups/test_data_set_0/output_0.pb +0 -0
  499. onnx/backend/test/data/node/test_dequantizelinear/model.onnx +0 -0
  500. onnx/backend/test/data/node/test_dequantizelinear_axis/model.onnx +0 -0
  501. onnx/backend/test/data/node/test_dequantizelinear_e4m3fn/model.onnx +0 -0
  502. onnx/backend/test/data/node/test_dequantizelinear_e4m3fn/test_data_set_0/input_0.pb +0 -0
  503. onnx/backend/test/data/node/test_dequantizelinear_e4m3fn/test_data_set_0/input_1.pb +0 -0
  504. onnx/backend/test/data/node/test_dequantizelinear_e4m3fn/test_data_set_0/output_0.pb +0 -0
  505. onnx/backend/test/data/node/test_dequantizelinear_e5m2/model.onnx +0 -0
  506. onnx/backend/test/data/node/test_dequantizelinear_e5m2/test_data_set_0/input_0.pb +0 -0
  507. onnx/backend/test/data/node/test_dequantizelinear_e5m2/test_data_set_0/input_1.pb +0 -0
  508. onnx/backend/test/data/node/test_dequantizelinear_e5m2/test_data_set_0/output_0.pb +0 -0
  509. onnx/backend/test/data/node/test_edge_pad/model.onnx +0 -0
  510. onnx/backend/test/data/node/test_equal/model.onnx +0 -0
  511. onnx/backend/test/data/node/test_equal_bcast/model.onnx +0 -0
  512. onnx/backend/test/data/node/test_equal_string/model.onnx +0 -0
  513. onnx/backend/test/data/node/test_equal_string/test_data_set_0/input_0.pb +1 -0
  514. onnx/backend/test/data/node/test_equal_string/test_data_set_0/input_1.pb +1 -0
  515. onnx/backend/test/data/node/test_equal_string/test_data_set_0/output_0.pb +0 -0
  516. onnx/backend/test/data/node/test_equal_string_broadcast/model.onnx +0 -0
  517. onnx/backend/test/data/node/test_equal_string_broadcast/test_data_set_0/input_0.pb +1 -0
  518. onnx/backend/test/data/node/test_equal_string_broadcast/test_data_set_0/input_1.pb +1 -0
  519. onnx/backend/test/data/node/test_equal_string_broadcast/test_data_set_0/output_0.pb +0 -0
  520. onnx/backend/test/data/node/test_identity/model.onnx +0 -0
  521. onnx/backend/test/data/node/test_identity_sequence/model.onnx +0 -0
  522. onnx/backend/test/data/node/test_lppool_1d_default/model.onnx +0 -0
  523. onnx/backend/test/data/node/test_lppool_1d_default/test_data_set_0/input_0.pb +1 -0
  524. onnx/backend/test/data/node/test_lppool_1d_default/test_data_set_0/output_0.pb +2 -0
  525. onnx/backend/test/data/node/test_lppool_2d_default/model.onnx +0 -0
  526. onnx/backend/test/data/node/test_lppool_2d_default/test_data_set_0/input_0.pb +0 -0
  527. onnx/backend/test/data/node/test_lppool_2d_default/test_data_set_0/output_0.pb +0 -0
  528. onnx/backend/test/data/node/test_lppool_2d_dilations/model.onnx +0 -0
  529. onnx/backend/test/data/node/test_lppool_2d_dilations/test_data_set_0/input_0.pb +0 -0
  530. onnx/backend/test/data/node/test_lppool_2d_dilations/test_data_set_0/output_0.pb +1 -0
  531. onnx/backend/test/data/node/test_lppool_2d_pads/model.onnx +0 -0
  532. onnx/backend/test/data/node/test_lppool_2d_pads/test_data_set_0/input_0.pb +0 -0
  533. onnx/backend/test/data/node/test_lppool_2d_pads/test_data_set_0/output_0.pb +0 -0
  534. onnx/backend/test/data/node/test_lppool_2d_same_lower/model.onnx +0 -0
  535. onnx/backend/test/data/node/test_lppool_2d_same_lower/test_data_set_0/input_0.pb +0 -0
  536. onnx/backend/test/data/node/test_lppool_2d_same_lower/test_data_set_0/output_0.pb +0 -0
  537. onnx/backend/test/data/node/test_lppool_2d_same_upper/model.onnx +0 -0
  538. onnx/backend/test/data/node/test_lppool_2d_same_upper/test_data_set_0/input_0.pb +0 -0
  539. onnx/backend/test/data/node/test_lppool_2d_same_upper/test_data_set_0/output_0.pb +0 -0
  540. onnx/backend/test/data/node/test_lppool_2d_strides/model.onnx +0 -0
  541. onnx/backend/test/data/node/test_lppool_2d_strides/test_data_set_0/input_0.pb +0 -0
  542. onnx/backend/test/data/node/test_lppool_2d_strides/test_data_set_0/output_0.pb +0 -0
  543. onnx/backend/test/data/node/test_lppool_3d_default/model.onnx +0 -0
  544. onnx/backend/test/data/node/test_lppool_3d_default/test_data_set_0/input_0.pb +0 -0
  545. onnx/backend/test/data/node/test_lppool_3d_default/test_data_set_0/output_0.pb +0 -0
  546. onnx/backend/test/data/node/test_mish/test_data_set_0/output_0.pb +0 -0
  547. onnx/backend/test/data/node/test_mish_expanded/test_data_set_0/output_0.pb +0 -0
  548. onnx/backend/test/data/node/test_quantizelinear/model.onnx +0 -0
  549. onnx/backend/test/data/node/test_quantizelinear_axis/model.onnx +0 -0
  550. onnx/backend/test/data/node/test_quantizelinear_e4m3fn/model.onnx +0 -0
  551. onnx/backend/test/data/node/test_quantizelinear_e4m3fn/test_data_set_0/input_0.pb +0 -0
  552. onnx/backend/test/data/node/test_quantizelinear_e4m3fn/test_data_set_0/input_1.pb +0 -0
  553. onnx/backend/test/data/node/test_quantizelinear_e4m3fn/test_data_set_0/input_2.pb +0 -0
  554. onnx/backend/test/data/node/test_quantizelinear_e4m3fn/test_data_set_0/output_0.pb +0 -0
  555. onnx/backend/test/data/node/test_quantizelinear_e5m2/model.onnx +0 -0
  556. onnx/backend/test/data/node/test_quantizelinear_e5m2/test_data_set_0/input_0.pb +0 -0
  557. onnx/backend/test/data/node/test_quantizelinear_e5m2/test_data_set_0/input_1.pb +0 -0
  558. onnx/backend/test/data/node/test_quantizelinear_e5m2/test_data_set_0/input_2.pb +0 -0
  559. onnx/backend/test/data/node/test_quantizelinear_e5m2/test_data_set_0/output_0.pb +0 -0
  560. onnx/backend/test/data/node/test_reflect_pad/model.onnx +0 -0
  561. onnx/backend/test/data/node/test_reshape_allowzero_reordered/model.onnx +0 -0
  562. onnx/backend/test/data/node/test_reshape_extended_dims/model.onnx +0 -0
  563. onnx/backend/test/data/node/test_reshape_negative_dim/model.onnx +0 -0
  564. onnx/backend/test/data/node/test_reshape_negative_extended_dims/model.onnx +0 -0
  565. onnx/backend/test/data/node/test_reshape_one_dim/model.onnx +0 -0
  566. onnx/backend/test/data/node/test_reshape_reduced_dims/model.onnx +0 -0
  567. onnx/backend/test/data/node/test_reshape_reordered_all_dims/model.onnx +0 -0
  568. onnx/backend/test/data/node/test_reshape_reordered_last_dims/model.onnx +0 -0
  569. onnx/backend/test/data/node/test_reshape_zero_and_negative_dim/model.onnx +0 -0
  570. onnx/backend/test/data/node/test_reshape_zero_dim/model.onnx +0 -0
  571. onnx/backend/test/data/node/test_resize_downsample_scales_cubic/model.onnx +0 -0
  572. onnx/backend/test/data/node/test_resize_downsample_scales_cubic_A_n0p5_exclude_outside/model.onnx +0 -0
  573. onnx/backend/test/data/node/test_resize_downsample_scales_cubic_align_corners/model.onnx +0 -0
  574. onnx/backend/test/data/node/test_resize_downsample_scales_cubic_antialias/model.onnx +0 -0
  575. onnx/backend/test/data/node/test_resize_downsample_scales_linear/model.onnx +0 -0
  576. onnx/backend/test/data/node/test_resize_downsample_scales_linear_align_corners/model.onnx +0 -0
  577. onnx/backend/test/data/node/test_resize_downsample_scales_linear_antialias/model.onnx +0 -0
  578. onnx/backend/test/data/node/test_resize_downsample_scales_linear_half_pixel_symmetric/model.onnx +0 -0
  579. onnx/backend/test/data/node/test_resize_downsample_scales_linear_half_pixel_symmetric/test_data_set_0/input_0.pb +0 -0
  580. onnx/backend/test/data/node/test_resize_downsample_scales_linear_half_pixel_symmetric/test_data_set_0/input_1.pb +0 -0
  581. onnx/backend/test/data/node/test_resize_downsample_scales_linear_half_pixel_symmetric/test_data_set_0/output_0.pb +1 -0
  582. onnx/backend/test/data/node/test_resize_downsample_scales_nearest/model.onnx +0 -0
  583. onnx/backend/test/data/node/test_resize_downsample_sizes_cubic/model.onnx +0 -0
  584. onnx/backend/test/data/node/test_resize_downsample_sizes_cubic_antialias/model.onnx +0 -0
  585. onnx/backend/test/data/node/test_resize_downsample_sizes_linear_antialias/model.onnx +0 -0
  586. onnx/backend/test/data/node/test_resize_downsample_sizes_linear_pytorch_half_pixel/model.onnx +0 -0
  587. onnx/backend/test/data/node/test_resize_downsample_sizes_nearest/model.onnx +0 -0
  588. onnx/backend/test/data/node/test_resize_downsample_sizes_nearest_not_larger/model.onnx +0 -0
  589. onnx/backend/test/data/node/test_resize_downsample_sizes_nearest_not_smaller/model.onnx +0 -0
  590. onnx/backend/test/data/node/test_resize_tf_crop_and_resize/model.onnx +0 -0
  591. onnx/backend/test/data/node/test_resize_tf_crop_and_resize_axes_2_3/model.onnx +0 -0
  592. onnx/backend/test/data/node/test_resize_tf_crop_and_resize_axes_3_2/model.onnx +0 -0
  593. onnx/backend/test/data/node/test_resize_upsample_scales_cubic/model.onnx +0 -0
  594. onnx/backend/test/data/node/test_resize_upsample_scales_cubic_A_n0p5_exclude_outside/model.onnx +0 -0
  595. onnx/backend/test/data/node/test_resize_upsample_scales_cubic_align_corners/model.onnx +0 -0
  596. onnx/backend/test/data/node/test_resize_upsample_scales_cubic_asymmetric/model.onnx +0 -0
  597. onnx/backend/test/data/node/test_resize_upsample_scales_linear/model.onnx +0 -0
  598. onnx/backend/test/data/node/test_resize_upsample_scales_linear_align_corners/model.onnx +0 -0
  599. onnx/backend/test/data/node/test_resize_upsample_scales_linear_half_pixel_symmetric/model.onnx +0 -0
  600. onnx/backend/test/data/node/test_resize_upsample_scales_linear_half_pixel_symmetric/test_data_set_0/input_0.pb +0 -0
  601. onnx/backend/test/data/node/test_resize_upsample_scales_linear_half_pixel_symmetric/test_data_set_0/input_1.pb +0 -0
  602. onnx/backend/test/data/node/test_resize_upsample_scales_linear_half_pixel_symmetric/test_data_set_0/output_0.pb +0 -0
  603. onnx/backend/test/data/node/test_resize_upsample_scales_nearest/model.onnx +0 -0
  604. onnx/backend/test/data/node/test_resize_upsample_scales_nearest_axes_2_3/model.onnx +0 -0
  605. onnx/backend/test/data/node/test_resize_upsample_scales_nearest_axes_3_2/model.onnx +0 -0
  606. onnx/backend/test/data/node/test_resize_upsample_sizes_cubic/model.onnx +0 -0
  607. onnx/backend/test/data/node/test_resize_upsample_sizes_nearest/model.onnx +0 -0
  608. onnx/backend/test/data/node/test_resize_upsample_sizes_nearest_axes_2_3/model.onnx +0 -0
  609. onnx/backend/test/data/node/test_resize_upsample_sizes_nearest_axes_3_2/model.onnx +0 -0
  610. onnx/backend/test/data/node/test_resize_upsample_sizes_nearest_ceil_half_pixel/model.onnx +0 -0
  611. onnx/backend/test/data/node/test_resize_upsample_sizes_nearest_floor_align_corners/model.onnx +0 -0
  612. onnx/backend/test/data/node/test_resize_upsample_sizes_nearest_not_larger/model.onnx +0 -0
  613. onnx/backend/test/data/node/test_resize_upsample_sizes_nearest_round_prefer_ceil_asymmetric/model.onnx +0 -0
  614. onnx/backend/test/data/node/test_roialign_mode_max/model.onnx +0 -0
  615. onnx/backend/test/data/node/test_roialign_mode_max/test_data_set_0/input_0.pb +0 -0
  616. onnx/backend/test/data/node/test_roialign_mode_max/test_data_set_0/input_1.pb +0 -0
  617. onnx/backend/test/data/node/test_roialign_mode_max/test_data_set_0/input_2.pb +0 -0
  618. onnx/backend/test/data/node/test_roialign_mode_max/test_data_set_0/output_0.pb +2 -0
  619. onnx/backend/test/data/node/test_shape/model.onnx +0 -0
  620. onnx/backend/test/data/node/test_shape_clip_end/model.onnx +0 -0
  621. onnx/backend/test/data/node/test_shape_clip_start/model.onnx +0 -0
  622. onnx/backend/test/data/node/test_shape_end_1/model.onnx +0 -0
  623. onnx/backend/test/data/node/test_shape_end_negative_1/model.onnx +0 -0
  624. onnx/backend/test/data/node/test_shape_example/model.onnx +0 -0
  625. onnx/backend/test/data/node/test_shape_start_1/model.onnx +0 -0
  626. onnx/backend/test/data/node/test_shape_start_1_end_2/model.onnx +0 -0
  627. onnx/backend/test/data/node/test_shape_start_1_end_negative_1/model.onnx +0 -0
  628. onnx/backend/test/data/node/test_shape_start_negative_1/model.onnx +0 -0
  629. onnx/backend/test/data/node/test_sinh/test_data_set_0/output_0.pb +1 -1
  630. onnx/backend/test/data/node/test_size/model.onnx +0 -0
  631. onnx/backend/test/data/node/test_size_example/model.onnx +0 -0
  632. onnx/backend/test/data/node/test_softplus_example_expanded_ver18/model.onnx +0 -0
  633. onnx/backend/test/data/node/{test_softplus_expanded → test_softplus_expanded_ver18}/model.onnx +0 -0
  634. onnx/backend/test/data/node/test_split_to_sequence_1/model.onnx +0 -0
  635. onnx/backend/test/data/node/test_split_to_sequence_1/test_data_set_0/input_0.pb +0 -0
  636. onnx/backend/test/data/node/test_split_to_sequence_1/test_data_set_0/input_1.pb +0 -0
  637. onnx/backend/test/data/node/test_split_to_sequence_1/test_data_set_0/output_0.pb +0 -0
  638. onnx/backend/test/data/node/test_split_to_sequence_2/model.onnx +0 -0
  639. onnx/backend/test/data/node/test_split_to_sequence_2/test_data_set_0/input_0.pb +0 -0
  640. onnx/backend/test/data/node/test_split_to_sequence_2/test_data_set_0/input_1.pb +0 -0
  641. onnx/backend/test/data/node/test_split_to_sequence_2/test_data_set_0/output_0.pb +0 -0
  642. onnx/backend/test/data/node/test_split_to_sequence_nokeepdims/model.onnx +0 -0
  643. onnx/backend/test/data/node/test_split_to_sequence_nokeepdims/test_data_set_0/input_0.pb +0 -0
  644. onnx/backend/test/data/node/test_split_to_sequence_nokeepdims/test_data_set_0/output_0.pb +0 -0
  645. onnx/backend/test/data/node/test_tan/test_data_set_0/output_0.pb +1 -1
  646. onnx/backend/test/data/node/test_wrap_pad/model.onnx +0 -0
  647. onnx/backend/test/data/node/test_wrap_pad/test_data_set_0/input_0.pb +0 -0
  648. onnx/backend/test/data/node/test_wrap_pad/test_data_set_0/input_1.pb +0 -0
  649. onnx/backend/test/data/node/test_wrap_pad/test_data_set_0/output_0.pb +0 -0
  650. onnx/backend/test/data/real/test_bvlc_alexnet/data.json +1 -1
  651. onnx/backend/test/data/real/test_densenet121/data.json +1 -1
  652. onnx/backend/test/data/real/test_inception_v1/data.json +1 -1
  653. onnx/backend/test/data/real/test_inception_v2/data.json +1 -1
  654. onnx/backend/test/data/real/test_resnet50/data.json +1 -1
  655. onnx/backend/test/data/real/test_shufflenet/data.json +1 -1
  656. onnx/backend/test/data/real/test_squeezenet/data.json +1 -1
  657. onnx/backend/test/data/real/test_vgg19/data.json +1 -1
  658. onnx/backend/test/data/real/test_zfnet512/data.json +1 -1
  659. onnx/backend/test/loader/__init__.py +3 -1
  660. onnx/backend/test/report/__init__.py +3 -1
  661. onnx/backend/test/report/base.py +2 -0
  662. onnx/backend/test/report/coverage.py +8 -14
  663. onnx/backend/test/runner/__init__.py +145 -38
  664. onnx/backend/test/runner/item.py +2 -0
  665. onnx/backend/test/stat_coverage.py +23 -26
  666. onnx/bin/__init__.py +2 -0
  667. onnx/bin/checker.py +2 -0
  668. onnx/checker.cc +17 -5
  669. onnx/checker.h +3 -3
  670. onnx/checker.py +22 -5
  671. onnx/common/array_ref.h +2 -0
  672. onnx/common/assertions.cc +2 -0
  673. onnx/common/assertions.h +2 -0
  674. onnx/common/common.h +2 -0
  675. onnx/common/constants.h +3 -3
  676. onnx/common/file_utils.h +3 -1
  677. onnx/common/graph_node_list.h +2 -0
  678. onnx/common/interned_strings.cc +2 -0
  679. onnx/common/interned_strings.h +2 -0
  680. onnx/common/ir.h +2 -0
  681. onnx/common/ir_pb_converter.cc +7 -1
  682. onnx/common/ir_pb_converter.h +2 -0
  683. onnx/common/model_helpers.cc +3 -3
  684. onnx/common/model_helpers.h +3 -3
  685. onnx/common/path.cc +0 -1
  686. onnx/common/path.h +0 -1
  687. onnx/common/platform_helpers.h +2 -0
  688. onnx/common/status.cc +2 -0
  689. onnx/common/status.h +2 -0
  690. onnx/common/stl_backports.h +3 -3
  691. onnx/common/tensor.h +24 -171
  692. onnx/common/version.h +3 -1
  693. onnx/compose.py +40 -32
  694. onnx/cpp2py_export.cc +268 -89
  695. onnx/defs/__init__.py +9 -7
  696. onnx/defs/attr_proto_util.cc +2 -0
  697. onnx/defs/attr_proto_util.h +2 -0
  698. onnx/defs/controlflow/defs.cc +25 -369
  699. onnx/defs/controlflow/old.cc +444 -0
  700. onnx/defs/controlflow/utils.cc +357 -0
  701. onnx/defs/controlflow/utils.h +21 -0
  702. onnx/defs/data_propagators.h +2 -0
  703. onnx/defs/data_type_utils.cc +6 -2
  704. onnx/defs/gen_doc.py +31 -45
  705. onnx/defs/gen_shape_inference_information.py +2 -0
  706. onnx/defs/generator/defs.cc +21 -19
  707. onnx/defs/generator/old.cc +157 -0
  708. onnx/defs/logical/defs.cc +17 -16
  709. onnx/defs/logical/old.cc +23 -0
  710. onnx/defs/math/defs.cc +155 -131
  711. onnx/defs/math/old.cc +1 -1
  712. onnx/defs/nn/defs.cc +135 -45
  713. onnx/defs/nn/old.cc +142 -9
  714. onnx/defs/operator_sets.h +45 -0
  715. onnx/defs/optional/defs.cc +8 -4
  716. onnx/defs/parser.cc +61 -4
  717. onnx/defs/parser.h +43 -31
  718. onnx/defs/printer.cc +7 -1
  719. onnx/defs/printer.h +1 -1
  720. onnx/defs/quantization/defs.cc +63 -26
  721. onnx/defs/quantization/old.cc +102 -1
  722. onnx/defs/reduction/defs.cc +1 -1
  723. onnx/defs/reduction/utils.cc +5 -4
  724. onnx/defs/rnn/defs.cc +95 -173
  725. onnx/defs/schema.cc +45 -29
  726. onnx/defs/schema.h +125 -15
  727. onnx/defs/sequence/defs.cc +11 -8
  728. onnx/defs/shape_inference.cc +25 -4
  729. onnx/defs/shape_inference.h +29 -1
  730. onnx/defs/tensor/defs.cc +499 -565
  731. onnx/defs/tensor/old.cc +777 -47
  732. onnx/defs/tensor/utils.cc +130 -8
  733. onnx/defs/tensor/utils.h +2 -0
  734. onnx/defs/tensor_proto_util.cc +3 -0
  735. onnx/defs/traditionalml/defs.cc +19 -2
  736. onnx/examples/Protobufs.ipynb +129 -31
  737. onnx/examples/check_model.ipynb +29 -21
  738. onnx/examples/load_model.ipynb +25 -3
  739. onnx/examples/make_model.ipynb +32 -23
  740. onnx/external_data_helper.py +8 -9
  741. onnx/frontend/__init__.py +2 -0
  742. onnx/gen_proto.py +18 -24
  743. onnx/helper.py +394 -107
  744. onnx/hub.py +189 -20
  745. onnx/mapping.py +33 -7
  746. onnx/numpy_helper.py +263 -52
  747. onnx/onnx-ml.proto +28 -6
  748. onnx/onnx-operators-ml.proto +1 -1
  749. onnx/onnx-operators.in.proto +1 -1
  750. onnx/onnx-operators.proto +1 -1
  751. onnx/onnx.in.proto +28 -6
  752. onnx/onnx.proto +28 -6
  753. onnx/onnx_cpp2py_export.cp310-win_amd64.pyd +0 -0
  754. onnx/onnx_data_pb2.pyi +2 -1
  755. onnx/onnx_ml_pb2.py +33 -33
  756. onnx/onnx_ml_pb2.pyi +12 -2
  757. onnx/onnx_operators_ml_pb2.pyi +2 -1
  758. onnx/parser.py +29 -13
  759. onnx/printer.py +6 -4
  760. onnx/proto_utils.h +3 -3
  761. onnx/py_utils.h +3 -3
  762. onnx/reference/__init__.py +2 -0
  763. onnx/reference/custom_element_types.py +11 -0
  764. onnx/reference/op_run.py +84 -8
  765. onnx/reference/ops/__init__.py +5 -1
  766. onnx/reference/ops/_helpers.py +55 -0
  767. onnx/reference/ops/_op.py +18 -11
  768. onnx/reference/ops/_op_common_indices.py +2 -0
  769. onnx/reference/ops/_op_common_pool.py +4 -10
  770. onnx/reference/ops/_op_common_random.py +2 -0
  771. onnx/reference/ops/_op_common_window.py +2 -0
  772. onnx/reference/ops/_op_list.py +208 -214
  773. onnx/reference/ops/aionnx_preview_training/__init__.py +4 -2
  774. onnx/reference/ops/aionnx_preview_training/_op_list.py +15 -38
  775. onnx/reference/ops/aionnx_preview_training/_op_run_training.py +2 -0
  776. onnx/reference/ops/aionnx_preview_training/op_adagrad.py +3 -1
  777. onnx/reference/ops/aionnx_preview_training/op_adam.py +3 -1
  778. onnx/reference/ops/aionnx_preview_training/op_momentum.py +3 -1
  779. onnx/reference/ops/aionnxml/__init__.py +3 -0
  780. onnx/reference/ops/aionnxml/_common_classifier.py +81 -0
  781. onnx/reference/ops/aionnxml/_op_list.py +97 -0
  782. onnx/reference/ops/aionnxml/_op_run_aionnxml.py +8 -0
  783. onnx/reference/ops/aionnxml/op_array_feature_extractor.py +50 -0
  784. onnx/reference/ops/aionnxml/op_binarizer.py +15 -0
  785. onnx/reference/ops/aionnxml/op_dict_vectorizer.py +56 -0
  786. onnx/reference/ops/aionnxml/op_feature_vectorizer.py +30 -0
  787. onnx/reference/ops/aionnxml/op_imputer.py +47 -0
  788. onnx/reference/ops/aionnxml/op_label_encoder.py +52 -0
  789. onnx/reference/ops/aionnxml/op_linear_classifier.py +99 -0
  790. onnx/reference/ops/aionnxml/op_linear_regressor.py +26 -0
  791. onnx/reference/ops/aionnxml/op_normalizer.py +41 -0
  792. onnx/reference/ops/aionnxml/op_one_hot_encoder.py +55 -0
  793. onnx/reference/ops/aionnxml/op_scaler.py +12 -0
  794. onnx/reference/ops/aionnxml/op_svm_classifier.py +334 -0
  795. onnx/reference/ops/aionnxml/op_svm_helper.py +99 -0
  796. onnx/reference/ops/aionnxml/op_svm_regressor.py +45 -0
  797. onnx/reference/ops/aionnxml/op_tree_ensemble_classifier.py +132 -0
  798. onnx/reference/ops/aionnxml/op_tree_ensemble_helper.py +109 -0
  799. onnx/reference/ops/aionnxml/op_tree_ensemble_regressor.py +105 -0
  800. onnx/reference/ops/experimental/__init__.py +3 -1
  801. onnx/reference/ops/experimental/_op_list.py +15 -36
  802. onnx/reference/ops/experimental/_op_run_experimental.py +2 -0
  803. onnx/reference/ops/experimental/op_im2col.py +3 -2
  804. onnx/reference/ops/op_abs.py +3 -1
  805. onnx/reference/ops/op_acos.py +3 -1
  806. onnx/reference/ops/op_acosh.py +3 -1
  807. onnx/reference/ops/op_add.py +3 -1
  808. onnx/reference/ops/op_and.py +3 -1
  809. onnx/reference/ops/op_argmax.py +4 -9
  810. onnx/reference/ops/op_argmin.py +4 -9
  811. onnx/reference/ops/op_asin.py +3 -1
  812. onnx/reference/ops/op_asinh.py +3 -1
  813. onnx/reference/ops/op_atan.py +3 -1
  814. onnx/reference/ops/op_atanh.py +3 -1
  815. onnx/reference/ops/op_attribute_has_value.py +2 -0
  816. onnx/reference/ops/op_average_pool.py +80 -2
  817. onnx/reference/ops/op_batch_normalization.py +14 -11
  818. onnx/reference/ops/op_bernoulli.py +3 -2
  819. onnx/reference/ops/op_bitshift.py +3 -1
  820. onnx/reference/ops/op_bitwise_and.py +3 -1
  821. onnx/reference/ops/op_bitwise_not.py +3 -1
  822. onnx/reference/ops/op_bitwise_or.py +3 -1
  823. onnx/reference/ops/op_bitwise_xor.py +3 -1
  824. onnx/reference/ops/op_blackman_window.py +3 -1
  825. onnx/reference/ops/op_cast.py +91 -10
  826. onnx/reference/ops/op_cast_like.py +32 -7
  827. onnx/reference/ops/op_ceil.py +3 -1
  828. onnx/reference/ops/op_celu.py +3 -1
  829. onnx/reference/ops/op_center_crop_pad.py +7 -3
  830. onnx/reference/ops/op_clip.py +2 -7
  831. onnx/reference/ops/op_col2im.py +3 -4
  832. onnx/reference/ops/op_compress.py +2 -0
  833. onnx/reference/ops/op_concat.py +6 -5
  834. onnx/reference/ops/op_concat_from_sequence.py +2 -0
  835. onnx/reference/ops/op_constant.py +46 -35
  836. onnx/reference/ops/op_constant_of_shape.py +4 -0
  837. onnx/reference/ops/op_conv.py +62 -39
  838. onnx/reference/ops/op_conv_integer.py +3 -2
  839. onnx/reference/ops/op_conv_transpose.py +4 -4
  840. onnx/reference/ops/op_cos.py +3 -1
  841. onnx/reference/ops/op_cosh.py +3 -1
  842. onnx/reference/ops/op_cum_sum.py +2 -0
  843. onnx/reference/ops/op_deform_conv.py +178 -0
  844. onnx/reference/ops/op_depth_to_space.py +2 -0
  845. onnx/reference/ops/op_dequantize_linear.py +72 -21
  846. onnx/reference/ops/op_det.py +3 -4
  847. onnx/reference/ops/op_dft.py +2 -0
  848. onnx/reference/ops/op_div.py +3 -1
  849. onnx/reference/ops/op_dropout.py +2 -7
  850. onnx/reference/ops/op_dynamic_quantize_linear.py +2 -0
  851. onnx/reference/ops/op_einsum.py +2 -0
  852. onnx/reference/ops/op_elu.py +4 -2
  853. onnx/reference/ops/op_equal.py +3 -1
  854. onnx/reference/ops/op_erf.py +3 -1
  855. onnx/reference/ops/op_exp.py +4 -2
  856. onnx/reference/ops/op_expand.py +2 -0
  857. onnx/reference/ops/op_eyelike.py +9 -4
  858. onnx/reference/ops/op_flatten.py +3 -1
  859. onnx/reference/ops/op_floor.py +3 -1
  860. onnx/reference/ops/op_gather.py +2 -0
  861. onnx/reference/ops/op_gather_elements.py +2 -0
  862. onnx/reference/ops/op_gathernd.py +3 -1
  863. onnx/reference/ops/op_gemm.py +5 -10
  864. onnx/reference/ops/op_global_average_pool.py +6 -5
  865. onnx/reference/ops/op_global_max_pool.py +2 -0
  866. onnx/reference/ops/op_greater.py +3 -1
  867. onnx/reference/ops/op_greater_or_equal.py +3 -1
  868. onnx/reference/ops/op_grid_sample.py +3 -1
  869. onnx/reference/ops/op_gru.py +4 -1
  870. onnx/reference/ops/op_hamming_window.py +3 -1
  871. onnx/reference/ops/op_hann_window.py +3 -1
  872. onnx/reference/ops/op_hard_sigmoid.py +3 -1
  873. onnx/reference/ops/op_hardmax.py +3 -1
  874. onnx/reference/ops/op_identity.py +3 -1
  875. onnx/reference/ops/op_if.py +16 -8
  876. onnx/reference/ops/op_instance_normalization.py +2 -0
  877. onnx/reference/ops/op_isinf.py +2 -0
  878. onnx/reference/ops/op_isnan.py +3 -1
  879. onnx/reference/ops/op_layer_normalization.py +2 -0
  880. onnx/reference/ops/op_leaky_relu.py +4 -2
  881. onnx/reference/ops/op_less.py +3 -1
  882. onnx/reference/ops/op_less_or_equal.py +3 -1
  883. onnx/reference/ops/op_log.py +4 -2
  884. onnx/reference/ops/op_log_softmax.py +3 -1
  885. onnx/reference/ops/op_loop.py +4 -2
  886. onnx/reference/ops/op_lp_normalization.py +4 -2
  887. onnx/reference/ops/op_lp_pool.py +41 -0
  888. onnx/reference/ops/op_lrn.py +9 -5
  889. onnx/reference/ops/op_lstm.py +4 -2
  890. onnx/reference/ops/op_matmul.py +3 -1
  891. onnx/reference/ops/op_matmul_integer.py +2 -0
  892. onnx/reference/ops/op_max.py +3 -1
  893. onnx/reference/ops/op_max_pool.py +3 -4
  894. onnx/reference/ops/op_max_unpool.py +2 -1
  895. onnx/reference/ops/op_mean.py +3 -1
  896. onnx/reference/ops/op_mel_weight_matrix.py +2 -0
  897. onnx/reference/ops/op_min.py +3 -1
  898. onnx/reference/ops/op_mod.py +2 -0
  899. onnx/reference/ops/op_mul.py +3 -1
  900. onnx/reference/ops/op_neg.py +3 -1
  901. onnx/reference/ops/op_negative_log_likelihood_loss.py +3 -1
  902. onnx/reference/ops/op_non_max_suppression.py +22 -20
  903. onnx/reference/ops/op_non_zero.py +4 -1
  904. onnx/reference/ops/op_not.py +3 -1
  905. onnx/reference/ops/op_one_hot.py +3 -1
  906. onnx/reference/ops/op_optional.py +2 -0
  907. onnx/reference/ops/op_optional_get_element.py +4 -8
  908. onnx/reference/ops/op_optional_has_element.py +3 -9
  909. onnx/reference/ops/op_or.py +3 -1
  910. onnx/reference/ops/op_pad.py +18 -29
  911. onnx/reference/ops/op_pow.py +2 -0
  912. onnx/reference/ops/op_prelu.py +4 -2
  913. onnx/reference/ops/op_qlinear_conv.py +3 -2
  914. onnx/reference/ops/op_qlinear_matmul.py +2 -0
  915. onnx/reference/ops/op_quantize_linear.py +100 -15
  916. onnx/reference/ops/op_random_normal.py +3 -1
  917. onnx/reference/ops/op_random_normal_like.py +3 -2
  918. onnx/reference/ops/op_random_uniform.py +3 -1
  919. onnx/reference/ops/op_random_uniform_like.py +3 -2
  920. onnx/reference/ops/op_range.py +2 -0
  921. onnx/reference/ops/op_reciprocal.py +4 -2
  922. onnx/reference/ops/op_reduce_l1.py +17 -31
  923. onnx/reference/ops/op_reduce_l2.py +17 -35
  924. onnx/reference/ops/op_reduce_log_sum.py +6 -29
  925. onnx/reference/ops/op_reduce_log_sum_exp.py +6 -29
  926. onnx/reference/ops/op_reduce_max.py +15 -36
  927. onnx/reference/ops/op_reduce_mean.py +15 -33
  928. onnx/reference/ops/op_reduce_min.py +15 -32
  929. onnx/reference/ops/op_reduce_prod.py +15 -29
  930. onnx/reference/ops/op_reduce_sum.py +17 -45
  931. onnx/reference/ops/op_reduce_sum_square.py +15 -29
  932. onnx/reference/ops/op_relu.py +3 -1
  933. onnx/reference/ops/op_reshape.py +2 -8
  934. onnx/reference/ops/op_resize.py +59 -28
  935. onnx/reference/ops/op_reverse_sequence.py +2 -0
  936. onnx/reference/ops/op_rnn.py +3 -9
  937. onnx/reference/ops/op_roi_align.py +7 -5
  938. onnx/reference/ops/op_round.py +4 -2
  939. onnx/reference/ops/op_scan.py +4 -1
  940. onnx/reference/ops/op_scatter_elements.py +17 -4
  941. onnx/reference/ops/op_scatternd.py +2 -0
  942. onnx/reference/ops/op_selu.py +5 -1
  943. onnx/reference/ops/op_sequence_at.py +2 -0
  944. onnx/reference/ops/op_sequence_construct.py +2 -0
  945. onnx/reference/ops/op_sequence_empty.py +2 -0
  946. onnx/reference/ops/op_sequence_erase.py +2 -0
  947. onnx/reference/ops/op_sequence_insert.py +4 -2
  948. onnx/reference/ops/op_sequence_length.py +7 -1
  949. onnx/reference/ops/op_sequence_map.py +4 -2
  950. onnx/reference/ops/op_shape.py +2 -7
  951. onnx/reference/ops/op_shrink.py +3 -1
  952. onnx/reference/ops/op_sigmoid.py +7 -1
  953. onnx/reference/ops/op_sign.py +3 -1
  954. onnx/reference/ops/op_sin.py +3 -1
  955. onnx/reference/ops/op_sinh.py +3 -1
  956. onnx/reference/ops/op_size.py +2 -0
  957. onnx/reference/ops/op_slice.py +3 -9
  958. onnx/reference/ops/op_softmax.py +4 -2
  959. onnx/reference/ops/op_softmax_cross_entropy_loss.py +4 -1
  960. onnx/reference/ops/op_softplus.py +4 -2
  961. onnx/reference/ops/op_softsign.py +3 -1
  962. onnx/reference/ops/op_space_to_depth.py +3 -1
  963. onnx/reference/ops/op_split.py +7 -9
  964. onnx/reference/ops/op_split_to_sequence.py +41 -10
  965. onnx/reference/ops/op_sqrt.py +4 -2
  966. onnx/reference/ops/op_squeeze.py +3 -12
  967. onnx/reference/ops/op_stft.py +8 -7
  968. onnx/reference/ops/op_string_normalizer.py +3 -1
  969. onnx/reference/ops/op_sub.py +3 -1
  970. onnx/reference/ops/op_sum.py +3 -1
  971. onnx/reference/ops/op_tan.py +3 -1
  972. onnx/reference/ops/op_tanh.py +3 -1
  973. onnx/reference/ops/op_tfidf_vectorizer.py +15 -15
  974. onnx/reference/ops/op_thresholded_relu.py +4 -2
  975. onnx/reference/ops/op_tile.py +2 -0
  976. onnx/reference/ops/op_topk.py +12 -19
  977. onnx/reference/ops/op_transpose.py +2 -0
  978. onnx/reference/ops/op_trilu.py +3 -1
  979. onnx/reference/ops/op_unique.py +2 -0
  980. onnx/reference/ops/op_unsqueeze.py +2 -9
  981. onnx/reference/ops/op_upsample.py +9 -8
  982. onnx/reference/ops/op_where.py +7 -1
  983. onnx/reference/ops/op_xor.py +3 -1
  984. onnx/reference/reference_evaluator.py +64 -20
  985. onnx/shape_inference/implementation.cc +207 -30
  986. onnx/shape_inference/implementation.h +15 -4
  987. onnx/shape_inference.py +37 -12
  988. onnx/string_utils.h +3 -3
  989. onnx/test/cpp/common_path_test.cc +2 -0
  990. onnx/test/cpp/data_propagation_test.cc +2 -0
  991. onnx/test/cpp/function_context_test.cc +2 -0
  992. onnx/test/cpp/function_get_test.cc +2 -0
  993. onnx/test/cpp/function_verify_test.cc +176 -0
  994. onnx/test/cpp/op_reg_test.cc +2 -0
  995. onnx/test/cpp/parser_test.cc +65 -1
  996. onnx/test/cpp/schema_registration_test.cc +2 -0
  997. onnx/test/cpp/shape_inference_test.cc +2 -0
  998. onnx/test/cpp/test_main.cc +2 -0
  999. onnx/tools/__init__.py +2 -0
  1000. onnx/tools/net_drawer.py +13 -9
  1001. onnx/tools/replace_constants.py +429 -0
  1002. onnx/tools/update_model_dims.py +7 -9
  1003. onnx/utils.py +16 -6
  1004. onnx/version.py +2 -2
  1005. onnx/version_converter/BaseConverter.h +2 -0
  1006. onnx/version_converter/adapters/adapter.h +2 -0
  1007. onnx/version_converter/adapters/axes_attribute_to_input.h +2 -0
  1008. onnx/version_converter/adapters/axes_input_to_attribute.h +2 -0
  1009. onnx/version_converter/adapters/batch_normalization_13_14.h +2 -0
  1010. onnx/version_converter/adapters/broadcast_backward_compatibility.h +2 -0
  1011. onnx/version_converter/adapters/broadcast_forward_compatibility.h +2 -0
  1012. onnx/version_converter/adapters/cast_9_8.h +2 -0
  1013. onnx/version_converter/adapters/clip_10_11.h +2 -0
  1014. onnx/version_converter/adapters/compatible.h +2 -0
  1015. onnx/version_converter/adapters/dropout_11_12.h +2 -0
  1016. onnx/version_converter/adapters/extend_supported_types.h +2 -0
  1017. onnx/version_converter/adapters/gemm_6_7.h +2 -0
  1018. onnx/version_converter/adapters/gemm_7_6.h +2 -0
  1019. onnx/version_converter/adapters/maxpool_8_7.h +2 -0
  1020. onnx/version_converter/adapters/no_previous_version.h +2 -0
  1021. onnx/version_converter/adapters/pad_10_11.h +4 -0
  1022. onnx/version_converter/adapters/remove_consumed_inputs.h +2 -0
  1023. onnx/version_converter/adapters/reshape_4_5.h +2 -0
  1024. onnx/version_converter/adapters/reshape_5_4.h +2 -0
  1025. onnx/version_converter/adapters/resize_10_11.h +2 -0
  1026. onnx/version_converter/adapters/scan_8_9.h +2 -0
  1027. onnx/version_converter/adapters/scan_9_8.h +2 -0
  1028. onnx/version_converter/adapters/scatter_10_11.h +2 -0
  1029. onnx/version_converter/adapters/slice_9_10.h +2 -0
  1030. onnx/version_converter/adapters/softmax_12_13.h +20 -28
  1031. onnx/version_converter/adapters/split_12_13.h +2 -0
  1032. onnx/version_converter/adapters/split_13_12.h +2 -0
  1033. onnx/version_converter/adapters/split_17_18.h +2 -0
  1034. onnx/version_converter/adapters/sum_8_7.h +2 -0
  1035. onnx/version_converter/adapters/topk_9_10.h +2 -0
  1036. onnx/version_converter/adapters/transformers.h +3 -1
  1037. onnx/version_converter/adapters/type_restriction.h +2 -0
  1038. onnx/version_converter/adapters/upsample_6_7.h +2 -0
  1039. onnx/version_converter/adapters/upsample_8_9.h +2 -0
  1040. onnx/version_converter/adapters/upsample_9_10.h +2 -0
  1041. onnx/version_converter/adapters/upsample_9_8.h +2 -0
  1042. onnx/version_converter/convert.cc +14 -7
  1043. onnx/version_converter/convert.h +20 -0
  1044. onnx/version_converter/helper.cc +3 -3
  1045. onnx/version_converter/helper.h +3 -3
  1046. onnx/version_converter.py +6 -3
  1047. {onnx-1.13.0.dist-info → onnx-1.14.0.dist-info}/METADATA +95 -51
  1048. {onnx-1.13.0.dist-info → onnx-1.14.0.dist-info}/RECORD +1056 -743
  1049. {onnx-1.13.0.dist-info → onnx-1.14.0.dist-info}/WHEEL +1 -1
  1050. onnx/backend/test/data/node/test_softplus_example_expanded/model.onnx +0 -0
  1051. /onnx/backend/test/data/node/{test_softplus_example_expanded → test_softplus_example_expanded_ver18}/test_data_set_0/input_0.pb +0 -0
  1052. /onnx/backend/test/data/node/{test_softplus_example_expanded → test_softplus_example_expanded_ver18}/test_data_set_0/output_0.pb +0 -0
  1053. /onnx/backend/test/data/node/{test_softplus_expanded → test_softplus_expanded_ver18}/test_data_set_0/input_0.pb +0 -0
  1054. /onnx/backend/test/data/node/{test_softplus_expanded → test_softplus_expanded_ver18}/test_data_set_0/output_0.pb +0 -0
  1055. {onnx-1.13.0.dist-info → onnx-1.14.0.dist-info}/LICENSE +0 -0
  1056. {onnx-1.13.0.dist-info → onnx-1.14.0.dist-info}/entry_points.txt +0 -0
  1057. {onnx-1.13.0.dist-info → onnx-1.14.0.dist-info}/top_level.txt +0 -0
@@ -1,9 +1,11 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=W0221
3
5
 
4
6
  import numpy as np
5
7
 
6
- from ._op import OpRunBinary
8
+ from onnx.reference.ops._op import OpRunBinary
7
9
 
8
10
 
9
11
  class BitwiseAnd(OpRunBinary):
@@ -1,9 +1,11 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=W0221
3
5
 
4
6
  import numpy as np
5
7
 
6
- from ._op import OpRunUnary
8
+ from onnx.reference.ops._op import OpRunUnary
7
9
 
8
10
 
9
11
  class BitwiseNot(OpRunUnary):
@@ -1,9 +1,11 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=W0221
3
5
 
4
6
  import numpy as np
5
7
 
6
- from ._op import OpRunBinary
8
+ from onnx.reference.ops._op import OpRunBinary
7
9
 
8
10
 
9
11
  class BitwiseOr(OpRunBinary):
@@ -1,9 +1,11 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=W0221
3
5
 
4
6
  import numpy as np
5
7
 
6
- from ._op import OpRunBinary
8
+ from onnx.reference.ops._op import OpRunBinary
7
9
 
8
10
 
9
11
  class BitwiseXor(OpRunBinary):
@@ -1,9 +1,11 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=W0221
3
5
 
4
6
  import numpy as np
5
7
 
6
- from ._op_common_window import _CommonWindow
8
+ from onnx.reference.ops._op_common_window import _CommonWindow
7
9
 
8
10
 
9
11
  class BlackmanWindow(_CommonWindow):
@@ -1,18 +1,34 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
- # pylint: disable=W0221
4
+ # pylint: disable=R0912,W0221
3
5
 
4
6
  import numpy as np
5
7
 
6
- from onnx.helper import float32_to_bfloat16, tensor_dtype_to_np_dtype
7
- from onnx.numpy_helper import bfloat16_to_float32
8
+ from onnx.helper import (
9
+ float32_to_bfloat16,
10
+ float32_to_float8e4m3,
11
+ float32_to_float8e5m2,
12
+ tensor_dtype_to_np_dtype,
13
+ )
14
+ from onnx.numpy_helper import (
15
+ bfloat16_to_float32,
16
+ float8e4m3_to_float32,
17
+ float8e5m2_to_float32,
18
+ )
8
19
  from onnx.onnx_pb import TensorProto
20
+ from onnx.reference.custom_element_types import (
21
+ bfloat16,
22
+ float8e4m3fn,
23
+ float8e4m3fnuz,
24
+ float8e5m2,
25
+ float8e5m2fnuz,
26
+ )
9
27
  from onnx.reference.op_run import OpRun
10
28
 
11
- bfloat16 = np.dtype((np.uint16, {"ui": (np.uint16, 0)}))
12
-
13
29
 
14
- def cast_to(x, to):
15
- if x.dtype == bfloat16:
30
+ def cast_to(x, to, saturate):
31
+ if x.dtype == bfloat16 and x.dtype.descr[0][0] == "bfloat16":
16
32
  if to == TensorProto.BFLOAT16:
17
33
  return x
18
34
  xr = x.ravel()
@@ -22,18 +38,83 @@ def cast_to(x, to):
22
38
  xf[i] = el
23
39
  dtype = tensor_dtype_to_np_dtype(to)
24
40
  return xf.astype(dtype).reshape(x.shape)
41
+
42
+ f8 = {
43
+ (float8e4m3fn, "e4m3fn", TensorProto.FLOAT8E4M3FN): float8e4m3_to_float32,
44
+ (
45
+ float8e4m3fnuz,
46
+ "e4m3fnuz",
47
+ TensorProto.FLOAT8E4M3FNUZ,
48
+ ): lambda *args: float8e4m3_to_float32(*args, uz=True),
49
+ (float8e5m2, "e5m2", TensorProto.FLOAT8E5M2): float8e5m2_to_float32,
50
+ (
51
+ float8e5m2fnuz,
52
+ "e5m2fnuz",
53
+ TensorProto.FLOAT8E5M2FNUZ,
54
+ ): lambda *args: float8e5m2_to_float32(*args, fn=True, uz=True),
55
+ }
56
+
57
+ for (dt, st, proto_type), cvt in f8.items():
58
+ if x.dtype == dt and x.dtype.descr[0][0] == st:
59
+ if to == proto_type:
60
+ return x
61
+ xr = x.ravel()
62
+ xf = np.empty(xr.shape[0], dtype=np.float32)
63
+ for i in range(xr.shape[0]):
64
+ el = cvt(xr[i])
65
+ xf[i] = el
66
+ dtype = tensor_dtype_to_np_dtype(to)
67
+ return xf.astype(dtype).reshape(x.shape)
68
+
25
69
  if to == TensorProto.BFLOAT16:
26
70
  xf = x.astype(np.float32).ravel()
27
71
  y = np.empty(xf.shape, dtype=bfloat16).ravel()
28
72
  for i in range(y.shape[0]):
29
- el = float32_to_bfloat16(xf[i], truncate=True)
73
+ el = float32_to_bfloat16(xf[i], truncate=True) # type: ignore[assignment]
30
74
  y[i] = el
31
75
  return y.reshape(x.shape)
32
76
 
77
+ f8back = {
78
+ TensorProto.FLOAT8E4M3FN: (
79
+ float8e4m3fn,
80
+ lambda *args: float32_to_float8e4m3(*args, saturate=saturate),
81
+ ),
82
+ TensorProto.FLOAT8E4M3FNUZ: (
83
+ float8e4m3fnuz,
84
+ lambda *args: float32_to_float8e4m3(*args, uz=True, saturate=saturate),
85
+ ),
86
+ TensorProto.FLOAT8E5M2: (
87
+ float8e5m2,
88
+ lambda *args: float32_to_float8e5m2(*args, saturate=saturate),
89
+ ),
90
+ TensorProto.FLOAT8E5M2FNUZ: (
91
+ float8e5m2fnuz,
92
+ lambda *args: float32_to_float8e5m2(
93
+ *args, fn=True, uz=True, saturate=saturate
94
+ ),
95
+ ),
96
+ }
97
+ for dt, (npdt, cvt) in f8back.items():
98
+ if to == dt:
99
+ xf = x.astype(np.float32).ravel()
100
+ y = np.empty(xf.shape, dtype=npdt).ravel()
101
+ for i in range(y.shape[0]):
102
+ el = cvt(xf[i]) # type: ignore[assignment]
103
+ y[i] = el
104
+ return y.reshape(x.shape)
105
+
106
+ if to == TensorProto.STRING:
107
+ return x.astype(np.str_)
108
+
33
109
  dtype = tensor_dtype_to_np_dtype(to)
34
110
  return x.astype(dtype)
35
111
 
36
112
 
37
- class Cast(OpRun):
113
+ class Cast_1(OpRun):
38
114
  def _run(self, x, to=None): # type: ignore
39
- return (cast_to(x, to),)
115
+ return (cast_to(x, to, saturate=True),)
116
+
117
+
118
+ class Cast_19(OpRun):
119
+ def _run(self, x, to=None, saturate=None): # type: ignore
120
+ return (cast_to(x, to, saturate),)
@@ -1,17 +1,42 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=W0221
3
5
 
4
6
  from onnx.helper import np_dtype_to_tensor_dtype
5
7
  from onnx.onnx_pb import TensorProto
6
8
  from onnx.reference.op_run import OpRun
9
+ from onnx.reference.ops.op_cast import (
10
+ bfloat16,
11
+ cast_to,
12
+ float8e4m3fn,
13
+ float8e4m3fnuz,
14
+ float8e5m2,
15
+ float8e5m2fnuz,
16
+ )
17
+
7
18
 
8
- from .op_cast import bfloat16, cast_to
19
+ def _cast_like(x, y, saturate):
20
+ if y.dtype == bfloat16:
21
+ to = TensorProto.BFLOAT16
22
+ elif y.dtype == float8e4m3fn and y.dtype.descr[0][0] == "e4m3fn":
23
+ to = TensorProto.FLOAT8E4M3FN
24
+ elif y.dtype == float8e4m3fnuz and y.dtype.descr[0][0] == "e4m3fnuz":
25
+ to = TensorProto.FLOAT8E4M3FNUZ
26
+ elif y.dtype == float8e5m2 and y.dtype.descr[0][0] == "e5m2":
27
+ to = TensorProto.FLOAT8E5M2
28
+ elif y.dtype == float8e5m2fnuz and y.dtype.descr[0][0] == "e5m2fnuz":
29
+ to = TensorProto.FLOAT8E5M2FNUZ
30
+ else:
31
+ to = np_dtype_to_tensor_dtype(y.dtype) # type: ignore
32
+ return (cast_to(x, to, saturate),)
9
33
 
10
34
 
11
- class CastLike(OpRun):
35
+ class CastLike_15(OpRun):
12
36
  def _run(self, x, y): # type: ignore
13
- if y.dtype == bfloat16:
14
- to = TensorProto.BFLOAT16
15
- else:
16
- to = np_dtype_to_tensor_dtype(y.dtype) # type: ignore
17
- return (cast_to(x, to),)
37
+ return _cast_like(x, y, True)
38
+
39
+
40
+ class CastLike_19(OpRun):
41
+ def _run(self, x, y, saturate=None): # type: ignore
42
+ return _cast_like(x, y, saturate)
@@ -1,9 +1,11 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=W0221
3
5
 
4
6
  import numpy as np
5
7
 
6
- from ._op import OpRunUnaryNum
8
+ from onnx.reference.ops._op import OpRunUnaryNum
7
9
 
8
10
 
9
11
  class Ceil(OpRunUnaryNum):
@@ -1,3 +1,5 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=W0221
3
5
 
@@ -14,4 +16,4 @@ def _vcelu1(x: np.ndarray, alpha: float = 1.0) -> np.ndarray:
14
16
 
15
17
  class Celu(OpRun):
16
18
  def _run(self, x, alpha=None): # type: ignore
17
- return (_vcelu1(x, alpha),)
19
+ return (_vcelu1(x, alpha).astype(x.dtype),)
@@ -1,3 +1,5 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=R0912,R0914,R1702,W0221
3
5
 
@@ -9,11 +11,13 @@ from onnx.reference.op_run import OpRun
9
11
  class CenterCropPad(OpRun):
10
12
  def _run(self, input_data, shape, axes=None): # type: ignore
11
13
  axes = axes or self.axes # type: ignore
12
-
14
+ input_rank = len(input_data.shape)
13
15
  if axes is None:
14
- axes = list(range(shape.shape[0]))
16
+ axes = list(range(input_rank))
15
17
  else:
16
- axes = [(a + len(input_data.shape)) % len(input_data.shape) for a in axes]
18
+ axes = list(
19
+ map(lambda axis: axis if axis >= 0 else axis + input_rank, axes)
20
+ )
17
21
  pad_slices = [slice(0, s) for s in input_data.shape]
18
22
  crop_slices = [slice(0, s) for s in input_data.shape]
19
23
  new_shape = list(input_data.shape)
@@ -1,9 +1,10 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=W0622,W0622,W0221
3
5
 
4
6
  import numpy as np
5
7
 
6
- from onnx.defs import onnx_opset_version
7
8
  from onnx.reference.op_run import OpRun
8
9
 
9
10
 
@@ -26,9 +27,3 @@ class Clip_11(OpRun):
26
27
  return (data,)
27
28
  res = np.clip(data, amin, amax)
28
29
  return (res,) if res.dtype == data.dtype else (res.astype(data.dtype),)
29
-
30
-
31
- if onnx_opset_version() >= 11:
32
- Clip = Clip_11
33
- else:
34
- Clip = Clip_6 # type: ignore
@@ -1,15 +1,15 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=R0913,R0914,W0221
3
5
 
4
6
  import numpy as np
5
7
 
6
8
  from onnx.reference.op_run import OpRun
7
-
8
- from ._op_common_indices import _get_indices, _is_out
9
+ from onnx.reference.ops._op_common_indices import _get_indices, _is_out
9
10
 
10
11
 
11
12
  def _col2im_shape_check_2d(X, output_shape, kernel_shape, dilations, pads, strides): # type: ignore
12
-
13
13
  output_height, output_width = output_shape
14
14
  kernel_height, kernel_width = kernel_shape
15
15
  dilation_height, dilation_width = dilations
@@ -106,7 +106,6 @@ def _col2im_naive_implementation_2d(res, image_shape, kernel_shape, dilations, p
106
106
 
107
107
 
108
108
  def _col2im_shape_check(X, output_shape, kernel_shape, dilations, pads, strides): # type: ignore
109
-
110
109
  n_input_plane = X.shape[0]
111
110
 
112
111
  kernel_size = np.prod(kernel_shape)
@@ -1,3 +1,5 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=W0221
3
5
 
@@ -1,3 +1,5 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=W0221
3
5
 
@@ -7,15 +9,14 @@ from onnx.reference.op_run import OpRun
7
9
 
8
10
 
9
11
  class Concat(OpRun):
10
- def _preprocess(self, a: np.ndarray) -> np.ndarray:
12
+ def _preprocess(self, a: np.ndarray, axis: int) -> np.ndarray:
11
13
  if len(a.shape) == 0:
12
14
  raise RuntimeError(f"Concat: one input has an empty shape: {a!r}.")
13
- if self.axis >= len(a.shape): # type: ignore
14
- new_shape = a.shape + (1,) * (self.axis + 1 - len(a.shape)) # type: ignore
15
+ if axis >= len(a.shape): # type: ignore
16
+ new_shape = a.shape + (1,) * (axis + 1 - len(a.shape)) # type: ignore
15
17
  return a.reshape(new_shape)
16
18
  return a
17
19
 
18
20
  def _run(self, *args, axis=None): # type: ignore
19
- axis = axis or self.axis # type: ignore
20
- targs = tuple(self._preprocess(a) for a in args)
21
+ targs = tuple(self._preprocess(a, axis) for a in args)
21
22
  return (np.concatenate(targs, axis),) # type: ignore
@@ -1,3 +1,5 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=W0221
3
5
 
@@ -1,15 +1,28 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=W0221
3
5
 
4
6
  import numpy as np
5
7
 
6
- from onnx.defs import onnx_opset_version
7
- from onnx.reference.op_run import OpRun
8
+ from onnx.reference.custom_element_types import (
9
+ bfloat16,
10
+ float8e4m3fn,
11
+ float8e4m3fnuz,
12
+ float8e5m2,
13
+ float8e5m2fnuz,
14
+ )
15
+ from onnx.reference.op_run import OpRun, RefAttrName
8
16
 
9
17
 
10
18
  def _check_dtype(val): # type: ignore
11
19
  a = val.dtype
12
20
  if not isinstance(a, np.dtype) and a not in {
21
+ bfloat16,
22
+ float8e4m3fn,
23
+ float8e4m3fnuz,
24
+ float8e5m2,
25
+ float8e5m2fnuz,
13
26
  np.int8,
14
27
  np.uint8,
15
28
  np.float16,
@@ -48,7 +61,7 @@ class Constant_1(ConstantCommon):
48
61
  if overridden_attributes and (
49
62
  len(overridden_attributes) > 1
50
63
  or "value" not in overridden_attributes
51
- or id(overridden_attributes["value"]) != id(getattr(self, "value")) # noqa
64
+ or id(overridden_attributes["value"]) != id(self.value)
52
65
  ):
53
66
  raise RuntimeError(
54
67
  "Function attributes are not implemented for opset <= 11. Use opset > 12."
@@ -74,7 +87,7 @@ class Constant_11(ConstantCommon):
74
87
  if overridden_attributes and (
75
88
  len(overridden_attributes) > 1
76
89
  or "value" not in overridden_attributes
77
- or id(overridden_attributes["value"]) != id(getattr(self, "value")) # noqa
90
+ or id(overridden_attributes["value"]) != id(self.value)
78
91
  ):
79
92
  raise RuntimeError(
80
93
  "Function attributes are not implemented for opset <= 11. Use opset > 12."
@@ -88,28 +101,33 @@ class Constant_12(ConstantCommon):
88
101
  if hasattr(self, "sparse_value") and self.sparse_value is not None: # type: ignore
89
102
  self.cst_name = "sparse_value"
90
103
  self.cst = self.sparse_value # type: ignore
91
- elif hasattr(self, "value_float") and self.value_float is not None: # type: ignore
92
- self.cst_name = "value_float"
93
- self.cst = np.array(self.value_float, dtype=np.float32) # type: ignore
94
- elif hasattr(self, "value_floats") and self.value_floats is not None: # type: ignore
95
- self.cst_name = "value_floats"
96
- self.cst = np.array(self.value_floats, dtype=np.float32) # type: ignore
97
- elif hasattr(self, "value_int") and self.value_int is not None: # type: ignore
98
- self.cst_name = "value_int"
99
- self.cst = np.array(self.value_int, dtype=np.int64) # type: ignore
100
- elif hasattr(self, "value_ints") and self.value_ints is not None: # type: ignore
101
- self.cst_name = "value_ints"
102
- self.cst = np.array(self.value_ints, dtype=np.int64) # type: ignore
103
- elif hasattr(self, "value_string") and self.value_string is not None: # type: ignore
104
- self.cst_name = "value_string"
105
- self.cst = np.array(self.value_string) # type: ignore
106
- elif hasattr(self, "value_strings") and self.value_strings is not None: # type: ignore
107
- self.cst_name = "value_strings"
108
- self.cst = np.array(self.value_strings) # type: ignore
104
+ self.cst_convert = lambda v: v
109
105
  elif hasattr(self, "value") and self.value is not None: # type: ignore
110
- self.cst_name = "value"
111
- self.cst = self.value # type: ignore
106
+ self.cst_name = "value" # type: ignore
107
+ self.cst = self.value if isinstance(self.value, RefAttrName) else self.value # type: ignore
108
+ self.cst_convert = lambda v: v
112
109
  else:
110
+ for attr, np_dtype in {
111
+ "value_float": np.float32,
112
+ "value_floats": np.float32,
113
+ "value_int": np.int64,
114
+ "value_ints": np.int64,
115
+ "value_string": np.str_,
116
+ "value_strings": np.str_,
117
+ }.items():
118
+ if hasattr(self, attr) and getattr(self, attr) is not None: # type: ignore
119
+ self.cst_name = attr
120
+ v = getattr(self, attr)
121
+ self.cst = (
122
+ v # type: ignore
123
+ if isinstance(v, RefAttrName) # type: ignore
124
+ else np.array(v, dtype=np_dtype) # type: ignore
125
+ )
126
+ self.cst_convert = lambda v, np_dtype=np_dtype: np.array( # type: ignore
127
+ v, dtype=np_dtype
128
+ )
129
+ break
130
+ if not hasattr(self, "cst_name"):
113
131
  raise AttributeError("No constant is defined for operator 'Constant'.")
114
132
 
115
133
  def _run(self, **overridden_attributes): # type: ignore
@@ -122,15 +140,8 @@ class Constant_12(ConstantCommon):
122
140
  raise RuntimeError(
123
141
  f"Cannot find attribute {self.cst_name!r} in {list(overridden_attributes)!r}."
124
142
  )
125
- return (overridden_attributes[self.cst_name],)
143
+ value = overridden_attributes[self.cst_name]
144
+ if isinstance(value, np.ndarray):
145
+ return (value,)
146
+ return (self.cst_convert(value),)
126
147
  return (self._check(self.cst),)
127
-
128
-
129
- if onnx_opset_version() >= 12:
130
- Constant = Constant_12
131
- elif onnx_opset_version() >= 11:
132
- Constant = Constant_11 # type: ignore
133
- elif onnx_opset_version() >= 9:
134
- Constant = Constant_9 # type: ignore
135
- else:
136
- Constant = Constant_1 # type: ignore
@@ -1,3 +1,5 @@
1
+ # Copyright (c) ONNX Project Contributors
2
+
1
3
  # SPDX-License-Identifier: Apache-2.0
2
4
  # pylint: disable=W0221
3
5
 
@@ -16,6 +18,8 @@ class ConstantOfShape(OpRun):
16
18
  self.cst = np.int64(self.cst)
17
19
  elif isinstance(self.cst, float):
18
20
  self.cst = np.float64(self.cst)
21
+ elif self.cst is None:
22
+ self.cst = np.float32(0)
19
23
  if not isinstance(
20
24
  self.cst,
21
25
  (