¿Qué es el sobreajuste?

El sobreajuste es un comportamiento de machine learning no deseado que se produce cuando el modelo de machine learning brinda predicciones precisas para los datos de entrenamiento, pero no para los datos nuevos. Cuando los científicos de datos utilizan modelos de aprendizaje automático para hacer predicciones, primero entrenan el modelo en un conjunto de datos conocido. Luego, basándose en esta información, el modelo intenta predecir los resultados para los nuevos conjuntos de datos. Un modelo sobreajustado puede proporcionar predicciones inexactas y no puede funcionar bien para todos los tipos de datos nuevos.

¿Por qué se produce un sobreajuste?

Únicamente obtendrá predicciones precisas si el modelo de machine learning se generaliza a todos los tipos de datos dentro de su dominio. El sobreajuste se produce cuando el modelo no se puede generalizar y se ajusta demasiado al conjunto de datos de entrenamiento. El sobreajuste ocurre debido a varias razones, tales como:
• El tamaño de los datos de entrenamiento es demasiado pequeño y no contiene suficientes muestras de datos para representar con precisión todos los valores de datos de entrada posibles.
• Los datos de entrenamiento contienen grandes cantidades de información irrelevante, denominada datos ruidosos.
• El modelo se entrena durante demasiado tiempo en un solo conjunto de datos de muestra.
• La complejidad del modelo es alta, por lo que aprende el ruido dentro de los datos de entrenamiento.

Ejemplos de sobreajuste
Considere un caso de uso en el que un modelo de machine learning tiene que analizar fotografías e identificar las que contienen perros. Si el modelo de machine learning se entrenó con un conjunto de datos que contenía fotografías mayoritarias que mostraban a los perros al aire libre en parques, podía aprender a usar el césped como una característica de clasificación y podía no reconocer a un perro dentro de una habitación.
Otro ejemplo de sobreajuste es un algoritmo de machine learning que predice el rendimiento académico y el resultado de la graduación de un estudiante universitario mediante el análisis de varios factores, como los ingresos familiares, su rendimiento académico previo y las calificaciones académicas de los padres. Sin embargo, los datos de la prueba solo incluyen candidatos de un género o grupo étnico específico. En este caso, el sobreajuste hace que la precisión de predicción del algoritmo disminuya para los candidatos con género o etnia fuera del conjunto de datos de la prueba.

¿Cómo se puede detectar el sobreajuste?

El mejor método para detectar modelos sobreajustados es probar los modelos de machine learning en más datos con una representación completa de los posibles valores y tipos de datos de entrada. Por lo general, parte de los datos de entrenamiento se utilizan como datos de prueba para comprobar si hay sobreajuste. Una tasa de error alta en los datos de prueba indica un sobreajuste. A continuación, se proporciona un método de prueba de sobreajuste.
Validación cruzada de k-fold
La validación cruzada es uno de los métodos de prueba utilizados en la práctica. En este método, los científicos de datos dividen el conjunto de entrenamiento en subconjuntos de tamaño parejo K o conjuntos de muestras denominados pliegues. El proceso de entrenamiento consiste en una serie de iteraciones. Durante cada iteración, los pasos a seguir son los siguientes:
1.    Mantenga un subconjunto como datos de validación y entrene el modelo de machine learning en los subconjuntos K-1 restantes.
2.    Observe cómo funciona el modelo en la muestra de validación.
3.    Califique el rendimiento del modelo según la calidad de los datos de salida.


Las iteraciones se repiten hasta que se prueba el modelo en cada conjunto de muestras. A continuación, tendrá que promediar las calificaciones en todas las iteraciones para obtener la evaluación final del modelo predictivo.

¿Cómo se puede evitar el sobreajuste?

