#14 Métricas esenciales para construir modelos definitivos

  • Autor de la entrada:
En este momento estás viendo #14 Métricas esenciales para construir modelos definitivos
Imagen de claudiodivizia en Canva.

¡Buenos días y buenos datos!

Hoy tomaremos la medida de nuestros modelos de analítica avanzada. 

Pero sobre todo nos aseguraremos de que lo que estamos haciendo tiene sentido porque ¡las métricas SÍ importan!

Cuando puedes medir aquello de lo que hablas y expresarlo con números, sabes lo que discutes. Pero cuando no puedes, tu conocimiento es pobre e insatisfactorio.

Lord Kelvin. Físico y matemático británico.

Gracias a Sebastian Ruder por encontrar una cita tan a propósito.

Mujer con cartel

Este capítulo sigue siendo muy técnico. Si te surge cualquier duda, pregúntame en comentarios o envíame un mensaje directo. 

Bienvenido a ¡Evaluar y ganar!

¿Qué queremos medir exactamente? Juguemos primero para averiguarlo.

Para empezar

Pregunta: ¿Qué buscas cuando se evalúas el resultado de un modelo? 

Respuesta: Quiero saber si lo que he hecho sirve para algo o no.

Pregunta: Pero, ¿cómo sabes si sirve para algo? 

Respuesta: Servirá si mejora lo que tenía antes.

Pregunta: De acuerdo. ¿Y si no tenías nada antes?

Respuesta: Esa es buena. Entonces, tendré que definir una referencia inicial. 

Vamos, lo que sería establecer el mínimo para dar algo por bueno.

Pregunta: Nos vamos entendiendo. Hablamos entonces de que se necesita una base de comparación, una referencia.

Estableciendo las bases

Pero si nos ponemos filosóficos, ¿qué es para ti bueno y qué es malo?

Respuesta: Esta pregunta tiene truco. Depende del caso. Por ejemplo, si quiero optimizar mi presupuesto publicitario, para mí lo más importante será que con la misma o menor inversión de presupuesto, consiga más ventas.

Pregunta: Perfecto. Entiendo que te refieres a que el modelo genere valor al negocio. ¿Algo más?

Respuesta: Pues, si puedo pedir, en el ejemplo anterior, no solo me gustaría saber el presupuesto óptimo sino que quiero conocer los mejores medios por los que invertir. 

Pregunta: A ver si lo digo bien con mis palabras. Te gustaría conocer las variables que más influyen en el resultado del modelo para poder hacer un ajuste fino de tus procesos. ¿Es así?

Respuesta: Sí, si, es es. ¿Se puede hacer?

Pregunta: Muchas cosas son posibles pero, ¿te vale todo?

Respuesta: No, no. Si hacer el modelo, entender las variables de más peso, validarlo, etc. se lleva el presupuesto del departamento, dura años y dedicamos muchas personas, sistemas y procesos para conseguirlo, no merece la pena.

Pregunta: Totalmente de acuerdo. Es clave tener claro si algo es viable, para no fallar estrepitosamente. 

Ya casi hemos conseguido todos lo necesario para evaluar nuestro modelo:

  • Tenemos una base comparativa.
  • Queremos que genere valor.
  • Quiero que sea explicable para ajustar mis procesos de negocio.
  • Tiene que ser viable en costes y tiempo.

Solo, ¿nos falta?

Respuesta: Medir. Necesitamos métricas para saber si el modelo es fiable o si falla más que una escopeta de feria.

Pregunta: ¡Ahí estamos!

Todo lo que necesitas para evaluar tu resultado

Y con este «teatrillo» hemos recopilado los imprescindibles para evaluar, de una manera teórica, nuestro resultado.

Veamos cada uno en detalle.

a. Modelo base

Como hemos visto, para evaluar nuestro modelo primero necesitamos una referencia con la que compararnos. 

Balanza
Imagen de luketaibai en Canva

Si no, ¿cómo vamos a saber que lo nuevo es mejor que lo que teníamos? 

El modelo base depende del escenario:

  • En el caso de evoluciones o nuevas versiones de modelos analíticos, nuestro modelo base sería la versión anterior del modelo. 
  • En el caso de que no exista modelo analítico anteriormente, la base serían reglas de negocio o modelos sencillos/naïve
  • En caso de uso basados en optimizadores, la base la establece la inversión/rentabilidad de un escenario tradicional/actual.  

