Evaluación de modelos

Documentos relacionados
Módulo Minería de Datos Diplomado. Por Elizabeth León Guzmán, Ph.D. Profesora Ingeniería de Sistemas Grupo de Investigación MIDAS

Análisis de Datos. Validación de clasificadores. Profesor: Dr. Wilfrido Gómez Flores

Reconocimiento de Patrones

Precisión del Modelo

Complementos de aprendizaje automático

Clasificación de documentos

Aprendizaje Automático para el Análisis de Datos GRADO EN ESTADÍSTICA Y EMPRESA. Ricardo Aler Mur

Aprendizaje Automático Segundo Cuatrimestre de Evaluación de Hipótesis

Aprendizaje Automático para el Análisis de Datos GRADO EN ESTADÍSTICA Y EMPRESA. Ricardo Aler Mur

Clasificación de estados cerebralesusando neuroimágenes funcionales

Evaluación de Hipótesis

ANÁLISIS DE DATOS. Jesús García Herrero

Tema 2: Introducción a scikit-learn

Introducción al Procesamiento de Lenguaje Natural. Grupo de PLN - InCo

INTRODUCTION TO MACHINE LEARNING ISABELLE GUYON

Macro para evaluación de modelos con variables de respuesta dicotómicas con fines de priorización.

Máquinas de vectores soporte con R

Tema 5: Evaluación de Modelos de Clasificación Supervisada p. 1/2

Aprendizaje: Boosting y Adaboost

Análisis de Datos. Combinación de clasificadores. Profesor: Dr. Wilfrido Gómez Flores

Minería de datos. Unidad 2. El proceso KDD Evaluación, difusión y uso. M en I Sara Vera Noguez

Análisis de Datos. Introducción al aprendizaje supervisado. Profesor: Dr. Wilfrido Gómez Flores

Sistemas de Percepción Visión por Computador

Apéndice A: Matrices de confusión y resultados de precisión, exhaustividad y medida F

Evaluación de Modelos (II) Carlos Hurtado L. Departamento de Ciencias de la Computación, U de Chile

II. 2. Análisis manual de imágenes médicas: Análisis de la curva ROC (Receiver Operating Characteristic).

VIII Jornadas de Usuarios de R

Comparación de dos métodos de aprendizaje sobre el mismo problema

EVALUACIÓN EN APRENDIZAJE. Eduardo Morales y Jesús González

Examen Parcial. Attr1: A, B Attr2: A, B, C Attr3 1, 2, 3 Attr4; a, b Attr5: 1, 2, 3, 4

Validación Cruzada (cross-validation) y Remuestreo (bootstrapping)

ANÁLISIS DE DATOS. Ricardo Aler Mur

Análisis de Datos. Introducción al aprendizaje supervisado. Profesor: Dr. Wilfrido Gómez Flores

Aplicaciones de apoyo al diagnóstico médico. Identificación de objetos amigos y enemigos. Identificación de zonas afectadas por un desastre natural.

Aprendizaje Automatizado

Introducción Aprendizaje de Máquina. Gerardo Gutiérrez Gutiérrez Alexis Rodríguez Gutiérrez

Introducción a los sistemas Multiclasificadores. Carlos J. Alonso González Departamento de Informática Universidad de Valladolid

Técnicas Multivariadas Avanzadas

Aprendizaje inductivo

III JORNADAS DE DATA MINING

Methods of Classification in Mining of Meteorological Data

Métodos de Remuestreo en Aprendizaje Automático

Aprendizaje Automático

Análisis de datos avanzados en la industria. Ibon B. Salbidegoiia. Meteo for Energy BigDa Soluions

Aprendizaje para Clasificación con Factorización Matricial Basado en Listwise para Filtrado Colaborativo

Conjuntos de Clasificadores (Ensemble Learning)

Evaluación, validación y sobre-ajuste

Inteligencia Artificial II (Curso ) Ejercicios propuestos del tema 5

Técnicas Multivariadas Avanzadas

RECONOCIMIENTO DE PAUTAS

Introducción al Procesamiento del Habla

Tema 15: Combinación de clasificadores

Aprendizaje Automatizado

Inteligencia Artificial: Su uso para la investigación

Estadística con R. Clasificadores

Aprendizaje Supervisado Máquinas Vectoriales de Soporte

Evaluación de Técnicas de Minería de Datos para la Predicción del Rendimiento Académico

