def test_sign_int32(): op = P.Sign() op_wrapper = OpNetWrapper(op) input_x = Tensor(np.array([[20, 0, -10]]).astype(np.int32)) outputs = op_wrapper(input_x) print(outputs) assert np.allclose(outputs.asnumpy(), [[1, 0, -1]])
def test_sign_float32(): op = P.Sign() op_wrapper = OpNetWrapper(op) input_x = Tensor(np.array([[2.0, 0.0, -1.0]]).astype(np.float32)) outputs = op_wrapper(input_x) print(outputs) assert np.allclose(outputs.asnumpy(), [[1., 0., -1.]])
def __init__(self): super(SignNet, self).__init__() self.sign = P.Sign()
'block': P.ReduceSum(keep_dims=True), 'desc_const': [0], 'desc_inputs': [[3, 2]], 'desc_bprop': [[1, 2]]}), ('Sum_5', { 'block': P.ReduceSum(keep_dims=True), 'desc_const': [()], 'desc_inputs': [[2, 3, 4]], 'desc_bprop': [[1, 1, 1]]}), ('Sum_6', { 'block': P.ReduceSum(), 'desc_const': [()], 'desc_inputs': [[2, 3, 4]], 'desc_bprop': [[1]]}), ('Sign', { 'block': P.Sign(), 'desc_inputs': [[3]], 'desc_bprop': [[3]]}), ('Round', { 'block': P.Round(), 'desc_inputs': [[3]], 'desc_bprop': [[3]]}), ('Atan2', { 'block': P.Atan2(), 'desc_inputs': [Tensor(np.array([0, 1]).astype(np.float32)), Tensor(np.array([1, 1]).astype(np.float32))], 'desc_bprop': [[2]]}) ] test_case_nn_ops = [ ('BiasAdd', {
def __init__(self, strategy1, strategy2): super().__init__() self.matmul = P.MatMul().set_strategy(strategy1) self.sign = P.Sign().set_strategy(strategy2) self.matmul2 = P.MatMul().set_strategy(strategy1)
'skip': ['backward']}), # input is not tensor ('Abs0', { 'block': (P.Abs(), {'exception': TypeError, 'error_keywords': ['Abs']}), 'desc_inputs': [5.0], 'skip': ['backward']}), # input is Tensor(bool) ('Abs1', { 'block': (P.Abs(), {'exception': TypeError, 'error_keywords': ['Abs']}), 'desc_inputs': [Tensor(np.ones([3, 4]).astype(np.bool_))], 'skip': ['backward']}), # input is not tensor ('Sign0', { 'block': (P.Sign(), {'exception': TypeError, 'error_keywords': ['Sign']}), 'desc_inputs': [5.0], 'skip': ['backward']}), # input is Tensor(bool) ('Sign1', { 'block': (P.Sign(), {'exception': TypeError, 'error_keywords': ['Sign']}), 'desc_inputs': [Tensor(np.ones([3, 4]).astype(np.bool_))], 'skip': ['backward']}), # input is not tensor ('Round0', { 'block': (P.Round(), {'exception': TypeError, 'error_keywords': ['Round']}), 'desc_inputs': [5.0], 'skip': ['backward']}), # input is Tensor(bool) ('Round1', {
'desc_inputs': [5.0], 'skip': ['backward'] }), # input is Tensor(bool) ('Abs1', { 'block': (P.Abs(), { 'exception': TypeError, 'error_keywords': ['Abs'] }), 'desc_inputs': [Tensor(np.ones([3, 4]).astype(np.bool_))], 'skip': ['backward'] }), # input is not tensor ('Sign0', { 'block': (P.Sign(), { 'exception': TypeError, 'error_keywords': ['Sign'] }), 'desc_inputs': [5.0], 'skip': ['backward'] }), # input is Tensor(bool) ('Sign1', { 'block': (P.Sign(), { 'exception': TypeError, 'error_keywords': ['Sign'] }), 'desc_inputs': [Tensor(np.ones([3, 4]).astype(np.bool_))], 'skip': ['backward'] }),