b. Valor

Una vez tenemos la referencia, el valor generado es uno de los principales factores, si no el que más, que tenemos que considerar a la hora de evaluar modelos.  

Matriz de confusión

Matriz de confusión
Matriz de confusión

Para explicarlo te presento a la matriz de confusión, una de las herramientas clave para evaluar el rendimiento de los modelos de clasificación.

La matriz de confusión representa en comportamiento de la predicción realizada (en las columnas) frente a la realidad (en las filas):

  • Verdaderos positivos (VP): valores positivos clasificados correctamente.
  • Falso positivos (FP): valores que la predicción ha clasificado como positivos pero que realmente son negativos. 
  • Verdadero negativos (VN): valores negativos clasificados correctamente.
  • Falso negativos (FN): valores que la predicción ha clasificado como negativos pero que realmente son positivos. 

También te puedes encontrar la matriz traspuesta con los datos de la predicción en las filas y la realidad en columnas. Los valores son los mismos pero organizados de diferente forma. Simplemente depende de los gustos o costumbre de la persona que lo esté explicando.

Siempre positivo

Ejemplo positivo vs negativo
Ejemplo de positivo y negativo

Es posible que te surja la duda de donde viene el nombre de «positivo» y «negativo». 

Es sencillo. Normalmente las clasificaciones tienen valores categóricos («SI», «NO», «rojo», «negro», etc…)

Los algoritmos no entienden valores categóricos y hay que traducirlos a su lenguaje que es un valor numérico basado en «0»s y «1»s y probabilidades.

En resumen, traducimos las categorías que estamos analizando a «0»s o «1»s. 

En caso de que la categoría sea un «1», nuestro objetivo, lo llamamos «positivo» y si fuera un «0», el resto, lo llamaríamos «negativo».

Rentabilidad de un modelo

La rentabilidad de un modelo se calcula sumando la rentabilidad o pérdida de cada uno de los indicadores de la matriz de confusión.

Cálculo del valor de un modelo
Pasos para calcular la rentabilidad de un modelo a partir de la matriz de confusión.

Primero dibujamos la matriz de confusión de nuestro modelo.

Segundo, construimos la matriz de rentabilidad a partir de los costes e ingresos esperados de nuestro producto o servicio para cada indicador de la matriz de confusión.

Por último, multiplicamos los valores de la matriz de confusión por su rentabilidad asociada y sumamos para calcular el valor total.

No te voy a mentir. En el mundo real no es fácil realizar este cálculo

Normalmente los ingresos y  costes de las predicciones no suelen ser tan limpios y el margen entre modelos puede ser muy pequeño. 

En cualquier caso, siempre hay que pedir los datos al negocio e intentar hacer el cálculo.

c. Explicatividad y accionabilidad

Para algunos usos, es imprescindible saber cómo el modelo ha llegado al resultado que ofrece pues según la causa se realizará una acción u otra. 

No es lo mismo que un cliente abandone mi servicio por precio que por incidencias técnicas. En caso de querer disuadirles de que se vayan, haría acciones diferentes en uno u otro caso: al primero le ofreceré un descuento mientras que al segundo no le cobraría durante el tiempo de incidencia.

En un caso extremo, podría llegar a no usar el modelo por no ser accionable. 

Piensa por ejemplo en el siguiente escenario: 

  • El lunes detecto que un cliente tiene un alto riesgo de que abandone mi compañía.
  • Para evitarlo quiero ofrecerle un servicio adicional y así asegurar su fidelidad. 
  • Tengo un algoritmo «Mejor momento para llamar» que me dice que este cliente prefiere recibir llamadas comerciales o de los proveedores de su servicio los viernes por la tarde. 
  • Además, sé a través de análisis descriptivos, que los clientes con alto riesgo suelen dejarnos en menos de tres días. 

Ante esta situación, no voy a poder esperar hasta el viernes para llamar a este cliente porque es muy probable que se haya ido. 

El modelo «Mejor momento para llamar» no sirve para este escenario porque sus resultados no son accionables para clientes con muy alto riesgo de baja. 

d. Implementabilidad

Otra de las razones que influyen en la decisión sobre si hacer o no un modelo es su implementabilidad. 

Esta característica nos indica cómo de viable es desarrollar e integrar un modelo en los sistemas y procesos existentes. 

