float *network_accuracies(network net, data d, int n) { static float acc[2]; matrix guess = network_predict_data(net, d); acc[0] = matrix_topk_accuracy(d.y, guess, 1); acc[1] = matrix_topk_accuracy(d.y, guess, n); free_matrix(guess); return acc; }
float network_accuracy_multi(network net, data d, int n) { matrix guess = network_predict_data_multi(net, d, n); float acc = matrix_topk_accuracy(d.y, guess,1); free_matrix(guess); return acc; }
float network_accuracy(network net, data d) { matrix guess = network_predict_data(net, d); float acc = matrix_topk_accuracy(d.y, guess,1); free_matrix(guess); return acc; }
void test_cifar_csvtrain(char *filename, char *weightfile) { network net = parse_network_cfg(filename); if(weightfile){ load_weights(&net, weightfile); } srand(time(0)); data test = load_all_cifar10(); matrix pred = network_predict_data(net, test); int i; for(i = 0; i < test.X.rows; ++i){ image im = float_to_image(32, 32, 3, test.X.vals[i]); flip_image(im); } matrix pred2 = network_predict_data(net, test); scale_matrix(pred, .5); scale_matrix(pred2, .5); matrix_add_matrix(pred2, pred); matrix_to_csv(pred); fprintf(stderr, "Accuracy: %f\n", matrix_topk_accuracy(test.y, pred, 1)); free_data(test); }
void test_mnist_csv(char *filename, char *weightfile) { network net = parse_network_cfg(filename); if(weightfile){ load_weights(&net, weightfile); } srand(time(0)); data test; test = load_mnist_data("data/mnist/t10k-images.idx3-ubyte", "data/mnist/t10k-labels.idx1-ubyte", 10000); matrix pred = network_predict_data(net, test); int i; for(i = 0; i < test.X.rows; ++i){ image im = float_to_image(32, 32, 3, test.X.vals[i]); flip_image(im); } matrix pred2 = network_predict_data(net, test); scale_matrix(pred, .5); scale_matrix(pred2, .5); matrix_add_matrix(pred2, pred); matrix_to_csv(pred); fprintf(stderr, "Accuracy: %f\n", matrix_topk_accuracy(test.y, pred, 1)); free_data(test); }
void eval_cifar_csv() { data test = load_cifar10_data("data/cifar/cifar-10-batches-bin/test_batch.bin"); matrix pred = csv_to_matrix("results/combined.csv"); fprintf(stderr, "%d %d\n", pred.rows, pred.cols); fprintf(stderr, "Accuracy: %f\n", matrix_topk_accuracy(test.y, pred, 1)); free_data(test); free_matrix(pred); }
void eval_mnist_csv() { data test; test = load_mnist_data("data/mnist/t10k-images.idx3-ubyte", "data/mnist/t10k-labels.idx1-ubyte", 10000); matrix pred = csv_to_matrix("results/combined.csv"); fprintf(stderr, "%d %d\n", pred.rows, pred.cols); fprintf(stderr, "Accuracy: %f\n", matrix_topk_accuracy(test.y, pred, 1)); free_data(test); free_matrix(pred); }