void evaluate_net(vector<pair<mat, mat> > &test_data) { NeuralNetwork net; net.load(NET_FILE_NAME); //net.print(); double corrects = net.evaluate(test_data); double percentage = (corrects / CANT_TEST_ELEM) * 100; cout << "corrects: " << corrects << ", percentage: " << percentage << "%" << endl; cout<<"total cost: "<<net.calcule_total_cost(test_data, 0); }
int mostLikely(Digit const & digit ) { Vector<double> values(64); for(int i = 0; i < 8; i++) for(int j = 0; j < 8; j++) values.append(digit.color[i][j]); Vector<double> result = nn.evaluate(values); double maxV = result[0]; int maxI = 0; for(int i = 1; i < result.getSize(); ++i) { if(maxV < result[i]) { maxV = result[i]; maxI = i; } } return maxI; }