Lección Aprendida

En una serie de posts vamos a intentar explicar, de manera sencilla, algunos términos que rozan lo hermético para mucha gente,  empezando con el aprendizaje automático supervisado.

El propósito del aprendizaje supervisado es crear sistemas que, dada una serie de variables de entrada, nos devuelven una variable de salida. A estos sistemas los llamamos modelos de conocimiento, o simplemente modelos. Y, aunque se programan, los modelos no programan ese conocimiento, sino el algoritmo que lo aprende a partir de datos históricos de muestra, los datos de entrenamiento. Se llama supervisado porque esos datos incluyen un elevado número de registros combinando las variables de entrada con su correspondiente variable de salida. Es como estudiar para un examen aprendiendo las respuestas de cientos de exámenes anteriores. ¿Cuántos datos son un «número elevado»?, pues depende, pero cuantos más datos de muestra tengamos y más variada sea la casuística, mejores serán los resultados que devuelva el modelo.

A partir de unos cientos o miles de líneas de datos que contengan “color”, “envase” y “líquido”, podemos entrenar un modelo que nos devuelva el líquido si le decimos el color y el envase. ¿Veis adónde voy?  Al decirle “blanco” y “botella” nos devolvería “leche”, pero también al decirle “amarillo” y “bote” nos diría “cerveza”, y al decirle “rojo” y “brick” nos devolvería…  (no voy a decir marcas). No es un modelo complejo, y la verdad es que tampoco muy útil, pero sirve para ilustrar el concepto.

Si en lugar de colores, envases y líquidos tuviésemos registros de decenas de miles de clientes, con variables como “plazo medio de pago”, “plazo medio 3 últimos pagos”, “forma de pago”, “límite de crédito”, “saldo pendiente”, … y así hasta 10 ó 20 variables de entrada, y la variable de salida “moroso” con valores “SÍ” o “NO”, podríamos diseñar un modelo que nos alertase del riesgo de morosidad de un cliente. Mucho más interesante, ¿no?.  Las compañías de seguros, por ejemplo, llevan años usando estos modelos para predecir siniestralidades y cotizar sus pólizas, y los bancos para conceder o denegar créditos y calcular hasta qué importe.

Las variables pueden ser numéricas, como un importe, plazo o peso; o categóricas, como un color, el segmento de un cliente, o su forma de pago. Si la variable de salida es numérica hablamos de regresión; y si es categórica hablamos de clasificación, que incluye el caso particular de la decisión, o sea, clasificación en dos categorías (sí/no, verdadero/falso).

Sean del tipo que sea, los datos de entrenamiento del problema han de estar limpios y bien estructurados, ser congruentes, sin campos incompletos ni distorsiones de escala (no mezclemos miles con millones, o metros con centímetros). De estos datos, el científico de datos usará la mayor parte para entrenar el modelo, y se guardará una porción para poder evaluar qué tal funciona el modelo, y con qué precisión responde a una cuestión de la que ya sabemos la respuesta correcta.

Hay muchos métodos y algoritmos de aprendizaje supervisado, cada uno mejor adaptado para ciertos tipos de problemas y datos, y el científico de datos ha de evaluar varios modelos para elegir el más adecuado en cada caso antes de llevarlo a producción, siempre de acuerdo con los objetivos y recursos del cliente. No siempre el modelo más preciso es el más adecuado, si por su complejidad o alta necesidad de preproceso de los datos, por ejemplo, es poco práctico llevarlo a producción.

En Melioth usamos la metodología CRISP-ML para ayudarte en todo el proceso de diseño y puesta en producción de modelos de conocimiento, siempre en línea con tus necesidades y objetivos.

Image by fullvector on Freepik

Scroll al inicio