Add generated test for 3D input and 2D indices in gather (#4345)
author윤지영/On-Device Lab(SR)/Engineer/삼성전자 <jy910.yun@samsung.com>
Fri, 22 Feb 2019 07:00:05 +0000 (16:00 +0900)
committer오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 <hseok82.oh@samsung.com>
Fri, 22 Feb 2019 07:00:05 +0000 (16:00 +0900)
* Add generated test for 3D input and 2D indices in gather

This commit contains a new generated test for 3D input and 2D indices in gather.

gather_ex_3D_2D_float_1 for [2,3,4] input and [1,2] indices with axis 0
gather_ex_3D_2D_float_2 for [2,3,4] input and [2,1] indices with axis 1
gather_ex_3D_2D_float_3 for [2,3,4] input and [2,1] indices with axis 2

* Update wrong comment

Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
tests/nnapi/specs/Ex/gather_ex_3D_2D_float_1.mod.py [new file with mode: 0644]
tests/nnapi/specs/Ex/gather_ex_3D_2D_float_2.mod.py [new file with mode: 0644]
tests/nnapi/specs/Ex/gather_ex_3D_2D_float_3.mod.py [new file with mode: 0644]

diff --git a/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_1.mod.py b/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_1.mod.py
new file mode 100644 (file)
index 0000000..09db602
--- /dev/null
@@ -0,0 +1,29 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{2,3,4}") # a vector of 24 float32s
+i2 = Input("op2", "TENSOR_INT32", "{1,2}") # another vector of 2 int32s
+axis = Int32Scalar("axis", 0)
+i3 = Output("op3", "TENSOR_FLOAT32", "{1,2,3,4}") # a vector of 24 float32s
+model = model.Operation("GATHER_EX", i1, i2, axis).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+          [3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+          7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+          2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+          13.123456789123456789, 14.123456789123456789, 15.123456789123456789, 16.123456789123456789,
+          17.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+          12.123456789123456789, 28.123456789123456789, 29.123456789123456789, 21.123456789123456789],
+          i2: # input 1
+          [1, 0]}
+
+output0 = {i3: # output 0
+           [13.123456789123456789, 14.123456789123456789, 15.123456789123456789, 16.123456789123456789,
+           17.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+           12.123456789123456789, 28.123456789123456789, 29.123456789123456789, 21.123456789123456789,
+           3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+           7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+           2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_2.mod.py b/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_2.mod.py
new file mode 100644 (file)
index 0000000..bfdc83c
--- /dev/null
@@ -0,0 +1,29 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{2,3,4}") # a vector of 24 float32s
+i2 = Input("op2", "TENSOR_INT32", "{2,1}") # another vector of 2 int32s
+axis = Int32Scalar("axis", 0)
+i3 = Output("op3", "TENSOR_FLOAT32", "{2,1,3,4}") # a vector of 24 float32s
+model = model.Operation("GATHER_EX", i1, i2, axis).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+          [3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+          7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+          2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+          13.123456789123456789, 14.123456789123456789, 15.123456789123456789, 16.123456789123456789,
+          17.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+          12.123456789123456789, 28.123456789123456789, 29.123456789123456789, 21.123456789123456789],
+          i2: # input 1
+          [0, 0]}
+
+output0 = {i3: # output 0
+           [3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+           7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+           2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+           3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+           7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+           2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789]}
+
+# Instantiate an example
+Example((input0, output0))
diff --git a/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_3.mod.py b/tests/nnapi/specs/Ex/gather_ex_3D_2D_float_3.mod.py
new file mode 100644 (file)
index 0000000..cfcd1b4
--- /dev/null
@@ -0,0 +1,26 @@
+# model
+model = Model()
+i1 = Input("op1", "TENSOR_FLOAT32", "{2,3,4}") # a vector of 24 float32s
+i2 = Input("op2", "TENSOR_INT32", "{2,1}") # another vector of 2 int32s
+axis = Int32Scalar("axis", 2)
+i3 = Output("op3", "TENSOR_FLOAT32", "{2,3,2,1}") # a vector of 12 float32s
+model = model.Operation("GATHER_EX", i1, i2, axis).To(i3)
+
+# Example 1. Input in operand 0,
+input0 = {i1: # input 0
+          [3.123456789123456789, 4.123456789123456789, 5.123456789123456789, 6.123456789123456789,
+          7.123456789123456789, 8.123456789123456789, 9.123456789123456789, 1.123456789123456789,
+          2.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+          13.123456789123456789, 14.123456789123456789, 15.123456789123456789, 16.123456789123456789,
+          17.123456789123456789, 18.123456789123456789, 19.123456789123456789, 11.123456789123456789,
+          12.123456789123456789, 28.123456789123456789, 29.123456789123456789, 21.123456789123456789],
+          i2: # input 1
+          [3, 1]}
+
+output0 = {i3: # output 0
+           [6.123456789123456789, 4.123456789123456789, 1.123456789123456789, 8.123456789123456789,
+            11.123456789123456789, 18.123456789123456789, 16.123456789123456789, 14.123456789123456789,
+            11.123456789123456789, 18.123456789123456789, 21.123456789123456789, 28.123456789123456789]}
+
+# Instantiate an example
+Example((input0, output0))