Una suave introducción a las canalizaciones de modelado de aprendizaje automático

El aprendizaje automático aplicado generalmente se centra en encontrar un modelo único que funcione bien o mejor en un conjunto de datos determinado.

El uso eficaz del modelo requerirá una preparación adecuada de los datos de entrada y el ajuste de hiperparámetros del modelo.

En conjunto, la secuencia lineal de pasos necesarios para preparar los datos, ajustar el modelo y transformar las predicciones se denomina canalización de modelado. Las bibliotecas de aprendizaje automático modernas como la biblioteca de Python scikit-learn permiten que esta secuencia de pasos se defina y use correctamente (sin pérdida de datos) y de manera consistente (durante la evaluación y la predicción).

Sin embargo, trabajar con canalizaciones de modelado puede resultar confuso para los principiantes, ya que requiere un cambio de perspectiva del proceso de aprendizaje automático aplicado.


Recomendado: ¿Qué es el Big data?.


En este tutorial, descubrirá las canalizaciones de modelado para el aprendizaje automático aplicado.

Después de completar este tutorial, sabrá:

  • El aprendizaje automático aplicado se preocupa por algo más que encontrar un modelo de buen rendimiento; también requiere encontrar una secuencia apropiada de pasos de preparación de datos y pasos para el posprocesamiento de predicciones.
  • En conjunto, las operaciones necesarias para abordar un problema de modelado predictivo pueden considerarse una unidad atómica denominada canalización de modelado.
  • Abordar el aprendizaje automático aplicado a través de la lente de las tuberías de modelado requiere un cambio en la forma de pensar, desde la evaluación de configuraciones de modelos específicas hasta secuencias de transformaciones y algoritmos.

Empecemos.

Una suave introducción a las canalizaciones de modelado de aprendizaje automático

Una suave introducción a las canalizaciones de modelado de aprendizaje automático
Foto de Jay Huang, algunos derechos reservados.

Descripción general del tutorial

Este tutorial se divide en tres partes; son:

  1. Encontrar un modelo hábil no es suficiente
  2. ¿Qué es una canalización de modelado?
  3. Implicaciones de una canalización de modelado

Encontrar un modelo hábil no es suficiente

El aprendizaje automático aplicado es el proceso de descubrir el modelo que funciona mejor para un conjunto de datos de modelado predictivo determinado.

De hecho, es más que esto.

Además de descubrir qué modelo funciona mejor en su conjunto de datos, también debe descubrir:

  • Transformaciones de datos que exponen mejor la estructura subyacente desconocida del problema a los algoritmos de aprendizaje.
  • Hiperparámetros del modelo que dan como resultado una buena o mejor configuración de un modelo elegido.

También puede haber consideraciones adicionales, como técnicas que transforman las predicciones realizadas por el modelo, como el movimiento del umbral o la calibración del modelo para las probabilidades predichas.

Como tal, es común pensar en el aprendizaje automático aplicado como un gran problema de búsqueda combinatoria entre transformaciones de datos, modelos y configuraciones de modelos.

Esto puede ser bastante desafiante en la práctica, ya que requiere que la secuencia de uno o más esquemas de preparación de datos, el modelo, la configuración del modelo y cualquier esquema de transformación de predicción se evalúen de manera consistente y correcta en un arnés de prueba dado.

Aunque es complicado, puede ser manejable con una simple división de prueba de tren, pero se vuelve bastante inmanejable cuando se usa la validación cruzada de k veces o incluso la validación cruzada de k veces repetida.

La solución es utilizar una tubería de modelado para mantener todo en orden.

¿Qué es una canalización de modelado?

Una canalización es una secuencia lineal de opciones de preparación de datos, operaciones de modelado y operaciones de transformación de predicción.

Permite especificar, evaluar y utilizar la secuencia de pasos como una unidad atómica.

  • Tubería: Una secuencia lineal de pasos de modelado y preparación de datos que puede tratarse como una unidad atómica.

Para aclarar la idea, veamos dos ejemplos simples:

El primer ejemplo utiliza la normalización de datos para las variables de entrada y se ajusta a un modelo de regresión logística:

  • [Input], [Normalization], [Logistic Regression], [Predictions]

El segundo ejemplo estandariza las variables de entrada, aplica la selección de características RFE y se ajusta a una máquina de vectores de soporte.

  • [Input], [Standardization], [RFE], [SVM], [Predictions]

Puede imaginar otros ejemplos de modelado de tuberías.

Como unidad atómica, la tubería se puede evaluar utilizando un esquema de remuestreo preferido, como una división de prueba de tren o una validación cruzada de k veces.

Esto es importante por dos razones principales:

  • Evite la fuga de datos.
  • Coherencia y reproducibilidad.

Una canalización de modelado evita el tipo más común de fuga de datos donde las técnicas de preparación de datos, como escalar los valores de entrada, se aplican a todo el conjunto de datos. Se trata de una fuga de datos porque comparte el conocimiento del conjunto de datos de prueba (como las observaciones que contribuyen a un valor medio o máximo conocido) con el conjunto de datos de entrenamiento y, a su vez, puede dar como resultado un rendimiento del modelo demasiado optimista.

En su lugar, las transformaciones de datos deben prepararse solo en el conjunto de datos de entrenamiento y luego aplicarse al conjunto de datos de entrenamiento, al conjunto de datos de prueba, al conjunto de datos de validación y a cualquier otro conjunto de datos que requiera la transformación antes de usarse con el modelo.

Una canalización de modelado asegura que la secuencia de operaciones de preparación de datos realizadas sea reproducible.

