Browse Source

!15462 [ME][Control]Add assert of inner testcases

From: @chenfei52
Reviewed-by: @zh_qh,@ginfung
Signed-off-by: @zh_qh
pull/15462/MERGE
mindspore-ci-bot Gitee 4 years ago
parent
commit
23fdba1c36
14 changed files with 221 additions and 79 deletions
  1. +15
    -5
      tests/st/control/inner/test_011_if_in_while.py
  2. +15
    -5
      tests/st/control/inner/test_012_if_in_for.py
  3. +15
    -5
      tests/st/control/inner/test_020_while_in_if.py
  4. +15
    -5
      tests/st/control/inner/test_101_if_after_while.py
  5. +15
    -5
      tests/st/control/inner/test_111_if_after_if_in_while.py
  6. +15
    -5
      tests/st/control/inner/test_120_if_after_while_in_if.py
  7. +15
    -5
      tests/st/control/inner/test_121_if_after_while_in_while.py
  8. +18
    -8
      tests/st/control/inner/test_122_if_after_while_in_for.py
  9. +15
    -5
      tests/st/control/inner/test_200_while_after_if.py
  10. +15
    -5
      tests/st/control/inner/test_210_while_after_if_in_if.py
  11. +15
    -5
      tests/st/control/inner/test_211_while_after_if_in_while.py
  12. +23
    -11
      tests/st/control/inner/test_212_while_after_if_in_for.py
  13. +15
    -5
      tests/st/control/inner/test_220_while_after_while_in_if.py
  14. +15
    -5
      tests/st/control/inner/test_230_while_after_for_in_if.py

+ 15
- 5
tests/st/control/inner/test_011_if_in_while.py View File

@@ -43,7 +43,7 @@ class BackwardNet(nn.Cell):
def __init__(self, net):
super(BackwardNet, self).__init__(auto_prefix=False)
self.forward_net = net
self.grad = C.GradOperation()
self.grad = C.GradOperation(get_all=True)

def construct(self, *inputs):
grads = self.grad(self.forward_net)(*inputs)
@@ -54,8 +54,13 @@ def test_forward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=10)
out = forward_net(x, y)
print("forward out:", out)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_out = forward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_out = forward_net(x, y)
assert graph_mode_out == pynative_mode_out


def test_backward():
@@ -63,5 +68,10 @@ def test_backward():
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=10)
backward_net = BackwardNet(forward_net)
grads = backward_net(x, y)
print("grads:", grads)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_grads = backward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_grads = backward_net(x, y)
assert graph_mode_grads == pynative_mode_grads

+ 15
- 5
tests/st/control/inner/test_012_if_in_for.py View File

@@ -40,7 +40,7 @@ class BackwardNet(nn.Cell):
def __init__(self, net):
super(BackwardNet, self).__init__(auto_prefix=False)
self.forward_net = net
self.grad = C.GradOperation()
self.grad = C.GradOperation(get_all=True)

def construct(self, *inputs):
grads = self.grad(self.forward_net)(*inputs)
@@ -51,8 +51,13 @@ def test_forward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
out = forward_net(x, y)
print("forward out:", out)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_out = forward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_out = forward_net(x, y)
assert graph_mode_out == pynative_mode_out


def test_backward():
@@ -60,5 +65,10 @@ def test_backward():
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
backward_net = BackwardNet(forward_net)
grads = backward_net(x, y)
print("grads:", grads)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_grads = backward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_grads = backward_net(x, y)
assert graph_mode_grads == pynative_mode_grads

+ 15
- 5
tests/st/control/inner/test_020_while_in_if.py View File

@@ -44,7 +44,7 @@ class BackwardNet(nn.Cell):
def __init__(self, net):
super(BackwardNet, self).__init__(auto_prefix=False)
self.forward_net = net
self.grad = C.GradOperation()
self.grad = C.GradOperation(get_all=True)

def construct(self, *inputs):
grads = self.grad(self.forward_net)(*inputs)
@@ -55,8 +55,13 @@ def test_forward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
out = forward_net(x, y)
print("forward out:", out)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_out = forward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_out = forward_net(x, y)
assert graph_mode_out == pynative_mode_out


