コード例 #1
0
 def test_XOR(self):
     """
     Tests the xor gate on an Neural Network
     :return:
     """
     inputs = [[0, 0, 1], [0, 1, 1], [1, 1, 1], [1, 0, 1]]
     answers = [[0], [1], [0], [1]]
     XOR = Network(3, 2, 3, 1)
     XOR.training(300000, 0.5, inputs, answers)
     self.assertEqual(XOR.forward_propagation(inputs[0])[0] < 0.5, True)
     self.assertEqual(XOR.forward_propagation(inputs[1])[0] > 0.5, True)
     self.assertEqual(XOR.forward_propagation(inputs[2])[0] > 0.5, True)
     self.assertEqual(XOR.forward_propagation(inputs[3])[0] < 0.5, True)
コード例 #2
0
 def test_nand(self):
     """
     Tests the nand gate on an Neural Network
     :return:
     """
     inputs = [[0, 0], [0, 1], [1, 1], [1, 0]]
     answers = [[1], [0], [0], [0]]
     NAND = Network(1, 1, 2, 1)
     NAND.training(50000, 0.1, inputs, answers)
     self.assertEqual(NAND.forward_propagation(inputs[0])[0] > 0.5, True)
     self.assertEqual(NAND.forward_propagation(inputs[1])[0] < 0.5, True)
     self.assertEqual(NAND.forward_propagation(inputs[2])[0] < 0.5, True)
     self.assertEqual(NAND.forward_propagation(inputs[3])[0] < 0.5, True)