Transfer Learning/es

    From Marovi AI
    Languages: English | Español | 中文
    Article
    Topic area Machine Learning
    Difficulty Intermediate
    Prerequisites Neural Networks

    El transfer learning (aprendizaje por transferencia) es una tecnica de aprendizaje automatico en la que un modelo entrenado en una tarea se reutiliza como punto de partida para un modelo en una tarea diferente pero relacionada. Al aprovechar el conocimiento adquirido durante un preentrenamiento a gran escala, el transfer learning reduce drasticamente la cantidad de datos etiquetados, computo y tiempo de entrenamiento requeridos para las aplicaciones posteriores.

    Motivacion

    Entrenar redes neuronales profundas desde cero tipicamente requiere grandes conjuntos de datos y recursos computacionales significativos. En muchos dominios practicos — imagen medica, analisis de textos legales, idiomas con pocos recursos — los datos etiquetados son escasos. El transfer learning aborda esta asimetria: un modelo preentrenado en una tarea fuente rica en datos captura caracteristicas generales (bordes, texturas, patrones sintacticos) que se transfieren bien a una tarea objetivo con pocos datos.

    Conceptos clave

    Dominio y tarea

    Formalmente, un dominio $ \mathcal{D} = \{\mathcal{X}, P(X)\} $ consiste en un espacio de caracteristicas $ \mathcal{X} $ y una distribucion marginal $ P(X) $. Una tarea $ \mathcal{T} = \{\mathcal{Y}, f(\cdot)\} $ consiste en un espacio de etiquetas $ \mathcal{Y} $ y una funcion predictiva $ f $. El transfer learning se aplica cuando la fuente y el objetivo difieren en dominio, tarea o ambos.

    Adaptacion de dominio

    Cuando la fuente y el objetivo comparten la misma tarea pero difieren en la distribucion de datos ($ P_s(X) \neq P_t(X) $), el problema se denomina adaptacion de dominio. Las tecnicas incluyen:

    • Reponderacion de instancias — ajustar los pesos de las muestras para que la distribucion fuente aproxime a la objetivo.
    • Alineamiento de caracteristicas — aprender representaciones invariantes al dominio (por ejemplo, mediante entrenamiento adversario o discrepancia de medias maxima).
    • Autoentrenamiento — utilizar las predicciones del modelo sobre datos objetivo no etiquetados como pseudoetiquetas.

    Ajuste fino vs. extraccion de caracteristicas

    Estrategia Descripcion Cuando utilizar
    Extraccion de caracteristicas Congelar todas las capas preentrenadas; entrenar solo una nueva cabeza de salida Conjunto de datos objetivo muy pequeno; fuente y objetivo estan estrechamente relacionados
    Ajuste fino (completo) Descongelar todas las capas y entrenar de extremo a extremo con una tasa de aprendizaje pequena Conjunto de datos objetivo moderado; fuente y objetivo difieren significativamente
    Descongelamiento gradual Descongelar progresivamente las capas de arriba hacia abajo durante el entrenamiento Equilibra la estabilidad de las caracteristicas inferiores con la adaptacion de las superiores

    Una heuristica comun es utilizar una tasa de aprendizaje entre 10 y 100 veces menor para las capas preentrenadas que para la nueva cabeza de clasificacion, previniendo el olvido catastrofico de las representaciones aprendidas.

    Modelos preentrenados

    Vision por computador

    Las redes convolucionales preentrenadas en ImageNet (ResNet, EfficientNet, ViT) sirven como columnas vertebrales estandar. Las capas inferiores aprenden caracteristicas universales como bordes y texturas, mientras que las capas superiores aprenden patrones especificos de la tarea. Ajustar un modelo de ImageNet en un conjunto de datos de imagen medica con solo unos pocos miles de imagenes supera rutinariamente al entrenamiento desde cero.

    Procesamiento del lenguaje natural

    El preentrenamiento de modelos de lenguaje transformo el PLN. Los hitos clave incluyen:

    • Word2Vec / GloVe — word embeddings estaticos preentrenados en grandes corpus.
    • ELMo — embeddings contextualizados a partir de LSTM bidireccionales.
    • BERT (Devlin et al., 2019) — Transformer bidireccional preentrenado con modelado de lenguaje enmascarado; ajustado para clasificacion, respuesta a preguntas, reconocimiento de entidades nombradas y mas.
    • Serie GPT — Transformers autorregresivos que demuestran que la escala y el preentrenamiento permiten la transferencia con pocos ejemplos e incluso sin ejemplos.

    Cuando utilizar transfer learning

    El transfer learning es mas beneficioso cuando:

    1. El conjunto de datos objetivo es pequeno en relacion con la capacidad del modelo.
    2. Los dominios fuente y objetivo comparten similitudes estructurales (por ejemplo, ambos involucran imagenes naturales o lenguaje natural).
    3. Los recursos computacionales para un preentrenamiento completo no estan disponibles.
    4. Se necesita un prototipado rapido antes de comprometerse con la recoleccion de datos a gran escala.

    Puede perjudicar el rendimiento (transferencia negativa) cuando los dominios fuente y objetivo son fundamentalmente disimiles — por ejemplo, transferir de imagenes naturales a espectrogramas sin una adaptacion adecuada.

    Consejos practicos

    • El aumento de datos complementa el transfer learning al expandir artificialmente el tamano efectivo del conjunto de datos objetivo.
    • El calentamiento de la tasa de aprendizaje ayuda a estabilizar el entrenamiento inicial al ajustar modelos preentrenados grandes.
    • La parada temprana sobre un conjunto de validacion previene el sobreajuste durante el ajuste fino, especialmente con conjuntos de datos pequenos.
    • El decaimiento de tasa de aprendizaje por capas asigna tasas menores a las capas iniciales (mas generales) y tasas mayores a las capas posteriores (mas especificas de la tarea).
    • La transferencia de tarea intermedia — ajustar en una tarea intermedia relacionada antes de la tarea objetivo final (por ejemplo, inferencia de lenguaje natural antes de analisis de sentimiento) — puede mejorar aun mas los resultados.

    Evaluacion

    La efectividad del transfer learning se mide tipicamente comparando:

    $ \Delta_{\mathrm{transfer}} = \mathrm{Acc}_{\mathrm{transfer}} - \mathrm{Acc}_{\mathrm{scratch}} $

    Un $ \Delta_{\mathrm{transfer}} $ positivo indica una transferencia de conocimiento exitosa. Los profesionales tambien monitorizan la velocidad de convergencia, ya que los modelos transferidos a menudo alcanzan el rendimiento objetivo en una fraccion de las epocas.

    Vease tambien

    Referencias

    • Pan, S. J. and Yang, Q. (2010). "A Survey on Transfer Learning". IEEE Transactions on Knowledge and Data Engineering.
    • Yosinski, J. et al. (2014). "How transferable are features in deep neural networks?". NeurIPS.
    • Devlin, J. et al. (2019). "BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding". NAACL.
    • Howard, J. and Ruder, S. (2018). "Universal Language Model Fine-tuning for Text Classification". ACL.
    • Zhuang, F. et al. (2021). "A Comprehensive Survey on Transfer Learning". Proceedings of the IEEE.