FUNDAMENTOS Y APLICACIONES DE APRENDIZAJE AUTOMÁTICO

Proyecto Elvira. Clasificadores En Elvira (definición y validación) Francisco Javier García Castellano

Uso de Algoritmos de Machine Learning en la Construcción de Mapas de Pobreza: Venezuela Omar Zambrano

Metodología Experimental

Modelos de Churn Bancarios con R Trabajo Final de la Maestría en Data Mining

Mejoras a algoritmos genéticos. Inteligencia Computacional Blanca A. Vargas Govea Sep 25, 2012

Overfit, cross validation y bootstrap

Capítulo 5. Conclusiones

Científico de datos o data scientist

Perceptrón Simple. Aspectos Prácticos y Algoritmos Redes Neuronales, DC-FCEyN-UBA. Rosana Matuk Primer Cuatrimestre 2018

Proyecto Final - Reconocimiento de Patrones

Análisis Estadístico de Datos Climáticos. Verificación y valor de los pronósticos

MASTER DE INGENIERÍA BIOMÉDICA. Métodos de ayuda al diagnóstico clínico. Tema 6: Árboles de decisión.

Introducción. Qué es Machine Learning?

Jone Echazarra Tecanalia. Más allá del ojo humano: detección precoz del mildiu

APRENDIZAJE PROBABILÍSTICO NAIVE BAYES

Julio Deride Silva. 4 de junio de 2010

CAPÍTULO 8 SIMULACIÓN DE ESCENARIOS

Estudio de rampas de producción eólica.

Posibles trabajos HIA

Análisis Estadístico de Datos Climáticos. Verificación y valor de los pronósticos (Wilks, Cap. 7) Facultad de Ciencias Facultad de Ingeniería 2013

Lingüística computacional

Tópicos Selectos en Aprendizaje Maquinal. Clasificación y Regresión con Datos Reales

Análisis de Datos. Clasificación Bayesiana para distribuciones normales. Profesor: Dr. Wilfrido Gómez Flores

Tema 7: Aprendizaje de árboles de decisión

Aux 7. Introducción a la Minería de Datos

Combinación de Clasificadores

Estadística Multivariada Computacional Introducción al Aprendizaje Automático (parte 1)

Índice general. Prefacio...5

Predicción basada en vecinos

Complementación y ampliación de la currícula de la Maestría 2017 Maestría en Generación y Análisis de Información Estadística

Inteligencia Artificial (Curso ) Grado en Ingeniería Informática - Ingeniería del Software

Relación 7 - Redes neuronales

Linear regression. Exercise 1

Tema 4: Aprendizaje de conceptos

TEORIA DE LA DECISION DE BAYES

RESUMEN DE ALGORITMOS PROBABILÍSTICOS

Inducción de Árboles de Decisión ID3, C4.5

Modelos de Scoring para Riesgo de Crédito

IAAE - Inteligencia Artificial Aplicada a la Ingeniería

IAAE - Inteligencia Artificial Aplicada a la Ingeniería

Transcripción:

Evaluación de modelos José Luis Ruiz Reina Dpto. Ciencias de la Computación e Inteligencia Artificial Razonamiento Asistido por Computador, 2017-2018

Evaluación de modelos Una de las fases principales en todo el proceso de análisis de datos En este tema, nos centraremos en evaluación de clasificadores Se trata de evaluar la calidad de un modelo aprendido, cuantificado mediante una varias métricas que cuantifican el rendimiento del modelo La más simple: proporción de aciertos en la clasificación dada (accuracy) Para qué queremos evaluar? Comparar distintos modelos, para elegir el mejor Estimar cómo se comportará el modelo, una vez puesto en producción Convencer al cliente de que el modelo cumplirá su propósito

Principio básico en la evaluación de modelos La evaluación final de un modelo nunca debe hacerse sobre los datos que sirven para aprender el modelo Ni siquiera sobre los datos que sirven para ajustar el modelo La manera más básica de hacerlo: Dividir el conjunto de datos disponibles en entrenamiento y prueba Aprender con el conjunto de entrenamiento Evaluar con el de prueba Pero a veces no es posible (pocos datos)

Metodología y métricas Metodologías: Cómo diseñamos el experimento de evaluación del modelo? Holdout, validación cruzada, bootstrap,... Métricas: Cómo medimos el rendimiento de un modelo? Accuracy, Precision, Recall, curvas ROC, AUC,...

