Example #1
0
    model12 = MLP_auto([Layers[0], Layers[1]], ['sigmoid'])
    print("pre-training autoencoder 2")
    model12.train(out1, out1, alpha, 12, max_iter)

    out2 = model12.output_hidden(out1)

    model13 = MLP_auto([Layers[1], Layers[2]], ['sigmoid'])
    print("pre-training autoencoder 3")
    model13.train(out2, out2, alpha, 12, max_iter)

    # finetuning the stacked autoencoder
    print("fine tuning stacked autoencoder")

    # deep neural network using stacke autoencoder
    final_model = MLP([n, *Layers, 2],
                      ['sigmoid', 'sigmoid', 'sigmoid', 'sigmoid'])
    # final_model.W_list[0:3] = model.W_list[0:3]
    final_model.W_list[0] = model11.W_list[0]
    final_model.W_list[1] = model12.W_list[0]
    final_model.W_list[2] = model13.W_list[0]

    # training deep neural network
    alpha = 0.5
    batch_size = 12
    max_iter = 200
    final_model.train(X_train, y_train, X_test, y_test, alpha, batch_size,
                      max_iter)
    print(final_model.accuracy(X_test, y_test))
    print(final_model.conf_mat(X_test, y_test))