Imagina una situación donde la ejecución de modelo analítico tarda tanto que no es capaz de generar la información en el momento necesario. Sería necesaria una simplificación o reconstrucción del código para poder optimizar su ejecución y poder utilizarlo.

Por ello es importante involucrar pronto a los usuarios finales de las herramientas así como a los arquitectos de datos y de sistemas para saber que se puede o no hacer y evitar sustos más adelante.

e. Métricas

Y por fin llegamos al apartado que da nombre a esta entrada y al más técnico de todos.

Las métricas de los modelos nos permiten saber el rendimiento de un modelo con respecto a una referencia base.

Por un lado ayudan a descartar modelos que no tengan suficiente capacidad predictiva, explicativa o prescriptiva. 

Por otro, servirán para identificar aquellos que apenas se diferencian del modelo base y a seleccionar la mejor técnica para cada uso.

E incluso, pueden indicar la inviabilidad para resolver un problema para una condiciones dadas.

Veamos las métricas es mayor detalle.

Destripando las métricas

Hay mucho en internet sobre métricas así que como siempre, os dejaré referencias al final.

Lo primero que hay que tener en cuenta a la hora de seleccionar las métricas es el tipo de problema que estoy resolviendo.

No es lo mismo un regresor lineal que un clasificador y por ello la forma de evaluarlos también difiere.

Lo que no varía es que el objetivo final de las diferentes métricas es el mismo: comparar y seleccionar el mejor modelo para mi caso de uso.

Métricas para problemas de clasificación

Empezamos con los modelos de clasificación y lo primero que hay que preguntarse siempre es ¿que busco con mi modelo de clasificación?

¿Busco identificar compradores potenciales para mi producto?

¿Busco identificar clientes que no pagan? 

¿Busco identificar personas contagiadas para evitar que se extienda una enfermedad?

Ejemplos de positivo y negativos
Ejemplos de «positivos» y «negativos» para diferentes problemas.

Lo que busco es mi objetivo que en jerga estadística son los «positivos»:

  • Si busco compradores potenciales para mi producto, los «positivos» dentro de mi conjunto de datos serán los clientes que compran.
  • Si busco identificar clientes con riesgo de impago, los «positivos» serán los clientes que no pagan.
  • Si busco identificar personas contagiadas por un virus, los «positivos» serán los infectados  

Por eliminación, al resto de la población se le llama «negativos»: clientes que no compran, clientes que pagan o personas no infectadas.

En general, las predicciones de los modelos, por muy buenas que sean, tienen errores y es normal que se nos suelen «colar positivos» cuando son «negativos» o viceversa.

De hecho, si aciertas al 100%, desconfía. Ningún dato o algoritmo es tan bueno como para conseguir la perfección absoluta.

Predicción en población total
Comportamiento del subconjunto de la predicción dentro de una población.

Normalmente el modelo de predicción se desarrolla o entrena sobre un subconjunto de muestra sobre la población total.

El número de aciertos y fallos del modelo sobre dicho subconjunto se representa en la matriz de confusión de la misma forma que vimos con el cálculo de valor y a partir de esta calculamos las métricas que nos interesan.

Exactitud (Accuracy en inglés)

El primer indicador es la Exactitud o Accuracy en inglés. 

Voy a usar la palabra inglesa porque es como te la vas a encontrar escrita en casi todos los sitios, incluso en los de castellano.

Accuracy
Accuracy

Accuracy es la medición más básica. La que haría cualquiera si le preguntaran ¿en cuanto has acertado?

Se calcula dividiendo todos los aciertos del modelo (verdaderos positivos o VP y verdaderos negativos o VN) entre el total de la población analizada.

Cuanto más alto sea el valor, mejor.

Esta medición no es muy fiable en casos donde «busco una aguja en un pajar».

Ejemplo de datos desbalanceados
Ejemplo de datos desbalanceados.

El Accuracy no sirve cuando los datos están muy desbalanceados.

Cuando tengo muchos más casos «negativos» que «positivos», el peso de los verdaderos negativos puede ser tan alto que lleve a un Accuracy alto.

Mi modelo estaría identificando bien los negativos pero no el objetivo ya que al ser una muestra tan pequeña, no podemos saber cómo se están comportando realmente los positivos.

Estos casos son corrientes en la vida real. Normalmente, y crucemos los dedos para que sea así, hay muchas más personas no infectadas que infectadas por un virus o hay mucho menos correo «no deseado» que correo que quiero recibir.