Índice Cómo evaluar: procedimientos de evaluación Qué evaluar: métricas de evaluación Evaluación de modelos en scikit-learn (model selection y metrics)

Cómo evaluar: procedimientos de evaluación

Procedimiento de evaluación Cuestión metodológica: cómo usamos los datos que tenemos para estimar el rendimiento de un clasificador? cómo ajustamos los distintos parámetros con los datos que tenemos? Necesitamos datos con su valor de clasificación (es decir, tomados de los datos que ya tenemos) Pero para dar el rendimiento final es fundamental no hacerlo sobre conjuntos de datos que: Se hayan usado para el aprendizaje del modelo Se hayan usado para el ajuste del modelo

Método Holdout El método holdout consiste en separar de manera aleatoria, una parte de los datos de los que se dispone, obteniendo: Conjunto de entrenamiento Conjunto de prueba Se aprende con el conjunto de entrenamiento y se evalúa el rendimiento sobre el conjunto de prueba

Método Holdout con validación y prueba En muchas ocasiones necesitamos un tercer conjunto de datos para ajustar determinados aspectos del modelo que finalmente se aprenda Es importante que una vez se ajuste el modelo, haya una evaluación final, completamente independiente del proceso de ajuste En ese caso, se parten los datos en tres conjuntos: entrenamiento, validación y prueba (porcentajes habituales: 50:20:30, 40:20:40)

Validación y prueba frente a sobreajuste El método holdout nos permite tratar de evitar el sobreajuste que se produciría si nos basaramos sólamente en el rendimiento sobre el conjunto de entrenamiento En muchos algoritmos, el sobreajuste ocurre a partir de una cierta iteración. Podemos estimar de esta manera en qué momento empieza a producirse. Misclassification Rate 0.1 0.2 0.3 0.4 0.5 Performance on Training Set Performance on Validation Set 0 50 100 150 200 Training Iteration

Problemas con el método holdout Clases no balanceadas: Ejemplo: 900 datos de clasificación pos y 100 neg, podría hacerse un holdout que no respetara esas proporciones Divisiones estratificadas, se hacen por cada clase A veces no nos podemos permitir ese lujo : pocos datos Puede que en el conjunto de entrenamiento queden los datos fáciles, o viceversa El método de validación cruzada trata de contrarrestar estas ds últimas cuestiones

Validación cruzada Validación cruzada en k partes (k-fold cross-validation): Se divide el conjunto de entrenamiento en k partes de igual tamaño, preferentemente estratificadas (valores usuales, k=10, k=5). Se hacen k aprendizajes con sus correspondientes evaluaciones (con una métrica dada) En cada aprendizaje, se usa como test una de las partes y como entrenamiento las k 1 restantes Se devuelve la media de las evaluaciones realizadas Fold*1" Fold*2" Fold*3" Fold*4" Fold*5" Fold*6" Fold*7" Fold*8" Fold*9" Fold*10"

Validación cruzada: ventajas y desventajas Ventajas: Si no tenemos muchos datos, nos proporciona una buena manera de realizar el proceso de validación Cada dato aparece exactamente una vez en un conjunto de test: ningún ejemplo se escapa del entrenamiento ni de la evaluación Podemos medir la varianza de las evaluaciones entre distintos conjuntos de prueba Desventajas: Tiempo de computación

Validación cruzada: una observación importante Validación cruzada no es un método para aprender un modelo Es una manera de evaluar cómo de bueno será (en términos de generalización) un algoritmo de aprendizaje sobre un conjunto de entrenamiento dado Se suele usar, por ejemplo, para el ajuste de parámetros Finalmente, se suele aprender un modelo sobre todo el conjunto de entrenamiento, y se evalúa ese modelo sobre un conjunto de prueba independiente.

Validación cruzada: variantes Validación cruzada dejando uno fuera (leave one out): Es el caso en el que k es igual al total de ejemplos, hacemos N entrenamientos (N total de datos), y N evaluaciones sobre un conjunto de prueba unitario No aconsejable si el conjunto de datos es grande, puede hacer buenas estimaciones sobre conjuntos de datos pequeños Validación cruzada con particiones aleatorias: Se repite k veces la separación del conjunto de datos entrenamiento y prueba, y en cada una se entrena y se evalúa. Cada una de esas separaciones se hace de manera aleatoria, simplemente fijando la proporción de datos para entrenamiento y para prueba Permite subsampling, útil cuando hay muchos datos

