MCPcopy Index your code
hub / github.com/tensorlayer/TensorLayer / test_net1

Method test_net1

tests/layers/test_layernode.py:28–75  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

26 pass
27
28 def test_net1(self):
29 print('-' * 20, 'test_net1', '-' * 20)
30
31 def get_model(input_shape):
32 ni = Input(input_shape)
33
34 nii = Conv2d(32, filter_size=(3, 3), strides=(1, 1), name='conv1')(ni)
35 nn = Dropout(keep=0.9, name='drop1')(nii)
36
37 conv = Conv2d(32, filter_size=(3, 3), strides=(1, 1), name='conv2')
38 tt = conv(nn) # conv2_node_0
39 nn = conv(nn) # conv2_node_1
40
41 # a branch
42 na = Conv2d(64, filter_size=(3, 3), strides=(1, 1), name='conv3')(nn)
43 na = MaxPool2d(name='pool1')(na)
44
45 # b branch
46 nb = MaxPool2d(name='pool2')(nn)
47 nb = conv(nb) # conv2_node_2
48
49 out = Concat(name='concat')([na, nb])
50 M = Model(inputs=ni, outputs=[out, nn, nb])
51
52 gg = conv(nii) # this node will not be added since model fixed
53
54 return M
55
56 net = get_model([None, 24, 24, 3])
57
58 for k, v in enumerate(net._node_by_depth):
59 print(k, [x.name for x in v], [x.in_tensors_idxes for x in v])
60
61 all_node_names = []
62 for k, v in enumerate(net._node_by_depth):
63 all_node_names.extend([x.name for x in v])
64
65 self.assertNotIn('conv2_node_0', all_node_names)
66 self.assertNotIn('conv2_node_3', all_node_names)
67
68 self.assertEqual(len(net.all_layers), 8)
69 print(net.all_layers)
70
71 data = np.random.normal(size=[2, 24, 24, 3]).astype(np.float32)
72 out, nn, nb = net(data, is_train=True)
73
74 self.assertEqual(nn.shape, [2, 24, 24, 32])
75 self.assertEqual(nb.shape, [2, 12, 12, 32])
76
77 def test_net2(self):
78 print('-' * 20, 'test_net2', '-' * 20)

Callers

nothing calls this directly

Calls 1

get_modelFunction · 0.50

Tested by

no test coverage detected