Exemple #1
0
    # result_path = 'data/4position_rumba/image7000/rbm1_train3434'
    # result_W = loadW(result_path)

    makeFolder()

    # def __init__(self, W, input, data_size,input_size, output_size, isDropout):
    rbm1 = RBM(None, result_data, file_num, rbm_size_list[0], rbm_size_list[1])
    for i in xrange(pre_train_epoch):
        print 'rbm1 pre_train:' + str(i)
        rbm1.contrast_divergence(i)
    reinput = rbm1.reconstruct_from_input(rbm1.input)
    saveImage(reinput, node_shape[2], 'rbm1_after_train')
    saveW(rbm1.getW(), 'rbm1_after_train')

    rbm2 = RBM(None, rbm1.output(), file_num, rbm_size_list[1], rbm_size_list[2])
    for i in xrange(pre_train_epoch):
        print 'rbm2 pre_train:' + str(i)
        rbm2.contrast_divergence(i)
    reinput = rbm2.reconstruct_from_input(rbm2.input)
    reinput = rbm1.reconstruct_from_output(reinput)
    saveImage(reinput, node_shape[2], 'rbm2_after_train')
    saveW(rbm2.getW(), 'rbm2_after_train')

    rbm3 = RBM(None, rbm2.output(), file_num, rbm_size_list[2], rbm_size_list[3])
    for i in xrange(pre_train_epoch):
        print 'rbm3 pre_train:' + str(i)
        rbm3.contrast_divergence(i)
    reinput = rbm3.reconstruct_from_input(rbm3.input)
    reinput = rbm2.reconstruct_from_output(reinput)
    reinput = rbm1.reconstruct_from_output(reinput)
    cnn2.pre_train()
    output_list = cnn2.output()
    saveImage(output_list, node_shape[2], 'cnn2_after_train')

    rbm_size_list = (680, 340, 170, 85, 42, 21, 10, 3)

    # def __init__(self, W, input, data_size,input_size, output_size, isDropout):
    rbm1 = RBM(None, cnn2.output(), file_num, rbm_size_list[0], rbm_size_list[1], False)
    for i in xrange(pre_train_epoch):
        print 'rbm1 pre_train:' + str(i)
        rbm1.contrast_divergence()
    reinput = rbm1.reconstruct_from_input(rbm1.input)
    saveImage(reinput, node_shape[2], 'rbm1_after_train')
    saveW(rbm1.getW(), 'rbm1_after_train')

    rbm2 = RBM(None, rbm1.output(), file_num, rbm_size_list[1], rbm_size_list[2], False)
    for i in xrange(pre_train_epoch):
        print 'rbm2 pre_train:' + str(i)
        rbm2.contrast_divergence()
    reinput = rbm2.reconstruct_from_input(rbm2.input)
    reinput = rbm1.reconstruct_from_output(reinput)
    saveImage(reinput, node_shape[2], 'rbm2_after_train')
    saveW(rbm2.getW(), 'rbm2_after_train')

    rbm3 = RBM(None, rbm2.output(), file_num, rbm_size_list[2], rbm_size_list[3], False)
    for i in xrange(pre_train_epoch):
        print 'rbm3 pre_train:' + str(i)
        rbm3.contrast_divergence()
    reinput = rbm3.reconstruct_from_input(rbm3.input)
    reinput = rbm2.reconstruct_from_output(reinput)
    reinput = rbm1.reconstruct_from_output(reinput)
            output = rbm5.output_from_input(output)
            output = rbm6.output_from_input(output)
            output = rbm7.output_from_input(output)
            reinput = rbm7.reconstruct_from_output(output)
            reinput = rbm6.reconstruct_from_output(reinput)
            reinput = rbm5.reconstruct_from_output(reinput)
            reinput = rbm4.reconstruct_from_output(reinput)
            reinput = rbm3.reconstruct_from_output(reinput)
            reinput = rbm2.reconstruct_from_output(reinput)
            reinput = rbm1.reconstruct_from_output(reinput)
            saveImage(reinput, node_shape[2], 'rbm7_after_train')
            saveW(rbm7.getW(), 'rbm7_after_train')

            os.chdir('../../')

        output = rbm1.output()
        output = rbm2.output_from_input(output)
        output = rbm3.output_from_input(output)
        output = rbm4.output_from_input(output)
        output = rbm5.output_from_input(output)
        output = rbm6.output_from_input(output)
        output = rbm7.output_from_input(output)

        input = rbm7.reconstruct_from_output(output)
        input = rbm6.reconstruct_from_output(input)
        input = rbm5.reconstruct_from_output(input)
        input = rbm4.reconstruct_from_output(input)
        input = rbm3.reconstruct_from_output(input)
        input = rbm2.reconstruct_from_output(input)
        input = rbm1.reconstruct_from_output(input)