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 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 matrix_array_to_csv(std::ostream &out, flann::Matrix<T>* mats, size_t n) { for (size_t i = 0; i < n; i++) { matrix_to_csv(out, mats[i]); out << "\n"; } out << "\n"; }