def test_backward():
@@ -64,5 +69,10 @@ def test_backward():
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
backward_net = BackwardNet(forward_net)
grads = backward_net(x, y)
print("grads:", grads)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_grads = backward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_grads = backward_net(x, y)
assert graph_mode_grads == pynative_mode_grads

+ 15
- 5
tests/st/control/inner/test_101_if_after_while.py View File

@@ -44,7 +44,7 @@ class BackwardNet(nn.Cell):
def __init__(self, net):
super(BackwardNet, self).__init__(auto_prefix=False)
self.forward_net = net
self.grad = C.GradOperation()
self.grad = C.GradOperation(get_all=True)

def construct(self, *inputs):
grads = self.grad(self.forward_net)(*inputs)
@@ -55,8 +55,13 @@ def test_forward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=10)
out = forward_net(x, y)
print("forward out:", out)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_out = forward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_out = forward_net(x, y)
assert graph_mode_out == pynative_mode_out


def test_backward():
@@ -64,5 +69,10 @@ def test_backward():
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=10)
backward_net = BackwardNet(forward_net)
grads = backward_net(x, y)
print("grads:", grads)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_grads = backward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_grads = backward_net(x, y)
assert graph_mode_grads == pynative_mode_grads

+ 15
- 5
tests/st/control/inner/test_111_if_after_if_in_while.py View File

@@ -45,7 +45,7 @@ class BackwardNet(nn.Cell):
def __init__(self, net):
super(BackwardNet, self).__init__(auto_prefix=False)
self.forward_net = net
self.grad = C.GradOperation()
self.grad = C.GradOperation(get_all=True)

def construct(self, *inputs):
grads = self.grad(self.forward_net)(*inputs)
@@ -56,8 +56,13 @@ def test_forward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=10)
out = forward_net(x, y)
print("forward out:", out)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_out = forward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_out = forward_net(x, y)
assert graph_mode_out == pynative_mode_out


def test_backward():
@@ -65,5 +70,10 @@ def test_backward():
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=10)
backward_net = BackwardNet(forward_net)
grads = backward_net(x, y)
print("grads:", grads)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_grads = backward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_grads = backward_net(x, y)
assert graph_mode_grads == pynative_mode_grads

+ 15
- 5
tests/st/control/inner/test_120_if_after_while_in_if.py View File

@@ -46,7 +46,7 @@ class BackwardNet(nn.Cell):
def __init__(self, net):
super(BackwardNet, self).__init__(auto_prefix=False)
self.forward_net = net
self.grad = C.GradOperation()
self.grad = C.GradOperation(get_all=True)

def construct(self, *inputs):
grads = self.grad(self.forward_net)(*inputs)
@@ -57,8 +57,13 @@ def test_forward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
out = forward_net(x, y)
print("forward out:", out)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_out = forward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_out = forward_net(x, y)
assert graph_mode_out == pynative_mode_out


def test_backward():
@@ -66,5 +71,10 @@ def test_backward():
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
backward_net = BackwardNet(forward_net)
grads = backward_net(x, y)
print("grads:", grads)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_grads = backward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_grads = backward_net(x, y)
assert graph_mode_grads == pynative_mode_grads

+ 15
- 5
tests/st/control/inner/test_121_if_after_while_in_while.py View File

@@ -47,7 +47,7 @@ class BackwardNet(nn.Cell):
def __init__(self, net):
super(BackwardNet, self).__init__(auto_prefix=False)
self.forward_net = net
self.grad = C.GradOperation()
self.grad = C.GradOperation(get_all=True)

def construct(self, *inputs):
grads = self.grad(self.forward_net)(*inputs)
@@ -58,8 +58,13 @@ def test_forward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
out = forward_net(x, y)
print("forward out:", out)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_out = forward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_out = forward_net(x, y)
assert graph_mode_out == pynative_mode_out


