Sobreajuste
Inteligencia artificial
Fondo negro y azul
Sobreajuste

Aprenda a evitar el subajuste, para poder generalizar con precisión los datos fuera de su modelo.


¿Qué es overfitting?

El sobreajuste es un concepto en la ciencia de datos, que ocurre cuando un modelo estadístico se ajusta exactamente a sus datos de entrenamiento. Cuando esto sucede, el algoritmo desafortunadamente no puede funcionar con precisión contra datos invisibles, frustrando su propósito. La generalización de un modelo a nuevos datos es, en última instancia, lo que nos permite usar algoritmos de aprendizaje automático cada día para hacer predicciones y clasificar datos.

Cuando se construyen algoritmos de aprendizaje automático, aprovechan un conjunto de datos de muestra para entrenar el modelo. Sin embargo, cuando el modelo se entrena durante demasiado tiempo con datos de muestra o cuando el modelo es demasiado complejo, puede comenzar a aprender el "ruido" o información irrelevante dentro del conjunto de datos. Cuando el modelo memoriza el ruido y se ajusta demasiado al conjunto de entrenamiento, el modelo se "sobreajusta" y no puede generalizar bien a los nuevos datos. Si un modelo no puede generalizarse bien a nuevos datos, entonces no podrá realizar las tareas de clasificación o predicción para las que fue diseñado.

Las tasas de error bajas y la varianza alta son buenos indicadores de sobreajuste. Con el fin de prevenir este tipo de comportamiento, parte del conjunto de datos de entrenamiento generalmente se reserva como el "conjunto de prueba" para verificar el sobreajuste. Si los datos de entrenamiento tienen una tasa de error baja y los datos de prueba tienen una tasa de error alta, indica un sobreajuste.


Sobreajuste frente a subajuste

Si el sobreentrenamiento o la complejidad del modelo dan como resultado un sobreajuste, entonces una respuesta de prevención lógica sería pausar el proceso de entrenamiento antes, también conocido como "detención anticipada" o reducir la complejidad en el modelo eliminando entradas menos relevantes. Sin embargo, si hace una pausa demasiado pronto o excluye demasiadas funciones importantes, puede encontrar el problema opuesto y, en cambio, puede que no se ajuste a su modelo. El subajuste ocurre cuando el modelo no se ha entrenado durante el tiempo suficiente o las variables de entrada no son lo suficientemente significativas para determinar una relación significativa entre las variables de entrada y salida.

En ambos escenarios, el modelo no puede establecer la tendencia dominante dentro del conjunto de datos de entrenamiento. Como resultado, el subajuste también se generaliza de manera deficiente a los datos invisibles. Sin embargo, a diferencia del sobreajuste, los modelos desajustados experimentan un alto sesgo y menos varianza en sus predicciones. Esto ilustra la compensación de sesgo-varianza, que ocurre cuando un modelo desajustado cambia a un estado sobreajustado. A medida que el modelo aprende, su sesgo se reduce, pero la variación puede aumentar a medida que se sobreajusta. Al ajustar un modelo, el objetivo es encontrar el "punto óptimo" entre el subajuste y el sobreajuste, de modo que pueda establecer una tendencia dominante y aplicarla ampliamente a nuevos conjuntos de datos.


Cómo detectar modelos de sobreajuste

Para comprender la precisión de los modelos de aprendizaje automático, es importante probar la ideonidad del modelo. La validación cruzada de K-fold es una de las técnicas más populares para evaluar la precisión del modelo.

En la validación cruzada de k-iteraciones, los datos se dividen en k subconjuntos de igual tamaño, que también se denominan "iteraciones". Una de las k-iteraciones actuará como conjunto de prueba, también conocido como conjunto de retención o conjunto de validación, y las iteraciones restantes entrenarán el modelo. Este proceso se repite hasta que cada uno de las iteraciones ha actuado como una iteración de reserva. Después de cada evaluación, se retiene una puntuación y cuando se han completado todas las iteraciones, las puntuaciones se promedian para evaluar el rendimiento del modelo general.


Cómo evitar el sobreajuste

