|
|
|
@ -150,73 +150,6 @@ def strided_slice_grad(nptype):
|
|
|
|
|
[0., 0., 0., 0., 0.]]]]).astype(nptype)
|
|
|
|
|
assert np.allclose(dx[0].asnumpy(), expect)
|
|
|
|
|
|
|
|
|
|
# ME infer fault
|
|
|
|
|
# y = GradData()(x, (1, 0, -1, -2), (2, 2, 0, -5), (1, 1, -1, -2))
|
|
|
|
|
# expect = np.array([[[[0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.]],
|
|
|
|
|
|
|
|
|
|
# [[0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.]],
|
|
|
|
|
|
|
|
|
|
# [[0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.]]],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# [[[0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 1., 0., 1., 0.],
|
|
|
|
|
# [0., 1., 0., 1., 0.],
|
|
|
|
|
# [0., 1., 0., 1., 0.]],
|
|
|
|
|
|
|
|
|
|
# [[0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 1., 0., 1., 0.],
|
|
|
|
|
# [0., 1., 0., 1., 0.],
|
|
|
|
|
# [0., 1., 0., 1., 0.]],begin_mask=0b1000, end_mask=0b0010, ellipsis_mask=0b0100
|
|
|
|
|
|
|
|
|
|
# [[0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.]]]])
|
|
|
|
|
# assert np.allclose(y.asnumpy(), expect)
|
|
|
|
|
|
|
|
|
|
# y = Grad(begin_mask=0b1000, end_mask=0b0010)(x, (1, 0, 0, 2), (2, 2, 2, 4), (1, 1, 1, 1))
|
|
|
|
|
# expect = np.array([[[[0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.]],
|
|
|
|
|
|
|
|
|
|
# [[0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.]],
|
|
|
|
|
|
|
|
|
|
# [[0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.]]],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# [[[0., 0., 1., 1., 0.],
|
|
|
|
|
# [0., 0., 1., 1., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.]],
|
|
|
|
|
|
|
|
|
|
# [[0., 0., 1., 1., 0.],
|
|
|
|
|
# [0., 0., 1., 1., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.]],
|
|
|
|
|
|
|
|
|
|
# [[0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.],
|
|
|
|
|
# [0., 0., 0., 0., 0.]]]])
|
|
|
|
|
# assert np.allclose(y.asnumpy(), expect)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
net = StridedSliceNet((1, 0, 0, 2), (2, 2, 2, 4), (1, 1, 1, 1),
|
|
|
|
|
begin_mask=0b1000, end_mask=0b0010, ellipsis_mask=0b0100)
|
|
|
|
|