Por eso necesitamos otras métricas como la Precisión y la Sensibilidad que están enfocadas en los «positivos». 

Precisión (Precision en inglés)

La siguiente métrica es Precisión.

Fórmula de precisión
Precisión

Se calcula dividiendo los verdaderos positivos entre el total de positivos estimados (verdaderos positivos y falsos positivos).

Es un indicador de la calidad de mi modelo de predicción ya que se centra en cómo de bien identifica el objetivo dentro de la estimación. 

Es un valor muy interesante cuando el coste de un falso positivo es muy alto

Por ejemplo, sería la métrica a considerar en un modelo que clasifica correo no deseado sobre todo si puedo perder información importante por catalogar mensajes relevantes como «no deseado».

Es parecido en el ejemplo de la enfermedad infecciosa, la Precisión sirve para evaluar el impacto y coste de estar tomando demasiadas medidas innecesarias (aislamiento o cierre de comercios) en personas que no están infectadas por el virus.

En realidad, en el segundo caso, la salud suele ser prioritaria frente a otro tipo de impactos. Quiero que no se me escape ninguna persona enferma. Debido a esto solemos utilizar la siguiente métrica de la que voy a hablar: la Sensibilidad.

Sensibilidad (Recall en inglés)

Fórmula de recall
Sensibilidad

La Sensibilidad de un modelo se calcula dividiendo los verdaderos positivos entre el total de positivos reales.

Simplificando, nos indica la tasa de positivos que identifica. 

Es un indicador muy interesante cuando el coste de no identificar a un positivo (falso negativo) es muy alto. 

Por ello en el ejemplo de la enfermedad muy infecciosa nos sirve para saber si estamos dejando de atender a mucha gente infectada y tenemos un alto riesgo de que se extienda la enfermedad.

En realidad, es uno de los principales indicadores en los modelos utilizados para medicina. ¡Piensa en el impacto de no identificar a tiempo a alguien con cáncer! 

F1- Score 

Puede haber situaciones en las que nos interese equilibrar el resultado entre Precisión y Sensibilidad. 

Fórmula del F1-score
F1-score

En estos escenarios se usa el F1-Score que tiene en cuenta ambos parámetros relacionándolos mediante su media armónica.

Te dejo la fórmula aunque seguro que la vas a usar poco porque hay funciones dentro de las librerías de aprendizaje supervisado que calculan directamente tanto este indicador como los anteriores.

Te cuento una historia

¿Qué tal hasta aquí?

Si sigues conmigo, enhorabuena porque las métricas son necesarias pero un rato áridas.

Coge fuerza porque ahora toca retorcer la matriz de confusión un poco más para calcular las curvas ROC y el AUC pero antes te cuento una historia.

Ejemplo regresión logística
Ejemplo de clasificación mediante una regresión logística.

Todo empieza con un virus, unas cuantas infecciones y una rápida expansión. 

Nuestra protagonista, DS, es encargada de averiguar qué personas están ya contagiadas por el virus para ponerlas en cuarentena y evitar una pandemia. 

DS conoce las capacidades de los modelos analíticos y decide que la mejor solución es desarrollar un algoritmo que prediga las personas que estarán infectadas durante las siguientes 24 horas. 

Primero define un objetivo «estar infectado» y buscar variables que tengan relación con este.

Enseguida detecta una fuerte conexión entre la fiebre y «estar infectado» y se pone manos a las obra.

DS sabe que lo normal es que haya muchas variables que tengan relación con el objetivo pero empieza con la temperatura porque la cosa está que arde.

Al simplificar los datos, DS puede seleccionar un algoritmo sencillo, una regresión logística y ajustarla a sus datos de muestra. Esto en la jerga de los científicos de datos se llama entrenar un modelo de regresión logística.

Punto de corte
Ejemplo de establecimiento de punto de corte en el 50%.

El modelo le indica una probabilidad (de 0 a 1) que DS necesita asociar con un estado «estar infectado» o «estar sano».

Esto lo consigue estableciendo un umbral o punto de corte de la probabilidad.

Pero, ¿cómo establece DS el umbral? En otras ocasiones se hubiera basado en su experiencia pero este virus es nuevo y no hay referencias.

Además, cada punto de corte tiene una matriz de confusión y métricas, ¿hay que calcular todos los posibles escenarios?