Si bien el uso de un modelo lineal nos ayuda a evitar el sobreajuste, muchos problemas del mundo real son no lineales. Además de comprender cómo detectar el sobreajuste, es importante comprender cómo evitar el sobreajuste por completo. A continuación, se muestran una serie de técnicas que puede utilizar para evitar el sobreajuste:

  • Parada anticipada: Como mencionamos anteriormente, este método busca pausar el entrenamiento antes de que el modelo comience a aprender el ruido dentro del modelo. Este enfoque corre el riesgo de detener el proceso de entrenamiento demasiado pronto, lo que lleva al problema opuesto de subajuste. Encontrar el "punto óptimo" entre el subajuste y el sobreajuste es el objetivo final aquí.
  • Entrenar con más datos: Expandir el conjunto de entrenamiento para incluir más datos puede aumentar la precisión del modelo al brindar más oportunidades para analizar la relación dominante entre las variables de entrada y salida. Dicho esto, este es un método más eficaz cuando se inyectan datos limpios y relevantes en el modelo. De lo contrario, podría continuar agregando más complejidad al modelo, haciendo que se sobreajuste.
  • Aumento de datos: Si bien es mejor inyectar datos limpios y relevantes en sus datos de entrenamiento, a veces se agregan datos ruidosos para hacer que un modelo sea más estable. Sin embargo, este método debe realizarse con prudencia.
  • Selección de características: Cuando construye un modelo, tendrá una serie de parámetros o características que se utilizan para predecir un resultado dado, pero muchas veces, estas características pueden ser redundantes para otras. La selección de características es el proceso de identificar las más importantes dentro de los datos de entrenamiento y luego eliminar las irrelevantes o redundantes. Esto se confunde comúnmente con la reducción de dimensionalidad, pero es diferente.  Sin embargo, ambos métodos ayudan a simplificar su modelo para establecer la tendencia dominante en los datos.
  • Regularización: Si se produce un sobreajuste cuando un modelo es demasiado complejo, tiene sentido que reduzcamos el número de funciones. Pero, ¿qué pasa si no sabemos qué entradas eliminar durante el proceso de selección de funciones? Si no sabemos qué características eliminar de nuestro modelo, los métodos de regularización pueden ser particularmente útiles. La regularización aplica una "penalización" a los parámetros de entrada con los coeficientes más grandes, lo que posteriormente limita la cantidad de varianza en el modelo.  Si bien existen varios métodos de regularización, como la regularización L1, la regularización de Lasso y la deserción, todos buscan identificar y reducir el ruido dentro de los datos.
  • Métodos de ensamble: Los métodos de aprendizaje por ensamble se componen de un conjunto de clasificadores, por ejemplo, árboles de decisión, y sus predicciones se agregan para identificar el resultado más popular. Los métodos de conjunto más conocidos son el empaquetado y el refuerzo. En el empaquetado, se selecciona una muestra aleatoria de datos en un conjunto de entrenamiento con reemplazo, lo que significa que los puntos de datos individuales se pueden elegir más de una vez. Después de generar varias muestras de datos, estos modelos se entrenan de forma independiente y, según el tipo de tarea, es decir, regresión o clasificación, el promedio o la mayoría de esas predicciones arrojan una estimación más precisa. Esto se usa comúnmente para reducir la variación dentro de un conjunto de datos ruidoso.
Vea cómo aprovechar algunos de estos enfoques en este tutorial de reconocimiento de imágenes de IBM Developer

Investigación reciente

Si bien lo anterior es la definición establecida de sobreajuste,investigación reciente (PDF, 1.2 MB) (el enlace reside fuera de IBM) indica que los modelos complejos, como los modelos de aprendizaje profundo y las redes neuronales, funcionan con una alta precisión a pesar de estar entrenados para "encajar o interpolar exactamente". Este hallazgo está directamente en desacuerdo con la literatura histórica sobre este tema y se explica a través de la curva de riesgo de "doble descenso" a continuación. Puede ver que a medida que el modelo aprende más allá del umbral de interpolación, el rendimiento del modelo mejora. Los métodos que mencionamos anteriormente para evitar el sobreajuste, como la parada anticipada y la regularización, pueden prevenir la interpolación.


IBM y los sobreajustes

IBM Watson Studio es una plataforma de datos abierta que permite a los científicos de datos desarrollar, ejecutar, probar y optimizar modelos de inteligencia artificial (IA) a escala en cualquier nube. IBM Watson Studio le capacita para hacer operativa la IA en cualquier lugar en el marco de IBM Cloud Pak® for Data. Una equipos, simplifique la gestión del ciclo de vida de la inteligencia artificial y acelere la generación de valor con una arquitectura multinube abierta y flexible.

Para crear modelos de aprendizaje automático con precisión, regístrese para obtener el IBMid y cree su cuenta de IBM Cloud hoy.


Soluciones relacionadas

Watson Studio

IBM Watson Studio es una plataforma de datos abierta que permite a los científicos de datos desarrollar, ejecutar, probar y optimizar modelos de inteligencia artificial (IA) a escala en cualquier nube.