Closed franco-metnum closed 6 years ago
Esto es útil, me lo dejo a mano (del campus de métodos, sección recursos):
La última parte del código resume bastante bien:
accuracy = mean(Y_test == Y_pred)
tp = sum(Y_test & Y_pred);
fp = sum(~Y_test & Y_pred);
fn = sum(Y_test & ~Y_pred);
precision = tp / (tp + fp)
recall = tp / (tp + fn)
Glosario: ~: not lógico &: and lógico tp: true positives tn: true negatives fp: false positives fn: false negatives
¡Arreglé precision! \o/ ../tests/parametros/test_k10a15K10_410imgs.out.report :tada:
***RESULTADOS*** PARAMETROS: k: 10, alfa: 15, K: 10, metodo: kNN Tiempo: 2.589978 Promedio de aciertos: 83.658531 Precision: 0.898618 Recall: -nan
Arreglo recall y ya estamos para correr los experimentos de knn, me parece.
../tests/parametros/test_k10a15K10_410imgs.out.report
***RESULTADOS*** PARAMETROS: k: 10, alfa: 15, K: 10, metodo: kNN Tiempo: 1.192207 Promedio de aciertos: 90.313454 Precision: 0.960366 Recall: 0.960976
:sunglasses:
Esto es en la corrida de buscar parámetros. La que toma: la ruta a un archivo .in, la ruta para escribir el archivo .out y el número de método (0 es knn solo, 1 es pca+knn).
Ver el mensaje que dice "che que hacen para calcular precision de una clase que no testearon?" en el grupo de Telegram de Métodos, que puede que el problema vaya por ese lado.
Adjunto tests/parametros/test_k10a15K10_410imgs.out.report y tests/parametros/test_k10a15K10_410imgs.in (les agrego extensión .log y .txt respectivamente, sino github no me deja subirlos :roll_eyes:).
Pego igual acá algunas partes de test_k10a15K10_410imgs.out.report que me parecen clave: Líneas 816-818:
Líneas 851-853:
Últimas 6 líneas (861-866):