Bootstrap En cada iteración se obtiene una muestra del mismo tamaño que el conjunto de datos total, pero cada elemento se extrae aleatoriamente con reemplazo Es decir, la muestra puede tener repeticiones y algunos datos pueden no entrar Se entrena con el conjunto extraído, y se evalúa sobre el conjunto original Se devuelve la media de todas las iteraciones Estimación optimista (gran solape entre conjuntos de entrenamiento y prueba)

Qué evaluar: métricas de evaluación

Métricas de evalución Todas las metodologías necesitan una función de evaluación o métrica Para estimar cuantitativamente la capacidad de generalización del modelo Es decir, su desempeño sobre la distribución completa de posibles datos (y no sólo sobre el conjunto usado para aprender) Para comparar diversas opciones en la fase ajuste y validación La más simple: tasa de aciertos en la predicción (accuracy) Pero hay muchas otras Y no necesariamente tiene que ser un solo número La elección de una medida concreta debe estar guiada por el objetivo final

Métricas para clasificación binaria Supondremos dos clases: positiva (1) y negativa (0), y un clasificador aprendido que queremos evaluar Matriz de confusión: tabla que cruza las predicciones con la clasificación real (ground truth) Tipos de predicciones: Verdadero Positivo (TP): ejemplo positivo, predicho positivo Falso Positivo (FP): ejemplo negativo, predicho positivo Verdadero Negativo (TN): ejemplo negativo, predicho negativo Falso Negativo (FN): ejemplo positivo, predicho negativo

Ejemplo: clasificando SPAM (Kelleher et al.) Supongamos que tenemos un modelo para detectar posibles correos SPAM (la clase positiva), que aplicamos a un conjunto de 20 correos (cuya clasificación conocemos), con los siguientes resultados: ID Clase Pred. Resultado 1 spam ham FN 2 spam ham FN 3 ham ham TN 4 spam spam TP 5 ham ham TN 6 spam spam TP 7 ham ham TN 8 spam spam TP 9 spam spam TP 10 spam spam TP ID Clase Pred. Resultado 11 ham ham TN 12 spam ham FN 13 ham ham TN 14 ham ham TN 15 ham ham TN 16 ham ham TN 17 ham spam FP 18 spam spam TP 19 ham ham TN 20 ham spam FP En este caso: TP = 6, FP = 2, TN = 9, FN = 3

Métricas en clasificación binaria TP+TN Tasa de aciertos= TP+TN+FP+FN 6+9 En el ejemplo: 6+9+2+3 = 0,75 El problema de usar la tasa de aciertos en datos no balanceados Ejemplo: en un conjunto de datos con 990 positivos y 10 negativos, un clasificador que predice siempre positivo, tendría un 0.99 de tasa de aciertos Y sin embargo es malo! Además, no todos los aciertos o errores tienen la misma importancia En el diagnóstico de enfermedades, un FP es más aceptable que un FN, por ejemplo Por tanto, se suelen usar mas de una medida, para captar el impacto de todos los tipos de error

Principales métricas en clasificación binaria Precisión: P = TP TP+FP Qué proporción de los clasificados como positivos lo son realmente? Recall (sensibilidad, exhaustividad): R = TP TP+FN Qué proporción de todos los positivos se clasifican como tal? Tasa FP: FPR = FP TN+FP Qué proporción de todos los negativos se clasifican como positivos? Medida F 1 = 2 P R P+R Es la media armónica de P y R

Métricas en el clasificador de SPAM Precisión: Qué proporción de los clasificados como SPAM lo son realmente? P = TP TP+FP = 6 6+2 = 0,75 Recall: Qué proporción de los que son SPAM se clasifican como tal? R = TP TP+FN = 6 6+3 = 2 3 Medida F 1 En nuestro ejemplo F 1 = 2 P R P+R = 0,706 Tasa FP: Qué proporción de los que no son SPAM se clasifican como SPAM? FPR = FP TN+FP = 2 9+2 = 2 11

