23.11. Transferir aprendizaje y ajuste: regularización y evitar el sobreajuste

El aprendizaje automático y el aprendizaje profundo han revolucionado la forma en que interpretamos datos, tomamos decisiones y creamos aplicaciones inteligentes. Una de las técnicas más poderosas del aprendizaje profundo es Transfer Learning, que permite transferir conocimiento de un dominio a otro, ahorrando tiempo y recursos computacionales. El ajuste fino es un complemento al aprendizaje por transferencia, donde ajustamos el modelo previamente entrenado para adaptarse mejor a nuestros datos específicos. Sin embargo, un desafío común al utilizar estas técnicas es evitar el sobreajuste, donde el modelo aprende patrones específicos del conjunto de entrenamiento a expensas de su capacidad de generalizar a nuevos datos. En esta sección, analizaremos las estrategias de regularización y otras técnicas para evitar el sobreajuste al aplicar el aprendizaje por transferencia y el ajuste.

¿Qué es el aprendizaje por transferencia?

El aprendizaje por transferencia es una técnica en la que un modelo desarrollado para una tarea se reutiliza como punto de partida para un modelo en una segunda tarea. Por ejemplo, un modelo entrenado para reconocer imágenes se puede ajustar para reconocer un conjunto específico de imágenes, como razas de perros. Esto es particularmente útil en el aprendizaje profundo, donde los modelos previamente entrenados en grandes conjuntos de datos como ImageNet se pueden adaptar a tareas específicas con una cantidad relativamente pequeña de ejemplos de entrenamiento.

¿Qué es el ajuste fino?

El ajuste implica tomar un modelo de aprendizaje por transferencia y "ajustar" sus capas para la nueva tarea. Normalmente, las últimas capas del modelo se entrenan desde cero, mientras que las capas anteriores solo se modifican o congelan ligeramente (es decir, sus pesos no se actualizan durante el entrenamiento). Esto permite que el modelo mantenga el conocimiento general aprendido en la tarea original, mientras se adapta a los detalles de la nueva tarea.

Regularización

La regularización es un conjunto de técnicas utilizadas para evitar el sobreajuste, que ocurre cuando un modelo aprende patrones que son demasiado específicos del conjunto de entrenamiento y no logra generalizar a datos invisibles. Algunas técnicas de regularización populares incluyen:

  • Abandono: Durante el entrenamiento, algunas neuronas se ignoran o se "apagan" aleatoriamente. Esto obliga al modelo a no depender demasiado de ninguna neurona individual y promueve la generalización.
  • Regularización L1 y L2: estas técnicas agregan un término de penalización a la función de costo del modelo relacionado con la magnitud de los pesos. L1 tiende a producir escasez en los pesos, mientras que L2 los suaviza para evitar pesos extremos que podrían provocar un sobreajuste.
  • Detención anticipada: el entrenamiento se detiene tan pronto como el rendimiento del modelo en el conjunto de validación comienza a deteriorarse, en lugar de continuar hasta que se completen todas las épocas.
  • Aumento de datos: aumentar el conjunto de datos de entrenamiento con datos alterados artificialmente puede ayudar a mejorar la solidez y la generalización del modelo.
  • Normalización por lotes: normalizar las entradas de cada capa para que tengan una media de cero y una desviación estándar de uno puede ayudar a estabilizar y acelerar el entrenamiento.

Evitar el sobreajuste en el aprendizaje por transferencia y el ajuste

Al aplicar el aprendizaje por transferencia y el ajuste, es fundamental implementar estrategias de regularización para garantizar que el modelo no solo se ajuste a los datos de entrenamiento, sino que también se generalice bien a los datos nuevos. A continuación se muestran algunas estrategias específicas:

  • Congelar capas: al realizar ajustes finos, es común congelar las primeras capas del modelo previamente entrenado. Esto ayuda a preservar el conocimiento general que ha adquirido el modelo y evita que se ajuste demasiado a los detalles de los nuevos datos.
  • Vuelva a entrenar con precaución: al ajustar capas, es importante utilizar una tasa de aprendizaje más baja para evitar cambios drásticos en los pesos que podrían provocar un ajuste excesivo.
  • Utilice un conjunto de validación: Separar una parte de los datos para validar el rendimiento del modelo es esencial. Esto le permite monitorear si el modelo está comenzando a sobreajustarse a los datos de entrenamiento.
  • Transferir solo funciones de bajo nivel: en algunas situaciones, puede ser beneficioso transferir solo las funciones de nivel inferior (como bordes y texturas), que son más genéricas, y entrenar las superiores. capas del modelo desde cero.

Conclusión

La transferencia de aprendizaje y el ajuste son técnicas poderosas que permiten adaptar los modelos de aprendizaje profundo a nuevas tareas de manera eficiente. Sin embargo, el éxito de estas técnicas depende en gran medida de la capacidad del modelo genético.Reunirse a nuevos datos, lo que requiere una atención cuidadosa a la regularización y otras estrategias para evitar el sobreajuste. Al aplicar estas técnicas correctamente, puede crear modelos sólidos y precisos que se pueden aplicar a una variedad de tareas de aprendizaje automático y aprendizaje profundo.

En resumen, para aprovechar al máximo el aprendizaje por transferencia y el ajuste en proyectos de aprendizaje automático y aprendizaje profundo con Python, es esencial comprender y aplicar las técnicas de regularización adecuadas. Esto no solo mejora la capacidad del modelo para generalizar a nuevos datos, sino que también garantiza que los recursos computacionales se utilicen de manera efectiva, evitando la pérdida de tiempo y energía en modelos que son demasiado complejos y específicos para el conjunto de entrenamiento.

Ahora responde el ejercicio sobre el contenido:

¿Cuál de las siguientes afirmaciones sobre el aprendizaje por transferencia y el ajuste es correcta?

¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.

¡Tú error! Inténtalo de nuevo.

Imagen del artículo Transferir aprendizaje y ajuste: marcos de aprendizaje profundo (TensorFlow, Keras, PyTorch) 96

Siguiente página del libro electrónico gratuito:

Transferir aprendizaje y ajuste: marcos de aprendizaje profundo (TensorFlow, Keras, PyTorch)

Tiempo estimado de lectura: 4 minutos

Descarga la aplicación para obtener una certificación gratuita y escuchar cursos en segundo plano, incluso con la pantalla apagada.

+ 9 millones
estudiantes

Certificado gratuito y
válido con código QR

60 mil ejercicios
gratis

Calificación de 4.8/5
en tiendas de aplicaciones

Cursos gratuitos de
vídeo y audiolibros