Curvas ROC Receiver Operating Characteristic en inglés (Característica Operativa del Receptor en castellano)

¡No! No es necesario. Las curvas ROC resumen la información.

Ejemplo de curva ROC
Ejemplo de curva ROC.

La curva ROC se obtiene uniendo los puntos que representan la tasa de verdaderos positivos (eje de las «y») y la falsos positivos (eje de las «x») para cada umbral y permite establecer el umbral óptimo.

En nuestra historia, la curva ROC refleja todas las relaciones entre tasa de personas correctamente clasificadas como «infectadas» y la tasa de personas incorrectamente clasificadas como «infectadas» para cada punto de corte.

DS prefiere ser precavida y establecer un umbral bajo para asegurarse de que no se «escapa» ningún positivo a costa de clasificar como infectadas a muchas personas sanas.

Pero es lo que toca, hay más que perder si se extiende la pandemia que ganar no tomando medidas sobre personas no contagiadas. 

¿Te suena el cuento? Espero que sí porque he querido ilustrar de forma muy simplificada como se ha podido tomar alguna decisión durante la crisis del Covid.

Y esto no es todo. Si te fijas en la animación, las curvas ROC permiten ver la bondad del modelo con respecto a un modelo aleatorio.

Con todo esto, la curva ROC tiene sentido cuando los datos de entrada están balanceados. En caso de que fueran desbalanceados utilizamos otras curvas que relacionan la Precisión y Sensibilidad para elegir el punto óptimo.

AUC

Por último pero también importante, a partir de las curvas ROC se calcula el AUC (Area under the curve o Área bajo la curva en español).

AUC
Ejemplo de AUC para diferentes modelos.

A partir de una situación ideal con un AUC = 1, el mejor modelo es el que más se acerca a este escenario.

Un modelo se considera aceptable a partir de 0.7 de AUC y excelente a partir de 0.8. En ocasiones, con datos muy buenos y un modelo muy optimizado, se puede llegar a valores en torno al 0.9.

Por eso, si consigues un AUC perfecto o casi perfecto, no te fíes. Seguramente se te han «colado» datos del objetivo en las variables de entrenamiento y esto invalida tu modelo.

Lift

Cuando he trabajado con científicos de datos y con el negocio, una de las métricas en la que más se fijan es el Lift porque ayuda a identificar grupos de población donde se concentra el objetivo.

Fórmula de Lift
Lift

Esta métrica se calcula dividiendo el porcentaje de «positivos» que identifica el modelo en un grupo de la población sobre el porcentaje total de «positivos». 

Si el Lift es superior al valor promedio o aleatorio se dice que el modelo ordena correctamente.

Parece lioso pero lo explico con un ejemplo:

  • Tengo una cartera de 1 millón de clientes
  • Voy a lanzar un nuevo producto del que estimo que voy a vender 50.000 unidades entre mis clientes.
  • Pero no sé quiénes son mis potenciales compradores para ofrecerlo.
  • Y sólo dispongo de presupuesto para informar a 100.000 clientes sobre el nuevo producto. 

Ante esta situación necesito un listado de clientes a los que contactar que incluya al mayor número de mis compradores potenciales.

Ejemplo de curva de lift
Ejemplo de curva de lift.

Sin un modelo, los 100.000 clientes de la lista (10% cartera de clientes) se escogerían de manera aleatoria con lo que como mucho incluirá un 10% de compradores potenciales (5.000). 

Pero he desarrollado un modelo con el que ordeno a mis clientes según su probabilidad de compra y consigo encontrar 20.000 potenciales compradores dentro de los primeros 100.000 clientes. 

El modelo ha multiplicado por 4 el número de compradores potenciales detectados en los primeros 100.000 clientes frente a no hacer nada. Es decir, mi modelo ordena bien y tiene «un Lift por 4 en el percentil 1″. 

Esto es un bombazo para el negocio ya que más compradores potenciales significan más ventas y en definitiva ingresos de ahí la potencia del indicador.

Y tras esto, pasamos a las métricas para los modelos de regresión lineal.

Métricas para regresores lineales

Un regresor lineal es un modelo que estima la probabilidad de que ocurra un evento numérico. Por ello, el objetivo durante su entrenamiento es que la diferencia entre el valor de la predicción y el valor real sea mínima.

Llamamos residuo o error de la predicción a la diferencia entre predicción y realidad.

