class TestNnLayer(TestCase): def setUp(self): self.hiddenL = NnLayer(sigmoid, 3, 1, 3) self.hiddenL[:-1] = array((0.1, 0.2, 0.3)) self.hiddenL.updateForwardWeight(matrix(((0.4, 0.5, 0.6, 0.7), (0.8, 0.9, 1, 1.1), (1.2, 1.3, 1.4, 1.5)))) def test_recvAndActvByOneInput(self): result = self.hiddenL.recvAndActvByOneInput(array((1, 1, 1))) self.assertAlmostEqual(result[0], 1.0 / (1 + npe ** (-npsum(array((0.4, 0.5, 0.6, 0.7)) * array((1, 1, 1, 1)))))) self.assertAlmostEqual(result[1], 1.0 / (1 + npe ** (-npsum(array((0.8, 0.9 , 1, 1.1)) * array((1, 1, 1, 1)))))) self.assertAlmostEqual(result[2], 1.0 / (1 + npe ** (-npsum(array((1.2, 1.3, 1.4, 1.5)) * array((1, 1, 1, 1)))))) self.assertTrue(npall(self.hiddenL == array((1, 1, 1, 1)))) def test_actvByAllInput(self): inputArr2D = array(((0.41, 0.51, 0.61), (0.73, 0.63, 0.53))) result = asarray(self.hiddenL.actvByAllInput(inputArr2D)) assert_array_almost_equal(result[0], ravel(sigmoid(array((0.41, 0.51, 0.61, 1)) * matrix(((0.4, 0.5, 0.6, 0.7), (0.8, 0.9, 1, 1.1), (1.2, 1.3, 1.4, 1.5))).T))) assert_array_almost_equal(result[1], ravel(sigmoid(array((0.73, 0.63, 0.53, 1)) * matrix(((0.4, 0.5, 0.6, 0.7), (0.8, 0.9, 1, 1.1), (1.2, 1.3, 1.4, 1.5))).T)))
def setUp(self): self.hiddenL = NnLayer(sigmoid, 3, 1, 3) self.hiddenL[:-1] = array((0.1, 0.2, 0.3)) self.hiddenL.updateForwardWeight(matrix(((0.4, 0.5, 0.6, 0.7), (0.8, 0.9, 1, 1.1), (1.2, 1.3, 1.4, 1.5))))