def train_face_classifier(ntrain, ntest, orientations, wrap180, model_save_file): print("Loading training data...") descriptors_train, classes_train = get_training_data(ntrain, orientations, wrap180=wrap180) print("Finished loading training data.") print("Loading test data...") descriptors_test, classes_test = get_testing_data(ntest, orientations, wrap180=wrap180) print("Finished loading test data.") print("Start training...") start_time = time.time() params, _ = logistic_fit(descriptors_train, classes_train) print("Training took {} seconds.".format(time.time() - start_time)) np.save(model_save_file, params) predicted_train = logistic_prob(descriptors_train, params) plot_errors(predicted_train, classes_train, is_training=True) train_success_rate = classification_rate(predicted_train, classes_train) print("Training classification rate: {}".format(train_success_rate)) predicted_test = logistic_prob(descriptors_test, params) plot_errors(predicted_test, classes_test, is_training=False) test_success_rate = classification_rate(predicted_test, classes_test) print("Testing classification rate: {}".format(test_success_rate))
def test_face_classifier(ntrain, ntest, orientations, wrap180, model_save_file): print("Loading test data...") descriptors_test, classes_test = get_testing_data(ntest, orientations, wrap180=wrap180) print("Finished loading test data.") params = np.load(model_save_file) predicted_test = logistic_prob(descriptors_test, params) plot_errors(predicted_test, classes_test, is_training=False) test_success_rate = classification_rate(predicted_test, classes_test) print("Testing classification rate: {}".format(test_success_rate))
ntest = int(sys.argv[1]); del sys.argv[1] elif option == "-deskew": deskew = int(sys.argv[1]); del sys.argv[1] elif option == "-normalize": normalize = int(sys.argv[1]); del sys.argv[1] elif option == "-lsquared": lsquared = float(sys.argv[1]); del sys.argv[1] else: print sys.argv[0], ": invalid option", option sys.exit(1) print "Gaussian Processes" print print "Reading data..." # reading the data and applying configured pre-processing steps X_train, T_train = data.get_training_data(ntrain, normalize=normalize, deskew=deskew) X_test, T_test = data.get_testing_data(ntest, normalize=normalize, deskew=deskew) print "{0} training data read".format(len(X_train)) print "{0} testing data read".format(len(X_test)) print # running a Gaussian process on training and testing sets, with "lsquared" T_predicted = gaussian_process(X_train, T_train, X_test, lsquared=lsquared) # evaluating the model performance on the testing set print "Testing Set Error: {0:.3f}".format( get_error_score(T_predicted, T_test) ) print
print sys.argv[0], ": invalid option", option sys.exit(1) np.seterr(over="ignore", divide="ignore") print "Neural Networks" print print "Reading data..." # reading the data, applying configured pre-processing, and adding 1.0 to each vector as a bias input X_train, T_train = data.get_training_data(ntrain, normalize=normalize, deskew=deskew, add_ones=True) X_test, T_test = data.get_testing_data(ntest, normalize=normalize, deskew=deskew, add_ones=True) print "{0} training data read".format(len(X_train)) print "{0} testing data read".format(len(X_test)) print input_dim = X_train.shape[1] output_dim = T_train.max() + 1 weights, errors, params = [], [], [] print "{0:40}\tV. Loss\t\tV. Error".format( "(Func, Hidden, Batch, Learn, Drop)") print "-------------------------------------------------------------------------------" for function in functions: for hidden in hidden_units:
def main(_): test_x_batches, test_y_batches = get_testing_data(FLAGS.batch_size * FLAGS.time_steps) run_testing(test_x_batches, test_y_batches)