Error de una predicción
Error o residuo de una predicción.

Veamos diferentes formas de calcular el error a continuación.

Error cuadrático medio (Mean Squared Error o MSE en inglés). 

MSE
Fórmula del error cuadrático medio (MSE).

La primera métrica es el Error cuadrático medio que también recibe el nombre de «Mínimos Cuadrados Ordinarios» (Ordinary Least Squares o OLS en inglés).

Calcula la media de los errores al cuadrado y cuanto mayor sea, peor es el modelo.

Al medir un valor cuadrático penaliza los errores mayores y nunca es negativo. 

En general, ayuda a identificar resultados atípicos pero no funciona bien con datos de baja calidad.

Raíz cuadrada del error cuadrático medio (Root Mean Squared Error o RMSE en inglés).

RMSE
Fórmula de RMSE.

Seguimos con la Raíz cuadrada del error cuadrático medio.

Es equivalente al anterior en términos de ordenar cómo funcionan los modelos pero al ser una raíz cuadrada tiene el mismo orden de magnitud del objetivo

Error absoluto medio (Mean Absolute Error o MAE en inglés)

MAE
Fórmula del Error Absoluto Medio (MAE).

El Error absoluto medio se calcula como el promedio de los errores en valor absoluto.

Al no ser cuadrático, penaliza menos los errores altos y atípicos que el MSE.

Además se suele utilizar bastante en predicciones donde la temporalidad es relevante (forecasting).

Error absoluto medio porcentual (Mean Absolute Percentage Error o MAPE en inglés)

MAPE
Fórmula del Error absoluto medio porcentual (MAPE).

El Error absoluto medio porcentual es equivalente al MAE pero en porcentaje.

Al dividir por el valor real, puede dar problemas si este es 0.

Coeficiente de determinación o R2

R2
Fórmula de R2.

Por último está el Coeficiente de determinación o R2 que compara el error cuadrático medio de mi modelo con un error cuadrático medio de referencia.

La referencia se calcula asumiendo que el valor de una predicción es el promedio de todas las estimaciones. Es decir, sin tener en cuenta ningún modelo ni dependencia con otras variables

En general el R2 se puede ver como una versión estandarizada del error cuadrático medio que refleja la relación de la variable objetivo con respecto al resto de variables del modelo.

Cuanto más se acerque a 1, mayor es la relación de las variables del modelo con el objetivo. Lo que quiere decir que mejor es el resultado del algoritmo.

En el caso de tener muchas variables se utiliza el valor R2 ajustado que se calcula dividiendo R2 por el número de variables. Este ajuste en realidad sirve para minimizar posibles mejoras «no reales» del coeficiente debido a comportamientos aleatorios de alguna variable que realmente no tenga relación con el objetivo.

Evaluamos los modelos lenguaje natural

Para finalizar he querido hacer un pequeño aparte sobre cómo se evalúan los modelos de procesamiento de lenguaje natural (PLN).

Recuerda que su aprendizaje es especialmente complicado ya que se necesitas conocimiento general de muchas cosas: lenguaje y sus reglas; el mundo y su contexto y el modo de razonar de las personas.

Por ello, muchas veces la validación se realiza por expertos pero es un proceso costoso y tedioso que hay que repetir con cada entrenamiento.

Para solucionarlo utilizamos, cómo no, métricas y puntos de referencia estándares o benchmarks aunque específicamente diseñados para procesamiento de lenguaje.

Benchmarks de evaluación de PLN

Una referencia estándar (benchmark en inglés) para PLN consiste en:

  • grandes conjuntos de datos de lenguaje clasificado o anotado como ImageNET, SQuAD o SNLI.
  • unas métricas, algunas específicas para tareas de tratamiento del lenguaje cómo ASR, BLEU, ROUGE o BERTScore.
  • una manera de agregar el resultado porque al ir hacia modelos más generalistas no vale con una sola métrica y se usan varias que se agregan posteriormente en un único valor de validación

En principio estos benchmarks se enfocaron en una tarea concreta como categorización del lenguaje, traducción, etc. pero últimamente están evolucionando hacía referencias más globales y multitarea en benchmarks como GLUE, SuperGLUE o WILDS.

Sesgo social, rendimiento y ambigüedad