Puede evitar el sobreajuste diversificando y escalando su conjunto de datos de entrenamiento o utilizando otras estrategias de ciencia de datos, como las que se indican a continuación.
Detención temprana
La detención temprana detiene la fase de entrenamiento antes de que el modelo de machine learning detecte el ruido en los datos. Sin embargo, es importante establecer el momento adecuado; de lo contrario, el modelo seguirá sin dar resultados precisos.
Poda
Al crear un modelo, puede identificar varias características o parámetros que afectan a la predicción final. La selección de características (o poda) identifica las características más importantes dentro del conjunto de entrenamiento y elimina las irrelevantes. Por ejemplo, para predecir si una imagen es de un animal o un ser humano, puede observar varios parámetros de entrada, como la forma de la cara, la posición de las orejas, la estructura corporal, etc. Puede priorizar la forma de la cara e ignorar la forma de los ojos.
Regularización
La regularización es un conjunto de técnicas de entrenamiento/optimización que busca reducir el sobreajuste. Estos métodos intentan eliminar los factores que no afectan a los resultados de la predicción mediante la calificación de las entidades según su importancia. Por ejemplo, los cálculos matemáticos aplican un valor de penalización a las características con un impacto mínimo. Considere un modelo estadístico que intente predecir los precios de vivienda de una ciudad en 20 años. La regularización daría un valor de penalización más bajo a características como el crecimiento de la población y el ingreso anual promedio, pero un valor de penalización más alto a la temperatura promedio anual de la ciudad.
Ensamble
El ensamble combina predicciones de varios algoritmos de machine learning independientes. Algunos modelos se denominan aprendices débiles porque sus resultados suelen ser inexactos. Los métodos de ensamble combinan a todos los aprendices débiles para obtener resultados más precisos. Utilizan varios modelos para analizar los datos de las muestras y seleccionar los resultados más precisos. Los dos métodos principales de ensamble son el embolsado y el aumento. El aumento entrena diferentes modelos de machine learning uno tras otro para obtener el resultado final, mientras que el embolsado los entrena en paralelo.
Aumento de datos
El aumento de datos es una técnica de machine learning que cambia ligeramente los datos de muestra cada vez que el modelo los procesa. Puede hacerlo cambiando los datos de entrada de formas sutiles. Cuando se hace con moderación, el aumento de datos hace que los conjuntos de entrenamiento parezcan exclusivos del modelo y evita que el modelo aprenda sus características. Por ejemplo, aplicar transformaciones como traslación, volteo y rotación a las imágenes de entrada.

 

¿Qué es un ajuste insuficiente?

El ajuste insuficiente es otro tipo de error que se produce cuando el modelo no puede determinar una relación significativa entre los datos de entrada y de salida. Obtendrá modelos con ajuste insuficiente si no se han entrenado durante el tiempo adecuado en una gran cantidad de puntos de datos.
Diferencias entre un ajuste insuficiente y un sobreajuste
Los modelos de ajuste insuficiente experimentan un sesgo elevado, ya que arrojan resultados inexactos tanto para los datos de entrenamiento como para el conjunto de pruebas. Por otro lado, los modelos de sobreajuste experimentan una gran varianza: arrojan resultados precisos para el conjunto de entrenamiento, pero no para el conjunto de prueba. Un mayor entrenamiento del modelo genera menos sesgo, pero la varianza puede aumentar. Los científicos de datos tienen como objetivo encontrar el punto óptimo entre el ajuste insuficiente y el sobreajuste al ajustar un modelo. Un modelo con el ajuste adecuado puede establecer rápidamente la tendencia dominante para los conjuntos de datos visibles y no vistos.

¿Cómo puede AWS minimizar los errores de sobreajuste en sus modelos de machine learning?

Puede utilizar Amazon SageMaker para crear, entrenar y desplegar modelos de machine learning para cualquier caso de uso con infraestructura, herramientas y flujos de trabajo completamente administrados. Amazon SageMaker tiene una función integrada denominada Depurador de Amazon SageMaker que analiza automáticamente los datos generados durante el entrenamiento, como la entrada, la salida y las transformaciones. Como resultado, puede detectar e informar sobre el sobreajuste y otras imprecisiones sin intervención manual.

Podrá, por ejemplo:

  • Detener automáticamente el proceso de entrenamiento cuando se alcance la precisión deseada.
  • Capturar métricas de entrenamiento en tiempo real.
  • Recibir alertas cuando se detecte un sobreajuste.

Reducir el tiempo y el costo del entrenamiento de modelos de machine learning. Comience con el machine learning en AWS creando una cuenta gratuita hoy mismo.

Siguientes pasos del sobreajuste en AWS

Descubra otros recursos relacionados con el producto
Servicios gratuitos de Machine Learning: AWS 
Regístrese para obtener una cuenta gratuita

Obtenga acceso inmediato al nivel Gratuito de AWS. 

Regístrese 
Comience a crear en la consola

Comience a crear en la consola de administración de AWS.

Iniciar sesión