Sin una canalización de modelado, los pasos de preparación de datos se pueden realizar manualmente dos veces: una para evaluar el modelo y otra para hacer predicciones. Cualquier cambio en la secuencia debe mantenerse consistente en ambos casos; de lo contrario, las diferencias afectarán la capacidad y habilidad del modelo.

Una canalización garantiza que la secuencia de operaciones se defina una vez y sea coherente cuando se utilice para evaluar modelos o realizar predicciones.

La biblioteca de aprendizaje automático de Python scikit-learn proporciona una canalización de modelado de aprendizaje automático a través de la clase Pipeline.

Puede obtener más información sobre cómo utilizar esta API de canalización en este tutorial:

Implicaciones de una canalización de modelado

La canalización de modelado es una herramienta importante para los profesionales del aprendizaje automático.

Sin embargo, existen importantes implicaciones que deben tenerse en cuenta al utilizarlos.

La principal confusión para los principiantes al usar pipelines es comprender lo que ha aprendido el pipeline o la configuración específica descubierta por el pipeline.

Por ejemplo, una canalización puede utilizar una transformación de datos que se configura automáticamente, como la técnica RFECV para la selección de características.

  • Al evaluar una canalización que utiliza una transformación de datos configurada automáticamente, ¿qué configuración elige? o al ajustar esta canalización como modelo final para hacer predicciones, ¿qué configuración eligió?

La respuesta es que no importa.

Otro ejemplo es el uso del ajuste de hiperparámetros como paso final de la canalización.

La búsqueda de cuadrícula se realizará en los datos proporcionados por cualquier paso de transformación anterior en la canalización y luego buscará la mejor combinación de hiperparámetros para el modelo usando esos datos, luego ajustará un modelo con esos hiperparámetros en los datos.

  • Al evaluar una canalización en la que la cuadrícula busca hiperparámetros del modelo, ¿qué configuración elige? o al ajustar esta canalización como modelo final para hacer predicciones, ¿qué configuración eligió?

La respuesta de nuevo es que no importa..

La respuesta se aplica cuando se utiliza un paso de calibración de probabilidad o movimiento de umbral al final de la tubería.

La razón es la misma razón por la que no nos preocupa la estructura interna específica o los coeficientes del modelo elegido.

Por ejemplo, al evaluar un modelo de regresión logística, no necesitamos inspeccionar los coeficientes elegidos en cada ronda de validación cruzada de k veces para elegir el modelo. En cambio, nos enfocamos en su habilidad predictiva fuera del pliegue

De manera similar, cuando se utiliza un modelo de regresión logística como modelo final para realizar predicciones sobre nuevos datos, no es necesario inspeccionar los coeficientes elegidos al ajustar el modelo en todo el conjunto de datos antes de realizar predicciones.

Podemos inspeccionar y descubrir los coeficientes utilizados por el modelo como ejercicio de análisis, pero no afecta la selección y el uso del modelo.

Esta misma respuesta se generaliza cuando se considera una tubería de modelado.

No nos preocupa qué características pueden haber sido seleccionadas automáticamente por una transformación de datos en la canalización. Tampoco nos preocupa qué hiperparámetros se eligieron para el modelo cuando se utiliza una búsqueda de cuadrícula como el paso final en el proceso de modelado.

En los tres casos: el modelo único, el pipeline con selección automática de características y el pipeline con una búsqueda de cuadrícula, estamos evaluando el “modelo“O”canalización de modelado”Como una unidad atómica.

La canalización nos permite, como profesionales del aprendizaje automático, subir un nivel de abstracción y estar menos preocupados por los resultados específicos de los algoritmos y más preocupados por la capacidad de una secuencia de procedimientos.

Como tal, podemos enfocarnos en evaluar la capacidad de los algoritmos en el conjunto de datos, no el producto de los algoritmos, es decir, el modelo. Una vez que tengamos una estimación de la tubería, podemos aplicarla y tener la confianza de que obtendremos un rendimiento similar, en promedio.

Es un cambio en la forma de pensar y puede llevar algún tiempo acostumbrarse.

También es la filosofía detrás de las técnicas modernas de AutoML (aprendizaje automático automático) que tratan el aprendizaje automático aplicado como un gran problema de búsqueda combinatoria.

Otras lecturas

Esta sección proporciona más recursos sobre el tema si está buscando profundizar.

Resumen

En este tutorial, descubrió las canalizaciones de modelado para el aprendizaje automático aplicado.

Específicamente, aprendiste:

  • El aprendizaje automático aplicado se preocupa por algo más que encontrar un modelo de buen rendimiento; también requiere encontrar una secuencia apropiada de pasos de preparación de datos y pasos para el posprocesamiento de predicciones.
  • En conjunto, las operaciones necesarias para abordar un problema de modelado predictivo pueden considerarse una unidad atómica denominada canalización de modelado.
  • Abordar el aprendizaje automático aplicado a través de la lente de las tuberías de modelado requiere un cambio en la forma de pensar, desde la evaluación de configuraciones de modelos específicas hasta secuencias de transformaciones y algoritmos.

¿Tiene usted alguna pregunta?
Haga sus preguntas en los comentarios a continuación y haré todo lo posible para responder.

¡Descubra el aprendizaje automático rápido en Python!

Domina el aprendizaje automático con Python

Desarrolle sus propios modelos en minutos

… con solo unas pocas líneas de código scikit-learn

Aprenda cómo en mi nuevo libro electrónico:
Dominio del aprendizaje automático con Python

Cubiertas tutoriales de autoaprendizaje y proyectos de principio a fin me gusta:
Cargando datos, visualización, modelado, Afinación, y mucho más…

Finalmente, lleve el aprendizaje automático a
Tus Propios Proyectos

Sáltese los académicos. Solo resultados.

Mira lo que hay dentro