def test_backward():
@@ -67,5 +72,10 @@ def test_backward():
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
backward_net = BackwardNet(forward_net)
grads = backward_net(x, y)
print("grads:", grads)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_grads = backward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_grads = backward_net(x, y)
assert graph_mode_grads == pynative_mode_grads

+ 18
- 8
tests/st/control/inner/test_122_if_after_while_in_for.py View File

@@ -31,10 +31,10 @@ class ForwardNet(nn.Cell):

def construct(self, x, y):
out = self.zero
while x < y:
for _ in range(0, self.max_cycles):
for _ in range(0, self.max_cycles):
while x < y:
out = x * y + out
x = x + 1
x = x + 1
if out > 20:
out = out - 20
return out
@@ -44,7 +44,7 @@ class BackwardNet(nn.Cell):
def __init__(self, net):
super(BackwardNet, self).__init__(auto_prefix=False)
self.forward_net = net
self.grad = C.GradOperation()
self.grad = C.GradOperation(get_all=True)

def construct(self, *inputs):
grads = self.grad(self.forward_net)(*inputs)
@@ -55,8 +55,13 @@ def test_forward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
out = forward_net(x, y)
print("forward out:", out)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_out = forward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_out = forward_net(x, y)
assert graph_mode_out == pynative_mode_out


def test_backward():
@@ -64,5 +69,10 @@ def test_backward():
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
backward_net = BackwardNet(forward_net)
grads = backward_net(x, y)
print("grads:", grads)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_grads = backward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_grads = backward_net(x, y)
assert graph_mode_grads == pynative_mode_grads

+ 15
- 5
tests/st/control/inner/test_200_while_after_if.py View File

@@ -44,7 +44,7 @@ class BackwardNet(nn.Cell):
def __init__(self, net):
super(BackwardNet, self).__init__(auto_prefix=False)
self.forward_net = net
self.grad = C.GradOperation()
self.grad = C.GradOperation(get_all=True)

def construct(self, *inputs):
grads = self.grad(self.forward_net)(*inputs)
@@ -55,8 +55,13 @@ def test_forward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=10)
out = forward_net(x, y)
print("forward out:", out)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_out = forward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_out = forward_net(x, y)
assert graph_mode_out == pynative_mode_out


def test_backward():
@@ -64,5 +69,10 @@ def test_backward():
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=10)
backward_net = BackwardNet(forward_net)
grads = backward_net(x, y)
print("grads:", grads)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_grads = backward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_grads = backward_net(x, y)
assert graph_mode_grads == pynative_mode_grads

+ 15
- 5
tests/st/control/inner/test_210_while_after_if_in_if.py View File

@@ -45,7 +45,7 @@ class BackwardNet(nn.Cell):
def __init__(self, net):
super(BackwardNet, self).__init__(auto_prefix=False)
self.forward_net = net
self.grad = C.GradOperation()
self.grad = C.GradOperation(get_all=True)

def construct(self, *inputs):
grads = self.grad(self.forward_net)(*inputs)
@@ -56,8 +56,13 @@ def test_forward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=10)
out = forward_net(x, y)
print("forward out:", out)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_out = forward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_out = forward_net(x, y)
assert graph_mode_out == pynative_mode_out


def test_backward():
@@ -65,5 +70,10 @@ def test_backward():
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=10)
backward_net = BackwardNet(forward_net)
grads = backward_net(x, y)
print("grads:", grads)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_grads = backward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_grads = backward_net(x, y)
assert graph_mode_grads == pynative_mode_grads

+ 15
- 5
tests/st/control/inner/test_211_while_after_if_in_while.py View File

@@ -45,7 +45,7 @@ class BackwardNet(nn.Cell):
def __init__(self, net):
super(BackwardNet, self).__init__(auto_prefix=False)
self.forward_net = net
self.grad = C.GradOperation()
self.grad = C.GradOperation(get_all=True)

def construct(self, *inputs):
grads = self.grad(self.forward_net)(*inputs)
@@ -56,8 +56,13 @@ def test_forward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=10)
out = forward_net(x, y)
print("forward out:", out)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_out = forward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_out = forward_net(x, y)
assert graph_mode_out == pynative_mode_out


