• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# model
2model = Model()
3sparseData = Input("sparseData", "TENSOR_FLOAT32", "{12}")
4traversalOrder = Parameter("traversalOrder", "TENSOR_INT32", "{2}", [0, 1])
5blockMap = Parameter("blockMap", "TENSOR_INT32", "{0}", [])
6dimFormat = Parameter("dimFormat", "TENSOR_INT32", "{2}", [0, 0])
7dimensions = Parameter("dimensions", "TENSOR_INT32", "{2}", [3, 4])
8d0ArrSegments = Parameter("d0ArrSegments", "TENSOR_INT32", "{0}", [])
9d0ArrIndices = Parameter("d0ArrIndices", "TENSOR_INT32", "{0}", [])
10d1ArrSegments = Parameter("d1ArrSegments", "TENSOR_INT32", "{0}", [])
11d1ArrIndices = Parameter("d1ArrIndices", "TENSOR_INT32", "{0}", [])
12denseOut = Output("denseOut", "TENSOR_FLOAT32", "{3, 4}")
13model = model.Operation("DENSIFY", sparseData, traversalOrder, blockMap,
14                        dimFormat, dimensions, d0ArrSegments, d0ArrIndices, d1ArrSegments,
15                        d1ArrIndices).To(denseOut)
16
17# Example 1. Input in operand 0,
18input0 = {sparseData: # input 0
19          [6.0, 0.0, 9.0, 8.0, 0.0, 0.0, 0.0, 0.0, 5.0, 0.0, 0.0, 7.0]}
20
21output0 = {denseOut: # output 0
22           [6.0, 0.0, 9.0, 8.0, 0.0, 0.0, 0.0, 0.0, 5.0, 0.0, 0.0, 7.0]}
23
24quant8_symm = DataTypeConverter().Identify({
25    sparseData: ("TENSOR_QUANT8_SYMM", 2.0),
26    denseOut: ("TENSOR_QUANT8_SYMM", 2.0)
27})
28
29quant8_asymm = DataTypeConverter().Identify({
30    sparseData: ("TENSOR_QUANT8_ASYMM", 0.5, 4),
31    denseOut: ("TENSOR_QUANT8_ASYMM", 0.5, 4)
32})
33
34quant8_asymm_signed = DataTypeConverter().Identify({
35    sparseData: ("TENSOR_QUANT8_ASYMM_SIGNED", 2.5, -9),
36    denseOut: ("TENSOR_QUANT8_ASYMM_SIGNED", 2.5, -9)
37})
38
39quant16_symm = DataTypeConverter().Identify({
40    sparseData: ("TENSOR_QUANT16_SYMM", 3.0),
41    denseOut: ("TENSOR_QUANT16_SYMM", 3.0)
42})
43
44quant16_asymm = DataTypeConverter().Identify({
45    sparseData: ("TENSOR_QUANT16_ASYMM", 2.0, 4),
46    denseOut: ("TENSOR_QUANT16_ASYMM", 2.0, 4)
47})
48
49# Instantiate an example
50Example((input0, output0)).AddVariations("relaxed", "float16", "int32", quant8_symm,
51                                        quant8_asymm, quant8_asymm_signed, quant16_symm,
52                                        quant16_asymm)
53