Пример #1
0
    def test_sample(self):
        sys.stdout.write(
            'GaussianBinaryLabelRBM -> Performing sample test ...')
        numx.random.seed(42)
        data_dim = 12
        label_dim = 8
        input_dim = data_dim + label_dim
        hidden_dim = 10
        batchsize = 3
        rbm = Model.GaussianBinaryLabelRBM(data_dim, label_dim, hidden_dim)

        data = numx.random.rand(batchsize, input_dim)
        h = rbm.probability_h_given_v(data)
        assert numx.all(h.shape == (batchsize, hidden_dim))
        h = rbm.sample_h(h)
        assert numx.all(h.shape == (batchsize, hidden_dim))
        v = rbm.probability_v_given_h(h)
        assert numx.all(v.shape == (batchsize, input_dim))
        v = rbm.sample_v(v)
        assert numx.all(v.shape == (batchsize, input_dim))
        assert numx.all(
            numx.abs(numx.sum(v[:, data_dim:]) - batchsize) < self.epsilon)
        assert numx.all(v[:, 0:data_dim] != 0.0)
        assert numx.all(v[:, 0:data_dim] != 1.0)
        sys.stdout.flush()
        print(' successfully passed!')
        sys.stdout.flush()
        pass
Пример #2
0
    def test___init__(self):
        sys.stdout.write('GaussianBinaryLabelRBM -> Performing init test ...')
        numx.random.seed(42)
        data_dim = 12
        label_dim = 8
        input_dim = data_dim + label_dim
        hidden_dim = 10
        batchsize = 3
        rbm = Model.GaussianBinaryLabelRBM(data_dim, label_dim, hidden_dim)
        assert numx.all(rbm.w.shape == (input_dim, hidden_dim))
        assert numx.all(rbm.bv.shape == (1, input_dim))
        assert numx.all(rbm.bh.shape == (1, hidden_dim))
        assert numx.all(rbm.data_dim == data_dim)
        assert numx.all(rbm.label_dim == label_dim)
        assert numx.all(rbm.input_dim == input_dim)
        assert numx.all(rbm.output_dim == hidden_dim)

        print(' successfully passed!')
        sys.stdout.flush()
        pass