5.15 - GPT: el aprendizaje NO supervisado en las Redes Transformer

Lección 15 de la sección “Redes Transformer” del curso Fundamentos de Deep Learning con Python.

Introducción

En la lección anterior vimos el impresionante desempeño que tenía BERT en una tarea de pregunta-respuesta.

En esta lección hablaremos de GPT, una arquitectura derivada también de las Redes Transformer y que busca resolver problemas similares a los de BERT, en las áreas de Procesamiento y Comprensión del Lenguaje Natural.

Contenido exclusivo suscriptores

Suscríbete para tener acceso al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

GPT (o Generative Pre-training)

GPT es la sigla correspondiente a Generative Pre-training, que al Español traduce como pre-entrenamiento generativo, y que como veremos en un momento se trata de un modelo pre-entrenado para la generación de texto.

La primera versión de esta arquitectura (GPT-1) fue propuesta en Junio de 2018, seguida por GPT-2 (en febrero de 2019) y por GPT-3 en Julio de 2020.

Veamos en detalle esta evolución de GPT.

GPT-1: modelamiento del lenguaje con aprendizaje semi-supervisado

La primera versión de GPT fue creada siguiendo la misma lógica de BERT y la transferencia de aprendizaje. Es decir que el objetivo era crear un modelo que fuese capaz de entender y llevar a cabo tareas específicas del lenguaje natural.

Así, GPT-1 contiene un modelo pre-entrenado y luego unas capas adicionales que son afinadas dependiendo de la tarea en la cual queramos que se especialice la arquitectura.

Sin embargo, la gran diferencia con respecto a BERT está en el pre-entrenamiento: mientras que en BERT se usa un enfoque supervisado, en GPT-1 los creadores decidieron realizar el entrenamiento con un enfoque no supervisado.

Para el entrenamiento de las capas adicionales se sigue usando, al igual que con BERT, un enfoque supervisado. De allí que GPT-1 haga uso de lo que los autores denominaron aprendizaje semi-supervisado.

Además de esto, en el caso de GPT-1 los autores decidieron usar la etapa de decodificación de la Red Transformer (a diferencia de la etapa de codificación usada en el caso de BERT).

GPT-2: el aprendizaje supervisado no es necesario

En la segunda versión de GPT los autores se dieron cuenta de que el aprendizaje por parte del modelo se podría llevar a cabo usando un enfoque 100% no supervisado. Y para ello bastaba con usar un set de entrenamiento y una arquitectura muchísimo más grandes.

Así que si comparamos GPT-1 con GPT-2 vemos que el primero tenía tan sólo 117 millones de parámetros, mientras que el segundo tenía 1.500 millones, ¡es decir casi 13 veces más grande!. Además GPT-2 fue entrenado con casi 8 millones de documentos.

GPT-3: emulando el aprendizaje del ser humano

Y en la versión 3 se sigue la misma tendencia observada con GPT-2: entre más grande sea el modelo y más datos usemos, mayor capacidad de aprendizaje tendrá.

Así, GPT-3 tiene un total de 175.000 millones de parámetros (es decir es casi 120 veces más grande que su antecesor), y en lugar de usar un set de 40 GB (como en GPT-2) requirió en total 45 TB de datos para su entrenamiento.

Contenido exclusivo suscriptores

Recuerda suscribirte para acceder al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

Conclusión

Bien, con esto acabamos de ver las características de GPT, que lo que intenta es emular la forma como el ser humano interpreta el lenguaje y luego aprende a resolver tareas específicas del lenguaje natural requiriendo muy pocos ejemplos de entrenamiento, usando en esencia un enfoque de fuerza bruta.

Con lo que acabamos de ver estamos listos para la tercera práctica de esta sección del curso. Entonces en la próxima lección veremos cómo usar GPT-2 para la generación de texto.

Ver todas las lecciones de este curso