コード例 #1
0
ファイル: dbn_pixel.py プロジェクト: umutekmekci/deepNN
batch_func = batch_func_generator([rbmR_hidden, rbmG_hidden, rbmB_hidden], batch_size = 50)
rbm = BinRBM(layers_dict = RBMlayers_dict, weight_list = None, random_state = random_state)
print 'Training starts'
rbm.fit(batch_func, PCD = False, error_function = 'recon',learning_rate = learning_rate, momentum = momentum,
                weight_decay = weight_decay, k = 1, perst_size = 100, n_iter = 20, verbose = True)
        #        sparsity_cond = True, sparsity_target = 0.01, sparsity_lambda = 1e-6)
                
###sample from model####
#rbm.run_gibbs(X = [rbmR_hidden[1000],rbmG_hidden[1000],rbmB_hidden[1000]], step_size = 1, sample = False)
#rbm.run_gibbs(X = [np.zeros(500),np.zeros(500),np.zeros(500)], step_size = 1000, sample = False)
#hidR,hidG,hidB = rbm.input_layer_list[0].value,rbm.input_layer_list[1].value,rbm.input_layer_list[2].value
#rbmR.hidden_layer.value,rbmG.hidden_layer.value,rbmB.hidden_layer.value = hidR,hidG,hidB
#rbmR.feed_back(sample = True)
#rbmG.feed_back(sample = True)
#rbmB.feed_back(sample = True)
rbmR.run_gibbs(np.random.rand(1800)*10 -5, step_size = 1000, sample = True)
rbmG.run_gibbs(np.random.rand(1800)*10 -5, step_size = 1000, sample = True)
rbmB.run_gibbs(np.random.rand(1800)*10 -5, step_size = 1000, sample = True)
visR = scalerR.inverse_transform(rbmR.input_layer_list[0].value)
visG = scalerG.inverse_transform(rbmG.input_layer_list[0].value)
visB = scalerB.inverse_transform(rbmB.input_layer_list[0].value)
visRR = scalerR.inverse_transform(R_train[1000])
visGG = scalerG.inverse_transform(G_train[1000])
visBB = scalerB.inverse_transform(B_train[1000])
#sio.savemat(r'C:\Users\daredavil\Documents\MATLAB\Poje2MCA\sample_new4.mat',{'R':visR, 'G':visG,'B':visB, 'RR':visRR, 'GG':visGG,'BB':visBB,
#                                                                            'masks':rbmR.weight_list[0][[30,70,80,150,220,380,420],:]})
#########################                

combined = rbm.transform([rbmR_hidden, rbmG_hidden, rbmB_hidden])
combined_test = rbm.transform([rbmR_hidden_test, rbmG_hidden_test, rbmB_hidden_test])