tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

conv_transpose2d.https.any.js (110673B)


      1 // META: title=test WebNN API convTranspose2d operation
      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-convtranspose2d
     12 // Compute a 2-D transposed convolution given 4-D input and filter tensors.
     13 //
     14 // enum MLConvTranspose2dFilterOperandLayout {
     15 //   "iohw",
     16 //   "hwoi",
     17 //   "ohwi"
     18 // };
     19 //
     20 // dictionary MLConvTranspose2dOptions {
     21 //   sequence<[EnforceRange] unsigned long> padding;
     22 //   sequence<[EnforceRange] unsigned long> strides;
     23 //   sequence<[EnforceRange] unsigned long> dilations;
     24 //   sequence<[EnforceRange] unsigned long> outputPadding;
     25 //   sequence<[EnforceRange] unsigned long> outputSizes;
     26 //   [EnforceRange] unsigned long groups = 1;
     27 //   MLInputOperandLayout inputLayout = "nchw";
     28 //   MLConvTranspose2dFilterOperandLayout filterLayout = "iohw";
     29 //   MLOperand bias;
     30 // };
     31 //
     32 // MLOperand convTranspose2d(
     33 //     MLOperand input, MLOperand filter,
     34 //     optional MLConvTranspose2dOptions options = {});
     35 
     36 
     37 const convTranspose2dTests = [
     38  {
     39    'name':
     40        'convTranspose2d float32 4D both input and filter non-constant tensors default options',
     41    'graph': {
     42      'inputs': {
     43        'convTranspose2dInput': {
     44          'data': [
     45            0.5872158408164978, 0.6077792048454285, 0.017289165407419205,
     46            0.2614607512950897
     47          ],
     48          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float32'}
     49        },
     50        'convTranspose2dFilter': {
     51          'data': [
     52            0.3292713165283203, 0.5866857171058655, 0.29701370000839233,
     53            0.0033378428779542446
     54          ],
     55          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float32'}
     56        }
     57      },
     58      'operators': [{
     59        'name': 'convTranspose2d',
     60        'arguments': [
     61          {'input': 'convTranspose2dInput'}, {'filter': 'convTranspose2dFilter'}
     62        ],
     63        'outputs': 'convTranspose2dOutput'
     64      }],
     65      'expectedOutputs': {
     66        'convTranspose2dOutput': {
     67          'data': [
     68            0.1933533400297165, 0.5446354150772095, 0.3565753698348999,
     69            0.18010397255420685, 0.2787136137485504, 0.15542395412921906,
     70            0.0051351189613342285, 0.07771513611078262, 0.0008727149106562138
     71          ],
     72          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
     73        }
     74      }
     75    }
     76  },
     77  {
     78    'name':
     79        'convTranspose2d float32 4D both input and filter constant tensors default options',
     80    'graph': {
     81      'inputs': {
     82        'convTranspose2dInput': {
     83          'data': [
     84            0.5872158408164978, 0.6077792048454285, 0.017289165407419205,
     85            0.2614607512950897
     86          ],
     87          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float32'},
     88          'constant': true
     89        },
     90        'convTranspose2dFilter': {
     91          'data': [
     92            0.3292713165283203, 0.5866857171058655, 0.29701370000839233,
     93            0.0033378428779542446
     94          ],
     95          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float32'},
     96          'constant': true
     97        }
     98      },
     99      'operators': [{
    100        'name': 'convTranspose2d',
    101        'arguments': [
    102          {'input': 'convTranspose2dInput'}, {'filter': 'convTranspose2dFilter'}
    103        ],
    104        'outputs': 'convTranspose2dOutput'
    105      }],
    106      'expectedOutputs': {
    107        'convTranspose2dOutput': {
    108          'data': [
    109            0.1933533400297165, 0.5446354150772095, 0.3565753698348999,
    110            0.18010397255420685, 0.2787136137485504, 0.15542395412921906,
    111            0.0051351189613342285, 0.07771513611078262, 0.0008727149106562138
    112          ],
    113          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
    114        }
    115      }
    116    }
    117  },
    118  {
    119    'name':
    120        'convTranspose2d float32 4D input and filter tensors default options',
    121    'graph': {
    122      'inputs': {
    123        'convTranspose2dInput': {
    124          'data': [
    125            0.5872158408164978, 0.6077792048454285, 0.017289165407419205,
    126            0.2614607512950897
    127          ],
    128          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float32'}
    129        },
    130        'convTranspose2dFilter': {
    131          'data': [
    132            0.3292713165283203, 0.5866857171058655, 0.29701370000839233,
    133            0.0033378428779542446
    134          ],
    135          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float32'},
    136          'constant': true
    137        }
    138      },
    139      'operators': [{
    140        'name': 'convTranspose2d',
    141        'arguments': [
    142          {'input': 'convTranspose2dInput'}, {'filter': 'convTranspose2dFilter'}
    143        ],
    144        'outputs': 'convTranspose2dOutput'
    145      }],
    146      'expectedOutputs': {
    147        'convTranspose2dOutput': {
    148          'data': [
    149            0.1933533400297165, 0.5446354150772095, 0.3565753698348999,
    150            0.18010397255420685, 0.2787136137485504, 0.15542395412921906,
    151            0.0051351189613342285, 0.07771513611078262, 0.0008727149106562138
    152          ],
    153          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
    154        }
    155      }
    156    }
    157  },
    158  {
    159    'name':
    160        'convTranspose2d float32 4D input and filter tensors options.groups',
    161    'graph': {
    162      'inputs': {
    163        'convTranspose2dInput': {
    164          'data': [
    165            0.8161798119544983, 0.5442776083946228, 0.7910669445991516,
    166            0.36564111709594727, 0.25429198145866394, 0.20815767347812653,
    167            0.7023073434829712, 0.5734469890594482
    168          ],
    169          'descriptor': {shape: [1, 2, 2, 2], dataType: 'float32'}
    170        },
    171        'convTranspose2dFilter': {
    172          'data': [
    173            0.09232201427221298, 0.31896016001701355, 0.5445202589035034,
    174            0.6582807898521423, 0.9634373188018799, 0.012118860147893429,
    175            0.9230011701583862, 0.4781944155693054
    176          ],
    177          'descriptor': {shape: [2, 1, 2, 2], dataType: 'float32'},
    178          'constant': true
    179        }
    180      },
    181      'operators': [{
    182        'name': 'convTranspose2d',
    183        'arguments': [
    184          {'input': 'convTranspose2dInput'},
    185          {'filter': 'convTranspose2dFilter'}, {'options': {'groups': 2}}
    186        ],
    187        'outputs': 'convTranspose2dOutput'
    188      }],
    189      'expectedOutputs': {
    190        'convTranspose2dOutput': {
    191          'data': [
    192            0.07535136491060257, 0.3105776607990265, 0.1736028790473938,
    193            0.5174593329429626, 1.1197212934494019, 0.4749124348163605,
    194            0.4307519793510437, 0.7198431491851807, 0.24069452285766602,
    195            0.2449943870306015, 0.20362859964370728, 0.002522633643820882,
    196            0.9113409519195557, 0.8747221827507019, 0.10648936033248901,
    197            0.6482304930686951, 0.865131676197052, 0.2742191553115845
    198          ],
    199          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float32'}
    200        }
    201      }
    202    }
    203  },
    204  {
    205    'name':
    206        'convTranspose2d float32 4D input and filter tensors options.groups=2 options.strides=[2, 2]',
    207    'graph': {
    208      'inputs': {
    209        'convTranspose2dInput': {
    210          'data': [
    211            0.8161798119544983, 0.5442776083946228, 0.7910669445991516,
    212            0.36564111709594727, 0.25429198145866394, 0.20815767347812653,
    213            0.7023073434829712, 0.5734469890594482
    214          ],
    215          'descriptor': {shape: [1, 2, 2, 2], dataType: 'float32'}
    216        },
    217        'convTranspose2dFilter': {
    218          'data': [
    219            0.09232201427221298, 0.31896016001701355, 0.5445202589035034,
    220            0.6582807898521423, 0.9634373188018799, 0.012118860147893429,
    221            0.9230011701583862, 0.4781944155693054
    222          ],
    223          'descriptor': {shape: [2, 1, 2, 2], dataType: 'float32'},
    224          'constant': true
    225        }
    226      },
    227      'operators': [{
    228        'name': 'convTranspose2d',
    229        'arguments': [
    230          {'input': 'convTranspose2dInput'},
    231          {'filter': 'convTranspose2dFilter'},
    232          {'options': {'strides': [2, 2], 'groups': 2}}
    233        ],
    234        'outputs': 'convTranspose2dOutput'
    235      }],
    236      'expectedOutputs': {
    237        'convTranspose2dOutput': {
    238          'data': [
    239            0.07535136491060257, 0.26032882928848267,  0.050248805433511734,
    240            0.1736028790473938,  0.44442644715309143,  0.537275493144989,
    241            0.29637017846107483, 0.3582874834537506,   0.07303289324045181,
    242            0.2523188292980194,  0.03375672549009323,  0.11662495136260986,
    243            0.4307519793510437,  0.5207441449165344,   0.19909898936748505,
    244            0.24069452285766602, 0.2449943870306015,   0.0030817289371043444,
    245            0.20054687559604645, 0.002522633643820882, 0.23471179604530334,
    246            0.12160100787878036, 0.19212977588176727,  0.09953983873128891,
    247            0.6766291260719299,  0.008511164225637913, 0.5524802207946777,
    248            0.00694952392950654, 0.6482304930686951,   0.3358394503593445,
    249            0.5292922258377075,  0.2742191553115845
    250          ],
    251          'descriptor': {shape: [1, 2, 4, 4], dataType: 'float32'}
    252        }
    253      }
    254    }
    255  },
    256  {
    257    'name':
    258        'convTranspose2d float32 4D input and filter tensors options.padding',
    259    'graph': {
    260      'inputs': {
    261        'convTranspose2dInput': {
    262          'data': [
    263            0.5872158408164978, 0.6077792048454285, 0.017289165407419205,
    264            0.2614607512950897
    265          ],
    266          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float32'}
    267        },
    268        'convTranspose2dFilter': {
    269          'data': [
    270            0.3292713165283203, 0.5866857171058655, 0.29701370000839233,
    271            0.0033378428779542446
    272          ],
    273          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float32'},
    274          'constant': true
    275        }
    276      },
    277      'operators': [{
    278        'name': 'convTranspose2d',
    279        'arguments': [
    280          {'input': 'convTranspose2dInput'},
    281          {'filter': 'convTranspose2dFilter'},
    282          {'options': {'padding': [1, 1, 1, 1]}}
    283        ],
    284        'outputs': 'convTranspose2dOutput'
    285      }],
    286      'expectedOutputs': {
    287        'convTranspose2dOutput': {
    288          'data': [0.2787136137485504],
    289          'descriptor': {shape: [1, 1, 1, 1], dataType: 'float32'}
    290        }
    291      }
    292    }
    293  },
    294  {
    295    'name': 'convTranspose2d options.padding is the same upper padding',
    296    'graph': {
    297      'inputs': {
    298        'convTranspose2dInput': {
    299          'data': [0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5],
    300          'descriptor': {shape: [1, 3, 3, 1], dataType: 'float32'}
    301        },
    302        'convTranspose2dFilter': {
    303          'data': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
    304          'descriptor': {shape: [2, 3, 3, 1], dataType: 'float32'},
    305          'constant': true
    306        }
    307      },
    308      'operators': [{
    309        'name': 'convTranspose2d',
    310        'arguments': [
    311          {'input': 'convTranspose2dInput'},
    312          {'filter': 'convTranspose2dFilter'}, {
    313            'options': {
    314              'outputSizes': [6, 6],
    315              'groups': 1,
    316              'strides': [2, 2],
    317              'dilations': [1, 1],
    318              'padding': [0, 1, 0, 1],
    319              'filterLayout': 'ohwi',
    320              'inputLayout': 'nhwc'
    321            }
    322          }
    323        ],
    324        'outputs': 'convTranspose2dOutput'
    325      }],
    326      'expectedOutputs': {
    327        'convTranspose2dOutput': {
    328          'data': [
    329            0.5, 0.5, 0.5, 0.5, 1, 1, 0.5, 0.5, 1, 1, 0.5, 0.5,
    330            0.5, 0.5, 0.5, 0.5, 1, 1, 0.5, 0.5, 1, 1, 0.5, 0.5,
    331            1,   1,   1,   1,   2, 2, 1,   1,   2, 2, 1,   1,
    332            0.5, 0.5, 0.5, 0.5, 1, 1, 0.5, 0.5, 1, 1, 0.5, 0.5,
    333            1,   1,   1,   1,   2, 2, 1,   1,   2, 2, 1,   1,
    334            0.5, 0.5, 0.5, 0.5, 1, 1, 0.5, 0.5, 1, 1, 0.5, 0.5
    335          ],
    336          'descriptor': {shape: [1, 6, 6, 2], dataType: 'float32'}
    337        }
    338      }
    339    }
    340  },
    341  {
    342    'name':
    343        'convTranspose2d float32 4D input and filter tensors options.strides',
    344    'graph': {
    345      'inputs': {
    346        'convTranspose2dInput': {
    347          'data': [
    348            0.05605664849281311, 0.7114229798316956, 0.6529743671417236,
    349            0.38622909784317017, 0.3870837390422821, 0.9461629390716553,
    350            0.09573192149400711, 0.9234652519226074, 0.636277973651886
    351          ],
    352          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
    353        },
    354        'convTranspose2dFilter': {
    355          'data': [
    356            0.8614422678947449, 0.6267672777175903, 0.6366490125656128,
    357            0.8382642269134521, 0.11884837597608566, 0.9921330213546753,
    358            0.3285411298274994, 0.8742373585700989, 0.7205492258071899,
    359            0.9801966547966003, 0.06169835478067398, 0.3220160901546478,
    360            0.7498031854629517, 0.3930714726448059, 0.13811933994293213,
    361            0.28385090827941895, 0.4235861301422119, 0.1448512077331543
    362          ],
    363          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float32'},
    364          'constant': true
    365        }
    366      },
    367      'operators': [{
    368        'name': 'convTranspose2d',
    369        'arguments': [
    370          {'input': 'convTranspose2dInput'},
    371          {'filter': 'convTranspose2dFilter'}, {'options': {'strides': [3, 2]}}
    372        ],
    373        'outputs': 'convTranspose2dOutput'
    374      }],
    375      'expectedOutputs': {
    376        'convTranspose2dOutput': {
    377          'data': [
    378            0.04828956723213196,  0.03513447195291519,   0.6485382318496704,
    379            0.4458966553211212,   1.015426516532898,     0.4092629551887512,
    380            0.4157154858112335,   0.0469902828335762,    0.0066622416488826275,
    381            0.6519761085510254,   0.08455146849155426,   1.2531912326812744,
    382            0.07760494202375412,  0.6478374600410461,    0.018416915088891983,
    383            0.04900681599974632,  0.27412328124046326,   0.6219525337219238,
    384            0.7271442413330078,   0.5708546042442322,    0.4705001711845398,
    385            0.3327140808105469,   0.24207575619220734,   0.5793426632881165,
    386            0.24261142313480377,  1.0615012645721436,    0.593023955821991,
    387            0.6023737192153931,   0.32376202940940857,   0.04590269923210144,
    388            0.7076690793037415,   0.0460042729973793,    1.177173137664795,
    389            0.11244992911815643,  0.9387195110321045,    0.12689214944839478,
    390            0.3376559019088745,   0.40547001361846924,   0.3384030759334564,
    391            0.5897663235664368,   0.8271709680557251,    0.6817569732666016,
    392            0.08246752619743347,  0.06000163406133652,   0.8564596176147461,
    393            0.5787978172302246,   1.1360399723052979,    0.39879822731018066,
    394            0.4050857424736023,   0.0802486464381218,    0.011377583257853985,
    395            0.8690866827964783,   0.1097523421049118,    1.4495694637298584,
    396            0.0756206065416336,   0.6312723755836487,    0.03145187348127365,
    397            0.08369242399930954,  0.37237587571144104,   0.8073278069496155,
    398            0.8744456768035889,   0.556257963180542,     0.45846959948539734,
    399            0.05494653806090355,  0.0034586030524224043, 0.7153855562210083,
    400            0.04389362782239914,  0.869132936000824,     0.04028744250535965,
    401            0.21026825904846191,  0.04203145205974579,   0.02203426882624626,
    402            0.5411697030067444,   0.2796400785446167,    0.5878635048866272,
    403            0.25666558742523193,  0.0901883915066719,    0.015911730006337166,
    404            0.023744819685816765, 0.21005792915821075,   0.30134889483451843,
    405            0.2883978486061096,   0.27659088373184204,   0.09458412230014801,
    406            0.3785804808139801,   0.02382970042526722,   0.5037901997566223,
    407            0.0238824300467968,   1.0520728826522827,    0.05837669596076012,
    408            0.3046796917915344,   0.2895958125591278,    0.15181563794612885,
    409            0.3435823321342468,   0.15215156972408295,   0.7628997564315796,
    410            0.37190964818000793,  0.13068340718746185,   0.1096314787864685,
    411            0.16360129415988922,  0.16581982374191284,   0.16396330296993256,
    412            0.3246387541294098,   0.400781512260437,     0.13705284893512726,
    413            0.09383610635995865,  0.00590650225058198,   0.9360047578811646,
    414            0.05697628855705261,  0.9210482239723206,    0.03925730288028717,
    415            0.20489174127578735,  0.07178010046482086,   0.03762948885560036,
    416            0.7056396007537842,   0.36298784613609314,   0.6046316623687744,
    417            0.2501027286052704,   0.08788229525089264,   0.027173593640327454,
    418            0.04055071249604225,  0.27599334716796875,   0.3911670744419098,
    419            0.3143731355667114,   0.26951852440834045,   0.09216563403606415
    420          ],
    421          'descriptor': {shape: [1, 2, 9, 7], dataType: 'float32'}
    422        }
    423      }
    424    }
    425  },
    426  {
    427    'name':
    428        'convTranspose2d float32 4D input and filter tensors options.dilations',
    429    'graph': {
    430      'inputs': {
    431        'convTranspose2dInput': {
    432          'data': [
    433            0.3194596767425537, 0.9762163758277893, 0.4131408631801605,
    434            0.47982943058013916, 0.76741623878479, 0.9083173871040344,
    435            0.6205142140388489, 0.6580719947814941, 0.6553052067756653
    436          ],
    437          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
    438        },
    439        'convTranspose2dFilter': {
    440          'data': [
    441            0.6835425496101379, 0.9641214609146118, 0.8272836804389954,
    442            0.5771222710609436
    443          ],
    444          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float32'},
    445          'constant': true
    446        }
    447      },
    448      'operators': [{
    449        'name': 'convTranspose2d',
    450        'arguments': [
    451          {'input': 'convTranspose2dInput'},
    452          {'filter': 'convTranspose2dFilter'},
    453          {'options': {'dilations': [2, 2]}}
    454        ],
    455        'outputs': 'convTranspose2dOutput'
    456      }],
    457      'expectedOutputs': {
    458        'convTranspose2dOutput': {
    459          'data': [
    460            0.21836428344249725, 0.6672854423522949,  0.590397298336029,
    461            0.9411911368370056,  0.39831796288490295, 0.3279838263988495,
    462            0.5245616436004639,  1.0834873914718628,  0.7398824691772461,
    463            0.8757283091545105,  0.6884316205978394,  1.2574280500411987,
    464            1.5723320245742798,  1.1978574991226196,  0.8702266216278076,
    465            0.39695504307746887, 0.6348709464073181,  1.0283564329147339,
    466            0.44289299845695496, 0.5242102146148682,  0.5133413076400757,
    467            0.5444121956825256,  0.9002358913421631,  0.37978801131248474,
    468            0.3781912326812744
    469          ],
    470          'descriptor': {shape: [1, 1, 5, 5], dataType: 'float32'}
    471        }
    472      }
    473    }
    474  },
    475  {
    476    'name':
    477        'convTranspose2d float32 4D input and filter tensors options.outputPadding',
    478    'graph': {
    479      'inputs': {
    480        'convTranspose2dInput': {
    481          'data': [
    482            0.05605664849281311, 0.7114229798316956, 0.6529743671417236,
    483            0.38622909784317017, 0.3870837390422821, 0.9461629390716553,
    484            0.09573192149400711, 0.9234652519226074, 0.636277973651886
    485          ],
    486          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
    487        },
    488        'convTranspose2dFilter': {
    489          'data': [
    490            0.8614422678947449, 0.6267672777175903, 0.6366490125656128,
    491            0.8382642269134521, 0.11884837597608566, 0.9921330213546753,
    492            0.3285411298274994, 0.8742373585700989, 0.7205492258071899,
    493            0.9801966547966003, 0.06169835478067398, 0.3220160901546478,
    494            0.7498031854629517, 0.3930714726448059, 0.13811933994293213,
    495            0.28385090827941895, 0.4235861301422119, 0.1448512077331543
    496          ],
    497          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float32'},
    498          'constant': true
    499        }
    500      },
    501      'operators': [{
    502        'name': 'convTranspose2d',
    503        'arguments': [
    504          {'input': 'convTranspose2dInput'},
    505          {'filter': 'convTranspose2dFilter'},
    506          {'options': {'strides': [3, 2], 'outputPadding': [1, 1]}}
    507        ],
    508        'outputs': 'convTranspose2dOutput'
    509      }],
    510      'expectedOutputs': {
    511        'convTranspose2dOutput': {
    512          'data': [
    513            0.04828956723213196,
    514            0.03513447195291519,
    515            0.6485382318496704,
    516            0.4458966553211212,
    517            1.015426516532898,
    518            0.4092629551887512,
    519            0.4157154858112335,
    520            0,
    521            0.0469902828335762,
    522            0.0066622416488826275,
    523            0.6519761085510254,
    524            0.08455146849155426,
    525            1.2531912326812744,
    526            0.07760494202375412,
    527            0.6478374600410461,
    528            0,
    529            0.018416915088891983,
    530            0.04900681599974632,
    531            0.27412328124046326,
    532            0.6219525337219238,
    533            0.7271442413330078,
    534            0.5708546042442322,
    535            0.4705001711845398,
    536            0,
    537            0.3327140808105469,
    538            0.24207575619220734,
    539            0.5793426632881165,
    540            0.24261142313480377,
    541            1.0615012645721436,
    542            0.593023955821991,
    543            0.6023737192153931,
    544            0,
    545            0.32376202940940857,
    546            0.04590269923210144,
    547            0.7076690793037415,
    548            0.0460042729973793,
    549            1.177173137664795,
    550            0.11244992911815643,
    551            0.9387195110321045,
    552            0,
    553            0.12689214944839478,
    554            0.3376559019088745,
    555            0.40547001361846924,
    556            0.3384030759334564,
    557            0.5897663235664368,
    558            0.8271709680557251,
    559            0.6817569732666016,
    560            0,
    561            0.08246752619743347,
    562            0.06000163406133652,
    563            0.8564596176147461,
    564            0.5787978172302246,
    565            1.1360399723052979,
    566            0.39879822731018066,
    567            0.4050857424736023,
    568            0,
    569            0.0802486464381218,
    570            0.011377583257853985,
    571            0.8690866827964783,
    572            0.1097523421049118,
    573            1.4495694637298584,
    574            0.0756206065416336,
    575            0.6312723755836487,
    576            0,
    577            0.03145187348127365,
    578            0.08369242399930954,
    579            0.37237587571144104,
    580            0.8073278069496155,
    581            0.8744456768035889,
    582            0.556257963180542,
    583            0.45846959948539734,
    584            0,
    585            0,
    586            0,
    587            0,
    588            0,
    589            0,
    590            0,
    591            0,
    592            0,
    593            0.05494653806090355,
    594            0.0034586030524224043,
    595            0.7153855562210083,
    596            0.04389362782239914,
    597            0.869132936000824,
    598            0.04028744250535965,
    599            0.21026825904846191,
    600            0,
    601            0.04203145205974579,
    602            0.02203426882624626,
    603            0.5411697030067444,
    604            0.2796400785446167,
    605            0.5878635048866272,
    606            0.25666558742523193,
    607            0.0901883915066719,
    608            0,
    609            0.015911730006337166,
    610            0.023744819685816765,
    611            0.21005792915821075,
    612            0.30134889483451843,
    613            0.2883978486061096,
    614            0.27659088373184204,
    615            0.09458412230014801,
    616            0,
    617            0.3785804808139801,
    618            0.02382970042526722,
    619            0.5037901997566223,
    620            0.0238824300467968,
    621            1.0520728826522827,
    622            0.05837669596076012,
    623            0.3046796917915344,
    624            0,
    625            0.2895958125591278,
    626            0.15181563794612885,
    627            0.3435823321342468,
    628            0.15215156972408295,
    629            0.7628997564315796,
    630            0.37190964818000793,
    631            0.13068340718746185,
    632            0,
    633            0.1096314787864685,
    634            0.16360129415988922,
    635            0.16581982374191284,
    636            0.16396330296993256,
    637            0.3246387541294098,
    638            0.400781512260437,
    639            0.13705284893512726,
    640            0,
    641            0.09383610635995865,
    642            0.00590650225058198,
    643            0.9360047578811646,
    644            0.05697628855705261,
    645            0.9210482239723206,
    646            0.03925730288028717,
    647            0.20489174127578735,
    648            0,
    649            0.07178010046482086,
    650            0.03762948885560036,
    651            0.7056396007537842,
    652            0.36298784613609314,
    653            0.6046316623687744,
    654            0.2501027286052704,
    655            0.08788229525089264,
    656            0,
    657            0.027173593640327454,
    658            0.04055071249604225,
    659            0.27599334716796875,
    660            0.3911670744419098,
    661            0.3143731355667114,
    662            0.26951852440834045,
    663            0.09216563403606415,
    664            0,
    665            0,
    666            0,
    667            0,
    668            0,
    669            0,
    670            0,
    671            0,
    672            0
    673          ],
    674          'descriptor': {shape: [1, 2, 10, 8], dataType: 'float32'}
    675        }
    676      }
    677    }
    678  },
    679  {
    680    'name':
    681        'convTranspose2d float32 4D input and filter tensors options.outputSizes',
    682    'graph': {
    683      'inputs': {
    684        'convTranspose2dInput': {
    685          'data': [
    686            0.05605664849281311, 0.7114229798316956, 0.6529743671417236,
    687            0.38622909784317017, 0.3870837390422821, 0.9461629390716553,
    688            0.09573192149400711, 0.9234652519226074, 0.636277973651886
    689          ],
    690          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
    691        },
    692        'convTranspose2dFilter': {
    693          'data': [
    694            0.8614422678947449, 0.6267672777175903, 0.6366490125656128,
    695            0.8382642269134521, 0.11884837597608566, 0.9921330213546753,
    696            0.3285411298274994, 0.8742373585700989, 0.7205492258071899,
    697            0.9801966547966003, 0.06169835478067398, 0.3220160901546478,
    698            0.7498031854629517, 0.3930714726448059, 0.13811933994293213,
    699            0.28385090827941895, 0.4235861301422119, 0.1448512077331543
    700          ],
    701          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float32'},
    702          'constant': true
    703        }
    704      },
    705      'operators': [{
    706        'name': 'convTranspose2d',
    707        'arguments': [
    708          {'input': 'convTranspose2dInput'},
    709          {'filter': 'convTranspose2dFilter'},
    710          {'options': {'strides': [3, 2], 'outputSizes': [10, 8]}}
    711        ],
    712        'outputs': 'convTranspose2dOutput'
    713      }],
    714      'expectedOutputs': {
    715        'convTranspose2dOutput': {
    716          'data': [
    717            0.04828956723213196,
    718            0.03513447195291519,
    719            0.6485382318496704,
    720            0.4458966553211212,
    721            1.015426516532898,
    722            0.4092629551887512,
    723            0.4157154858112335,
    724            0,
    725            0.0469902828335762,
    726            0.0066622416488826275,
    727            0.6519761085510254,
    728            0.08455146849155426,
    729            1.2531912326812744,
    730            0.07760494202375412,
    731            0.6478374600410461,
    732            0,
    733            0.018416915088891983,
    734            0.04900681599974632,
    735            0.27412328124046326,
    736            0.6219525337219238,
    737            0.7271442413330078,
    738            0.5708546042442322,
    739            0.4705001711845398,
    740            0,
    741            0.3327140808105469,
    742            0.24207575619220734,
    743            0.5793426632881165,
    744            0.24261142313480377,
    745            1.0615012645721436,
    746            0.593023955821991,
    747            0.6023737192153931,
    748            0,
    749            0.32376202940940857,
    750            0.04590269923210144,
    751            0.7076690793037415,
    752            0.0460042729973793,
    753            1.177173137664795,
    754            0.11244992911815643,
    755            0.9387195110321045,
    756            0,
    757            0.12689214944839478,
    758            0.3376559019088745,
    759            0.40547001361846924,
    760            0.3384030759334564,
    761            0.5897663235664368,
    762            0.8271709680557251,
    763            0.6817569732666016,
    764            0,
    765            0.08246752619743347,
    766            0.06000163406133652,
    767            0.8564596176147461,
    768            0.5787978172302246,
    769            1.1360399723052979,
    770            0.39879822731018066,
    771            0.4050857424736023,
    772            0,
    773            0.0802486464381218,
    774            0.011377583257853985,
    775            0.8690866827964783,
    776            0.1097523421049118,
    777            1.4495694637298584,
    778            0.0756206065416336,
    779            0.6312723755836487,
    780            0,
    781            0.03145187348127365,
    782            0.08369242399930954,
    783            0.37237587571144104,
    784            0.8073278069496155,
    785            0.8744456768035889,
    786            0.556257963180542,
    787            0.45846959948539734,
    788            0,
    789            0,
    790            0,
    791            0,
    792            0,
    793            0,
    794            0,
    795            0,
    796            0,
    797            0.05494653806090355,
    798            0.0034586030524224043,
    799            0.7153855562210083,
    800            0.04389362782239914,
    801            0.869132936000824,
    802            0.04028744250535965,
    803            0.21026825904846191,
    804            0,
    805            0.04203145205974579,
    806            0.02203426882624626,
    807            0.5411697030067444,
    808            0.2796400785446167,
    809            0.5878635048866272,
    810            0.25666558742523193,
    811            0.0901883915066719,
    812            0,
    813            0.015911730006337166,
    814            0.023744819685816765,
    815            0.21005792915821075,
    816            0.30134889483451843,
    817            0.2883978486061096,
    818            0.27659088373184204,
    819            0.09458412230014801,
    820            0,
    821            0.3785804808139801,
    822            0.02382970042526722,
    823            0.5037901997566223,
    824            0.0238824300467968,
    825            1.0520728826522827,
    826            0.05837669596076012,
    827            0.3046796917915344,
    828            0,
    829            0.2895958125591278,
    830            0.15181563794612885,
    831            0.3435823321342468,
    832            0.15215156972408295,
    833            0.7628997564315796,
    834            0.37190964818000793,
    835            0.13068340718746185,
    836            0,
    837            0.1096314787864685,
    838            0.16360129415988922,
    839            0.16581982374191284,
    840            0.16396330296993256,
    841            0.3246387541294098,
    842            0.400781512260437,
    843            0.13705284893512726,
    844            0,
    845            0.09383610635995865,
    846            0.00590650225058198,
    847            0.9360047578811646,
    848            0.05697628855705261,
    849            0.9210482239723206,
    850            0.03925730288028717,
    851            0.20489174127578735,
    852            0,
    853            0.07178010046482086,
    854            0.03762948885560036,
    855            0.7056396007537842,
    856            0.36298784613609314,
    857            0.6046316623687744,
    858            0.2501027286052704,
    859            0.08788229525089264,
    860            0,
    861            0.027173593640327454,
    862            0.04055071249604225,
    863            0.27599334716796875,
    864            0.3911670744419098,
    865            0.3143731355667114,
    866            0.26951852440834045,
    867            0.09216563403606415,
    868            0,
    869            0,
    870            0,
    871            0,
    872            0,
    873            0,
    874            0,
    875            0,
    876            0
    877          ],
    878          'descriptor': {shape: [1, 2, 10, 8], dataType: 'float32'}
    879        }
    880      }
    881    }
    882  },
    883  {
    884    'name':
    885        'convTranspose2d float32 4D input and filter tensors options.inputLayout=nchw',
    886    'graph': {
    887      'inputs': {
    888        'convTranspose2dInput': {
    889          'data': [
    890            0.05605664849281311, 0.7114229798316956, 0.6529743671417236,
    891            0.38622909784317017, 0.3870837390422821, 0.9461629390716553,
    892            0.09573192149400711, 0.9234652519226074, 0.636277973651886
    893          ],
    894          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
    895        },
    896        'convTranspose2dFilter': {
    897          'data': [
    898            0.8614422678947449, 0.6267672777175903, 0.6366490125656128,
    899            0.8382642269134521, 0.11884837597608566, 0.9921330213546753,
    900            0.3285411298274994, 0.8742373585700989, 0.7205492258071899,
    901            0.9801966547966003, 0.06169835478067398, 0.3220160901546478,
    902            0.7498031854629517, 0.3930714726448059, 0.13811933994293213,
    903            0.28385090827941895, 0.4235861301422119, 0.1448512077331543
    904          ],
    905          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float32'},
    906          'constant': true
    907        }
    908      },
    909      'operators': [{
    910        'name': 'convTranspose2d',
    911        'arguments': [
    912          {'input': 'convTranspose2dInput'},
    913          {'filter': 'convTranspose2dFilter'},
    914          {'options': {'inputLayout': 'nchw'}}
    915        ],
    916        'outputs': 'convTranspose2dOutput'
    917      }],
    918      'expectedOutputs': {
    919        'convTranspose2dOutput': {
    920          'data': [
    921            0.04828956723213196,  0.6479843258857727,  1.0440847873687744,
    922            0.8621897101402283,   0.4157154858112335,  0.3797043561935425,
    923            1.1785486936569214,   1.9911006689071655,  1.6228916645050049,
    924            1.2502111196517944,   0.4246464669704437,  1.5086332559585571,
    925            3.287064790725708,    2.5666797161102295,  1.8143054246902466,
    926            0.20714078843593597,  1.2503143548965454,  1.6656538248062134,
    927            2.097904920578003,    1.313029408454895,   0.03145187348127365,
    928            0.38708874583244324,  1.0853508710861206,  1.2216601371765137,
    929            0.45846959948539734,  0.05494653806090355, 0.7007930278778076,
    930            0.7019880414009094,   0.26937708258628845, 0.21026825904846191,
    931            0.4206119179725647,   0.9587093591690063,  1.8526650667190552,
    932            0.5379507541656494,   0.39486807584762573, 0.3993436396121979,
    933            1.5788191556930542,   2.121230363845825,   1.141642689704895,
    934            0.4301592707633972,   0.18141157925128937, 1.0035220384597778,
    935            1.3417718410491943,   0.8345021605491638,  0.2249351441860199,
    936            0.027173593640327454, 0.3026771545410156,  0.5856420397758484,
    937            0.40328359603881836,  0.09216563403606415
    938          ],
    939          'descriptor': {shape: [1, 2, 5, 5], dataType: 'float32'}
    940        }
    941      }
    942    }
    943  },
    944  {
    945    'name':
    946        'convTranspose2d float32 4D input and filter tensors options.inputLayout=nhwc',
    947    'graph': {
    948      'inputs': {
    949        'convTranspose2dInput': {
    950          'data': [
    951            0.05605664849281311, 0.7114229798316956, 0.6529743671417236,
    952            0.38622909784317017, 0.3870837390422821, 0.9461629390716553,
    953            0.09573192149400711, 0.9234652519226074, 0.636277973651886
    954          ],
    955          'descriptor': {shape: [1, 3, 3, 1], dataType: 'float32'}
    956        },
    957        'convTranspose2dFilter': {
    958          'data': [
    959            0.8614422678947449, 0.6267672777175903, 0.6366490125656128,
    960            0.8382642269134521, 0.11884837597608566, 0.9921330213546753,
    961            0.3285411298274994, 0.8742373585700989, 0.7205492258071899,
    962            0.9801966547966003, 0.06169835478067398, 0.3220160901546478,
    963            0.7498031854629517, 0.3930714726448059, 0.13811933994293213,
    964            0.28385090827941895, 0.4235861301422119, 0.1448512077331543
    965          ],
    966          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float32'},
    967          'constant': true
    968        }
    969      },
    970      'operators': [{
    971        'name': 'convTranspose2d',
    972        'arguments': [
    973          {'input': 'convTranspose2dInput'},
    974          {'filter': 'convTranspose2dFilter'},
    975          {'options': {'inputLayout': 'nhwc'}}
    976        ],
    977        'outputs': 'convTranspose2dOutput'
    978      }],
    979      'expectedOutputs': {
    980        'convTranspose2dOutput': {
    981          'data': [
    982            0.04828956723213196, 0.05494653806090355, 0.6479843258857727,
    983            0.7007930278778076,  1.0440847873687744,  0.7019880414009094,
    984            0.8621897101402283,  0.26937708258628845, 0.4157154858112335,
    985            0.21026825904846191, 0.3797043561935425,  0.4206119179725647,
    986            1.1785486936569214,  0.9587093591690063,  1.9911006689071655,
    987            1.8526650667190552,  1.6228916645050049,  0.5379507541656494,
    988            1.2502111196517944,  0.39486807584762573, 0.4246464669704437,
    989            0.3993436396121979,  1.5086332559585571,  1.5788191556930542,
    990            3.287064790725708,   2.121230363845825,   2.5666797161102295,
    991            1.141642689704895,   1.8143054246902466,  0.4301592707633972,
    992            0.20714078843593597, 0.18141157925128937, 1.2503143548965454,
    993            1.0035220384597778,  1.6656538248062134,  1.3417718410491943,
    994            2.097904920578003,   0.8345021605491638,  1.313029408454895,
    995            0.2249351441860199,  0.03145187348127365, 0.027173593640327454,
    996            0.38708874583244324, 0.3026771545410156,  1.0853508710861206,
    997            0.5856420397758484,  1.2216601371765137,  0.40328359603881836,
    998            0.45846959948539734, 0.09216563403606415
    999          ],
   1000          'descriptor': {shape: [1, 5, 5, 2], dataType: 'float32'}
   1001        }
   1002      }
   1003    }
   1004  },
   1005  {
   1006    'name':
   1007        'convTranspose2d float32 4D input and filter tensors options.filterLayout=iohw',
   1008    'graph': {
   1009      'inputs': {
   1010        'convTranspose2dInput': {
   1011          'data': [
   1012            0.05605664849281311, 0.7114229798316956, 0.6529743671417236,
   1013            0.38622909784317017, 0.3870837390422821, 0.9461629390716553,
   1014            0.09573192149400711, 0.9234652519226074, 0.636277973651886
   1015          ],
   1016          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
   1017        },
   1018        'convTranspose2dFilter': {
   1019          'data': [
   1020            0.8614422678947449, 0.6267672777175903, 0.6366490125656128,
   1021            0.8382642269134521, 0.11884837597608566, 0.9921330213546753,
   1022            0.3285411298274994, 0.8742373585700989, 0.7205492258071899,
   1023            0.9801966547966003, 0.06169835478067398, 0.3220160901546478,
   1024            0.7498031854629517, 0.3930714726448059, 0.13811933994293213,
   1025            0.28385090827941895, 0.4235861301422119, 0.1448512077331543
   1026          ],
   1027          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float32'},
   1028          'constant': true
   1029        }
   1030      },
   1031      'operators': [{
   1032        'name': 'convTranspose2d',
   1033        'arguments': [
   1034          {'input': 'convTranspose2dInput'},
   1035          {'filter': 'convTranspose2dFilter'},
   1036          {'options': {'filterLayout': 'iohw'}}
   1037        ],
   1038        'outputs': 'convTranspose2dOutput'
   1039      }],
   1040      'expectedOutputs': {
   1041        'convTranspose2dOutput': {
   1042          'data': [
   1043            0.04828956723213196,  0.6479843258857727,  1.0440847873687744,
   1044            0.8621897101402283,   0.4157154858112335,  0.3797043561935425,
   1045            1.1785486936569214,   1.9911006689071655,  1.6228916645050049,
   1046            1.2502111196517944,   0.4246464669704437,  1.5086332559585571,
   1047            3.287064790725708,    2.5666797161102295,  1.8143054246902466,
   1048            0.20714078843593597,  1.2503143548965454,  1.6656538248062134,
   1049            2.097904920578003,    1.313029408454895,   0.03145187348127365,
   1050            0.38708874583244324,  1.0853508710861206,  1.2216601371765137,
   1051            0.45846959948539734,  0.05494653806090355, 0.7007930278778076,
   1052            0.7019880414009094,   0.26937708258628845, 0.21026825904846191,
   1053            0.4206119179725647,   0.9587093591690063,  1.8526650667190552,
   1054            0.5379507541656494,   0.39486807584762573, 0.3993436396121979,
   1055            1.5788191556930542,   2.121230363845825,   1.141642689704895,
   1056            0.4301592707633972,   0.18141157925128937, 1.0035220384597778,
   1057            1.3417718410491943,   0.8345021605491638,  0.2249351441860199,
   1058            0.027173593640327454, 0.3026771545410156,  0.5856420397758484,
   1059            0.40328359603881836,  0.09216563403606415
   1060          ],
   1061          'descriptor': {shape: [1, 2, 5, 5], dataType: 'float32'}
   1062        }
   1063      }
   1064    }
   1065  },
   1066  {
   1067    'name':
   1068        'convTranspose2d float32 4D input and filter tensors options.filterLayout=hwoi',
   1069    'graph': {
   1070      'inputs': {
   1071        'convTranspose2dInput': {
   1072          'data': [
   1073            0.05605664849281311, 0.7114229798316956, 0.6529743671417236,
   1074            0.38622909784317017, 0.3870837390422821, 0.9461629390716553,
   1075            0.09573192149400711, 0.9234652519226074, 0.636277973651886
   1076          ],
   1077          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
   1078        },
   1079        'convTranspose2dFilter': {
   1080          'data': [
   1081            0.8614422678947449, 0.9801966547966003, 0.6267672777175903,
   1082            0.06169835478067398, 0.6366490125656128, 0.3220160901546478,
   1083            0.8382642269134521, 0.7498031854629517, 0.11884837597608566,
   1084            0.3930714726448059, 0.9921330213546753, 0.13811933994293213,
   1085            0.3285411298274994, 0.28385090827941895, 0.8742373585700989,
   1086            0.4235861301422119, 0.7205492258071899, 0.1448512077331543
   1087          ],
   1088          'descriptor': {shape: [3, 3, 2, 1], dataType: 'float32'},
   1089          'constant': true
   1090        }
   1091      },
   1092      'operators': [{
   1093        'name': 'convTranspose2d',
   1094        'arguments': [
   1095          {'input': 'convTranspose2dInput'},
   1096          {'filter': 'convTranspose2dFilter'},
   1097          {'options': {'filterLayout': 'hwoi'}}
   1098        ],
   1099        'outputs': 'convTranspose2dOutput'
   1100      }],
   1101      'expectedOutputs': {
   1102        'convTranspose2dOutput': {
   1103          'data': [
   1104            0.04828956723213196,  0.6479843258857727,  1.0440847873687744,
   1105            0.8621897101402283,   0.4157154858112335,  0.3797043561935425,
   1106            1.1785486936569214,   1.9911006689071655,  1.6228916645050049,
   1107            1.2502111196517944,   0.4246464669704437,  1.5086332559585571,
   1108            3.287064790725708,    2.5666797161102295,  1.8143054246902466,
   1109            0.20714078843593597,  1.2503143548965454,  1.6656538248062134,
   1110            2.097904920578003,    1.313029408454895,   0.03145187348127365,
   1111            0.38708874583244324,  1.0853508710861206,  1.2216601371765137,
   1112            0.45846959948539734,  0.05494653806090355, 0.7007930278778076,
   1113            0.7019880414009094,   0.26937708258628845, 0.21026825904846191,
   1114            0.4206119179725647,   0.9587093591690063,  1.8526650667190552,
   1115            0.5379507541656494,   0.39486807584762573, 0.3993436396121979,
   1116            1.5788191556930542,   2.121230363845825,   1.141642689704895,
   1117            0.4301592707633972,   0.18141157925128937, 1.0035220384597778,
   1118            1.3417718410491943,   0.8345021605491638,  0.2249351441860199,
   1119            0.027173593640327454, 0.3026771545410156,  0.5856420397758484,
   1120            0.40328359603881836,  0.09216563403606415
   1121          ],
   1122          'descriptor': {shape: [1, 2, 5, 5], dataType: 'float32'}
   1123        }
   1124      }
   1125    }
   1126  },
   1127  {
   1128    'name':
   1129        'convTranspose2d float32 4D input and filter tensors options.filterLayout=ohwi',
   1130    'graph': {
   1131      'inputs': {
   1132        'convTranspose2dInput': {
   1133          'data': [
   1134            0.05605664849281311, 0.7114229798316956, 0.6529743671417236,
   1135            0.38622909784317017, 0.3870837390422821, 0.9461629390716553,
   1136            0.09573192149400711, 0.9234652519226074, 0.636277973651886
   1137          ],
   1138          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
   1139        },
   1140        'convTranspose2dFilter': {
   1141          'data': [
   1142            0.8614422678947449, 0.6267672777175903, 0.6366490125656128,
   1143            0.8382642269134521, 0.11884837597608566, 0.9921330213546753,
   1144            0.3285411298274994, 0.8742373585700989, 0.7205492258071899,
   1145            0.9801966547966003, 0.06169835478067398, 0.3220160901546478,
   1146            0.7498031854629517, 0.3930714726448059, 0.13811933994293213,
   1147            0.28385090827941895, 0.4235861301422119, 0.1448512077331543
   1148          ],
   1149          'descriptor': {shape: [2, 3, 3, 1], dataType: 'float32'},
   1150          'constant': true
   1151        }
   1152      },
   1153      'operators': [{
   1154        'name': 'convTranspose2d',
   1155        'arguments': [
   1156          {'input': 'convTranspose2dInput'},
   1157          {'filter': 'convTranspose2dFilter'},
   1158          {'options': {'filterLayout': 'ohwi'}}
   1159        ],
   1160        'outputs': 'convTranspose2dOutput'
   1161      }],
   1162      'expectedOutputs': {
   1163        'convTranspose2dOutput': {
   1164          'data': [
   1165            0.04828956723213196,  0.6479843258857727,  1.0440847873687744,
   1166            0.8621897101402283,   0.4157154858112335,  0.3797043561935425,
   1167            1.1785486936569214,   1.9911006689071655,  1.6228916645050049,
   1168            1.2502111196517944,   0.4246464669704437,  1.5086332559585571,
   1169            3.287064790725708,    2.5666797161102295,  1.8143054246902466,
   1170            0.20714078843593597,  1.2503143548965454,  1.6656538248062134,
   1171            2.097904920578003,    1.313029408454895,   0.03145187348127365,
   1172            0.38708874583244324,  1.0853508710861206,  1.2216601371765137,
   1173            0.45846959948539734,  0.05494653806090355, 0.7007930278778076,
   1174            0.7019880414009094,   0.26937708258628845, 0.21026825904846191,
   1175            0.4206119179725647,   0.9587093591690063,  1.8526650667190552,
   1176            0.5379507541656494,   0.39486807584762573, 0.3993436396121979,
   1177            1.5788191556930542,   2.121230363845825,   1.141642689704895,
   1178            0.4301592707633972,   0.18141157925128937, 1.0035220384597778,
   1179            1.3417718410491943,   0.8345021605491638,  0.2249351441860199,
   1180            0.027173593640327454, 0.3026771545410156,  0.5856420397758484,
   1181            0.40328359603881836,  0.09216563403606415
   1182          ],
   1183          'descriptor': {shape: [1, 2, 5, 5], dataType: 'float32'}
   1184        }
   1185      }
   1186    }
   1187  },
   1188  {
   1189    'name':
   1190        'convTranspose2d float32 4D input and filter tensors options.inputLayout=nhwc options.filterLayout=iohw',
   1191    'graph': {
   1192      'inputs': {
   1193        'convTranspose2dInput': {
   1194          'data': [
   1195            0.05605664849281311, 0.7114229798316956, 0.6529743671417236,
   1196            0.38622909784317017, 0.3870837390422821, 0.9461629390716553,
   1197            0.09573192149400711, 0.9234652519226074, 0.636277973651886
   1198          ],
   1199          'descriptor': {shape: [1, 3, 3, 1], dataType: 'float32'}
   1200        },
   1201        'convTranspose2dFilter': {
   1202          'data': [
   1203            0.8614422678947449, 0.6267672777175903, 0.6366490125656128,
   1204            0.8382642269134521, 0.11884837597608566, 0.9921330213546753,
   1205            0.3285411298274994, 0.8742373585700989, 0.7205492258071899,
   1206            0.9801966547966003, 0.06169835478067398, 0.3220160901546478,
   1207            0.7498031854629517, 0.3930714726448059, 0.13811933994293213,
   1208            0.28385090827941895, 0.4235861301422119, 0.1448512077331543
   1209          ],
   1210          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float32'},
   1211          'constant': true
   1212        }
   1213      },
   1214      'operators': [{
   1215        'name': 'convTranspose2d',
   1216        'arguments': [
   1217          {'input': 'convTranspose2dInput'},
   1218          {'filter': 'convTranspose2dFilter'},
   1219          {'options': {'inputLayout': 'nhwc', 'filterLayout': 'iohw'}}
   1220        ],
   1221        'outputs': 'convTranspose2dOutput'
   1222      }],
   1223      'expectedOutputs': {
   1224        'convTranspose2dOutput': {
   1225          'data': [
   1226            0.04828956723213196, 0.05494653806090355, 0.6479843258857727,
   1227            0.7007930278778076,  1.0440847873687744,  0.7019880414009094,
   1228            0.8621897101402283,  0.26937708258628845, 0.4157154858112335,
   1229            0.21026825904846191, 0.3797043561935425,  0.4206119179725647,
   1230            1.1785486936569214,  0.9587093591690063,  1.9911006689071655,
   1231            1.8526650667190552,  1.6228916645050049,  0.5379507541656494,
   1232            1.2502111196517944,  0.39486807584762573, 0.4246464669704437,
   1233            0.3993436396121979,  1.5086332559585571,  1.5788191556930542,
   1234            3.287064790725708,   2.121230363845825,   2.5666797161102295,
   1235            1.141642689704895,   1.8143054246902466,  0.4301592707633972,
   1236            0.20714078843593597, 0.18141157925128937, 1.2503143548965454,
   1237            1.0035220384597778,  1.6656538248062134,  1.3417718410491943,
   1238            2.097904920578003,   0.8345021605491638,  1.313029408454895,
   1239            0.2249351441860199,  0.03145187348127365, 0.027173593640327454,
   1240            0.38708874583244324, 0.3026771545410156,  1.0853508710861206,
   1241            0.5856420397758484,  1.2216601371765137,  0.40328359603881836,
   1242            0.45846959948539734, 0.09216563403606415
   1243          ],
   1244          'descriptor': {shape: [1, 5, 5, 2], dataType: 'float32'}
   1245        }
   1246      }
   1247    }
   1248  },
   1249  {
   1250    'name':
   1251        'convTranspose2d float32 4D input and filter tensors options.inputLayout=nhwc options.filterLayout=hwoi',
   1252    'graph': {
   1253      'inputs': {
   1254        'convTranspose2dInput': {
   1255          'data': [
   1256            0.05605664849281311, 0.7114229798316956, 0.6529743671417236,
   1257            0.38622909784317017, 0.3870837390422821, 0.9461629390716553,
   1258            0.09573192149400711, 0.9234652519226074, 0.636277973651886
   1259          ],
   1260          'descriptor': {shape: [1, 3, 3, 1], dataType: 'float32'}
   1261        },
   1262        'convTranspose2dFilter': {
   1263          'data': [
   1264            0.8614422678947449, 0.9801966547966003, 0.6267672777175903,
   1265            0.06169835478067398, 0.6366490125656128, 0.3220160901546478,
   1266            0.8382642269134521, 0.7498031854629517, 0.11884837597608566,
   1267            0.3930714726448059, 0.9921330213546753, 0.13811933994293213,
   1268            0.3285411298274994, 0.28385090827941895, 0.8742373585700989,
   1269            0.4235861301422119, 0.7205492258071899, 0.1448512077331543
   1270          ],
   1271          'descriptor': {shape: [3, 3, 2, 1], dataType: 'float32'},
   1272          'constant': true
   1273        }
   1274      },
   1275      'operators': [{
   1276        'name': 'convTranspose2d',
   1277        'arguments': [
   1278          {'input': 'convTranspose2dInput'},
   1279          {'filter': 'convTranspose2dFilter'},
   1280          {'options': {'inputLayout': 'nhwc', 'filterLayout': 'hwoi'}}
   1281        ],
   1282        'outputs': 'convTranspose2dOutput'
   1283      }],
   1284      'expectedOutputs': {
   1285        'convTranspose2dOutput': {
   1286          'data': [
   1287            0.04828956723213196, 0.05494653806090355, 0.6479843258857727,
   1288            0.7007930278778076,  1.0440847873687744,  0.7019880414009094,
   1289            0.8621897101402283,  0.26937708258628845, 0.4157154858112335,
   1290            0.21026825904846191, 0.3797043561935425,  0.4206119179725647,
   1291            1.1785486936569214,  0.9587093591690063,  1.9911006689071655,
   1292            1.8526650667190552,  1.6228916645050049,  0.5379507541656494,
   1293            1.2502111196517944,  0.39486807584762573, 0.4246464669704437,
   1294            0.3993436396121979,  1.5086332559585571,  1.5788191556930542,
   1295            3.287064790725708,   2.121230363845825,   2.5666797161102295,
   1296            1.141642689704895,   1.8143054246902466,  0.4301592707633972,
   1297            0.20714078843593597, 0.18141157925128937, 1.2503143548965454,
   1298            1.0035220384597778,  1.6656538248062134,  1.3417718410491943,
   1299            2.097904920578003,   0.8345021605491638,  1.313029408454895,
   1300            0.2249351441860199,  0.03145187348127365, 0.027173593640327454,
   1301            0.38708874583244324, 0.3026771545410156,  1.0853508710861206,
   1302            0.5856420397758484,  1.2216601371765137,  0.40328359603881836,
   1303            0.45846959948539734, 0.09216563403606415
   1304          ],
   1305          'descriptor': {shape: [1, 5, 5, 2], dataType: 'float32'}
   1306        }
   1307      }
   1308    }
   1309  },
   1310  {
   1311    'name':
   1312        'convTranspose2d float32 4D input and filter tensors options.inputLayout=nhwc options.filterLayout=ohwi',
   1313    'graph': {
   1314      'inputs': {
   1315        'convTranspose2dInput': {
   1316          'data': [
   1317            0.05605664849281311, 0.7114229798316956, 0.6529743671417236,
   1318            0.38622909784317017, 0.3870837390422821, 0.9461629390716553,
   1319            0.09573192149400711, 0.9234652519226074, 0.636277973651886
   1320          ],
   1321          'descriptor': {shape: [1, 3, 3, 1], dataType: 'float32'}
   1322        },
   1323        'convTranspose2dFilter': {
   1324          'data': [
   1325            0.8614422678947449, 0.6267672777175903, 0.6366490125656128,
   1326            0.8382642269134521, 0.11884837597608566, 0.9921330213546753,
   1327            0.3285411298274994, 0.8742373585700989, 0.7205492258071899,
   1328            0.9801966547966003, 0.06169835478067398, 0.3220160901546478,
   1329            0.7498031854629517, 0.3930714726448059, 0.13811933994293213,
   1330            0.28385090827941895, 0.4235861301422119, 0.1448512077331543
   1331          ],
   1332          'descriptor': {shape: [2, 3, 3, 1], dataType: 'float32'},
   1333          'constant': true
   1334        }
   1335      },
   1336      'operators': [{
   1337        'name': 'convTranspose2d',
   1338        'arguments': [
   1339          {'input': 'convTranspose2dInput'},
   1340          {'filter': 'convTranspose2dFilter'},
   1341          {'options': {'inputLayout': 'nhwc', 'filterLayout': 'ohwi'}}
   1342        ],
   1343        'outputs': 'convTranspose2dOutput'
   1344      }],
   1345      'expectedOutputs': {
   1346        'convTranspose2dOutput': {
   1347          'data': [
   1348            0.04828956723213196, 0.05494653806090355, 0.6479843258857727,
   1349            0.7007930278778076,  1.0440847873687744,  0.7019880414009094,
   1350            0.8621897101402283,  0.26937708258628845, 0.4157154858112335,
   1351            0.21026825904846191, 0.3797043561935425,  0.4206119179725647,
   1352            1.1785486936569214,  0.9587093591690063,  1.9911006689071655,
   1353            1.8526650667190552,  1.6228916645050049,  0.5379507541656494,
   1354            1.2502111196517944,  0.39486807584762573, 0.4246464669704437,
   1355            0.3993436396121979,  1.5086332559585571,  1.5788191556930542,
   1356            3.287064790725708,   2.121230363845825,   2.5666797161102295,
   1357            1.141642689704895,   1.8143054246902466,  0.4301592707633972,
   1358            0.20714078843593597, 0.18141157925128937, 1.2503143548965454,
   1359            1.0035220384597778,  1.6656538248062134,  1.3417718410491943,
   1360            2.097904920578003,   0.8345021605491638,  1.313029408454895,
   1361            0.2249351441860199,  0.03145187348127365, 0.027173593640327454,
   1362            0.38708874583244324, 0.3026771545410156,  1.0853508710861206,
   1363            0.5856420397758484,  1.2216601371765137,  0.40328359603881836,
   1364            0.45846959948539734, 0.09216563403606415
   1365          ],
   1366          'descriptor': {shape: [1, 5, 5, 2], dataType: 'float32'}
   1367        }
   1368      }
   1369    }
   1370  },
   1371  {
   1372    'name': 'convTranspose2d float32 4D input and filter tensors options.bias',
   1373    'graph': {
   1374      'inputs': {
   1375        'convTranspose2dInput': {
   1376          'data': [
   1377            0.1109575480222702, 0.8681362271308899, 0.7342095971107483,
   1378            0.43077003955841064, 0.5981627106666565, 0.12321650236845016,
   1379            0.1610974818468094, 0.0884026437997818, 0.29100972414016724
   1380          ],
   1381          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
   1382        },
   1383        'convTranspose2dFilter': {
   1384          'data': [
   1385            0.6161394715309143, 0.26224616169929504, 0.7951397895812988,
   1386            0.8730561137199402, 0.8309102058410645, 0.854960560798645,
   1387            0.5552039742469788, 0.840092122554779, 0.85308438539505
   1388          ],
   1389          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'},
   1390          'constant': true
   1391        },
   1392        'convTranspose2dBias': {
   1393          'data': [0.451673686504364],
   1394          'descriptor': {shape: [1], dataType: 'float32'},
   1395          'constant': true
   1396        }
   1397      },
   1398      'operators': [{
   1399        'name': 'convTranspose2d',
   1400        'arguments': [
   1401          {'input': 'convTranspose2dInput'},
   1402          {'filter': 'convTranspose2dFilter'},
   1403          {'options': {'bias': 'convTranspose2dBias'}}
   1404        ],
   1405        'outputs': 'convTranspose2dOutput'
   1406      }],
   1407      'expectedOutputs': {
   1408        'convTranspose2dOutput': {
   1409          'data': [
   1410            0.5200390219688416, 1.01566481590271,   1.2199413776397705,
   1411            1.3345069885253906, 1.0354729890823364, 0.8139602541923523,
   1412            1.7833205461502075, 2.484194278717041,  2.311894178390503,
   1413            1.1773682832717896, 0.9886226654052734, 2.0037572383880615,
   1414            2.9867470264434814, 2.5694668292999268, 1.41475510597229,
   1415            0.8314860463142395, 1.3567005395889282, 1.8553334474563599,
   1416            1.3828538656234741, 0.8055896162986755, 0.5411156415939331,
   1417            0.6360918879508972, 0.8249395489692688, 0.7715635895729065,
   1418            0.6999295353889465
   1419          ],
   1420          'descriptor': {shape: [1, 1, 5, 5], dataType: 'float32'}
   1421        }
   1422      }
   1423    }
   1424  },
   1425  {
   1426    'name':
   1427        'convTranspose2d float32 4D input and filter tensors, both negative input tensor and options.bias',
   1428    'graph': {
   1429      'inputs': {
   1430        'convTranspose2dInput': {
   1431          'data': [
   1432            -0.10889056324958801, -0.29801905155181885, -0.3907785713672638,
   1433            -0.5624061226844788, -0.7322093844413757, -0.8421320915222168,
   1434            -0.30598655343055725, -0.976659893989563, -0.014158561825752258
   1435          ],
   1436          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
   1437        },
   1438        'convTranspose2dFilter': {
   1439          'data': [
   1440            0.6161394715309143, 0.26224616169929504, 0.7951397895812988,
   1441            0.8730561137199402, 0.8309102058410645, 0.854960560798645,
   1442            0.5552039742469788, 0.840092122554779, 0.85308438539505
   1443          ],
   1444          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'},
   1445          'constant': true
   1446        },
   1447        'convTranspose2dBias': {
   1448          'data': [-0.8457866311073303],
   1449          'descriptor': {shape: [1], dataType: 'float32'},
   1450          'constant': true
   1451        }
   1452      },
   1453      'operators': [{
   1454        'name': 'convTranspose2d',
   1455        'arguments': [
   1456          {'input': 'convTranspose2dInput'},
   1457          {'filter': 'convTranspose2dFilter'},
   1458          {'options': {'bias': 'convTranspose2dBias'}}
   1459        ],
   1460        'outputs': 'convTranspose2dOutput'
   1461      }],
   1462      'expectedOutputs': {
   1463        'convTranspose2dOutput': {
   1464          'data': [
   1465            -0.9128783941268921, -1.0579640865325928, -1.2512983083724976,
   1466            -1.1852335929870605, -1.1565102338790894, -1.2873748540878296,
   1467            -1.7950842380523682, -2.6857638359069824, -2.2283377647399902,
   1468            -1.8494995832443237, -1.5857856273651123, -2.8912975788116455,
   1469            -3.738619565963745,  -3.5343525409698486, -1.910401463508606,
   1470            -1.425180196762085,  -2.8317112922668457, -3.49372935295105,
   1471            -3.0246617794036865, -1.5763013362884521, -1.0156716108322144,
   1472            -1.645089030265808,  -1.935164213180542,  -1.6908544301986694,
   1473            -0.8578650951385498
   1474          ],
   1475          'descriptor': {shape: [1, 1, 5, 5], dataType: 'float32'}
   1476        }
   1477      }
   1478    }
   1479  },
   1480  {
   1481    'name': 'convTranspose2d same output size different padding (padding=1, outputPadding=0))',
   1482    'graph': {
   1483      'inputs': {
   1484        'convTranspose2dInput': {
   1485          'data': [
   1486            1, 2, 3,
   1487            4, 5, 6,
   1488            7, 8, 9
   1489          ],
   1490          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
   1491        },
   1492        'convTranspose2dFilter': {
   1493          'data': [
   1494            1, 1, 1,
   1495            1, 1, 1,
   1496            1, 1, 1
   1497          ],
   1498          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'},
   1499          'constant': true
   1500        }
   1501      },
   1502      'operators': [{
   1503        'name': 'convTranspose2d',
   1504        'arguments': [
   1505          {'input': 'convTranspose2dInput'},
   1506          {'filter': 'convTranspose2dFilter'},
   1507          {'options': {
   1508            'strides': [3, 3],
   1509            'padding': [1, 1, 1, 1],
   1510            'outputPadding': [0, 0]
   1511          }}
   1512        ],
   1513        'outputs': 'convTranspose2dOutput'
   1514      }],
   1515      'expectedOutputs': {
   1516        'convTranspose2dOutput': {
   1517          'data': [
   1518            1, 1, 2, 2, 2, 3, 3,
   1519            1, 1, 2, 2, 2, 3, 3,
   1520            4, 4, 5, 5, 5, 6, 6,
   1521            4, 4, 5, 5, 5, 6, 6,
   1522            4, 4, 5, 5, 5, 6, 6,
   1523            7, 7, 8, 8, 8, 9, 9,
   1524            7, 7, 8, 8, 8, 9, 9
   1525          ],
   1526          'descriptor': {shape: [1, 1, 7, 7], dataType: 'float32'}
   1527        }
   1528      }
   1529    }
   1530  },
   1531  {
   1532    'name': 'convTranspose2d same output size different padding (padding=2, outputPadding=2))',
   1533    'graph': {
   1534      'inputs': {
   1535        'convTranspose2dInput': {
   1536          'data': [
   1537            1, 2, 3,
   1538            4, 5, 6,
   1539            7, 8, 9
   1540          ],
   1541          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'}
   1542        },
   1543        'convTranspose2dFilter': {
   1544          'data': [
   1545            1, 1, 1,
   1546            1, 1, 1,
   1547            1, 1, 1
   1548          ],
   1549          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float32'},
   1550          'constant': true
   1551        }
   1552      },
   1553      'operators': [{
   1554        'name': 'convTranspose2d',
   1555        'arguments': [
   1556          {'input': 'convTranspose2dInput'},
   1557          {'filter': 'convTranspose2dFilter'},
   1558          {'options': {
   1559            'strides': [3, 3],
   1560            'padding': [2, 2, 2, 2],
   1561            'outputPadding': [2, 2]
   1562          }}
   1563        ],
   1564        'outputs': 'convTranspose2dOutput'
   1565      }],
   1566      'expectedOutputs': {
   1567        'convTranspose2dOutput': {
   1568          'data': [
   1569            1, 2, 2, 2, 3, 3, 3,
   1570            4, 5, 5, 5, 6, 6, 6,
   1571            4, 5, 5, 5, 6, 6, 6,
   1572            4, 5, 5, 5, 6, 6, 6,
   1573            7, 8, 8, 8, 9, 9, 9,
   1574            7, 8, 8, 8, 9, 9, 9,
   1575            7, 8, 8, 8, 9, 9, 9
   1576          ],
   1577          'descriptor': {shape: [1, 1, 7, 7], dataType: 'float32'}
   1578        }
   1579      }
   1580    }
   1581  },
   1582 
   1583  // float16 tests
   1584  {
   1585    'name':
   1586        'convTranspose2d float16 4D both input and filter non-constant tensors default options',
   1587    'graph': {
   1588      'inputs': {
   1589        'convTranspose2dInput': {
   1590          'data': [
   1591            0.58740234375, 0.60791015625, 0.0172882080078125, 0.261474609375
   1592          ],
   1593          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float16'}
   1594        },
   1595        'convTranspose2dFilter': {
   1596          'data': [
   1597            0.329345703125, 0.5869140625, 0.297119140625, 0.003337860107421875
   1598          ],
   1599          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float16'}
   1600        }
   1601      },
   1602      'operators': [{
   1603        'name': 'convTranspose2d',
   1604        'arguments': [
   1605          {'input': 'convTranspose2dInput'}, {'filter': 'convTranspose2dFilter'}
   1606        ],
   1607        'outputs': 'convTranspose2dOutput'
   1608      }],
   1609      'expectedOutputs': {
   1610        'convTranspose2dOutput': {
   1611          'data': [
   1612            0.1934814453125, 0.544921875, 0.356689453125, 0.18017578125,
   1613            0.27880859375, 0.155517578125, 0.005138397216796875,
   1614            0.0777587890625, 0.0008726119995117188
   1615          ],
   1616          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'}
   1617        }
   1618      }
   1619    }
   1620  },
   1621  {
   1622    'name':
   1623        'convTranspose2d float16 4D both input and filter constant tensors default options',
   1624    'graph': {
   1625      'inputs': {
   1626        'convTranspose2dInput': {
   1627          'data': [
   1628            0.58740234375, 0.60791015625, 0.0172882080078125, 0.261474609375
   1629          ],
   1630          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float16'},
   1631          'constant': true
   1632        },
   1633        'convTranspose2dFilter': {
   1634          'data': [
   1635            0.329345703125, 0.5869140625, 0.297119140625, 0.003337860107421875
   1636          ],
   1637          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float16'},
   1638          'constant': true
   1639        }
   1640      },
   1641      'operators': [{
   1642        'name': 'convTranspose2d',
   1643        'arguments': [
   1644          {'input': 'convTranspose2dInput'}, {'filter': 'convTranspose2dFilter'}
   1645        ],
   1646        'outputs': 'convTranspose2dOutput'
   1647      }],
   1648      'expectedOutputs': {
   1649        'convTranspose2dOutput': {
   1650          'data': [
   1651            0.1934814453125, 0.544921875, 0.356689453125, 0.18017578125,
   1652            0.27880859375, 0.155517578125, 0.005138397216796875,
   1653            0.0777587890625, 0.0008726119995117188
   1654          ],
   1655          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'}
   1656        }
   1657      }
   1658    }
   1659  },
   1660  {
   1661    'name':
   1662        'convTranspose2d float16 4D input and filter tensors default options',
   1663    'graph': {
   1664      'inputs': {
   1665        'convTranspose2dInput': {
   1666          'data': [
   1667            0.58740234375, 0.60791015625, 0.0172882080078125, 0.261474609375
   1668          ],
   1669          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float16'}
   1670        },
   1671        'convTranspose2dFilter': {
   1672          'data': [
   1673            0.329345703125, 0.5869140625, 0.297119140625, 0.003337860107421875
   1674          ],
   1675          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float16'},
   1676          'constant': true
   1677        }
   1678      },
   1679      'operators': [{
   1680        'name': 'convTranspose2d',
   1681        'arguments': [
   1682          {'input': 'convTranspose2dInput'}, {'filter': 'convTranspose2dFilter'}
   1683        ],
   1684        'outputs': 'convTranspose2dOutput'
   1685      }],
   1686      'expectedOutputs': {
   1687        'convTranspose2dOutput': {
   1688          'data': [
   1689            0.1934814453125, 0.544921875, 0.356689453125, 0.18017578125,
   1690            0.27880859375, 0.155517578125, 0.005138397216796875,
   1691            0.0777587890625, 0.0008726119995117188
   1692          ],
   1693          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'}
   1694        }
   1695      }
   1696    }
   1697  },
   1698  {
   1699    'name':
   1700        'convTranspose2d float16 4D input and filter tensors options.padding',
   1701    'graph': {
   1702      'inputs': {
   1703        'convTranspose2dInput': {
   1704          'data': [
   1705            0.58740234375, 0.60791015625, 0.0172882080078125, 0.261474609375
   1706          ],
   1707          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float16'}
   1708        },
   1709        'convTranspose2dFilter': {
   1710          'data': [
   1711            0.329345703125, 0.5869140625, 0.297119140625, 0.003337860107421875
   1712          ],
   1713          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float16'},
   1714          'constant': true
   1715        }
   1716      },
   1717      'operators': [{
   1718        'name': 'convTranspose2d',
   1719        'arguments': [
   1720          {'input': 'convTranspose2dInput'},
   1721          {'filter': 'convTranspose2dFilter'},
   1722          {'options': {'padding': [1, 1, 1, 1]}}
   1723        ],
   1724        'outputs': 'convTranspose2dOutput'
   1725      }],
   1726      'expectedOutputs': {
   1727        'convTranspose2dOutput': {
   1728          'data': [0.27880859375],
   1729          'descriptor': {shape: [1, 1, 1, 1], dataType: 'float16'}
   1730        }
   1731      }
   1732    }
   1733  },
   1734  {
   1735    'name':
   1736        'convTranspose2d float16 input tensors options.padding is the same upper padding',
   1737    'graph': {
   1738      'inputs': {
   1739        'convTranspose2dInput': {
   1740          'data': [0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5],
   1741          'descriptor': {shape: [1, 3, 3, 1], dataType: 'float16'}
   1742        },
   1743        'convTranspose2dFilter': {
   1744          'data': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
   1745          'descriptor': {shape: [2, 3, 3, 1], dataType: 'float16'},
   1746          'constant': true
   1747        }
   1748      },
   1749      'operators': [{
   1750        'name': 'convTranspose2d',
   1751        'arguments': [
   1752          {'input': 'convTranspose2dInput'},
   1753          {'filter': 'convTranspose2dFilter'}, {
   1754            'options': {
   1755              'outputSizes': [6, 6],
   1756              'groups': 1,
   1757              'strides': [2, 2],
   1758              'dilations': [1, 1],
   1759              'padding': [0, 1, 0, 1],
   1760              'filterLayout': 'ohwi',
   1761              'inputLayout': 'nhwc'
   1762            }
   1763          }
   1764        ],
   1765        'outputs': 'convTranspose2dOutput'
   1766      }],
   1767      'expectedOutputs': {
   1768        'convTranspose2dOutput': {
   1769          'data': [
   1770            0.5, 0.5, 0.5, 0.5, 1, 1, 0.5, 0.5, 1, 1, 0.5, 0.5,
   1771            0.5, 0.5, 0.5, 0.5, 1, 1, 0.5, 0.5, 1, 1, 0.5, 0.5,
   1772            1,   1,   1,   1,   2, 2, 1,   1,   2, 2, 1,   1,
   1773            0.5, 0.5, 0.5, 0.5, 1, 1, 0.5, 0.5, 1, 1, 0.5, 0.5,
   1774            1,   1,   1,   1,   2, 2, 1,   1,   2, 2, 1,   1,
   1775            0.5, 0.5, 0.5, 0.5, 1, 1, 0.5, 0.5, 1, 1, 0.5, 0.5
   1776          ],
   1777          'descriptor': {shape: [1, 6, 6, 2], dataType: 'float16'}
   1778        }
   1779      }
   1780    }
   1781  },
   1782  {
   1783    'name':
   1784        'convTranspose2d float16 4D input and filter tensors options.strides',
   1785    'graph': {
   1786      'inputs': {
   1787        'convTranspose2dInput': {
   1788          'data': [
   1789            0.056060791015625, 0.71142578125, 0.65283203125, 0.38623046875,
   1790            0.386962890625, 0.9462890625, 0.095703125, 0.92333984375,
   1791            0.63623046875
   1792          ],
   1793          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'}
   1794        },
   1795        'convTranspose2dFilter': {
   1796          'data': [
   1797            0.861328125, 0.626953125, 0.63671875, 0.83837890625,
   1798            0.11883544921875, 0.9921875, 0.32861328125, 0.8740234375,
   1799            0.720703125, 0.97998046875, 0.06170654296875, 0.322021484375, 0.75,
   1800            0.39306640625, 0.1380615234375, 0.283935546875, 0.423583984375,
   1801            0.1448974609375
   1802          ],
   1803          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float16'},
   1804          'constant': true
   1805        }
   1806      },
   1807      'operators': [{
   1808        'name': 'convTranspose2d',
   1809        'arguments': [
   1810          {'input': 'convTranspose2dInput'},
   1811          {'filter': 'convTranspose2dFilter'}, {'options': {'strides': [3, 2]}}
   1812        ],
   1813        'outputs': 'convTranspose2dOutput'
   1814      }],
   1815      'expectedOutputs': {
   1816        'convTranspose2dOutput': {
   1817          'data': [
   1818            0.04827880859375,
   1819            0.03515625,
   1820            0.6484375,
   1821            0.446044921875,
   1822            1.015625,
   1823            0.4091796875,
   1824            0.415771484375,
   1825            0.0469970703125,
   1826            0.00666046142578125,
   1827            0.65185546875,
   1828            0.08453369140625,
   1829            1.2529296875,
   1830            0.07757568359375,
   1831            0.64794921875,
   1832            0.0184173583984375,
   1833            0.04901123046875,
   1834            0.274169921875,
   1835            0.62158203125,
   1836            0.72705078125,
   1837            0.57080078125,
   1838            0.470458984375,
   1839            0.332763671875,
   1840            0.2421875,
   1841            0.5791015625,
   1842            0.2425537109375,
   1843            1.0615234375,
   1844            0.59326171875,
   1845            0.6025390625,
   1846            0.32373046875,
   1847            0.0458984375,
   1848            0.70751953125,
   1849            0.045989990234375,
   1850            1.177734375,
   1851            0.1124267578125,
   1852            0.93896484375,
   1853            0.126953125,
   1854            0.337646484375,
   1855            0.405517578125,
   1856            0.338134765625,
   1857            0.58984375,
   1858            0.8271484375,
   1859            0.68212890625,
   1860            0.08245849609375,
   1861            0.05999755859375,
   1862            0.8564453125,
   1863            0.5791015625,
   1864            1.1357421875,
   1865            0.39892578125,
   1866            0.405029296875,
   1867            0.08026123046875,
   1868            0.01137542724609375,
   1869            0.869140625,
   1870            0.1097412109375,
   1871            1.44921875,
   1872            0.07562255859375,
   1873            0.63134765625,
   1874            0.031463623046875,
   1875            0.0836181640625,
   1876            0.372314453125,
   1877            0.80712890625,
   1878            0.87451171875,
   1879            0.55615234375,
   1880            0.45849609375,
   1881            0.054931640625,
   1882            0.003459930419921875,
   1883            0.71533203125,
   1884            0.043914794921875,
   1885            0.86865234375,
   1886            0.040283203125,
   1887            0.210205078125,
   1888            0.04205322265625,
   1889            0.02203369140625,
   1890            0.54150390625,
   1891            0.279541015625,
   1892            0.587890625,
   1893            0.256591796875,
   1894            0.09014892578125,
   1895            0.0159149169921875,
   1896            0.02374267578125,
   1897            0.2100830078125,
   1898            0.30126953125,
   1899            0.288330078125,
   1900            0.276611328125,
   1901            0.0946044921875,
   1902            0.37841796875,
   1903            0.023834228515625,
   1904            0.50341796875,
   1905            0.0238800048828125,
   1906            1.0517578125,
   1907            0.058380126953125,
   1908            0.3046875,
   1909            0.28955078125,
   1910            0.15185546875,
   1911            0.343505859375,
   1912            0.152099609375,
   1913            0.76318359375,
   1914            0.3720703125,
   1915            0.130615234375,
   1916            0.10968017578125,
   1917            0.16357421875,
   1918            0.1658935546875,
   1919            0.1639404296875,
   1920            0.32470703125,
   1921            0.40087890625,
   1922            0.1370849609375,
   1923            0.09381103515625,
   1924            0.0059051513671875,
   1925            0.935546875,
   1926            0.056976318359375,
   1927            0.9208984375,
   1928            0.03924560546875,
   1929            0.204833984375,
   1930            0.07177734375,
   1931            0.037628173828125,
   1932            0.70556640625,
   1933            0.363037109375,
   1934            0.6044921875,
   1935            0.25,
   1936            0.08782958984375,
   1937            0.0271759033203125,
   1938            0.04052734375,
   1939            0.276123046875,
   1940            0.39111328125,
   1941            0.314453125,
   1942            0.26953125,
   1943            0.0921630859375
   1944          ],
   1945          'descriptor': {shape: [1, 2, 9, 7], dataType: 'float16'}
   1946        }
   1947      }
   1948    }
   1949  },
   1950  {
   1951    'name':
   1952        'convTranspose2d float16 4D input and filter tensors options.dilations',
   1953    'graph': {
   1954      'inputs': {
   1955        'convTranspose2dInput': {
   1956          'data': [
   1957            0.319580078125, 0.97607421875, 0.4130859375, 0.479736328125,
   1958            0.767578125, 0.908203125, 0.62060546875, 0.658203125, 0.6552734375
   1959          ],
   1960          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'}
   1961        },
   1962        'convTranspose2dFilter': {
   1963          'data': [0.68359375, 0.96435546875, 0.8271484375, 0.5771484375],
   1964          'descriptor': {shape: [1, 1, 2, 2], dataType: 'float16'},
   1965          'constant': true
   1966        }
   1967      },
   1968      'operators': [{
   1969        'name': 'convTranspose2d',
   1970        'arguments': [
   1971          {'input': 'convTranspose2dInput'},
   1972          {'filter': 'convTranspose2dFilter'},
   1973          {'options': {'dilations': [2, 2]}}
   1974        ],
   1975        'outputs': 'convTranspose2dOutput'
   1976      }],
   1977      'expectedOutputs': {
   1978        'convTranspose2dOutput': {
   1979          'data': [
   1980            0.218505859375, 0.66748046875,  0.59033203125,  0.94140625,
   1981            0.3984375,      0.327880859375, 0.52490234375,  1.0830078125,
   1982            0.740234375,    0.8759765625,   0.6884765625,   1.2568359375,
   1983            1.572265625,    1.1982421875,   0.8701171875,   0.396728515625,
   1984            0.634765625,    1.0283203125,   0.443115234375, 0.52392578125,
   1985            0.51318359375,  0.54443359375,  0.900390625,    0.3798828125,
   1986            0.378173828125
   1987          ],
   1988          'descriptor': {shape: [1, 1, 5, 5], dataType: 'float16'}
   1989        }
   1990      }
   1991    }
   1992  },
   1993  {
   1994    'name':
   1995        'convTranspose2d float16 4D input and filter tensors options.outputPadding',
   1996    'graph': {
   1997      'inputs': {
   1998        'convTranspose2dInput': {
   1999          'data': [
   2000            0.056060791015625, 0.71142578125, 0.65283203125, 0.38623046875,
   2001            0.386962890625, 0.9462890625, 0.095703125, 0.92333984375,
   2002            0.63623046875
   2003          ],
   2004          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'}
   2005        },
   2006        'convTranspose2dFilter': {
   2007          'data': [
   2008            0.861328125, 0.626953125, 0.63671875, 0.83837890625,
   2009            0.11883544921875, 0.9921875, 0.32861328125, 0.8740234375,
   2010            0.720703125, 0.97998046875, 0.06170654296875, 0.322021484375, 0.75,
   2011            0.39306640625, 0.1380615234375, 0.283935546875, 0.423583984375,
   2012            0.1448974609375
   2013          ],
   2014          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float16'},
   2015          'constant': true
   2016        }
   2017      },
   2018      'operators': [{
   2019        'name': 'convTranspose2d',
   2020        'arguments': [
   2021          {'input': 'convTranspose2dInput'},
   2022          {'filter': 'convTranspose2dFilter'},
   2023          {'options': {'strides': [3, 2], 'outputPadding': [1, 1]}}
   2024        ],
   2025        'outputs': 'convTranspose2dOutput'
   2026      }],
   2027      'expectedOutputs': {
   2028        'convTranspose2dOutput': {
   2029          'data': [
   2030            0.04827880859375,
   2031            0.03515625,
   2032            0.6484375,
   2033            0.446044921875,
   2034            1.015625,
   2035            0.4091796875,
   2036            0.415771484375,
   2037            0,
   2038            0.0469970703125,
   2039            0.00666046142578125,
   2040            0.65185546875,
   2041            0.08453369140625,
   2042            1.2529296875,
   2043            0.07757568359375,
   2044            0.64794921875,
   2045            0,
   2046            0.0184173583984375,
   2047            0.04901123046875,
   2048            0.274169921875,
   2049            0.62158203125,
   2050            0.72705078125,
   2051            0.57080078125,
   2052            0.470458984375,
   2053            0,
   2054            0.332763671875,
   2055            0.2421875,
   2056            0.5791015625,
   2057            0.2425537109375,
   2058            1.0615234375,
   2059            0.59326171875,
   2060            0.6025390625,
   2061            0,
   2062            0.32373046875,
   2063            0.0458984375,
   2064            0.70751953125,
   2065            0.045989990234375,
   2066            1.177734375,
   2067            0.1124267578125,
   2068            0.93896484375,
   2069            0,
   2070            0.126953125,
   2071            0.337646484375,
   2072            0.405517578125,
   2073            0.338134765625,
   2074            0.58984375,
   2075            0.8271484375,
   2076            0.68212890625,
   2077            0,
   2078            0.08245849609375,
   2079            0.05999755859375,
   2080            0.8564453125,
   2081            0.5791015625,
   2082            1.1357421875,
   2083            0.39892578125,
   2084            0.405029296875,
   2085            0,
   2086            0.08026123046875,
   2087            0.01137542724609375,
   2088            0.869140625,
   2089            0.1097412109375,
   2090            1.44921875,
   2091            0.07562255859375,
   2092            0.63134765625,
   2093            0,
   2094            0.031463623046875,
   2095            0.0836181640625,
   2096            0.372314453125,
   2097            0.80712890625,
   2098            0.87451171875,
   2099            0.55615234375,
   2100            0.45849609375,
   2101            0,
   2102            0,
   2103            0,
   2104            0,
   2105            0,
   2106            0,
   2107            0,
   2108            0,
   2109            0,
   2110            0.054931640625,
   2111            0.003459930419921875,
   2112            0.71533203125,
   2113            0.043914794921875,
   2114            0.86865234375,
   2115            0.040283203125,
   2116            0.210205078125,
   2117            0,
   2118            0.04205322265625,
   2119            0.02203369140625,
   2120            0.54150390625,
   2121            0.279541015625,
   2122            0.587890625,
   2123            0.256591796875,
   2124            0.09014892578125,
   2125            0,
   2126            0.0159149169921875,
   2127            0.02374267578125,
   2128            0.2100830078125,
   2129            0.30126953125,
   2130            0.288330078125,
   2131            0.276611328125,
   2132            0.0946044921875,
   2133            0,
   2134            0.37841796875,
   2135            0.023834228515625,
   2136            0.50341796875,
   2137            0.0238800048828125,
   2138            1.0517578125,
   2139            0.058380126953125,
   2140            0.3046875,
   2141            0,
   2142            0.28955078125,
   2143            0.15185546875,
   2144            0.343505859375,
   2145            0.152099609375,
   2146            0.76318359375,
   2147            0.3720703125,
   2148            0.130615234375,
   2149            0,
   2150            0.10968017578125,
   2151            0.16357421875,
   2152            0.1658935546875,
   2153            0.1639404296875,
   2154            0.32470703125,
   2155            0.40087890625,
   2156            0.1370849609375,
   2157            0,
   2158            0.09381103515625,
   2159            0.0059051513671875,
   2160            0.935546875,
   2161            0.056976318359375,
   2162            0.9208984375,
   2163            0.03924560546875,
   2164            0.204833984375,
   2165            0,
   2166            0.07177734375,
   2167            0.037628173828125,
   2168            0.70556640625,
   2169            0.363037109375,
   2170            0.6044921875,
   2171            0.25,
   2172            0.08782958984375,
   2173            0,
   2174            0.0271759033203125,
   2175            0.04052734375,
   2176            0.276123046875,
   2177            0.39111328125,
   2178            0.314453125,
   2179            0.26953125,
   2180            0.0921630859375,
   2181            0,
   2182            0,
   2183            0,
   2184            0,
   2185            0,
   2186            0,
   2187            0,
   2188            0,
   2189            0
   2190          ],
   2191          'descriptor': {shape: [1, 2, 10, 8], dataType: 'float16'}
   2192        }
   2193      }
   2194    }
   2195  },
   2196  {
   2197    'name':
   2198        'convTranspose2d float16 4D input and filter tensors options.outputSizes',
   2199    'graph': {
   2200      'inputs': {
   2201        'convTranspose2dInput': {
   2202          'data': [
   2203            0.056060791015625, 0.71142578125, 0.65283203125, 0.38623046875,
   2204            0.386962890625, 0.9462890625, 0.095703125, 0.92333984375,
   2205            0.63623046875
   2206          ],
   2207          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'}
   2208        },
   2209        'convTranspose2dFilter': {
   2210          'data': [
   2211            0.861328125, 0.626953125, 0.63671875, 0.83837890625,
   2212            0.11883544921875, 0.9921875, 0.32861328125, 0.8740234375,
   2213            0.720703125, 0.97998046875, 0.06170654296875, 0.322021484375, 0.75,
   2214            0.39306640625, 0.1380615234375, 0.283935546875, 0.423583984375,
   2215            0.1448974609375
   2216          ],
   2217          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float16'},
   2218          'constant': true
   2219        }
   2220      },
   2221      'operators': [{
   2222        'name': 'convTranspose2d',
   2223        'arguments': [
   2224          {'input': 'convTranspose2dInput'},
   2225          {'filter': 'convTranspose2dFilter'},
   2226          {'options': {'strides': [3, 2], 'outputSizes': [10, 8]}}
   2227        ],
   2228        'outputs': 'convTranspose2dOutput'
   2229      }],
   2230      'expectedOutputs': {
   2231        'convTranspose2dOutput': {
   2232          'data': [
   2233            0.04827880859375,
   2234            0.03515625,
   2235            0.6484375,
   2236            0.446044921875,
   2237            1.015625,
   2238            0.4091796875,
   2239            0.415771484375,
   2240            0,
   2241            0.0469970703125,
   2242            0.00666046142578125,
   2243            0.65185546875,
   2244            0.08453369140625,
   2245            1.2529296875,
   2246            0.07757568359375,
   2247            0.64794921875,
   2248            0,
   2249            0.0184173583984375,
   2250            0.04901123046875,
   2251            0.274169921875,
   2252            0.62158203125,
   2253            0.72705078125,
   2254            0.57080078125,
   2255            0.470458984375,
   2256            0,
   2257            0.332763671875,
   2258            0.2421875,
   2259            0.5791015625,
   2260            0.2425537109375,
   2261            1.0615234375,
   2262            0.59326171875,
   2263            0.6025390625,
   2264            0,
   2265            0.32373046875,
   2266            0.0458984375,
   2267            0.70751953125,
   2268            0.045989990234375,
   2269            1.177734375,
   2270            0.1124267578125,
   2271            0.93896484375,
   2272            0,
   2273            0.126953125,
   2274            0.337646484375,
   2275            0.405517578125,
   2276            0.338134765625,
   2277            0.58984375,
   2278            0.8271484375,
   2279            0.68212890625,
   2280            0,
   2281            0.08245849609375,
   2282            0.05999755859375,
   2283            0.8564453125,
   2284            0.5791015625,
   2285            1.1357421875,
   2286            0.39892578125,
   2287            0.405029296875,
   2288            0,
   2289            0.08026123046875,
   2290            0.01137542724609375,
   2291            0.869140625,
   2292            0.1097412109375,
   2293            1.44921875,
   2294            0.07562255859375,
   2295            0.63134765625,
   2296            0,
   2297            0.031463623046875,
   2298            0.0836181640625,
   2299            0.372314453125,
   2300            0.80712890625,
   2301            0.87451171875,
   2302            0.55615234375,
   2303            0.45849609375,
   2304            0,
   2305            0,
   2306            0,
   2307            0,
   2308            0,
   2309            0,
   2310            0,
   2311            0,
   2312            0,
   2313            0.054931640625,
   2314            0.003459930419921875,
   2315            0.71533203125,
   2316            0.043914794921875,
   2317            0.86865234375,
   2318            0.040283203125,
   2319            0.210205078125,
   2320            0,
   2321            0.04205322265625,
   2322            0.02203369140625,
   2323            0.54150390625,
   2324            0.279541015625,
   2325            0.587890625,
   2326            0.256591796875,
   2327            0.09014892578125,
   2328            0,
   2329            0.0159149169921875,
   2330            0.02374267578125,
   2331            0.2100830078125,
   2332            0.30126953125,
   2333            0.288330078125,
   2334            0.276611328125,
   2335            0.0946044921875,
   2336            0,
   2337            0.37841796875,
   2338            0.023834228515625,
   2339            0.50341796875,
   2340            0.0238800048828125,
   2341            1.0517578125,
   2342            0.058380126953125,
   2343            0.3046875,
   2344            0,
   2345            0.28955078125,
   2346            0.15185546875,
   2347            0.343505859375,
   2348            0.152099609375,
   2349            0.76318359375,
   2350            0.3720703125,
   2351            0.130615234375,
   2352            0,
   2353            0.10968017578125,
   2354            0.16357421875,
   2355            0.1658935546875,
   2356            0.1639404296875,
   2357            0.32470703125,
   2358            0.40087890625,
   2359            0.1370849609375,
   2360            0,
   2361            0.09381103515625,
   2362            0.0059051513671875,
   2363            0.935546875,
   2364            0.056976318359375,
   2365            0.9208984375,
   2366            0.03924560546875,
   2367            0.204833984375,
   2368            0,
   2369            0.07177734375,
   2370            0.037628173828125,
   2371            0.70556640625,
   2372            0.363037109375,
   2373            0.6044921875,
   2374            0.25,
   2375            0.08782958984375,
   2376            0,
   2377            0.0271759033203125,
   2378            0.04052734375,
   2379            0.276123046875,
   2380            0.39111328125,
   2381            0.314453125,
   2382            0.26953125,
   2383            0.0921630859375,
   2384            0,
   2385            0,
   2386            0,
   2387            0,
   2388            0,
   2389            0,
   2390            0,
   2391            0,
   2392            0
   2393          ],
   2394          'descriptor': {shape: [1, 2, 10, 8], dataType: 'float16'}
   2395        }
   2396      }
   2397    }
   2398  },
   2399  {
   2400    'name':
   2401        'convTranspose2d float16 4D input and filter tensors options.inputLayout=nchw',
   2402    'graph': {
   2403      'inputs': {
   2404        'convTranspose2dInput': {
   2405          'data': [
   2406            0.056060791015625, 0.71142578125, 0.65283203125, 0.38623046875,
   2407            0.386962890625, 0.9462890625, 0.095703125, 0.92333984375,
   2408            0.63623046875
   2409          ],
   2410          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'}
   2411        },
   2412        'convTranspose2dFilter': {
   2413          'data': [
   2414            0.861328125, 0.626953125, 0.63671875, 0.83837890625,
   2415            0.11883544921875, 0.9921875, 0.32861328125, 0.8740234375,
   2416            0.720703125, 0.97998046875, 0.06170654296875, 0.322021484375, 0.75,
   2417            0.39306640625, 0.1380615234375, 0.283935546875, 0.423583984375,
   2418            0.1448974609375
   2419          ],
   2420          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float16'},
   2421          'constant': true
   2422        }
   2423      },
   2424      'operators': [{
   2425        'name': 'convTranspose2d',
   2426        'arguments': [
   2427          {'input': 'convTranspose2dInput'},
   2428          {'filter': 'convTranspose2dFilter'},
   2429          {'options': {'inputLayout': 'nchw'}}
   2430        ],
   2431        'outputs': 'convTranspose2dOutput'
   2432      }],
   2433      'expectedOutputs': {
   2434        'convTranspose2dOutput': {
   2435          'data': [
   2436            0.04827880859375,
   2437            0.64794921875,
   2438            1.0439453125,
   2439            0.8623046875,
   2440            0.415771484375,
   2441            0.379638671875,
   2442            1.1787109375,
   2443            1.9912109375,
   2444            1.623046875,
   2445            1.25,
   2446            0.424560546875,
   2447            1.5087890625,
   2448            3.287109375,
   2449            2.56640625,
   2450            1.814453125,
   2451            0.2071533203125,
   2452            1.25,
   2453            1.666015625,
   2454            2.09765625,
   2455            1.3134765625,
   2456            0.031463623046875,
   2457            0.386962890625,
   2458            1.0849609375,
   2459            1.2216796875,
   2460            0.45849609375,
   2461            0.054931640625,
   2462            0.70068359375,
   2463            0.70166015625,
   2464            0.269287109375,
   2465            0.210205078125,
   2466            0.420654296875,
   2467            0.95849609375,
   2468            1.8525390625,
   2469            0.53759765625,
   2470            0.394775390625,
   2471            0.3994140625,
   2472            1.578125,
   2473            2.12109375,
   2474            1.1416015625,
   2475            0.43017578125,
   2476            0.181396484375,
   2477            1.00390625,
   2478            1.341796875,
   2479            0.83447265625,
   2480            0.2249755859375,
   2481            0.0271759033203125,
   2482            0.302734375,
   2483            0.58544921875,
   2484            0.4033203125,
   2485            0.0921630859375
   2486          ],
   2487          'descriptor': {shape: [1, 2, 5, 5], dataType: 'float16'}
   2488        }
   2489      }
   2490    }
   2491  },
   2492  {
   2493    'name':
   2494        'convTranspose2d float16 4D input and filter tensors options.inputLayout=nhwc',
   2495    'graph': {
   2496      'inputs': {
   2497        'convTranspose2dInput': {
   2498          'data': [
   2499            0.056060791015625, 0.71142578125, 0.65283203125, 0.38623046875,
   2500            0.386962890625, 0.9462890625, 0.095703125, 0.92333984375,
   2501            0.63623046875
   2502          ],
   2503          'descriptor': {shape: [1, 3, 3, 1], dataType: 'float16'}
   2504        },
   2505        'convTranspose2dFilter': {
   2506          'data': [
   2507            0.861328125, 0.626953125, 0.63671875, 0.83837890625,
   2508            0.11883544921875, 0.9921875, 0.32861328125, 0.8740234375,
   2509            0.720703125, 0.97998046875, 0.06170654296875, 0.322021484375, 0.75,
   2510            0.39306640625, 0.1380615234375, 0.283935546875, 0.423583984375,
   2511            0.1448974609375
   2512          ],
   2513          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float16'},
   2514          'constant': true
   2515        }
   2516      },
   2517      'operators': [{
   2518        'name': 'convTranspose2d',
   2519        'arguments': [
   2520          {'input': 'convTranspose2dInput'},
   2521          {'filter': 'convTranspose2dFilter'},
   2522          {'options': {'inputLayout': 'nhwc'}}
   2523        ],
   2524        'outputs': 'convTranspose2dOutput'
   2525      }],
   2526      'expectedOutputs': {
   2527        'convTranspose2dOutput': {
   2528          'data': [
   2529            0.04827880859375,
   2530            0.054931640625,
   2531            0.64794921875,
   2532            0.70068359375,
   2533            1.0439453125,
   2534            0.70166015625,
   2535            0.8623046875,
   2536            0.269287109375,
   2537            0.415771484375,
   2538            0.210205078125,
   2539            0.379638671875,
   2540            0.420654296875,
   2541            1.1787109375,
   2542            0.95849609375,
   2543            1.9912109375,
   2544            1.8525390625,
   2545            1.623046875,
   2546            0.53759765625,
   2547            1.25,
   2548            0.394775390625,
   2549            0.424560546875,
   2550            0.3994140625,
   2551            1.5087890625,
   2552            1.578125,
   2553            3.287109375,
   2554            2.12109375,
   2555            2.56640625,
   2556            1.1416015625,
   2557            1.814453125,
   2558            0.43017578125,
   2559            0.2071533203125,
   2560            0.181396484375,
   2561            1.25,
   2562            1.00390625,
   2563            1.666015625,
   2564            1.341796875,
   2565            2.09765625,
   2566            0.83447265625,
   2567            1.3134765625,
   2568            0.2249755859375,
   2569            0.031463623046875,
   2570            0.0271759033203125,
   2571            0.386962890625,
   2572            0.302734375,
   2573            1.0849609375,
   2574            0.58544921875,
   2575            1.2216796875,
   2576            0.4033203125,
   2577            0.45849609375,
   2578            0.0921630859375
   2579          ],
   2580          'descriptor': {shape: [1, 5, 5, 2], dataType: 'float16'}
   2581        }
   2582      }
   2583    }
   2584  },
   2585  {
   2586    'name':
   2587        'convTranspose2d float16 4D input and filter tensors options.filterLayout=iohw',
   2588    'graph': {
   2589      'inputs': {
   2590        'convTranspose2dInput': {
   2591          'data': [
   2592            0.056060791015625, 0.71142578125, 0.65283203125, 0.38623046875,
   2593            0.386962890625, 0.9462890625, 0.095703125, 0.92333984375,
   2594            0.63623046875
   2595          ],
   2596          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'}
   2597        },
   2598        'convTranspose2dFilter': {
   2599          'data': [
   2600            0.861328125, 0.626953125, 0.63671875, 0.83837890625,
   2601            0.11883544921875, 0.9921875, 0.32861328125, 0.8740234375,
   2602            0.720703125, 0.97998046875, 0.06170654296875, 0.322021484375, 0.75,
   2603            0.39306640625, 0.1380615234375, 0.283935546875, 0.423583984375,
   2604            0.1448974609375
   2605          ],
   2606          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float16'},
   2607          'constant': true
   2608        }
   2609      },
   2610      'operators': [{
   2611        'name': 'convTranspose2d',
   2612        'arguments': [
   2613          {'input': 'convTranspose2dInput'},
   2614          {'filter': 'convTranspose2dFilter'},
   2615          {'options': {'filterLayout': 'iohw'}}
   2616        ],
   2617        'outputs': 'convTranspose2dOutput'
   2618      }],
   2619      'expectedOutputs': {
   2620        'convTranspose2dOutput': {
   2621          'data': [
   2622            0.04827880859375,
   2623            0.64794921875,
   2624            1.0439453125,
   2625            0.8623046875,
   2626            0.415771484375,
   2627            0.379638671875,
   2628            1.1787109375,
   2629            1.9912109375,
   2630            1.623046875,
   2631            1.25,
   2632            0.424560546875,
   2633            1.5087890625,
   2634            3.287109375,
   2635            2.56640625,
   2636            1.814453125,
   2637            0.2071533203125,
   2638            1.25,
   2639            1.666015625,
   2640            2.09765625,
   2641            1.3134765625,
   2642            0.031463623046875,
   2643            0.386962890625,
   2644            1.0849609375,
   2645            1.2216796875,
   2646            0.45849609375,
   2647            0.054931640625,
   2648            0.70068359375,
   2649            0.70166015625,
   2650            0.269287109375,
   2651            0.210205078125,
   2652            0.420654296875,
   2653            0.95849609375,
   2654            1.8525390625,
   2655            0.53759765625,
   2656            0.394775390625,
   2657            0.3994140625,
   2658            1.578125,
   2659            2.12109375,
   2660            1.1416015625,
   2661            0.43017578125,
   2662            0.181396484375,
   2663            1.00390625,
   2664            1.341796875,
   2665            0.83447265625,
   2666            0.2249755859375,
   2667            0.0271759033203125,
   2668            0.302734375,
   2669            0.58544921875,
   2670            0.4033203125,
   2671            0.0921630859375
   2672          ],
   2673          'descriptor': {shape: [1, 2, 5, 5], dataType: 'float16'}
   2674        }
   2675      }
   2676    }
   2677  },
   2678  {
   2679    'name':
   2680        'convTranspose2d float16 4D input and filter tensors options.filterLayout=hwoi',
   2681    'graph': {
   2682      'inputs': {
   2683        'convTranspose2dInput': {
   2684          'data': [
   2685            0.056060791015625, 0.71142578125, 0.65283203125, 0.38623046875,
   2686            0.386962890625, 0.9462890625, 0.095703125, 0.92333984375,
   2687            0.63623046875
   2688          ],
   2689          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'}
   2690        },
   2691        'convTranspose2dFilter': {
   2692          'data': [
   2693            0.861328125, 0.97998046875, 0.626953125, 0.06170654296875,
   2694            0.63671875, 0.322021484375, 0.83837890625, 0.75, 0.11883544921875,
   2695            0.39306640625, 0.9921875, 0.1380615234375, 0.32861328125,
   2696            0.283935546875, 0.8740234375, 0.423583984375, 0.720703125,
   2697            0.1448974609375
   2698          ],
   2699          'descriptor': {shape: [3, 3, 2, 1], dataType: 'float16'},
   2700          'constant': true
   2701        }
   2702      },
   2703      'operators': [{
   2704        'name': 'convTranspose2d',
   2705        'arguments': [
   2706          {'input': 'convTranspose2dInput'},
   2707          {'filter': 'convTranspose2dFilter'},
   2708          {'options': {'filterLayout': 'hwoi'}}
   2709        ],
   2710        'outputs': 'convTranspose2dOutput'
   2711      }],
   2712      'expectedOutputs': {
   2713        'convTranspose2dOutput': {
   2714          'data': [
   2715            0.04827880859375,
   2716            0.64794921875,
   2717            1.0439453125,
   2718            0.8623046875,
   2719            0.415771484375,
   2720            0.379638671875,
   2721            1.1787109375,
   2722            1.9912109375,
   2723            1.623046875,
   2724            1.25,
   2725            0.424560546875,
   2726            1.5087890625,
   2727            3.287109375,
   2728            2.56640625,
   2729            1.814453125,
   2730            0.2071533203125,
   2731            1.25,
   2732            1.666015625,
   2733            2.09765625,
   2734            1.3134765625,
   2735            0.031463623046875,
   2736            0.386962890625,
   2737            1.0849609375,
   2738            1.2216796875,
   2739            0.45849609375,
   2740            0.054931640625,
   2741            0.70068359375,
   2742            0.70166015625,
   2743            0.269287109375,
   2744            0.210205078125,
   2745            0.420654296875,
   2746            0.95849609375,
   2747            1.8525390625,
   2748            0.53759765625,
   2749            0.394775390625,
   2750            0.3994140625,
   2751            1.578125,
   2752            2.12109375,
   2753            1.1416015625,
   2754            0.43017578125,
   2755            0.181396484375,
   2756            1.00390625,
   2757            1.341796875,
   2758            0.83447265625,
   2759            0.2249755859375,
   2760            0.0271759033203125,
   2761            0.302734375,
   2762            0.58544921875,
   2763            0.4033203125,
   2764            0.0921630859375
   2765          ],
   2766          'descriptor': {shape: [1, 2, 5, 5], dataType: 'float16'}
   2767        }
   2768      }
   2769    }
   2770  },
   2771  {
   2772    'name':
   2773        'convTranspose2d float16 4D input and filter tensors options.filterLayout=ohwi',
   2774    'graph': {
   2775      'inputs': {
   2776        'convTranspose2dInput': {
   2777          'data': [
   2778            0.056060791015625, 0.71142578125, 0.65283203125, 0.38623046875,
   2779            0.386962890625, 0.9462890625, 0.095703125, 0.92333984375,
   2780            0.63623046875
   2781          ],
   2782          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'}
   2783        },
   2784        'convTranspose2dFilter': {
   2785          'data': [
   2786            0.861328125, 0.626953125, 0.63671875, 0.83837890625,
   2787            0.11883544921875, 0.9921875, 0.32861328125, 0.8740234375,
   2788            0.720703125, 0.97998046875, 0.06170654296875, 0.322021484375, 0.75,
   2789            0.39306640625, 0.1380615234375, 0.283935546875, 0.423583984375,
   2790            0.1448974609375
   2791          ],
   2792          'descriptor': {shape: [2, 3, 3, 1], dataType: 'float16'},
   2793          'constant': true
   2794        }
   2795      },
   2796      'operators': [{
   2797        'name': 'convTranspose2d',
   2798        'arguments': [
   2799          {'input': 'convTranspose2dInput'},
   2800          {'filter': 'convTranspose2dFilter'},
   2801          {'options': {'filterLayout': 'ohwi'}}
   2802        ],
   2803        'outputs': 'convTranspose2dOutput'
   2804      }],
   2805      'expectedOutputs': {
   2806        'convTranspose2dOutput': {
   2807          'data': [
   2808            0.04827880859375,
   2809            0.64794921875,
   2810            1.0439453125,
   2811            0.8623046875,
   2812            0.415771484375,
   2813            0.379638671875,
   2814            1.1787109375,
   2815            1.9912109375,
   2816            1.623046875,
   2817            1.25,
   2818            0.424560546875,
   2819            1.5087890625,
   2820            3.287109375,
   2821            2.56640625,
   2822            1.814453125,
   2823            0.2071533203125,
   2824            1.25,
   2825            1.666015625,
   2826            2.09765625,
   2827            1.3134765625,
   2828            0.031463623046875,
   2829            0.386962890625,
   2830            1.0849609375,
   2831            1.2216796875,
   2832            0.45849609375,
   2833            0.054931640625,
   2834            0.70068359375,
   2835            0.70166015625,
   2836            0.269287109375,
   2837            0.210205078125,
   2838            0.420654296875,
   2839            0.95849609375,
   2840            1.8525390625,
   2841            0.53759765625,
   2842            0.394775390625,
   2843            0.3994140625,
   2844            1.578125,
   2845            2.12109375,
   2846            1.1416015625,
   2847            0.43017578125,
   2848            0.181396484375,
   2849            1.00390625,
   2850            1.341796875,
   2851            0.83447265625,
   2852            0.2249755859375,
   2853            0.0271759033203125,
   2854            0.302734375,
   2855            0.58544921875,
   2856            0.4033203125,
   2857            0.0921630859375
   2858          ],
   2859          'descriptor': {shape: [1, 2, 5, 5], dataType: 'float16'}
   2860        }
   2861      }
   2862    }
   2863  },
   2864  {
   2865    'name':
   2866        'convTranspose2d float16 4D input and filter tensors options.inputLayout=nhwc options.filterLayout=iohw',
   2867    'graph': {
   2868      'inputs': {
   2869        'convTranspose2dInput': {
   2870          'data': [
   2871            0.056060791015625, 0.71142578125, 0.65283203125, 0.38623046875,
   2872            0.386962890625, 0.9462890625, 0.095703125, 0.92333984375,
   2873            0.63623046875
   2874          ],
   2875          'descriptor': {shape: [1, 3, 3, 1], dataType: 'float16'}
   2876        },
   2877        'convTranspose2dFilter': {
   2878          'data': [
   2879            0.861328125, 0.626953125, 0.63671875, 0.83837890625,
   2880            0.11883544921875, 0.9921875, 0.32861328125, 0.8740234375,
   2881            0.720703125, 0.97998046875, 0.06170654296875, 0.322021484375, 0.75,
   2882            0.39306640625, 0.1380615234375, 0.283935546875, 0.423583984375,
   2883            0.1448974609375
   2884          ],
   2885          'descriptor': {shape: [1, 2, 3, 3], dataType: 'float16'},
   2886          'constant': true
   2887        }
   2888      },
   2889      'operators': [{
   2890        'name': 'convTranspose2d',
   2891        'arguments': [
   2892          {'input': 'convTranspose2dInput'},
   2893          {'filter': 'convTranspose2dFilter'},
   2894          {'options': {'inputLayout': 'nhwc', 'filterLayout': 'iohw'}}
   2895        ],
   2896        'outputs': 'convTranspose2dOutput'
   2897      }],
   2898      'expectedOutputs': {
   2899        'convTranspose2dOutput': {
   2900          'data': [
   2901            0.04827880859375,
   2902            0.054931640625,
   2903            0.64794921875,
   2904            0.70068359375,
   2905            1.0439453125,
   2906            0.70166015625,
   2907            0.8623046875,
   2908            0.269287109375,
   2909            0.415771484375,
   2910            0.210205078125,
   2911            0.379638671875,
   2912            0.420654296875,
   2913            1.1787109375,
   2914            0.95849609375,
   2915            1.9912109375,
   2916            1.8525390625,
   2917            1.623046875,
   2918            0.53759765625,
   2919            1.25,
   2920            0.394775390625,
   2921            0.424560546875,
   2922            0.3994140625,
   2923            1.5087890625,
   2924            1.578125,
   2925            3.287109375,
   2926            2.12109375,
   2927            2.56640625,
   2928            1.1416015625,
   2929            1.814453125,
   2930            0.43017578125,
   2931            0.2071533203125,
   2932            0.181396484375,
   2933            1.25,
   2934            1.00390625,
   2935            1.666015625,
   2936            1.341796875,
   2937            2.09765625,
   2938            0.83447265625,
   2939            1.3134765625,
   2940            0.2249755859375,
   2941            0.031463623046875,
   2942            0.0271759033203125,
   2943            0.386962890625,
   2944            0.302734375,
   2945            1.0849609375,
   2946            0.58544921875,
   2947            1.2216796875,
   2948            0.4033203125,
   2949            0.45849609375,
   2950            0.0921630859375
   2951          ],
   2952          'descriptor': {shape: [1, 5, 5, 2], dataType: 'float16'}
   2953        }
   2954      }
   2955    }
   2956  },
   2957  {
   2958    'name':
   2959        'convTranspose2d float16 4D input and filter tensors options.inputLayout=nhwc options.filterLayout=hwoi',
   2960    'graph': {
   2961      'inputs': {
   2962        'convTranspose2dInput': {
   2963          'data': [
   2964            0.056060791015625, 0.71142578125, 0.65283203125, 0.38623046875,
   2965            0.386962890625, 0.9462890625, 0.095703125, 0.92333984375,
   2966            0.63623046875
   2967          ],
   2968          'descriptor': {shape: [1, 3, 3, 1], dataType: 'float16'}
   2969        },
   2970        'convTranspose2dFilter': {
   2971          'data': [
   2972            0.861328125, 0.97998046875, 0.626953125, 0.06170654296875,
   2973            0.63671875, 0.322021484375, 0.83837890625, 0.75, 0.11883544921875,
   2974            0.39306640625, 0.9921875, 0.1380615234375, 0.32861328125,
   2975            0.283935546875, 0.8740234375, 0.423583984375, 0.720703125,
   2976            0.1448974609375
   2977          ],
   2978          'descriptor': {shape: [3, 3, 2, 1], dataType: 'float16'},
   2979          'constant': true
   2980        }
   2981      },
   2982      'operators': [{
   2983        'name': 'convTranspose2d',
   2984        'arguments': [
   2985          {'input': 'convTranspose2dInput'},
   2986          {'filter': 'convTranspose2dFilter'},
   2987          {'options': {'inputLayout': 'nhwc', 'filterLayout': 'hwoi'}}
   2988        ],
   2989        'outputs': 'convTranspose2dOutput'
   2990      }],
   2991      'expectedOutputs': {
   2992        'convTranspose2dOutput': {
   2993          'data': [
   2994            0.04827880859375,
   2995            0.054931640625,
   2996            0.64794921875,
   2997            0.70068359375,
   2998            1.0439453125,
   2999            0.70166015625,
   3000            0.8623046875,
   3001            0.269287109375,
   3002            0.415771484375,
   3003            0.210205078125,
   3004            0.379638671875,
   3005            0.420654296875,
   3006            1.1787109375,
   3007            0.95849609375,
   3008            1.9912109375,
   3009            1.8525390625,
   3010            1.623046875,
   3011            0.53759765625,
   3012            1.25,
   3013            0.394775390625,
   3014            0.424560546875,
   3015            0.3994140625,
   3016            1.5087890625,
   3017            1.578125,
   3018            3.287109375,
   3019            2.12109375,
   3020            2.56640625,
   3021            1.1416015625,
   3022            1.814453125,
   3023            0.43017578125,
   3024            0.2071533203125,
   3025            0.181396484375,
   3026            1.25,
   3027            1.00390625,
   3028            1.666015625,
   3029            1.341796875,
   3030            2.09765625,
   3031            0.83447265625,
   3032            1.3134765625,
   3033            0.2249755859375,
   3034            0.031463623046875,
   3035            0.0271759033203125,
   3036            0.386962890625,
   3037            0.302734375,
   3038            1.0849609375,
   3039            0.58544921875,
   3040            1.2216796875,
   3041            0.4033203125,
   3042            0.45849609375,
   3043            0.0921630859375
   3044          ],
   3045          'descriptor': {shape: [1, 5, 5, 2], dataType: 'float16'}
   3046        }
   3047      }
   3048    }
   3049  },
   3050  {
   3051    'name':
   3052        'convTranspose2d float16 4D input and filter tensors options.inputLayout=nhwc options.filterLayout=ohwi',
   3053    'graph': {
   3054      'inputs': {
   3055        'convTranspose2dInput': {
   3056          'data': [
   3057            0.056060791015625, 0.71142578125, 0.65283203125, 0.38623046875,
   3058            0.386962890625, 0.9462890625, 0.095703125, 0.92333984375,
   3059            0.63623046875
   3060          ],
   3061          'descriptor': {shape: [1, 3, 3, 1], dataType: 'float16'}
   3062        },
   3063        'convTranspose2dFilter': {
   3064          'data': [
   3065            0.861328125, 0.626953125, 0.63671875, 0.83837890625,
   3066            0.11883544921875, 0.9921875, 0.32861328125, 0.8740234375,
   3067            0.720703125, 0.97998046875, 0.06170654296875, 0.322021484375, 0.75,
   3068            0.39306640625, 0.1380615234375, 0.283935546875, 0.423583984375,
   3069            0.1448974609375
   3070          ],
   3071          'descriptor': {shape: [2, 3, 3, 1], dataType: 'float16'},
   3072          'constant': true
   3073        }
   3074      },
   3075      'operators': [{
   3076        'name': 'convTranspose2d',
   3077        'arguments': [
   3078          {'input': 'convTranspose2dInput'},
   3079          {'filter': 'convTranspose2dFilter'},
   3080          {'options': {'inputLayout': 'nhwc', 'filterLayout': 'ohwi'}}
   3081        ],
   3082        'outputs': 'convTranspose2dOutput'
   3083      }],
   3084      'expectedOutputs': {
   3085        'convTranspose2dOutput': {
   3086          'data': [
   3087            0.04827880859375,
   3088            0.054931640625,
   3089            0.64794921875,
   3090            0.70068359375,
   3091            1.0439453125,
   3092            0.70166015625,
   3093            0.8623046875,
   3094            0.269287109375,
   3095            0.415771484375,
   3096            0.210205078125,
   3097            0.379638671875,
   3098            0.420654296875,
   3099            1.1787109375,
   3100            0.95849609375,
   3101            1.9912109375,
   3102            1.8525390625,
   3103            1.623046875,
   3104            0.53759765625,
   3105            1.25,
   3106            0.394775390625,
   3107            0.424560546875,
   3108            0.3994140625,
   3109            1.5087890625,
   3110            1.578125,
   3111            3.287109375,
   3112            2.12109375,
   3113            2.56640625,
   3114            1.1416015625,
   3115            1.814453125,
   3116            0.43017578125,
   3117            0.2071533203125,
   3118            0.181396484375,
   3119            1.25,
   3120            1.00390625,
   3121            1.666015625,
   3122            1.341796875,
   3123            2.09765625,
   3124            0.83447265625,
   3125            1.3134765625,
   3126            0.2249755859375,
   3127            0.031463623046875,
   3128            0.0271759033203125,
   3129            0.386962890625,
   3130            0.302734375,
   3131            1.0849609375,
   3132            0.58544921875,
   3133            1.2216796875,
   3134            0.4033203125,
   3135            0.45849609375,
   3136            0.0921630859375
   3137          ],
   3138          'descriptor': {shape: [1, 5, 5, 2], dataType: 'float16'}
   3139        }
   3140      }
   3141    }
   3142  },
   3143  {
   3144    'name': 'convTranspose2d float16 4D input and filter tensors options.bias',
   3145    'graph': {
   3146      'inputs': {
   3147        'convTranspose2dInput': {
   3148          'data': [
   3149            0.1109619140625, 0.8681640625, 0.734375, 0.4306640625,
   3150            0.59814453125, 0.12322998046875, 0.1611328125, 0.08837890625,
   3151            0.291015625
   3152          ],
   3153          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'}
   3154        },
   3155        'convTranspose2dFilter': {
   3156          'data': [
   3157            0.6162109375, 0.26220703125, 0.794921875, 0.873046875, 0.8310546875,
   3158            0.85498046875, 0.55517578125, 0.84033203125, 0.85302734375
   3159          ],
   3160          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'},
   3161          'constant': true
   3162        },
   3163        'convTranspose2dBias': {
   3164          'data': [0.45166015625],
   3165          'descriptor': {shape: [1], dataType: 'float16'},
   3166          'constant': true
   3167        }
   3168      },
   3169      'operators': [{
   3170        'name': 'convTranspose2d',
   3171        'arguments': [
   3172          {'input': 'convTranspose2dInput'},
   3173          {'filter': 'convTranspose2dFilter'},
   3174          {'options': {'bias': 'convTranspose2dBias'}}
   3175        ],
   3176        'outputs': 'convTranspose2dOutput'
   3177      }],
   3178      'expectedOutputs': {
   3179        'convTranspose2dOutput': {
   3180          'data': [
   3181            0.52001953125, 1.015625,      1.2197265625,  1.333984375,
   3182            1.03515625,    0.81396484375, 1.783203125,   2.484375,
   3183            2.3125,        1.177734375,   0.98876953125, 2.00390625,
   3184            2.986328125,   2.5703125,     1.4150390625,  0.83154296875,
   3185            1.3564453125,  1.85546875,    1.3828125,     0.8056640625,
   3186            0.541015625,   0.63623046875, 0.82470703125, 0.771484375,
   3187            0.69970703125
   3188          ],
   3189          'descriptor': {shape: [1, 1, 5, 5], dataType: 'float16'}
   3190        }
   3191      }
   3192    }
   3193  },
   3194  {
   3195    'name':
   3196        'convTranspose2d float16 4D input and filter tensors, both negative input tensor and options.bias',
   3197    'graph': {
   3198      'inputs': {
   3199        'convTranspose2dInput': {
   3200          'data': [
   3201            -0.10888671875, -0.298095703125, -0.390869140625, -0.5625,
   3202            -0.732421875, -0.84228515625, -0.305908203125, -0.9765625,
   3203            -0.01416015625
   3204          ],
   3205          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'}
   3206        },
   3207        'convTranspose2dFilter': {
   3208          'data': [
   3209            0.6162109375, 0.26220703125, 0.794921875, 0.873046875, 0.8310546875,
   3210            0.85498046875, 0.55517578125, 0.84033203125, 0.85302734375
   3211          ],
   3212          'descriptor': {shape: [1, 1, 3, 3], dataType: 'float16'},
   3213          'constant': true
   3214        },
   3215        'convTranspose2dBias': {
   3216          'data': [-0.845703125],
   3217          'descriptor': {shape: [1], dataType: 'float16'},
   3218          'constant': true
   3219        }
   3220      },
   3221      'operators': [{
   3222        'name': 'convTranspose2d',
   3223        'arguments': [
   3224          {'input': 'convTranspose2dInput'},
   3225          {'filter': 'convTranspose2dFilter'},
   3226          {'options': {'bias': 'convTranspose2dBias'}}
   3227        ],
   3228        'outputs': 'convTranspose2dOutput'
   3229      }],
   3230      'expectedOutputs': {
   3231        'convTranspose2dOutput': {
   3232          'data': [
   3233            -0.91259765625, -1.0576171875, -1.2509765625, -1.185546875,
   3234            -1.15625,       -1.287109375,  -1.794921875,  -2.685546875,
   3235            -2.228515625,   -1.849609375,  -1.5859375,    -2.890625,
   3236            -3.73828125,    -3.53515625,   -1.91015625,   -1.4248046875,
   3237            -2.83203125,    -3.494140625,  -3.025390625,  -1.576171875,
   3238            -1.015625,      -1.64453125,   -1.935546875,  -1.6904296875,
   3239            -0.85791015625
   3240          ],
   3241          'descriptor': {shape: [1, 1, 5, 5], dataType: 'float16'}
   3242        }
   3243      }
   3244    }
   3245  }
   3246 ];
   3247 
   3248 webnn_conformance_test(
   3249    convTranspose2dTests, buildAndExecuteGraph, getPrecisionTolerance);