arg_min_max.https.any.js (61886B)
1 // META: title=test WebNN API argMin/Max operations 2 // META: global=window 3 // META: variant=?cpu 4 // META: variant=?gpu 5 // META: variant=?npu 6 // META: script=../resources/utils.js 7 // META: timeout=long 8 9 'use strict'; 10 11 // https://www.w3.org/TR/webnn/#api-mlgraphbuilder-argminmax 12 // Return the index location of the minimum or maximum values of all the input 13 // values along the axis. 14 // 15 // dictionary MLArgMinMaxOptions : MLOperatorOptions { 16 // boolean keepDimensions = false; 17 // MLOperandDataType outputDataType = "int32"; 18 // }; 19 // 20 // MLOperand argMin(MLOperand input, [EnforceRange] unsigned long axis, 21 // optional MLArgMinMaxOptions options = {}); 22 // MLOperand argMax(MLOperand input, [EnforceRange] unsigned long axis, 23 // optional MLArgMinMaxOptions options = {}); 24 25 const argMinMaxTests = [ 26 // argMin tests 27 { 28 'name': 'argMin float32 1D constant tensor, axis=0, default options', 29 'graph': { 30 'inputs': { 31 'argMinInput': { 32 'data': [ 33 3.8301241397857666, -24.986488342285156, 5.29998254776001, 34 -48.54866027832031, 40.308868408203125, 60.184295654296875, 35 -82.78385925292969, -96.50904083251953, 71.87028503417969, 36 38.86639404296875, -39.14372634887695, 31.444366455078125, 37 -82.78385925292969, -96.50904083251953, -25.533889770507812, 38 -16.14226531982422, 66.63677215576172, 82.51197814941406, 39 -82.78385925292969, -96.50904083251953, 39.76872634887695, 40 42.1504020690918, 82.66864013671875, 85.45269012451172 41 ], 42 'descriptor': {shape: [24], dataType: 'float32'}, 43 'constant': true 44 } 45 }, 46 'operators': [{ 47 'name': 'argMin', 48 'arguments': [{'input': 'argMinInput'}, {'axis': 0}], 49 'outputs': 'argMinOutput' 50 }], 51 'expectedOutputs': { 52 'argMinOutput': 53 {'data': [7], 'descriptor': {shape: [], dataType: 'int32'}} 54 } 55 } 56 }, 57 { 58 'name': 'argMin float32 1D tensor, axis=0, default options', 59 'graph': { 60 'inputs': { 61 'argMinInput': { 62 'data': [ 63 3.8301241397857666, -24.986488342285156, 5.29998254776001, 64 -48.54866027832031, 40.308868408203125, 60.184295654296875, 65 -82.78385925292969, -96.50904083251953, 71.87028503417969, 66 38.86639404296875, -39.14372634887695, 31.444366455078125, 67 -82.78385925292969, -96.50904083251953, -25.533889770507812, 68 -16.14226531982422, 66.63677215576172, 82.51197814941406, 69 -82.78385925292969, -96.50904083251953, 39.76872634887695, 70 42.1504020690918, 82.66864013671875, 85.45269012451172 71 ], 72 'descriptor': {shape: [24], dataType: 'float32'} 73 } 74 }, 75 'operators': [{ 76 'name': 'argMin', 77 'arguments': [{'input': 'argMinInput'}, {'axis': 0}], 78 'outputs': 'argMinOutput' 79 }], 80 'expectedOutputs': { 81 'argMinOutput': 82 {'data': [7], 'descriptor': {shape: [], dataType: 'int32'}} 83 } 84 } 85 }, 86 { 87 'name': 'argMin float32 2D tensor, axis=0, default options', 88 'graph': { 89 'inputs': { 90 'argMinInput': { 91 'data': [ 92 3.8301241397857666, -24.986488342285156, 5.29998254776001, 93 -48.54866027832031, 40.308868408203125, 60.184295654296875, 94 -82.78385925292969, -96.50904083251953, 71.87028503417969, 95 38.86639404296875, -39.14372634887695, 31.444366455078125, 96 -82.78385925292969, -96.50904083251953, -25.533889770507812, 97 -16.14226531982422, 66.63677215576172, 82.51197814941406, 98 -82.78385925292969, -96.50904083251953, 39.76872634887695, 99 42.1504020690918, 82.66864013671875, 85.45269012451172 100 ], 101 'descriptor': {shape: [4, 6], dataType: 'float32'} 102 } 103 }, 104 'operators': [{ 105 'name': 'argMin', 106 'arguments': [{'input': 'argMinInput'}, {'axis': 0}], 107 'outputs': 'argMinOutput' 108 }], 109 'expectedOutputs': { 110 'argMinOutput': { 111 'data': [1, 1, 2, 0, 1, 1], 112 'descriptor': {shape: [6], dataType: 'int32'} 113 } 114 } 115 } 116 }, 117 { 118 'name': 'argMin float32 3D tensor, axis=0, default options', 119 'graph': { 120 'inputs': { 121 'argMinInput': { 122 'data': [ 123 3.8301241397857666, -24.986488342285156, 5.29998254776001, 124 -48.54866027832031, 40.308868408203125, 60.184295654296875, 125 -82.78385925292969, -96.50904083251953, 71.87028503417969, 126 38.86639404296875, -39.14372634887695, 31.444366455078125, 127 -82.78385925292969, -96.50904083251953, -25.533889770507812, 128 -16.14226531982422, 66.63677215576172, 82.51197814941406, 129 -82.78385925292969, -96.50904083251953, 39.76872634887695, 130 42.1504020690918, 82.66864013671875, 85.45269012451172 131 ], 132 'descriptor': {shape: [2, 3, 4], dataType: 'float32'} 133 } 134 }, 135 'operators': [{ 136 'name': 'argMin', 137 'arguments': [{'input': 'argMinInput'}, {'axis': 0}], 138 'outputs': 'argMinOutput' 139 }], 140 'expectedOutputs': { 141 'argMinOutput': { 142 'data': [1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], 143 'descriptor': {shape: [3, 4], dataType: 'int32'} 144 } 145 } 146 } 147 }, 148 { 149 'name': 'argMin float32 4D tensor, axis=0, default options', 150 'graph': { 151 'inputs': { 152 'argMinInput': { 153 'data': [ 154 3.8301241397857666, -24.986488342285156, 5.29998254776001, 155 -48.54866027832031, 40.308868408203125, 60.184295654296875, 156 -82.78385925292969, -96.50904083251953, 71.87028503417969, 157 38.86639404296875, -39.14372634887695, 31.444366455078125, 158 -82.78385925292969, -96.50904083251953, -25.533889770507812, 159 -16.14226531982422, 66.63677215576172, 82.51197814941406, 160 -82.78385925292969, -96.50904083251953, 39.76872634887695, 161 42.1504020690918, 82.66864013671875, 85.45269012451172 162 ], 163 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float32'} 164 } 165 }, 166 'operators': [{ 167 'name': 'argMin', 168 'arguments': [{'input': 'argMinInput'}, {'axis': 0}], 169 'outputs': 'argMinOutput' 170 }], 171 'expectedOutputs': { 172 'argMinOutput': { 173 'data': [1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], 174 'descriptor': {shape: [1, 4, 3], dataType: 'int32'} 175 } 176 } 177 } 178 }, 179 { 180 'name': 'argMin float32 5D tensor, axis=0, default options', 181 'graph': { 182 'inputs': { 183 'argMinInput': { 184 'data': [ 185 3.8301241397857666, -24.986488342285156, 5.29998254776001, 186 -48.54866027832031, 40.308868408203125, 60.184295654296875, 187 -82.78385925292969, -96.50904083251953, 71.87028503417969, 188 38.86639404296875, -39.14372634887695, 31.444366455078125, 189 -82.78385925292969, -96.50904083251953, -25.533889770507812, 190 -16.14226531982422, 66.63677215576172, 82.51197814941406, 191 -82.78385925292969, -96.50904083251953, 39.76872634887695, 192 42.1504020690918, 82.66864013671875, 85.45269012451172 193 ], 194 'descriptor': {shape: [2, 1, 4, 1, 3], dataType: 'float32'} 195 } 196 }, 197 'operators': [{ 198 'name': 'argMin', 199 'arguments': [{'input': 'argMinInput'}, {'axis': 0}], 200 'outputs': 'argMinOutput' 201 }], 202 'expectedOutputs': { 203 'argMinOutput': { 204 'data': [1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], 205 'descriptor': {shape: [1, 4, 1, 3], dataType: 'int32'} 206 } 207 } 208 } 209 }, 210 { 211 'name': 'argMin float32 4D tensor, axis=2', 212 'graph': { 213 'inputs': { 214 'argMinInput': { 215 'data': [ 216 3.8301241397857666, -24.986488342285156, 5.29998254776001, 217 -48.54866027832031, 40.308868408203125, 60.184295654296875, 218 -82.78385925292969, -96.50904083251953, 71.87028503417969, 219 38.86639404296875, -39.14372634887695, 31.444366455078125, 220 -82.78385925292969, -96.50904083251953, -25.533889770507812, 221 -16.14226531982422, 66.63677215576172, 82.51197814941406, 222 -82.78385925292969, -96.50904083251953, 39.76872634887695, 223 42.1504020690918, 82.66864013671875, 85.45269012451172 224 ], 225 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float32'} 226 } 227 }, 228 'operators': [{ 229 'name': 'argMin', 230 'arguments': [{'input': 'argMinInput'}, {'axis': 2}], 231 'outputs': 'argMinOutput' 232 }], 233 'expectedOutputs': { 234 'argMinOutput': { 235 'data': [2, 2, 0, 0, 0, 0], 236 'descriptor': {shape: [2, 1, 3], dataType: 'int32'} 237 } 238 } 239 } 240 }, 241 { 242 'name': 'argMin float32 4D tensor, axis=0, options.keepDimensions=true', 243 'graph': { 244 'inputs': { 245 'argMinInput': { 246 'data': [ 247 3.8301241397857666, -24.986488342285156, 5.29998254776001, 248 -48.54866027832031, 40.308868408203125, 60.184295654296875, 249 -82.78385925292969, -96.50904083251953, 71.87028503417969, 250 38.86639404296875, -39.14372634887695, 31.444366455078125, 251 -82.78385925292969, -96.50904083251953, -25.533889770507812, 252 -16.14226531982422, 66.63677215576172, 82.51197814941406, 253 -82.78385925292969, -96.50904083251953, 39.76872634887695, 254 42.1504020690918, 82.66864013671875, 85.45269012451172 255 ], 256 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float32'} 257 } 258 }, 259 'operators': [{ 260 'name': 'argMin', 261 'arguments': [ 262 {'input': 'argMinInput'}, {'axis': 0}, 263 {'options': {'keepDimensions': true}} 264 ], 265 'outputs': 'argMinOutput' 266 }], 267 'expectedOutputs': { 268 'argMinOutput': { 269 'data': [1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], 270 'descriptor': {shape: [1, 1, 4, 3], dataType: 'int32'} 271 } 272 } 273 } 274 }, 275 { 276 'name': 'argMin float32 4D tensor, axis=0, options.keepDimensions=false', 277 'graph': { 278 'inputs': { 279 'argMinInput': { 280 'data': [ 281 3.8301241397857666, -24.986488342285156, 5.29998254776001, 282 -48.54866027832031, 40.308868408203125, 60.184295654296875, 283 -82.78385925292969, -96.50904083251953, 71.87028503417969, 284 38.86639404296875, -39.14372634887695, 31.444366455078125, 285 -82.78385925292969, -96.50904083251953, -25.533889770507812, 286 -16.14226531982422, 66.63677215576172, 82.51197814941406, 287 -82.78385925292969, -96.50904083251953, 39.76872634887695, 288 42.1504020690918, 82.66864013671875, 85.45269012451172 289 ], 290 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float32'} 291 } 292 }, 293 'operators': [{ 294 'name': 'argMin', 295 'arguments': [ 296 {'input': 'argMinInput'}, {'axis': 0}, 297 {'options': {'keepDimensions': false}} 298 ], 299 'outputs': 'argMinOutput' 300 }], 301 'expectedOutputs': { 302 'argMinOutput': { 303 'data': [1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], 304 'descriptor': {shape: [1, 4, 3], dataType: 'int32'} 305 } 306 } 307 } 308 }, 309 { 310 'name': 311 'argMin float32 4D tensor, axis=0, explicit options.outputDataType=\'int32\'', 312 'graph': { 313 'inputs': { 314 'argMinInput': { 315 'data': [ 316 3.8301241397857666, -24.986488342285156, 5.29998254776001, 317 -48.54866027832031, 40.308868408203125, 60.184295654296875, 318 -82.78385925292969, -96.50904083251953, 71.87028503417969, 319 38.86639404296875, -39.14372634887695, 31.444366455078125, 320 -82.78385925292969, -96.50904083251953, -25.533889770507812, 321 -16.14226531982422, 66.63677215576172, 82.51197814941406, 322 -82.78385925292969, -96.50904083251953, 39.76872634887695, 323 42.1504020690918, 82.66864013671875, 85.45269012451172 324 ], 325 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float32'} 326 } 327 }, 328 'operators': [{ 329 'name': 'argMin', 330 'arguments': [ 331 {'input': 'argMinInput'}, {'axis': 0}, 332 {'options': {'outputDataType': 'int32'}} 333 ], 334 'outputs': 'argMinOutput' 335 }], 336 'expectedOutputs': { 337 'argMinOutput': { 338 'data': [1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], 339 'descriptor': {shape: [1, 4, 3], dataType: 'int32'} 340 } 341 } 342 } 343 }, 344 { 345 'name': 346 'argMin float32 4D tensor, axis=0, options.outputDataType=\'int64\'', 347 'graph': { 348 'inputs': { 349 'argMinInput': { 350 'data': [ 351 3.8301241397857666, -24.986488342285156, 5.29998254776001, 352 -48.54866027832031, 40.308868408203125, 60.184295654296875, 353 -82.78385925292969, -96.50904083251953, 71.87028503417969, 354 38.86639404296875, -39.14372634887695, 31.444366455078125, 355 -82.78385925292969, -96.50904083251953, -25.533889770507812, 356 -16.14226531982422, 66.63677215576172, 82.51197814941406, 357 -82.78385925292969, -96.50904083251953, 39.76872634887695, 358 42.1504020690918, 82.66864013671875, 85.45269012451172 359 ], 360 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float32'} 361 } 362 }, 363 'operators': [{ 364 'name': 'argMin', 365 'arguments': [ 366 {'input': 'argMinInput'}, {'axis': 0}, 367 {'options': {'outputDataType': 'int64'}} 368 ], 369 'outputs': 'argMinOutput' 370 }], 371 'expectedOutputs': { 372 'argMinOutput': { 373 'data': [1n, 1n, 1n, 0n, 0n, 0n, 0n, 0n, 1n, 0n, 0n, 0n], 374 'descriptor': {shape: [1, 4, 3], dataType: 'int64'} 375 } 376 } 377 } 378 }, 379 { 380 'name': 'argMin float32 4D tensor, axis=0, all options', 381 'graph': { 382 'inputs': { 383 'argMinInput': { 384 'data': [ 385 3.8301241397857666, -24.986488342285156, 5.29998254776001, 386 -48.54866027832031, 40.308868408203125, 60.184295654296875, 387 -82.78385925292969, -96.50904083251953, 71.87028503417969, 388 38.86639404296875, -39.14372634887695, 31.444366455078125, 389 -82.78385925292969, -96.50904083251953, -25.533889770507812, 390 -16.14226531982422, 66.63677215576172, 82.51197814941406, 391 -82.78385925292969, -96.50904083251953, 39.76872634887695, 392 42.1504020690918, 82.66864013671875, 85.45269012451172 393 ], 394 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float32'} 395 } 396 }, 397 'operators': [{ 398 'name': 'argMin', 399 'arguments': [ 400 {'input': 'argMinInput'}, {'axis': 0}, 401 {'options': {'keepDimensions': true, 'outputDataType': 'int64'}} 402 ], 403 'outputs': 'argMinOutput' 404 }], 405 'expectedOutputs': { 406 'argMinOutput': { 407 'data': [1n, 1n, 1n, 0n, 0n, 0n, 0n, 0n, 1n, 0n, 0n, 0n], 408 'descriptor': {shape: [1, 1, 4, 3], dataType: 'int64'} 409 } 410 } 411 } 412 }, 413 414 // float16 argMin tests 415 { 416 'name': 'argMin float16 1D constant tensor, axis=0, default options', 417 'graph': { 418 'inputs': { 419 'argMinInput': { 420 'data': [ 421 3.830078125, -24.984375, 5.30078125, -48.5625, 40.3125, 422 60.1875, -82.8125, -96.5, 71.875, 38.875, 423 -39.15625, 31.4375, -82.8125, -96.5, -25.53125, 424 -16.140625, 66.625, 82.5, -82.8125, -96.5, 425 39.78125, 42.15625, 82.6875, 85.4375 426 ], 427 'descriptor': {shape: [24], dataType: 'float16'}, 428 'constant': true 429 } 430 }, 431 'operators': [{ 432 'name': 'argMin', 433 'arguments': [{'input': 'argMinInput'}, {'axis': 0}], 434 'outputs': 'argMinOutput' 435 }], 436 'expectedOutputs': { 437 'argMinOutput': 438 {'data': [7], 'descriptor': {shape: [], dataType: 'int32'}} 439 } 440 } 441 }, 442 { 443 'name': 'argMin float16 1D tensor, axis=0, default options', 444 'graph': { 445 'inputs': { 446 'argMinInput': { 447 'data': [ 448 3.830078125, -24.984375, 5.30078125, -48.5625, 40.3125, 449 60.1875, -82.8125, -96.5, 71.875, 38.875, 450 -39.15625, 31.4375, -82.8125, -96.5, -25.53125, 451 -16.140625, 66.625, 82.5, -82.8125, -96.5, 452 39.78125, 42.15625, 82.6875, 85.4375 453 ], 454 'descriptor': {shape: [24], dataType: 'float16'} 455 } 456 }, 457 'operators': [{ 458 'name': 'argMin', 459 'arguments': [{'input': 'argMinInput'}, {'axis': 0}], 460 'outputs': 'argMinOutput' 461 }], 462 'expectedOutputs': { 463 'argMinOutput': 464 {'data': [7], 'descriptor': {shape: [], dataType: 'int32'}} 465 } 466 } 467 }, 468 { 469 'name': 'argMin float16 2D tensor, axis=0, default options', 470 'graph': { 471 'inputs': { 472 'argMinInput': { 473 'data': [ 474 3.830078125, -24.984375, 5.30078125, -48.5625, 40.3125, 475 60.1875, -82.8125, -96.5, 71.875, 38.875, 476 -39.15625, 31.4375, -82.8125, -96.5, -25.53125, 477 -16.140625, 66.625, 82.5, -82.8125, -96.5, 478 39.78125, 42.15625, 82.6875, 85.4375 479 ], 480 'descriptor': {shape: [4, 6], dataType: 'float16'} 481 } 482 }, 483 'operators': [{ 484 'name': 'argMin', 485 'arguments': [{'input': 'argMinInput'}, {'axis': 0}], 486 'outputs': 'argMinOutput' 487 }], 488 'expectedOutputs': { 489 'argMinOutput': { 490 'data': [1, 1, 2, 0, 1, 1], 491 'descriptor': {shape: [6], dataType: 'int32'} 492 } 493 } 494 } 495 }, 496 { 497 'name': 'argMin float16 3D tensor, axis=0, default options', 498 'graph': { 499 'inputs': { 500 'argMinInput': { 501 'data': [ 502 3.830078125, -24.984375, 5.30078125, -48.5625, 40.3125, 503 60.1875, -82.8125, -96.5, 71.875, 38.875, 504 -39.15625, 31.4375, -82.8125, -96.5, -25.53125, 505 -16.140625, 66.625, 82.5, -82.8125, -96.5, 506 39.78125, 42.15625, 82.6875, 85.4375 507 ], 508 'descriptor': {shape: [2, 3, 4], dataType: 'float16'} 509 } 510 }, 511 'operators': [{ 512 'name': 'argMin', 513 'arguments': [{'input': 'argMinInput'}, {'axis': 0}], 514 'outputs': 'argMinOutput' 515 }], 516 'expectedOutputs': { 517 'argMinOutput': { 518 'data': [1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], 519 'descriptor': {shape: [3, 4], dataType: 'int32'} 520 } 521 } 522 } 523 }, 524 { 525 'name': 'argMin float16 4D tensor, axis=0, default options', 526 'graph': { 527 'inputs': { 528 'argMinInput': { 529 'data': [ 530 3.830078125, -24.984375, 5.30078125, -48.5625, 40.3125, 531 60.1875, -82.8125, -96.5, 71.875, 38.875, 532 -39.15625, 31.4375, -82.8125, -96.5, -25.53125, 533 -16.140625, 66.625, 82.5, -82.8125, -96.5, 534 39.78125, 42.15625, 82.6875, 85.4375 535 ], 536 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float16'} 537 } 538 }, 539 'operators': [{ 540 'name': 'argMin', 541 'arguments': [{'input': 'argMinInput'}, {'axis': 0}], 542 'outputs': 'argMinOutput' 543 }], 544 'expectedOutputs': { 545 'argMinOutput': { 546 'data': [1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], 547 'descriptor': {shape: [1, 4, 3], dataType: 'int32'} 548 } 549 } 550 } 551 }, 552 { 553 'name': 'argMin float16 5D tensor, axis=0, default options', 554 'graph': { 555 'inputs': { 556 'argMinInput': { 557 'data': [ 558 3.830078125, -24.984375, 5.30078125, -48.5625, 40.3125, 559 60.1875, -82.8125, -96.5, 71.875, 38.875, 560 -39.15625, 31.4375, -82.8125, -96.5, -25.53125, 561 -16.140625, 66.625, 82.5, -82.8125, -96.5, 562 39.78125, 42.15625, 82.6875, 85.4375 563 ], 564 'descriptor': {shape: [2, 1, 4, 1, 3], dataType: 'float16'} 565 } 566 }, 567 'operators': [{ 568 'name': 'argMin', 569 'arguments': [{'input': 'argMinInput'}, {'axis': 0}], 570 'outputs': 'argMinOutput' 571 }], 572 'expectedOutputs': { 573 'argMinOutput': { 574 'data': [1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], 575 'descriptor': {shape: [1, 4, 1, 3], dataType: 'int32'} 576 } 577 } 578 } 579 }, 580 { 581 'name': 'argMin float16 4D tensor, axis=2', 582 'graph': { 583 'inputs': { 584 'argMinInput': { 585 'data': [ 586 3.830078125, -24.984375, 5.30078125, -48.5625, 40.3125, 587 60.1875, -82.8125, -96.5, 71.875, 38.875, 588 -39.15625, 31.4375, -82.8125, -96.5, -25.53125, 589 -16.140625, 66.625, 82.5, -82.8125, -96.5, 590 39.78125, 42.15625, 82.6875, 85.4375 591 ], 592 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float16'} 593 } 594 }, 595 'operators': [{ 596 'name': 'argMin', 597 'arguments': [{'input': 'argMinInput'}, {'axis': 2}], 598 'outputs': 'argMinOutput' 599 }], 600 'expectedOutputs': { 601 'argMinOutput': { 602 'data': [2, 2, 0, 0, 0, 0], 603 'descriptor': {shape: [2, 1, 3], dataType: 'int32'} 604 } 605 } 606 } 607 }, 608 { 609 'name': 'argMin float16 4D tensor, axis=0, options.keepDimensions=true', 610 'graph': { 611 'inputs': { 612 'argMinInput': { 613 'data': [ 614 3.830078125, -24.984375, 5.30078125, -48.5625, 40.3125, 615 60.1875, -82.8125, -96.5, 71.875, 38.875, 616 -39.15625, 31.4375, -82.8125, -96.5, -25.53125, 617 -16.140625, 66.625, 82.5, -82.8125, -96.5, 618 39.78125, 42.15625, 82.6875, 85.4375 619 ], 620 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float16'} 621 } 622 }, 623 'operators': [{ 624 'name': 'argMin', 625 'arguments': [ 626 {'input': 'argMinInput'}, {'axis': 0}, 627 {'options': {'keepDimensions': true}} 628 ], 629 'outputs': 'argMinOutput' 630 }], 631 'expectedOutputs': { 632 'argMinOutput': { 633 'data': [1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], 634 'descriptor': {shape: [1, 1, 4, 3], dataType: 'int32'} 635 } 636 } 637 } 638 }, 639 { 640 'name': 'argMin float16 4D tensor, axis=0, options.keepDimensions=false', 641 'graph': { 642 'inputs': { 643 'argMinInput': { 644 'data': [ 645 3.830078125, -24.984375, 5.30078125, -48.5625, 40.3125, 646 60.1875, -82.8125, -96.5, 71.875, 38.875, 647 -39.15625, 31.4375, -82.8125, -96.5, -25.53125, 648 -16.140625, 66.625, 82.5, -82.8125, -96.5, 649 39.78125, 42.15625, 82.6875, 85.4375 650 ], 651 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float16'} 652 } 653 }, 654 'operators': [{ 655 'name': 'argMin', 656 'arguments': [ 657 {'input': 'argMinInput'}, {'axis': 0}, 658 {'options': {'keepDimensions': false}} 659 ], 660 'outputs': 'argMinOutput' 661 }], 662 'expectedOutputs': { 663 'argMinOutput': { 664 'data': [1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], 665 'descriptor': {shape: [1, 4, 3], dataType: 'int32'} 666 } 667 } 668 } 669 }, 670 { 671 'name': 672 'argMin float16 4D tensor, axis=0, explicit options.outputDataType=\'int32\'', 673 'graph': { 674 'inputs': { 675 'argMinInput': { 676 'data': [ 677 3.830078125, -24.984375, 5.30078125, -48.5625, 40.3125, 678 60.1875, -82.8125, -96.5, 71.875, 38.875, 679 -39.15625, 31.4375, -82.8125, -96.5, -25.53125, 680 -16.140625, 66.625, 82.5, -82.8125, -96.5, 681 39.78125, 42.15625, 82.6875, 85.4375 682 ], 683 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float16'} 684 } 685 }, 686 'operators': [{ 687 'name': 'argMin', 688 'arguments': [ 689 {'input': 'argMinInput'}, {'axis': 0}, 690 {'options': {'outputDataType': 'int32'}} 691 ], 692 'outputs': 'argMinOutput' 693 }], 694 'expectedOutputs': { 695 'argMinOutput': { 696 'data': [1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], 697 'descriptor': {shape: [1, 4, 3], dataType: 'int32'} 698 } 699 } 700 } 701 }, 702 { 703 'name': 704 'argMin float16 4D tensor, axis=0, options.outputDataType=\'int64\'', 705 'graph': { 706 'inputs': { 707 'argMinInput': { 708 'data': [ 709 3.830078125, -24.984375, 5.30078125, -48.5625, 40.3125, 710 60.1875, -82.8125, -96.5, 71.875, 38.875, 711 -39.15625, 31.4375, -82.8125, -96.5, -25.53125, 712 -16.140625, 66.625, 82.5, -82.8125, -96.5, 713 39.78125, 42.15625, 82.6875, 85.4375 714 ], 715 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float16'} 716 } 717 }, 718 'operators': [{ 719 'name': 'argMin', 720 'arguments': [ 721 {'input': 'argMinInput'}, {'axis': 0}, 722 {'options': {'outputDataType': 'int64'}} 723 ], 724 'outputs': 'argMinOutput' 725 }], 726 'expectedOutputs': { 727 'argMinOutput': { 728 'data': [1n, 1n, 1n, 0n, 0n, 0n, 0n, 0n, 1n, 0n, 0n, 0n], 729 'descriptor': {shape: [1, 4, 3], dataType: 'int64'} 730 } 731 } 732 } 733 }, 734 { 735 'name': 'argMin float16 4D tensor, axis=0, all options', 736 'graph': { 737 'inputs': { 738 'argMinInput': { 739 'data': [ 740 3.830078125, -24.984375, 5.30078125, -48.5625, 40.3125, 741 60.1875, -82.8125, -96.5, 71.875, 38.875, 742 -39.15625, 31.4375, -82.8125, -96.5, -25.53125, 743 -16.140625, 66.625, 82.5, -82.8125, -96.5, 744 39.78125, 42.15625, 82.6875, 85.4375 745 ], 746 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float16'} 747 } 748 }, 749 'operators': [{ 750 'name': 'argMin', 751 'arguments': [ 752 {'input': 'argMinInput'}, {'axis': 0}, 753 {'options': {'keepDimensions': true, 'outputDataType': 'int64'}} 754 ], 755 'outputs': 'argMinOutput' 756 }], 757 'expectedOutputs': { 758 'argMinOutput': { 759 'data': [1n, 1n, 1n, 0n, 0n, 0n, 0n, 0n, 1n, 0n, 0n, 0n], 760 'descriptor': {shape: [1, 1, 4, 3], dataType: 'int64'} 761 } 762 } 763 } 764 }, 765 766 { 767 'name': 'argMin int8 4D tensor, axis=0, all options', 768 'graph': { 769 'inputs': { 770 'argMinInput': { 771 'data': [ 772 -128, -50, -5, -1, 0, 11, 50, 126, -127, -50, 0, 0, 1, 10, 50, 127 773 ], 774 'descriptor': {shape: [2, 2, 2, 2], dataType: 'int8'} 775 } 776 }, 777 'operators': [{ 778 'name': 'argMin', 779 'arguments': [ 780 {'input': 'argMinInput'}, {'axis': 0}, 781 {'options': {'keepDimensions': true, 'outputDataType': 'int64'}} 782 ], 783 'outputs': 'argMinOutput' 784 }], 785 'expectedOutputs': { 786 'argMinOutput': { 787 'data': [0n, 0n, 0n, 0n, 0n, 1n, 0n, 0n], 788 'descriptor': {shape: [1, 2, 2, 2], dataType: 'int64'} 789 } 790 } 791 } 792 }, 793 { 794 'name': 'argMin uint8 4D tensor, axis=1, all options', 795 'graph': { 796 'inputs': { 797 'argMinInput': { 798 'data': [ 799 0, 0, 254, 10, 1, 255, 1, 11, 21, 50, 128, 254, 20, 50, 127, 255 800 ], 801 'descriptor': {shape: [2, 2, 2, 2], dataType: 'uint8'} 802 } 803 }, 804 'operators': [{ 805 'name': 'argMin', 806 'arguments': [ 807 {'input': 'argMinInput'}, {'axis': 1}, 808 {'options': {'keepDimensions': true, 'outputDataType': 'int32'}} 809 ], 810 'outputs': 'argMinOutput' 811 }], 812 'expectedOutputs': { 813 'argMinOutput': { 814 'data': [0, 0, 1, 0, 1, 0, 1, 0], 815 'descriptor': {shape: [2, 1, 2, 2], dataType: 'int32'} 816 } 817 } 818 } 819 }, 820 { 821 'name': 'argMin int32 4D tensor, axis=0, all options', 822 'graph': { 823 'inputs': { 824 'argMinInput': { 825 'data': [ 826 3, -24, 5, -48, 40, 60, -82, -96, 71, 38, -39, 31, 827 -82, -96, -25, -16, 66, 82, -82, -96, 39, 42, 82, 85 828 ], 829 'descriptor': {shape: [2, 1, 4, 3], dataType: 'int32'} 830 } 831 }, 832 'operators': [{ 833 'name': 'argMin', 834 'arguments': [ 835 {'input': 'argMinInput'}, {'axis': 0}, 836 {'options': {'keepDimensions': true, 'outputDataType': 'int64'}} 837 ], 838 'outputs': 'argMinOutput' 839 }], 840 'expectedOutputs': { 841 'argMinOutput': { 842 'data': [1n, 1n, 1n, 0n, 0n, 0n, 0n, 0n, 1n, 0n, 0n, 0n], 843 'descriptor': {shape: [1, 1, 4, 3], dataType: 'int64'} 844 } 845 } 846 } 847 }, 848 { 849 'name': 'argMin uint32 4D tensor, axis=1, all options', 850 'graph': { 851 'inputs': { 852 'argMinInput': { 853 'data': [ 854 0, 0, 254, 10, 1, 512, 1, 11, 21, 50, 128, 254, 20, 50, 127, 512 855 ], 856 'descriptor': {shape: [2, 2, 2, 2], dataType: 'uint32'} 857 } 858 }, 859 'operators': [{ 860 'name': 'argMin', 861 'arguments': [ 862 {'input': 'argMinInput'}, {'axis': 1}, 863 {'options': {'keepDimensions': true, 'outputDataType': 'int32'}} 864 ], 865 'outputs': 'argMinOutput' 866 }], 867 'expectedOutputs': { 868 'argMinOutput': { 869 'data': [0, 0, 1, 0, 1, 0, 1, 0], 870 'descriptor': {shape: [2, 1, 2, 2], dataType: 'int32'} 871 } 872 } 873 } 874 }, 875 { 876 'name': 'argMin int64 4D tensor, axis=0, all options', 877 'graph': { 878 'inputs': { 879 'argMinInput': { 880 'data': [ 881 3n, -24n, 5n, -48n, 40n, 60n, -82n, 96n, 71n, 38n, -39n, 31n, 882 -82n, -96n, -25n, -16n, 66n, 82n, -82n, 96n, 39n, 42n, 82n, 85n 883 ], 884 'descriptor': {shape: [2, 1, 4, 3], dataType: 'int64'} 885 } 886 }, 887 'operators': [{ 888 'name': 'argMin', 889 'arguments': [ 890 {'input': 'argMinInput'}, {'axis': 0}, 891 {'options': {'keepDimensions': true, 'outputDataType': 'int64'}} 892 ], 893 'outputs': 'argMinOutput' 894 }], 895 'expectedOutputs': { 896 'argMinOutput': { 897 'data': [1n, 1n, 1n, 0n, 0n, 0n, 0n, 0n, 1n, 0n, 0n, 0n], 898 'descriptor': {shape: [1, 1, 4, 3], dataType: 'int64'} 899 } 900 } 901 } 902 }, 903 { 904 'name': 'argMin uint64 4D tensor, axis=1, all options', 905 'graph': { 906 'inputs': { 907 'argMinInput': { 908 'data': [ 909 0n, 0n, 254n, 10n, 1n, 512n, 1n, 11n, 910 21n, 50n, 128n, 254n, 20n, 50n, 127n, 512n 911 ], 912 'descriptor': {shape: [2, 2, 2, 2], dataType: 'uint64'} 913 } 914 }, 915 'operators': [{ 916 'name': 'argMin', 917 'arguments': [ 918 {'input': 'argMinInput'}, {'axis': 1}, 919 {'options': {'keepDimensions': true, 'outputDataType': 'int32'}} 920 ], 921 'outputs': 'argMinOutput' 922 }], 923 'expectedOutputs': { 924 'argMinOutput': { 925 'data': [0, 0, 1, 0, 1, 0, 1, 0], 926 'descriptor': {shape: [2, 1, 2, 2], dataType: 'int32'} 927 } 928 } 929 } 930 }, 931 932 // argMax tests 933 { 934 'name': 'argMax float32 1D constant tensor, axis=0, default options', 935 'graph': { 936 'inputs': { 937 'argMaxInput': { 938 'data': [ 939 -51.09362030029297, -6.53970193862915, 73.8133773803711, 940 88.46114349365234, -5.294266700744629, -79.20668029785156, 941 -41.70176696777344, 73.8133773803711, 88.46114349365234, 942 -84.94000244140625, -61.48894119262695, -98.3387451171875, 943 -51.09362030029297, -6.53970193862915, 73.8133773803711, 944 88.46114349365234, -5.294266700744629, -79.20668029785156, 945 -41.70176696777344, 73.8133773803711, 88.46114349365234, 946 -84.94000244140625, -61.48894119262695, -98.3387451171875 947 ], 948 'descriptor': {shape: [24], dataType: 'float32'}, 949 'constant': true 950 } 951 }, 952 'operators': [{ 953 'name': 'argMax', 954 'arguments': [{'input': 'argMaxInput'}, {'axis': 0}], 955 'outputs': 'argMaxOutput' 956 }], 957 'expectedOutputs': { 958 'argMaxOutput': 959 {'data': [3], 'descriptor': {shape: [], dataType: 'int32'}} 960 } 961 } 962 }, 963 { 964 'name': 'argMax float32 1D tensor, axis=0, default options', 965 'graph': { 966 'inputs': { 967 'argMaxInput': { 968 'data': [ 969 -51.09362030029297, -6.53970193862915, 73.8133773803711, 970 88.46114349365234, -5.294266700744629, -79.20668029785156, 971 -41.70176696777344, 73.8133773803711, 88.46114349365234, 972 -84.94000244140625, -61.48894119262695, -98.3387451171875, 973 -51.09362030029297, -6.53970193862915, 73.8133773803711, 974 88.46114349365234, -5.294266700744629, -79.20668029785156, 975 -41.70176696777344, 73.8133773803711, 88.46114349365234, 976 -84.94000244140625, -61.48894119262695, -98.3387451171875 977 ], 978 'descriptor': {shape: [24], dataType: 'float32'} 979 } 980 }, 981 'operators': [{ 982 'name': 'argMax', 983 'arguments': [{'input': 'argMaxInput'}, {'axis': 0}], 984 'outputs': 'argMaxOutput' 985 }], 986 'expectedOutputs': { 987 'argMaxOutput': 988 {'data': [3], 'descriptor': {shape: [], dataType: 'int32'}} 989 } 990 } 991 }, 992 { 993 'name': 'argMax float32 2D tensor, axis=0, default options', 994 'graph': { 995 'inputs': { 996 'argMaxInput': { 997 'data': [ 998 -51.09362030029297, -6.53970193862915, 73.8133773803711, 999 88.46114349365234, -5.294266700744629, -79.20668029785156, 1000 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1001 -84.94000244140625, -61.48894119262695, -98.3387451171875, 1002 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1003 88.46114349365234, -5.294266700744629, -79.20668029785156, 1004 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1005 -84.94000244140625, -61.48894119262695, -98.3387451171875 1006 ], 1007 'descriptor': {shape: [4, 6], dataType: 'float32'} 1008 } 1009 }, 1010 'operators': [{ 1011 'name': 'argMax', 1012 'arguments': [{'input': 'argMaxInput'}, {'axis': 0}], 1013 'outputs': 'argMaxOutput' 1014 }], 1015 'expectedOutputs': { 1016 'argMaxOutput': { 1017 'data': [1, 1, 1, 0, 0, 0], 1018 'descriptor': {shape: [6], dataType: 'int32'} 1019 } 1020 } 1021 } 1022 }, 1023 { 1024 'name': 'argMax float32 3D tensor, axis=0, default options', 1025 'graph': { 1026 'inputs': { 1027 'argMaxInput': { 1028 'data': [ 1029 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1030 88.46114349365234, -5.294266700744629, -79.20668029785156, 1031 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1032 -84.94000244140625, -61.48894119262695, -98.3387451171875, 1033 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1034 88.46114349365234, -5.294266700744629, -79.20668029785156, 1035 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1036 -84.94000244140625, -61.48894119262695, -98.3387451171875 1037 ], 1038 'descriptor': {shape: [2, 3, 4], dataType: 'float32'} 1039 } 1040 }, 1041 'operators': [{ 1042 'name': 'argMax', 1043 'arguments': [{'input': 'argMaxInput'}, {'axis': 0}], 1044 'outputs': 'argMaxOutput' 1045 }], 1046 'expectedOutputs': { 1047 'argMaxOutput': { 1048 'data': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 1049 'descriptor': {shape: [3, 4], dataType: 'int32'} 1050 } 1051 } 1052 } 1053 }, 1054 { 1055 'name': 'argMax float32 4D tensor, axis=0, default options', 1056 'graph': { 1057 'inputs': { 1058 'argMaxInput': { 1059 'data': [ 1060 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1061 88.46114349365234, -5.294266700744629, -79.20668029785156, 1062 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1063 -84.94000244140625, -61.48894119262695, -98.3387451171875, 1064 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1065 88.46114349365234, -5.294266700744629, -79.20668029785156, 1066 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1067 -84.94000244140625, -61.48894119262695, -98.3387451171875 1068 ], 1069 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float32'} 1070 } 1071 }, 1072 'operators': [{ 1073 'name': 'argMax', 1074 'arguments': [{'input': 'argMaxInput'}, {'axis': 0}], 1075 'outputs': 'argMaxOutput' 1076 }], 1077 'expectedOutputs': { 1078 'argMaxOutput': { 1079 'data': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 1080 'descriptor': {shape: [1, 4, 3], dataType: 'int32'} 1081 } 1082 } 1083 } 1084 }, 1085 { 1086 'name': 'argMax float32 5D tensor, axis=0, default options', 1087 'graph': { 1088 'inputs': { 1089 'argMaxInput': { 1090 'data': [ 1091 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1092 88.46114349365234, -5.294266700744629, -79.20668029785156, 1093 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1094 -84.94000244140625, -61.48894119262695, -98.3387451171875, 1095 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1096 88.46114349365234, -5.294266700744629, -79.20668029785156, 1097 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1098 -84.94000244140625, -61.48894119262695, -98.3387451171875 1099 ], 1100 'descriptor': {shape: [2, 1, 4, 1, 3], dataType: 'float32'} 1101 } 1102 }, 1103 'operators': [{ 1104 'name': 'argMax', 1105 'arguments': [{'input': 'argMaxInput'}, {'axis': 0}], 1106 'outputs': 'argMaxOutput' 1107 }], 1108 'expectedOutputs': { 1109 'argMaxOutput': { 1110 'data': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 1111 'descriptor': {shape: [1, 4, 1, 3], dataType: 'int32'} 1112 } 1113 } 1114 } 1115 }, 1116 { 1117 'name': 'argMax float32 4D tensor, axis=2', 1118 'graph': { 1119 'inputs': { 1120 'argMaxInput': { 1121 'data': [ 1122 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1123 88.46114349365234, -5.294266700744629, -79.20668029785156, 1124 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1125 -84.94000244140625, -61.48894119262695, -98.3387451171875, 1126 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1127 88.46114349365234, -5.294266700744629, -79.20668029785156, 1128 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1129 -84.94000244140625, -61.48894119262695, -98.3387451171875 1130 ], 1131 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float32'} 1132 } 1133 }, 1134 'operators': [{ 1135 'name': 'argMax', 1136 'arguments': [{'input': 'argMaxInput'}, {'axis': 2}], 1137 'outputs': 'argMaxOutput' 1138 }], 1139 'expectedOutputs': { 1140 'argMaxOutput': { 1141 'data': [1, 2, 2, 1, 2, 2], 1142 'descriptor': {shape: [2, 1, 3], dataType: 'int32'} 1143 } 1144 } 1145 } 1146 }, 1147 { 1148 'name': 'argMax float32 4D tensor, axis=3, options.keepDimensions=true', 1149 'graph': { 1150 'inputs': { 1151 'argMaxInput': { 1152 'data': [ 1153 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1154 88.46114349365234, -5.294266700744629, -79.20668029785156, 1155 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1156 -84.94000244140625, -61.48894119262695, -98.3387451171875, 1157 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1158 88.46114349365234, -5.294266700744629, -79.20668029785156, 1159 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1160 -84.94000244140625, -61.48894119262695, -98.3387451171875 1161 ], 1162 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float32'} 1163 } 1164 }, 1165 'operators': [{ 1166 'name': 'argMax', 1167 'arguments': [ 1168 {'input': 'argMaxInput'}, {'axis': 3}, 1169 {'options': {'keepDimensions': true}} 1170 ], 1171 'outputs': 'argMaxOutput' 1172 }], 1173 'expectedOutputs': { 1174 'argMaxOutput': { 1175 'data': [2, 0, 2, 1, 2, 0, 2, 1], 1176 'descriptor': {shape: [2, 1, 4, 1], dataType: 'int32'} 1177 } 1178 } 1179 } 1180 }, 1181 { 1182 'name': 'argMax float32 4D tensor, axis=3, options.keepDimensions=false', 1183 'graph': { 1184 'inputs': { 1185 'argMaxInput': { 1186 'data': [ 1187 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1188 88.46114349365234, -5.294266700744629, -79.20668029785156, 1189 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1190 -84.94000244140625, -61.48894119262695, -98.3387451171875, 1191 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1192 88.46114349365234, -5.294266700744629, -79.20668029785156, 1193 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1194 -84.94000244140625, -61.48894119262695, -98.3387451171875 1195 ], 1196 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float32'} 1197 } 1198 }, 1199 'operators': [{ 1200 'name': 'argMax', 1201 'arguments': [ 1202 {'input': 'argMaxInput'}, {'axis': 3}, 1203 {'options': {'keepDimensions': false}} 1204 ], 1205 'outputs': 'argMaxOutput' 1206 }], 1207 'expectedOutputs': { 1208 'argMaxOutput': { 1209 'data': [2, 0, 2, 1, 2, 0, 2, 1], 1210 'descriptor': {shape: [2, 1, 4], dataType: 'int32'} 1211 } 1212 } 1213 } 1214 }, 1215 { 1216 'name': 1217 'argMax float32 4D tensor, axis=3, explicit options.outputDataType=\'int32\'', 1218 'graph': { 1219 'inputs': { 1220 'argMaxInput': { 1221 'data': [ 1222 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1223 88.46114349365234, -5.294266700744629, -79.20668029785156, 1224 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1225 -84.94000244140625, -61.48894119262695, -98.3387451171875, 1226 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1227 88.46114349365234, -5.294266700744629, -79.20668029785156, 1228 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1229 -84.94000244140625, -61.48894119262695, -98.3387451171875 1230 ], 1231 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float32'} 1232 } 1233 }, 1234 'operators': [{ 1235 'name': 'argMax', 1236 'arguments': [ 1237 {'input': 'argMaxInput'}, {'axis': 3}, 1238 {'options': {'outputDataType': 'int32'}} 1239 ], 1240 'outputs': 'argMaxOutput' 1241 }], 1242 'expectedOutputs': { 1243 'argMaxOutput': { 1244 'data': [2, 0, 2, 1, 2, 0, 2, 1], 1245 'descriptor': {shape: [2, 1, 4], dataType: 'int32'} 1246 } 1247 } 1248 } 1249 }, 1250 { 1251 'name': 1252 'argMax float32 4D tensor, axis=3, options.outputDataType=\'int64\'', 1253 'graph': { 1254 'inputs': { 1255 'argMaxInput': { 1256 'data': [ 1257 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1258 88.46114349365234, -5.294266700744629, -79.20668029785156, 1259 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1260 -84.94000244140625, -61.48894119262695, -98.3387451171875, 1261 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1262 88.46114349365234, -5.294266700744629, -79.20668029785156, 1263 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1264 -84.94000244140625, -61.48894119262695, -98.3387451171875 1265 ], 1266 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float32'} 1267 } 1268 }, 1269 'operators': [{ 1270 'name': 'argMax', 1271 'arguments': [ 1272 {'input': 'argMaxInput'}, {'axis': 3}, 1273 {'options': {'outputDataType': 'int64'}} 1274 ], 1275 'outputs': 'argMaxOutput' 1276 }], 1277 'expectedOutputs': { 1278 'argMaxOutput': { 1279 'data': [2n, 0n, 2n, 1n, 2n, 0n, 2n, 1n], 1280 'descriptor': {shape: [2, 1, 4], dataType: 'int64'} 1281 } 1282 } 1283 } 1284 }, 1285 { 1286 'name': 'argMax float32 4D tensor, axis=3, all options', 1287 'graph': { 1288 'inputs': { 1289 'argMaxInput': { 1290 'data': [ 1291 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1292 88.46114349365234, -5.294266700744629, -79.20668029785156, 1293 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1294 -84.94000244140625, -61.48894119262695, -98.3387451171875, 1295 -51.09362030029297, -6.53970193862915, 73.8133773803711, 1296 88.46114349365234, -5.294266700744629, -79.20668029785156, 1297 -41.70176696777344, 73.8133773803711, 88.46114349365234, 1298 -84.94000244140625, -61.48894119262695, -98.3387451171875 1299 ], 1300 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float32'} 1301 } 1302 }, 1303 'operators': [{ 1304 'name': 'argMax', 1305 'arguments': [ 1306 {'input': 'argMaxInput'}, {'axis': 3}, 1307 {'options': {'keepDimensions': true, 'outputDataType': 'int64'}} 1308 ], 1309 'outputs': 'argMaxOutput' 1310 }], 1311 'expectedOutputs': { 1312 'argMaxOutput': { 1313 'data': [2n, 0n, 2n, 1n, 2n, 0n, 2n, 1n], 1314 'descriptor': {shape: [2, 1, 4, 1], dataType: 'int64'} 1315 } 1316 } 1317 } 1318 }, 1319 1320 // float16 argMax tests 1321 { 1322 'name': 'argMax float16 1D constant tensor, axis=0, default options', 1323 'graph': { 1324 'inputs': { 1325 'argMaxInput': { 1326 'data': [ 1327 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1328 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125, 1329 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1330 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125 1331 ], 1332 'descriptor': {shape: [24], dataType: 'float16'}, 1333 'constant': true 1334 } 1335 }, 1336 'operators': [{ 1337 'name': 'argMax', 1338 'arguments': [{'input': 'argMaxInput'}, {'axis': 0}], 1339 'outputs': 'argMaxOutput' 1340 }], 1341 'expectedOutputs': { 1342 'argMaxOutput': 1343 {'data': [3], 'descriptor': {shape: [], dataType: 'int32'}} 1344 } 1345 } 1346 }, 1347 { 1348 'name': 'argMax float16 1D tensor, axis=0, default options', 1349 'graph': { 1350 'inputs': { 1351 'argMaxInput': { 1352 'data': [ 1353 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1354 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125, 1355 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1356 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125 1357 ], 1358 'descriptor': {shape: [24], dataType: 'float16'} 1359 } 1360 }, 1361 'operators': [{ 1362 'name': 'argMax', 1363 'arguments': [{'input': 'argMaxInput'}, {'axis': 0}], 1364 'outputs': 'argMaxOutput' 1365 }], 1366 'expectedOutputs': { 1367 'argMaxOutput': 1368 {'data': [3], 'descriptor': {shape: [], dataType: 'int32'}} 1369 } 1370 } 1371 }, 1372 { 1373 'name': 'argMax float16 2D tensor, axis=0, default options', 1374 'graph': { 1375 'inputs': { 1376 'argMaxInput': { 1377 'data': [ 1378 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1379 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125, 1380 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1381 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125 1382 ], 1383 'descriptor': {shape: [4, 6], dataType: 'float16'} 1384 } 1385 }, 1386 'operators': [{ 1387 'name': 'argMax', 1388 'arguments': [{'input': 'argMaxInput'}, {'axis': 0}], 1389 'outputs': 'argMaxOutput' 1390 }], 1391 'expectedOutputs': { 1392 'argMaxOutput': { 1393 'data': [1, 1, 1, 0, 0, 0], 1394 'descriptor': {shape: [6], dataType: 'int32'} 1395 } 1396 } 1397 } 1398 }, 1399 { 1400 'name': 'argMax float16 3D tensor, axis=0, default options', 1401 'graph': { 1402 'inputs': { 1403 'argMaxInput': { 1404 'data': [ 1405 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1406 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125, 1407 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1408 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125 1409 ], 1410 'descriptor': {shape: [2, 3, 4], dataType: 'float16'} 1411 } 1412 }, 1413 'operators': [{ 1414 'name': 'argMax', 1415 'arguments': [{'input': 'argMaxInput'}, {'axis': 0}], 1416 'outputs': 'argMaxOutput' 1417 }], 1418 'expectedOutputs': { 1419 'argMaxOutput': { 1420 'data': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 1421 'descriptor': {shape: [3, 4], dataType: 'int32'} 1422 } 1423 } 1424 } 1425 }, 1426 { 1427 'name': 'argMax float16 4D tensor, axis=0, default options', 1428 'graph': { 1429 'inputs': { 1430 'argMaxInput': { 1431 'data': [ 1432 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1433 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125, 1434 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1435 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125 1436 ], 1437 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float16'} 1438 } 1439 }, 1440 'operators': [{ 1441 'name': 'argMax', 1442 'arguments': [{'input': 'argMaxInput'}, {'axis': 0}], 1443 'outputs': 'argMaxOutput' 1444 }], 1445 'expectedOutputs': { 1446 'argMaxOutput': { 1447 'data': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 1448 'descriptor': {shape: [1, 4, 3], dataType: 'int32'} 1449 } 1450 } 1451 } 1452 }, 1453 { 1454 'name': 'argMax float16 5D tensor, axis=0, default options', 1455 'graph': { 1456 'inputs': { 1457 'argMaxInput': { 1458 'data': [ 1459 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1460 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125, 1461 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1462 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125 1463 ], 1464 'descriptor': {shape: [2, 1, 4, 1, 3], dataType: 'float16'} 1465 } 1466 }, 1467 'operators': [{ 1468 'name': 'argMax', 1469 'arguments': [{'input': 'argMaxInput'}, {'axis': 0}], 1470 'outputs': 'argMaxOutput' 1471 }], 1472 'expectedOutputs': { 1473 'argMaxOutput': { 1474 'data': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 1475 'descriptor': {shape: [1, 4, 1, 3], dataType: 'int32'} 1476 } 1477 } 1478 } 1479 }, 1480 { 1481 'name': 'argMax float16 4D tensor, axis=2', 1482 'graph': { 1483 'inputs': { 1484 'argMaxInput': { 1485 'data': [ 1486 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1487 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125, 1488 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1489 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125 1490 ], 1491 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float16'} 1492 } 1493 }, 1494 'operators': [{ 1495 'name': 'argMax', 1496 'arguments': [{'input': 'argMaxInput'}, {'axis': 2}], 1497 'outputs': 'argMaxOutput' 1498 }], 1499 'expectedOutputs': { 1500 'argMaxOutput': { 1501 'data': [1, 2, 2, 1, 2, 2], 1502 'descriptor': {shape: [2, 1, 3], dataType: 'int32'} 1503 } 1504 } 1505 } 1506 }, 1507 { 1508 'name': 'argMax float16 4D tensor, axis=3, options.keepDimensions=true', 1509 'graph': { 1510 'inputs': { 1511 'argMaxInput': { 1512 'data': [ 1513 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1514 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125, 1515 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1516 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125 1517 ], 1518 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float16'} 1519 } 1520 }, 1521 'operators': [{ 1522 'name': 'argMax', 1523 'arguments': [ 1524 {'input': 'argMaxInput'}, {'axis': 3}, 1525 {'options': {'keepDimensions': true}} 1526 ], 1527 'outputs': 'argMaxOutput' 1528 }], 1529 'expectedOutputs': { 1530 'argMaxOutput': { 1531 'data': [2, 0, 2, 1, 2, 0, 2, 1], 1532 'descriptor': {shape: [2, 1, 4, 1], dataType: 'int32'} 1533 } 1534 } 1535 } 1536 }, 1537 { 1538 'name': 'argMax float16 4D tensor, axis=3, options.keepDimensions=false', 1539 'graph': { 1540 'inputs': { 1541 'argMaxInput': { 1542 'data': [ 1543 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1544 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125, 1545 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1546 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125 1547 ], 1548 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float16'} 1549 } 1550 }, 1551 'operators': [{ 1552 'name': 'argMax', 1553 'arguments': [ 1554 {'input': 'argMaxInput'}, {'axis': 3}, 1555 {'options': {'keepDimensions': false}} 1556 ], 1557 'outputs': 'argMaxOutput' 1558 }], 1559 'expectedOutputs': { 1560 'argMaxOutput': { 1561 'data': [2, 0, 2, 1, 2, 0, 2, 1], 1562 'descriptor': {shape: [2, 1, 4], dataType: 'int32'} 1563 } 1564 } 1565 } 1566 }, 1567 { 1568 'name': 1569 'argMax float16 4D tensor, axis=3, explicit options.outputDataType=\'int32\'', 1570 'graph': { 1571 'inputs': { 1572 'argMaxInput': { 1573 'data': [ 1574 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1575 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125, 1576 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1577 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125 1578 ], 1579 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float16'} 1580 } 1581 }, 1582 'operators': [{ 1583 'name': 'argMax', 1584 'arguments': [ 1585 {'input': 'argMaxInput'}, {'axis': 3}, 1586 {'options': {'outputDataType': 'int32'}} 1587 ], 1588 'outputs': 'argMaxOutput' 1589 }], 1590 'expectedOutputs': { 1591 'argMaxOutput': { 1592 'data': [2, 0, 2, 1, 2, 0, 2, 1], 1593 'descriptor': {shape: [2, 1, 4], dataType: 'int32'} 1594 } 1595 } 1596 } 1597 }, 1598 { 1599 'name': 1600 'argMax float16 4D tensor, axis=3, options.outputDataType=\'int64\'', 1601 'graph': { 1602 'inputs': { 1603 'argMaxInput': { 1604 'data': [ 1605 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1606 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125, 1607 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1608 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125 1609 ], 1610 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float16'} 1611 } 1612 }, 1613 'operators': [{ 1614 'name': 'argMax', 1615 'arguments': [ 1616 {'input': 'argMaxInput'}, {'axis': 3}, 1617 {'options': {'outputDataType': 'int64'}} 1618 ], 1619 'outputs': 'argMaxOutput' 1620 }], 1621 'expectedOutputs': { 1622 'argMaxOutput': { 1623 'data': [2n, 0n, 2n, 1n, 2n, 0n, 2n, 1n], 1624 'descriptor': {shape: [2, 1, 4], dataType: 'int64'} 1625 } 1626 } 1627 } 1628 }, 1629 { 1630 'name': 'argMax float16 4D tensor, axis=3, all options', 1631 'graph': { 1632 'inputs': { 1633 'argMaxInput': { 1634 'data': [ 1635 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1636 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125, 1637 -51.09375, -6.5390625, 73.8125, 88.4375, -5.29296875, -79.1875, 1638 -41.6875, 73.8125, 88.4375, -84.9375, -61.5, -98.3125 1639 ], 1640 'descriptor': {shape: [2, 1, 4, 3], dataType: 'float16'} 1641 } 1642 }, 1643 'operators': [{ 1644 'name': 'argMax', 1645 'arguments': [ 1646 {'input': 'argMaxInput'}, {'axis': 3}, 1647 {'options': {'keepDimensions': true, 'outputDataType': 'int64'}} 1648 ], 1649 'outputs': 'argMaxOutput' 1650 }], 1651 'expectedOutputs': { 1652 'argMaxOutput': { 1653 'data': [2n, 0n, 2n, 1n, 2n, 0n, 2n, 1n], 1654 'descriptor': {shape: [2, 1, 4, 1], dataType: 'int64'} 1655 } 1656 } 1657 } 1658 }, 1659 1660 { 1661 'name': 'argMax int8 4D tensor, axis=0, all options', 1662 'graph': { 1663 'inputs': { 1664 'argMaxInput': { 1665 'data': [ 1666 -128, -50, -5, -1, 0, 11, 50, 126, -127, -50, 0, 0, 1, 10, 50, 127 1667 ], 1668 'descriptor': {shape: [2, 2, 2, 2], dataType: 'int8'} 1669 } 1670 }, 1671 'operators': [{ 1672 'name': 'argMax', 1673 'arguments': [ 1674 {'input': 'argMaxInput'}, {'axis': 0}, 1675 {'options': {'keepDimensions': true, 'outputDataType': 'int64'}} 1676 ], 1677 'outputs': 'argMaxOutput' 1678 }], 1679 'expectedOutputs': { 1680 'argMaxOutput': { 1681 'data': [1n, 0n, 1n, 1n, 1n, 0n, 0n, 1n], 1682 'descriptor': {shape: [1, 2, 2, 2], dataType: 'int64'} 1683 } 1684 } 1685 } 1686 }, 1687 { 1688 'name': 'argMax uint8 4D tensor, axis=1, all options', 1689 'graph': { 1690 'inputs': { 1691 'argMaxInput': { 1692 'data': [ 1693 0, 0, 254, 10, 1, 255, 1, 11, 21, 50, 128, 254, 20, 50, 127, 255 1694 ], 1695 'descriptor': {shape: [2, 2, 2, 2], dataType: 'uint8'} 1696 } 1697 }, 1698 'operators': [{ 1699 'name': 'argMax', 1700 'arguments': [ 1701 {'input': 'argMaxInput'}, {'axis': 1}, 1702 {'options': {'keepDimensions': true, 'outputDataType': 'int32'}} 1703 ], 1704 'outputs': 'argMaxOutput' 1705 }], 1706 'expectedOutputs': { 1707 'argMaxOutput': { 1708 'data': [1, 1, 0, 1, 0, 0, 0, 1], 1709 'descriptor': {shape: [2, 1, 2, 2], dataType: 'int32'} 1710 } 1711 } 1712 } 1713 }, 1714 { 1715 'name': 'argMax int32 4D tensor, axis=0, all options', 1716 'graph': { 1717 'inputs': { 1718 'argMaxInput': { 1719 'data': [ 1720 3, -24, 5, -48, 40, 60, -82, 96, 71, 38, -39, 31, 1721 -82, -96, -25, -16, 66, 82, -82, 96, 39, 42, 82, 85 1722 ], 1723 'descriptor': {shape: [2, 1, 4, 3], dataType: 'int32'} 1724 } 1725 }, 1726 'operators': [{ 1727 'name': 'argMax', 1728 'arguments': [ 1729 {'input': 'argMaxInput'}, {'axis': 0}, 1730 {'options': {'keepDimensions': true, 'outputDataType': 'int64'}} 1731 ], 1732 'outputs': 'argMaxOutput' 1733 }], 1734 'expectedOutputs': { 1735 'argMaxOutput': { 1736 'data': [0n, 0n, 0n, 1n, 1n, 1n, 0n, 0n, 0n, 1n, 1n, 1n], 1737 'descriptor': {shape: [1, 1, 4, 3], dataType: 'int64'} 1738 } 1739 } 1740 } 1741 }, 1742 { 1743 'name': 'argMax uint32 4D tensor, axis=1, all options', 1744 'graph': { 1745 'inputs': { 1746 'argMaxInput': { 1747 'data': [ 1748 0, 0, 254, 10, 1, 512, 1, 11, 21, 50, 128, 254, 20, 50, 127, 512 1749 ], 1750 'descriptor': {shape: [2, 2, 2, 2], dataType: 'uint32'} 1751 } 1752 }, 1753 'operators': [{ 1754 'name': 'argMax', 1755 'arguments': [ 1756 {'input': 'argMaxInput'}, {'axis': 1}, 1757 {'options': {'keepDimensions': true, 'outputDataType': 'int32'}} 1758 ], 1759 'outputs': 'argMaxOutput' 1760 }], 1761 'expectedOutputs': { 1762 'argMaxOutput': { 1763 'data': [1, 1, 0, 1, 0, 0, 0, 1], 1764 'descriptor': {shape: [2, 1, 2, 2], dataType: 'int32'} 1765 } 1766 } 1767 } 1768 }, 1769 { 1770 'name': 'argMax int64 4D tensor, axis=0, all options', 1771 'graph': { 1772 'inputs': { 1773 'argMaxInput': { 1774 'data': [ 1775 3n, -24n, 5n, -48n, 40n, 60n, -82n, 96n, 71n, 38n, -39n, 31n, 1776 -82n, -96n, -25n, -16n, 66n, 82n, -82n, 96n, 39n, 42n, 82n, 85n 1777 ], 1778 'descriptor': {shape: [2, 1, 4, 3], dataType: 'int64'} 1779 } 1780 }, 1781 'operators': [{ 1782 'name': 'argMax', 1783 'arguments': [ 1784 {'input': 'argMaxInput'}, {'axis': 0}, 1785 {'options': {'keepDimensions': true, 'outputDataType': 'int64'}} 1786 ], 1787 'outputs': 'argMaxOutput' 1788 }], 1789 'expectedOutputs': { 1790 'argMaxOutput': { 1791 'data': [0n, 0n, 0n, 1n, 1n, 1n, 0n, 0n, 0n, 1n, 1n, 1n], 1792 'descriptor': {shape: [1, 1, 4, 3], dataType: 'int64'} 1793 } 1794 } 1795 } 1796 }, 1797 { 1798 'name': 'argMax uint64 4D tensor, axis=1, all options', 1799 'graph': { 1800 'inputs': { 1801 'argMaxInput': { 1802 'data': [ 1803 0n, 0n, 254n, 10n, 1n, 512n, 1n, 11n, 1804 21n, 50n, 128n, 254n, 20n, 50n, 127n, 512n 1805 ], 1806 'descriptor': {shape: [2, 2, 2, 2], dataType: 'uint64'} 1807 } 1808 }, 1809 'operators': [{ 1810 'name': 'argMax', 1811 'arguments': [ 1812 {'input': 'argMaxInput'}, {'axis': 1}, 1813 {'options': {'keepDimensions': true, 'outputDataType': 'int32'}} 1814 ], 1815 'outputs': 'argMaxOutput' 1816 }], 1817 'expectedOutputs': { 1818 'argMaxOutput': { 1819 'data': [1, 1, 0, 1, 0, 0, 0, 1], 1820 'descriptor': {shape: [2, 1, 2, 2], dataType: 'int32'} 1821 } 1822 } 1823 } 1824 } 1825 ]; 1826 1827 webnn_conformance_test( 1828 argMinMaxTests, buildAndExecuteGraph, getPrecisionTolerance);