armnn-metadata.json 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423
  1. [
  2. {
  3. "name": "ActivationLayer",
  4. "category": "Activation",
  5. "attributes": [
  6. { "name": "activationFunction", "type": "ActivationFunction" },
  7. { "name": "a", "type": "float32" },
  8. { "name": "b", "type": "float32" }
  9. ]
  10. },
  11. {
  12. "name": "AdditionLayer",
  13. "inputs": [
  14. { "name": "A" },
  15. { "name": "B" }
  16. ],
  17. "outputs": [
  18. { "name": "C" }
  19. ]
  20. },
  21. {
  22. "name": "BatchNormalizationLayer",
  23. "category": "Normalization",
  24. "attributes": [
  25. { "name": "eps", "type": "float32" },
  26. { "name": "dataLayout", "type": "DataLayout" }
  27. ],
  28. "inputs": [
  29. { "name": "input" },
  30. { "name": "mean" },
  31. { "name": "variance" },
  32. { "name": "beta" },
  33. { "name": "gamma" }
  34. ]
  35. },
  36. {
  37. "name": "BatchToSpaceNdLayer",
  38. "category": "Layer",
  39. "attributes": [
  40. { "name": "blockShape", "type": "string" },
  41. { "name": "crops", "type": "string" },
  42. { "name": "dataLayout", "type": "DataLayout" }
  43. ]
  44. },
  45. {
  46. "name": "ConcatLayer",
  47. "category": "Tensor",
  48. "attributes": [
  49. { "name": "concatAxis", "type": "uint32" },
  50. { "name": "numViews", "type": "uint32" },
  51. { "name": "numDimensions", "type": "uint32" }
  52. ]
  53. },
  54. {
  55. "name": "ConstantLayer",
  56. "category": "Constant",
  57. "inputs": [
  58. { "name": "input" }
  59. ]
  60. },
  61. {
  62. "name": "Convolution2dLayer",
  63. "category": "Layer",
  64. "attributes": [
  65. { "name": "padTop", "type": "uint32" },
  66. { "name": "padRight", "type": "uint32" },
  67. { "name": "padBottom", "type": "uint32" },
  68. { "name": "padLeft", "type": "uint32" },
  69. { "name": "strideX", "type": "uint32" },
  70. { "name": "strideY", "type": "uint32" },
  71. { "name": "dilationX", "type": "uint32" },
  72. { "name": "dilationY", "type": "uint32" },
  73. { "name": "dataLayout", "type": "DataLayout" }
  74. ],
  75. "inputs": [
  76. { "name": "input" },
  77. { "name": "weights" },
  78. { "name": "biases" }
  79. ]
  80. },
  81. {
  82. "name": "DepthwiseConvolution2dLayer",
  83. "category": "Layer",
  84. "attributes": [
  85. { "name": "padTop", "type": "uint32" },
  86. { "name": "padRight", "type": "uint32" },
  87. { "name": "padBottom", "type": "uint32" },
  88. { "name": "padLeft", "type": "uint32" },
  89. { "name": "strideX", "type": "uint32" },
  90. { "name": "strideY", "type": "uint32" },
  91. { "name": "dilationX", "type": "uint32" },
  92. { "name": "dilationY", "type": "uint32" },
  93. { "name": "dataLayout", "type": "DataLayout" }
  94. ],
  95. "inputs": [
  96. { "name": "input" },
  97. { "name": "weights" },
  98. { "name": "biases" }
  99. ]
  100. },
  101. {
  102. "name": "DequantizeLayer",
  103. "category": "Quantization"
  104. },
  105. {
  106. "name": "DetectionPostProcessLayer",
  107. "category": "Custom",
  108. "attributes": [
  109. { "name": "maxDetections", "type": "uint32" },
  110. { "name": "maxClassesPerDetection", "type": "uint32" },
  111. { "name": "detectionsPerClass", "type": "uint32" },
  112. { "name": "nmsScoreThreshold", "type": "float32" },
  113. { "name": "numIouThreshold", "type": "float32" },
  114. { "name": "numClasses", "type": "uint32" },
  115. { "name": "useRegularNms", "type": "boolean" },
  116. { "name": "scaleX", "type": "float32" },
  117. { "name": "scaleY", "type": "float32" },
  118. { "name": "scaleW", "type": "float32" },
  119. { "name": "scaleH", "type": "float32" }
  120. ]
  121. },
  122. {
  123. "name": "DivisionLayer",
  124. "category": "Layer"
  125. },
  126. {
  127. "name": "EqualLayer",
  128. "category": "Layer"
  129. },
  130. {
  131. "name": "FloorLayer",
  132. "category": "Layer"
  133. },
  134. {
  135. "name": "FullyConnectedLayer",
  136. "category": "Layer",
  137. "attributes": [
  138. { "name": "transposeWeightsMatrix", "type": "boolean" }
  139. ],
  140. "inputs": [
  141. { "name": "input" },
  142. { "name": "weights" },
  143. { "name": "biases" }
  144. ]
  145. },
  146. {
  147. "name": "GatherLayer",
  148. "category": "Tensor"
  149. },
  150. {
  151. "name": "GreaterLayer",
  152. "category": "Layer"
  153. },
  154. {
  155. "name": "InputLayer"
  156. },
  157. {
  158. "name": "L2NormalizationLayer",
  159. "category": "Normalization",
  160. "attributes": [
  161. { "name": "eps", "type": "float32" },
  162. { "name": "dataLayout", "type": "DataLayout" }
  163. ]
  164. },
  165. {
  166. "name": "LstmLayer",
  167. "category": "Layer",
  168. "attributes": [
  169. { "name": "activationFunc", "type": "uint32" },
  170. { "name": "clippingThresCell", "type": "float32" },
  171. { "name": "clippingThresProj", "type": "float32" },
  172. { "name": "cifgEnabled", "type": "boolean" },
  173. { "name": "peepholeEnabled", "type": "boolean" },
  174. { "name": "projectionEnabled", "type": "boolean" },
  175. { "name": "layerNormEnabled", "type": "boolean" }
  176. ],
  177. "inputs": [
  178. { "name": "input" },
  179. { "name": "inputToForgetWeights1" },
  180. { "name": "inputToCellWeights1" },
  181. { "name": "inputToOutputWeights1" },
  182. { "name": "recurrentToForgetWeights1" },
  183. { "name": "recurrentToCellWeights1" },
  184. { "name": "recurrentToOutputWeights1" },
  185. { "name": "forgetGateBias1" },
  186. { "name": "cellBias1" },
  187. { "name": "outputGateBias1" },
  188. { "name": "inputToInputWeights1" },
  189. { "name": "recurrentToInputWeights1" },
  190. { "name": "cellToInputWeights1" },
  191. { "name": "inputGateBias1" },
  192. { "name": "projectionWeights1" },
  193. { "name": "projectionBias1" },
  194. { "name": "cellToForgetWeights1" },
  195. { "name": "cellToOutputWeights1" },
  196. { "name": "inputLayerNormWeights1" },
  197. { "name": "forgetLayerNormWeights1" },
  198. { "name": "cellLayerNormWeights1" },
  199. { "name": "outputLayerNormWeights1" }
  200. ]
  201. },
  202. {
  203. "name": "MaximumLayer",
  204. "category": "Layer"
  205. },
  206. {
  207. "name": "MeanLayer",
  208. "attributes": [
  209. { "name": "axis", "type": "uint32" },
  210. { "name": "keepDims", "type": "boolean" }
  211. ]
  212. },
  213. {
  214. "name": "MergeLayer",
  215. "category": "Layer"
  216. },
  217. {
  218. "name": "MergerLayer",
  219. "category": "Tensor"
  220. },
  221. {
  222. "name": "MinimumLayer",
  223. "category": "Layer"
  224. },
  225. {
  226. "name": "MultiplicationLayer",
  227. "inputs": [
  228. { "name": "A" },
  229. { "name": "B" }
  230. ],
  231. "outputs": [
  232. { "name": "C" }
  233. ]
  234. },
  235. {
  236. "name": "NormalizationLayer",
  237. "category": "Normalization",
  238. "attributes": [
  239. { "name": "normChannelType", "type": "NormalizationAlgorithmChannel" },
  240. { "name": "normMethodType", "type": "NormalizationAlgorithmMethod" },
  241. { "name": "normSize", "type": "uint32" },
  242. { "name": "alpha", "type": "float32" },
  243. { "name": "beta", "type": "float32" },
  244. { "name": "dataLayout", "type": "DataLayout" }
  245. ]
  246. },
  247. {
  248. "name": "OutputLayer",
  249. "category": "Tensor"
  250. },
  251. {
  252. "name": "PadLayer",
  253. "category": "Layer",
  254. "attributes": [
  255. { "name": "padList", "type": "uint32" },
  256. { "name": "padValue", "type": "float32" }
  257. ]
  258. },
  259. {
  260. "name": "PermuteLayer",
  261. "category": "Shape",
  262. "attributes": [
  263. { "name": "dimMappings", "type": "string" }
  264. ]
  265. },
  266. {
  267. "name": "Pooling2dLayer",
  268. "category": "Pool",
  269. "attributes": [
  270. { "name": "poolType", "type": "PoolingAlgorithm" },
  271. { "name": "padTop", "type": "uint32" },
  272. { "name": "padRight", "type": "uint32" },
  273. { "name": "padBottom", "type": "uint32" },
  274. { "name": "padLeft", "type": "uint32" },
  275. { "name": "poolWidth", "type": "uint32" },
  276. { "name": "poolHeight", "type": "uint32" },
  277. { "name": "strideX", "type": "uint32" },
  278. { "name": "strideY", "type": "uint32" },
  279. { "name": "outputShapeRounding", "type": "OutputShapeRounding" },
  280. { "name": "paddingMethod", "type": "PaddingMethod" },
  281. { "name": "dataLayout", "type": "DataLayout" }
  282. ]
  283. },
  284. {
  285. "name": "PreluLayer",
  286. "category": "Layer"
  287. },
  288. {
  289. "name": "QuantizedLstmLayer",
  290. "category": "Layer",
  291. "inputs": [
  292. { "name": "input" },
  293. { "name": "inputToInputWeights1" },
  294. { "name": "inputToForgetWeights1" },
  295. { "name": "inputToCellWeights1" },
  296. { "name": "inputToOutputWeights1" },
  297. { "name": "recurrentToInputWeights1" },
  298. { "name": "recurrentToForgetWeights1" },
  299. { "name": "recurrentToCellWeights1" },
  300. { "name": "recurrentToOutputWeights1" },
  301. { "name": "inputGateBias1" },
  302. { "name": "forgetGateBias1" },
  303. { "name": "cellBias1" },
  304. { "name": "outputGateBias1" }
  305. ]
  306. },
  307. {
  308. "name": "QuantizeLayer",
  309. "category": "Quantization"
  310. },
  311. {
  312. "name": "ReshapeLayer",
  313. "category": "Shape",
  314. "attributes": [
  315. { "name": "targetShape", "type": "uint32[]" }
  316. ]
  317. },
  318. {
  319. "name": "ResizeBilinearLayer",
  320. "category": "Layer",
  321. "attributes": [
  322. { "name": "targetWidth", "type": "uint32" },
  323. { "name": "targetHeight", "type": "uint32" },
  324. { "name": "dataLayout", "type": "DataLayout" }
  325. ]
  326. },
  327. {
  328. "name": "ResizeLayer",
  329. "category": "Layer",
  330. "attributes": [
  331. { "name": "targetWidth", "type": "uint32" },
  332. { "name": "targetHeight", "type": "uint32" },
  333. { "name": "method", "type": "ResizeMethod" },
  334. { "name": "dataLayout", "type": "DataLayout" }
  335. ]
  336. },
  337. {
  338. "name": "RsqrtLayer",
  339. "category": "Layer"
  340. },
  341. {
  342. "name": "SoftmaxLayer",
  343. "category": "Activation",
  344. "attributes": [
  345. { "name": "beta", "type": "float32" }
  346. ]
  347. },
  348. {
  349. "name": "SpaceToBatchNdLayer",
  350. "category": "Layer",
  351. "attributes": [
  352. { "name": "blockShape", "type": "string" },
  353. { "name": "padList", "type": "string" },
  354. { "name": "dataLayout", "type": "DataLayout" }
  355. ]
  356. },
  357. {
  358. "name": "SpaceToDepthLayer",
  359. "category": "Layer",
  360. "attributes": [
  361. { "name": "blockSize", "type": "uint32" },
  362. { "name": "dataLayout", "type": "DataLayout" }
  363. ]
  364. },
  365. {
  366. "name": "SplitterLayer",
  367. "category": "Tensor",
  368. "attributes": [
  369. { "name": "concatAxis", "type": "uint32" },
  370. { "name": "numViews", "type": "uint32" },
  371. { "name": "numDimensions", "type": "uint32" }
  372. ]
  373. },
  374. {
  375. "name": "StackLayer",
  376. "category": "Layer",
  377. "attributes": [
  378. { "name": "axis", "type": "uint32" },
  379. { "name": "numInputs", "type": "uint32" },
  380. { "name": "inputShape", "type": "uint32" }
  381. ]
  382. },
  383. {
  384. "name": "StridedSliceLayer",
  385. "category": "Tensor",
  386. "attributes": [
  387. { "name": "begin", "type": "int32" },
  388. { "name": "end", "type": "int32" },
  389. { "name": "stride", "type": "int32" },
  390. { "name": "beginMask", "type": "int32" },
  391. { "name": "endMask", "type": "int32" },
  392. { "name": "shrinkAxisMask", "type": "int32" },
  393. { "name": "ellipsisMask", "type": "int32" },
  394. { "name": "newAxisMask", "type": "int32" },
  395. { "name": "dataLayout", "type": "DataLayout" }
  396. ]
  397. },
  398. {
  399. "name": "SubtractionLayer"
  400. },
  401. {
  402. "name": "SwitchLayer",
  403. "category": "Layer"
  404. },
  405. {
  406. "name": "TransposeConvolution2dLayer",
  407. "category": "Layer",
  408. "attributes": [
  409. { "name": "padTop", "type": "uint32" },
  410. { "name": "padRight", "type": "uint32" },
  411. { "name": "padBottom", "type": "uint32" },
  412. { "name": "padLeft", "type": "uint32" },
  413. { "name": "strideX", "type": "uint32" },
  414. { "name": "strideY", "type": "uint32" },
  415. { "name": "dataLayout", "type": "DataLayout" }
  416. ],
  417. "inputs": [
  418. { "name": "input" },
  419. { "name": "weights" },
  420. { "name": "biases" }
  421. ]
  422. }
  423. ]