Comentarios sobre las métricas de evaluación Precisión (P) alta significa pocos falsos positivos Recall(R) alta significa pocos falsos negativos Hay un compromiso entre P y R: Un clasificador que todo lo predijera positivo, obtendría R = 1, pero habría muchos falsos negativos y P sería muy baja Un clasificador que sólo predijera positivo a un único ejemplo (positivo) y el resto como negativo, tendría R muy baja pero P = 1 Un clasificador perfecto tendría P = R = 1 En la práctica, hay que tratar que ambas sean lo mejor posible La medida F 1 nos sirve para resumir P y R en un solo dato. Se prefiere a la media aritmética, mitiga el impacto de las tasas altas y acentúa el de las tasas bajas.

Clasificadores que manejan incertidumbre Hemos visto que muchos clasificadores las predicciones las hacen cuantificando el grado de incertidumbre de las mismas Naive Bayes y regresión logística devuelven probabilidades Máquinas de vectores soporte cuantifican la cercanía a la frontera de decisión... Por defecto se predice la clase positiva cuando la probabilidad es mayor que 0.5 (o en el caso de SVM, cuando la evaluación es positiva)

Variando el umbral de clasificación Pero podríamos subir o bajar el umbral de aceptación, para hacer que el clasificador fuera más o menos estricto a la hora de clasificar un ejemplo como positivo. Variando el umbral, obtendríamos para el mismo clasificador y conjunto de datos, distintos valores de las métricas P, R, FPR, F 1,... Nos proporciona una forma de ajustar el compromiso entre P y R, o entre FPR y R

Incertidumbre en el clasificador de SPAM (Kelleher et al.) La siguiente tabla muestra las predicciones probabiĺısticas del clasificador de correo SPAM, para cada uno de los datos. Aparecen ordenados de menor a mayor probabilidad en la predicción de la clase positiva: ID Clase Predic. Prob. Resultado 7 ham ham 0.001 TN 11 ham ham 0.003 TN 15 ham ham 0.059 TN 13 ham ham 0.064 TN 19 ham ham 0.094 TN 12 spam ham 0.160 FN 2 spam ham 0.184 FN 3 ham ham 0.226 TN 16 ham ham 0.246 TN 1 spam ham 0.293 FN ID Clase Predict. Prob. Resultado 5 ham ham 0.302 TN 14 ham ham 0.348 TN 17 ham spam 0.657 FP 8 spam spam 0.676 TP 6 spam spam 0.719 TP 10 spam spam 0.781 TP 18 spam spam 0.833 TP 20 ham spam 0.877 FP 9 spam spam 0.960 TP 4 spam spam 0.963 TP

Clasificador SPAM: variando el umbral de predicción Distintos valores de las métricas, para umbrales 0.1, 0.25, 0.5, 0.75 y 0.9: Pred. Pred. Pred. Pred. Pred. ID Clase Prob. (0.10) (0.25) (0.50) (0.75) (0.90) 7 ham 0.001 ham ham ham ham ham 11 ham 0.003 ham ham ham ham ham 15 ham 0.059 ham ham ham ham ham 13 ham 0.064 ham ham ham ham ham 19 ham 0.094 ham ham ham ham ham 12 spam 0.160 spam ham ham ham ham 2 spam 0.184 spam ham ham ham ham 3 ham 0.226 spam ham ham ham ham 16 ham 0.246 spam ham ham ham ham 1 spam 0.293 spam spam ham ham ham 5 ham 0.302 spam spam ham ham ham 14 ham 0.348 spam spam ham ham ham 17 ham 0.657 spam spam spam ham ham 8 spam 0.676 spam spam spam ham ham 6 spam 0.719 spam spam spam ham ham 10 spam 0.781 spam spam spam spam ham 18 spam 0.833 spam spam spam spam ham 20 ham 0.877 spam spam spam spam ham 9 spam 0.960 spam spam spam spam spam 4 spam 0.963 spam spam spam spam spam Tasa de acierto 0.700 0.700 0.750 0.700 0.650 Precisión (R) 0.600 0.637 0.750 0.800 1.000 Recall (R) 1.000 0.778 0.667 0.444 0.222 Tasa Falso Positivo (FPR) 0.545 0.364 0.182 0.091 0.000

Curvas PR y ROC Podemos representar gráficamente cómo varían las métricas, a medida que cambia el umbral Por ejemplo, tres puntos de la curva ROC: True Positive Rate 0.0 0.2 0.4 0.6 0.8 1.0 Prediction Thresh = 0.25 spam ham Target spam ham Prediction Thresh = 0.5 spam ham Target spam ham Prediction Thresh = 0.75 spam ham Target spam ham 4 2 6 2 2 10 3 9 7 4 2 7 0.0 0.2 0.4 0.6 0.8 1.0 False Positive Rate

