July 2017
Beginner to intermediate
715 pages
17h 3m
English
Accuracy is the most straightforward way of evaluating a classifier: we make a prediction, look at the predicted label and then compare it with the actual value. If the values agree, then the model got it right. Then, we can do it for all the data that we have and see the ratio of the correctly predicted examples; and this is exactly what accuracy describes. So, accuracy tells us for how many examples the model predicted the correct label. Calculating it is trivial:
int n = actual.length; double[] proba = // predictions; double[] prediction = Arrays.stream(proba).map(p -> p > threshold ? 1.0 : 0.0).toArray(); int correct = 0; for (int i = 0; i < n; i++) { if (actual[i] == prediction[i]) { correct++; } } double accuracy = 1.0 ...