Precisión de clasificación después de la recuperación y precisión
Me pregunto si esta es una forma legítima de calcular la precisión de la clasificación:
obtener umbrales de recuperación de precisiónpara cada umbral binarice las puntuaciones y continuascalcular su precisión a partir de la tabla de contingencia (matriz de confusión)devolver la precisión promedio de los umbrales
recall, precision, thresholds = precision_recall_curve(np.array(np_y_true), np.array(np_y_scores))
accuracy = 0
for threshold in thresholds:
contingency_table = confusion_matrix(np_y_true, binarize(np_y_scores, threshold=threshold)[0])
accuracy += (float(contingency_table[0][0]) + float(contingency_table[1][1]))/float(np.sum(contingency_table))
print "Classification accuracy is: {}".format(accuracy/len(thresholds))