def test_backward():
@@ -65,5 +70,10 @@ def test_backward():
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=10)
backward_net = BackwardNet(forward_net)
grads = backward_net(x, y)
print("grads:", grads)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_grads = backward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_grads = backward_net(x, y)
assert graph_mode_grads == pynative_mode_grads

+ 23
- 11
tests/st/control/inner/test_212_while_after_if_in_for.py View File

@@ -37,6 +37,7 @@ class ForwardNet(nn.Cell):
out = x * y + out
while i < self.max_cycles:
out = out + 10
i = i + 1
return out


@@ -44,7 +45,7 @@ class BackwardNet(nn.Cell):
def __init__(self, net):
super(BackwardNet, self).__init__(auto_prefix=False)
self.forward_net = net
self.grad = C.GradOperation()
self.grad = C.GradOperation(get_all=True)

def construct(self, *inputs):
grads = self.grad(self.forward_net)(*inputs)
@@ -52,17 +53,28 @@ class BackwardNet(nn.Cell):


def test_forward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=10)
out = forward_net(x, y)
print("forward out:", out)
x = Tensor(np.array(3), mstype.int32)
y = Tensor(np.array(5), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_out = forward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_out = forward_net(x, y)
assert graph_mode_out == pynative_mode_out



def test_backward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=10)
x = Tensor(np.array(3), mstype.int32)
y = Tensor(np.array(5), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
backward_net = BackwardNet(forward_net)
grads = backward_net(x, y)
print("grads:", grads)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_grads = backward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_grads = backward_net(x, y)
assert graph_mode_grads == pynative_mode_grads

+ 15
- 5
tests/st/control/inner/test_220_while_after_while_in_if.py View File

@@ -46,7 +46,7 @@ class BackwardNet(nn.Cell):
def __init__(self, net):
super(BackwardNet, self).__init__(auto_prefix=False)
self.forward_net = net
self.grad = C.GradOperation()
self.grad = C.GradOperation(get_all=True)

def construct(self, *inputs):
grads = self.grad(self.forward_net)(*inputs)
@@ -57,8 +57,13 @@ def test_forward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
out = forward_net(x, y)
print("forward out:", out)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_out = forward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_out = forward_net(x, y)
assert graph_mode_out == pynative_mode_out


def test_backward():
@@ -66,5 +71,10 @@ def test_backward():
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
backward_net = BackwardNet(forward_net)
grads = backward_net(x, y)
print("grads:", grads)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_grads = backward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_grads = backward_net(x, y)
assert graph_mode_grads == pynative_mode_grads

+ 15
- 5
tests/st/control/inner/test_230_while_after_for_in_if.py View File

@@ -43,7 +43,7 @@ class BackwardNet(nn.Cell):
def __init__(self, net):
super(BackwardNet, self).__init__(auto_prefix=False)
self.forward_net = net
self.grad = C.GradOperation()
self.grad = C.GradOperation(get_all=True)

def construct(self, *inputs):
grads = self.grad(self.forward_net)(*inputs)
@@ -54,8 +54,13 @@ def test_forward():
x = Tensor(np.array(1), mstype.int32)
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
out = forward_net(x, y)
print("forward out:", out)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_out = forward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_out = forward_net(x, y)
assert graph_mode_out == pynative_mode_out


def test_backward():
@@ -63,5 +68,10 @@ def test_backward():
y = Tensor(np.array(3), mstype.int32)
forward_net = ForwardNet(max_cycles=3)
backward_net = BackwardNet(forward_net)
grads = backward_net(x, y)
print("grads:", grads)
# Graph Mode
context.set_context(mode=context.GRAPH_MODE)
graph_mode_grads = backward_net(x, y)
# Pynative Mode
context.set_context(mode=context.PYNATIVE_MODE)
pynative_mode_grads = backward_net(x, y)
assert graph_mode_grads == pynative_mode_grads

Loading…
Cancel
Save