예제 #1
0
 def test_clonelayer(self):
     """Test a simple clonelayer with three SFA Nodes."""
     sfa_node = SFABiNode(input_dim=3, output_dim=2)
     clonelayer = CloneBiLayer(sfa_node, 3)
     x = n.random.random((100,9))
     clonelayer.train(x)
     clonelayer.stop_training()
     clonelayer.execute(x)
예제 #2
0
 def test_clonelayer(self):
     """Test a simple clonelayer with three SFA Nodes."""
     sfa_node = SFABiNode(input_dim=3, output_dim=2)
     clonelayer = CloneBiLayer(sfa_node, 3)
     x = n.random.random((100,9))
     clonelayer.train(x)
     clonelayer.stop_training()
     clonelayer.execute(x)
예제 #3
0
 def test_message_splitting(self):
     """Test message array splitting and combination."""
     node = DummyBiNode(input_dim=3)
     clonelayer = CloneBiLayer(node, 2, use_copies=True)
     x = n.random.random((10, 6))
     data1 = n.random.random((10, 4))  # should be split
     data2 = n.random.random((10, 5))  # should not be touched
     msg = {
         "string": "blabla",
         "list": [1,2],
         "data1": data1,
         "data2": data2,
     }
     y, out_msg = clonelayer.execute(x, msg)
     node1, node2 = clonelayer.nodes
     assert n.all(x == y)
     assert out_msg["string"] == msg["string"]
     assert out_msg["list"] == msg["list"]
     assert n.all(out_msg["data1"] == data1)
     assert n.all(node1.data1 == data1[:,:2])
     assert n.all(node2.data1 == data1[:,2:])
     assert out_msg["data2"] is data2
     assert n.all(node1.data2 is data2)
     assert n.all(node2.data2 is data2)
예제 #4
0
 def test_message_splitting(self):
     """Test message array splitting and combination."""
     node = DummyBiNode(input_dim=3)
     clonelayer = CloneBiLayer(node, 2, use_copies=True)
     x = n.random.random((10, 6))
     data1 = n.random.random((10, 4))  # should be split
     data2 = n.random.random((10, 5))  # should not be touched
     msg = {
         "string": "blabla",
         "list": [1,2],
         "data1": data1,
         "data2": data2,
     }
     y, out_msg = clonelayer.execute(x, msg)
     node1, node2 = clonelayer.nodes
     assert n.all(x == y)
     assert out_msg["string"] == msg["string"]
     assert out_msg["list"] == msg["list"]
     assert n.all(out_msg["data1"] == data1)
     assert n.all(node1.data1 == data1[:,:2])
     assert n.all(node2.data1 == data1[:,2:])
     assert out_msg["data2"] is data2
     assert n.all(node1.data2 is data2)
     assert n.all(node2.data2 is data2)