Curvas PR y ROC Las dos curvas más usadas son: Curva PR (Precision-Recall): representa cómo va cambiando el par (P, R) Curva ROC (Receiver Opeating Characteristic): representa cómo va cambiando el par (FPR, R) La representación gráfica en forma de curva puede ayudar a decidir en qué punto el compromiso entre ambas métricas es satisfactorio (si es que es posible) Y también para comparar clasificadores

Curvas ROC: ejemplos True Positive Rate 0.0 0.2 0.4 0.6 0.8 1.0 True Positive Rate 0.0 0.2 0.4 0.6 0.8 1.0 Model 1 (0.996) Model 2 (0.887) Model 3 (0.764) Model 4 (0.595) 0.0 0.2 0.4 0.6 0.8 1.0 False Positive Rate 0.0 0.2 0.4 0.6 0.8 1.0 False Positive Rate

Curvas PR: ejemplos

Curvas PR y ROC: algunos comentarios En curva ROC, lo ideal es que la curva esté cercana a la esquina superior izquierda (recall alto, tasa de falso positivo baja) En curva PR, el ideal está cercano a la esquina superior derecha (precisión y recall altos) Se suele utilizar como métrica el área bajo la curva (AUC): Cuanto más cercano a 1, mejor (y al menos superior a 0.7) Puede interpretarse como la probabilidad de que el modelo haga una predicción más alta para un ejemplo posoitivo que para un ejemplo negativo

Evaluación multiclase Para multiclase, podemos definir igualmente la tasa de acierto como la medida más básica Pero de nuevo, si las clases no están balanceadas, puede no ser una métrica adecuada La matriz de confusión nos proporciona la información detallada Matriz de confusión en muticlase:

Métricas en multiclase La mayoría de las métricas que se han visto para el caso binario se extienden a más de dos clases Considerando que cada clase es la positiva y el resto la negativa Precisión, Recall, F 1,... Por ejemplo: Recall C = Aciertos en ejemplo de la clase C Total de ejemplos de la clase C Todas las métricas pueden además darse en promedio respecto de las clases Por ejemplo, promedio de la tasa de acierto en cada clase: 1 C i Recall Ci donde C i es el número de ejemplos en la clase i i

Evaluación de modelos en scikit-learn (model selection y metrics)

Metodología de evaluación y ajuste: model selection cross val score: Validación cruzada Se puede especificar: la manera de realizar las particiones, la métrica usada Devuelve un array con las evaluaciones hechas con cada partición GridSearchCV: Ajuste de parámetros: busca el modelo correspondiente a la mejor combinación de parámetros para un clasificador dado, evaluados sobre el conjunto de entrenamiento usando validación cruzada (grid search) Nota:: se trata de un modelo, no una valoración (es decir, tiene métodos fit, predict, score,... ) Los valores candidatos de los parámetros se dan mediante un diccionario. Por ejemplo: { C :[0.01,0.1,1,10], gamma :[0.001,0.01,0.1,1,10]}

Métricas de evaluación: metrics Método score en los modelos, una vez entrenados confusion matrix, f1 score, classification report Reciben dos listas, una con las clases reales y otra con las predicciones, respectivamente Ejemplo de classification report:

Métricas de evaluación: metrics precision recall curve y roc curve: curvas PR y ROC Recibe dos listas, una con las clases reales y otra con las predicciones numéricas (probabilidades o funciones de decisión) Devuelve tres listas, con tantos elementos como umbrales distintos de la lista de predicciones: una con valores de precisión, otras con valores de recall, y otra con los umbrales respecxtivos en orden ascendente Esas tres listas permiten dibujar luego las correspondientes curvas. Y calcular el AUC con las funciones auc (PR) y roc auc score (ROC).

Bibliografía Aggarwal, C.C.. Data Mining: The Textbook (Springer, 2015) Sección 10.9: Classifier Evaluation Kelleher, J.D., MacNamee, B., D Arcy, A. Machine Learning for Predictive Data Analysis Capítulo 8: Evaluation Müller, A. C. y Guido, S. Introduction to Machine Learning with Python (O Really, 2017) Capítulo 5: Model Evalluation and Improvement