Пример #1
0
def show_solution(P, T, path):
    best = load_network(path)
    Y = best.sim(P)
    area = plotroc(Y, T)
    print("")
    print("Stats for cut = 0.5")
    [num_correct_first, num_correct_second, total_performance, num_first, num_second, missed] = stat(Y, T)
    plt.title(path + "\nArea = " + str(area))
    plt.show()
Пример #2
0
def find_solution(P, T):
                
    #test, validation = get_validation_set(P, T, validation_size = 0.33)
    net = build_feedforward(input_number = len(P[0]), hidden_number = 4, output_number = len(T[0]))
    #com = build_feedforward_committee(size = 4, input_number = len(P[0]), hidden_number = 6, output_number = len(T[0]))
    
    epochs = 1000
    
    testset, valset = get_validation_set(P, T, validation_size = 0.01)
    
    print("Training...")
    net = benchmark(train_evolutionary)(net, testset, valset, 100, random_range = 1)
    net = benchmark(traingd)(net, testset, valset, epochs, learning_rate = 0.1, block_size = 1)
    
    #benchmark(train_committee)(com, train_evolutionary, P, T, 100, random_range = 1)
    #benchmark(train_committee)(com, traingd, P, T, epochs, learning_rate = 0.1, block_size = 30)
    
    #P, T = test
    Y = net.sim(P)
    area, best_cut = plotroc(Y, T, 1)
    plot2d2c(net, P, T, figure = 2, cut = best_cut)
    
    #P, T = validation
    #Y = com.sim(P)
    #plotroc(Y, T, 2)
    
#    print("")
#    print("Stats for cut = 0.5")
#    [num_correct_first, num_correct_second, total_performance, num_first, num_second, missed] = stat(Y, T)
    
    #save_network(best, "/export/home/jonask/Projects/aNeuralN/ANNs/classification_gdblock20_rocarea" + str(area) + ".ann")
    #save_network(best, "/export/home/jonask/Projects/aNeuralN/ANNs/classification_genetic_rocarea" + str(area) + ".ann")
    #save_committee(com, "/export/home/jonask/Projects/aNeuralN/ANNs/classification_gdblock30_rocarea" + str(area) + ".anncom")
    #save_committee(com, "/export/home/jonask/Projects/aNeuralN/ANNs/classification_genetic_rocarea" + str(area) + ".anncom")
    
    plt.show()
Пример #3
0
benchmark(train_committee)(com, traingd, inputs, targets, epochs, block_size=10, stop_error_value=0)

Y = com.sim(inputs)
area, best_cut = get_rocarea_and_best_cut(Y, targets)
[num_correct_first, num_correct_second, total_performance, num_first, num_second, missed] = stat(
    Y, targets, cut=best_cut
)
print (
    "Total number of data: " + str(len(targets)) + " (" + str(num_second) + " ones and " + str(num_first) + " zeros)"
)
print ("Number of misses: " + str(missed) + " (" + str(total_performance) + "% performance)")
print ("Specificity: " + str(num_correct_first) + "% (Success for class 0)")
print ("Sensitivity: " + str(num_correct_second) + "% (Success for class 1)")
print ("Roc Area: " + str(area) + "%")

Y = com.sim(inputs)
[num_correct_first, num_correct_second, total_performance, num_first, num_second, missed] = stat(Y, targets)
# plt.legend("Pima_Training Committee Gradient Descent block size 10\n [Cross validation] Total performance = " + str(total_performance) + "%")
area = plotroc(Y, targets, 1)


save_committee(com, "/export/home/jonask/Projects/aNeuralN/ANNs/pimatrain_rocarea" + str(area) + ".anncom")

# Estimate on test set now
print ("\nPredictions for test set:")
Y_test = com.sim(test_inputs)
for value in Y_test:
    print value[0]

plt.show()