Las características especiales del PLN fuerzan a tener más en cuenta otros elementos a la hora de evaluarlos como son:

  • Estimación del sesgo social que podemos estar incluyendo en los modelos. 
  • Control del rendimiento. Son modelos cada vez más costosos y cualquier optimización es bien acogida. 
  • Más idiomas en los benchmarks. En general los conjuntos de datos siguen siendo mayoritariamente en inglés. Es necesario impulsar la anotación de texto en otros idiomas, especialmente los minoritarios.
  • Considerar casos extremos o outliers. Según estos modelos son mejores en tareas genéricas, es preciso establecer referencias «cola larga» que vayan teniendo en cuenta datos y escenarios de evaluación que recojan más tareas y las sutilidades de cada lengua, contexto y persona.

Sesgo o sobreajuste esa es la cuestión

Hasta aquí hemos visto muchas fórmulas e indicadores que nos avisan de si un modelo es suficientemente bueno para usar o si por el contrario, tengo que seguir intentándolo. 

En caso de que todo haya ido bien, besos, felicitaciones y vamos a por lo siguiente. Pero ¿si no funciona tan bien y las métricas nos delatan? ¿qué ha pasado? ¿qué hacemos?

Ambas preguntas convergen en uno de los principales dilemas de los científicos de datos: el balance entre sesgo y sobreajuste. ¿Te acuerdas? Si no, no pasa nada. ¡Son tantas cosas! Lo puedes recordar aquí.

El método científico: desarrolla, valida, itera

Metodología CRISP-DM
Metodología CRISP-DM.

Si recuerdas, llevamos varias entradas centrándonos en el paso 4 de la metodología CRISP-DM (Cross Industry Standard Process for Data Mining en inglés).

Durante toda la entrada de hoy he hablado de medidas teóricas que me ayudan a desarrollar y seleccionar el mejor modelo por lo que hemos seguido en esta etapa.

Pero esto no es suficiente.

Para saber si nuestro modelo sirve en la realidad hay que ir al paso 5.

Llevarlo a la práctica a través de pilotos controlados y pruebas a/b con cuyos resultados tomaremos las decisiones finales sobre el lanzamiento y uso de nuestro modelo en la vida real. 

TL;DR:

La validación es un elemento clave dentro de la metodología de desarrollo de un modelo analítico. 

De hecho más que un hito, es un proceso iterativo que se realiza a diferentes niveles del desarrollo desde uno más teórico durante el entrenamiento del modelo hasta uno más práctico con pruebas en un entorno real.

Por ello, el establecimiento del método de evaluación es uno de los primeros pasos dentro de la definición del alcance de nuestro problema.

Para hacerlo es imprescindible tener clara la referencia contra la que vamos a compararnos, el objetivo de rentabilidad esperada, las acciones a realizar con el modelo, si existe alguna limitación en los sistemas y procesos de la compañía y las métricas en las que nos vamos a fijar. 

Estas últimas son la herramienta clave de los científicos de datos para seleccionar entre diferentes técnicas y evaluar su rendimiento.

De nuevo, el objetivo de negocio pero también los datos y el tipo de problema a resolver son los que determinan la selección de los valores que vamos medir y en definitiva del entrenamiento.

Analizaremos el Accuracy, la Precisión, la Sensibilidad, las curvas ROC, el AUC o el Lift en los modelos de clasificación.

En las regresiones o series temporales nos enfocaremos en el RMSE, el MAE, el MAPE o R2.

Mientras, en el caso de los modelos de procesamiento natural no podemos limitarnos a un valor. La tendencia es evaluar en base a benchmarks o referencias estandarizadas como GLUE que van evolucionando e incluyendo más escenarios y tareas según construimos modelos más generalistas.

En definitiva, entrenar un modelo supone una negociación continua entre variables y parámetros donde las métricas son la señal que indica si la negociación va por buen camino o si hay que reconducirla.

Hasta aquí por hoy.

Si sigues conmigo, mil gracias y si te ha gustado, compártelo en redes y dímelo en comentarios.

Te espero en las siguientes entregas de «La época de la información» donde compartiré la lista de puntos imprescindibles para verificar que tu modelo está a punto y no te saca los colores. 

Referencias

Pero antes de irme te dejo esta selección de artículos y vídeos sobre este tema:

Recuerda que si el vídeo está en inglés, Youtube facilita la traducción simultánea a otro idioma. Para activar la traducción simultánea al español, sigue estos pasos: ¿Cómo activar la traducción simultánea en Youtube?