Todo comienza con una pregunta sencilla: ¿cómo puede una máquina entender el texto? Cuando entrenas un modelo para distinguir spam de mensajes normales o para determinar la tonalidad de las reseñas, sucede algo interesante en el interior. El modelo debe de alguna manera transformar letras y palabras en números, porque las redes neuronales solo trabajan con dígitos.



El primer enfoque ingenuo es simplemente numerar cada palabra única. Good = 6, bad = 26, awesome = 27. Parece lógico, pero aquí está el problema: los números 26 y 27 están cerca uno del otro, por lo que el modelo pensará que bad y awesome son similares. En realidad, awesome y good son semánticamente más cercanos. Esa es la trampa.

Probamos con One Hot Encoding: a cada palabra le damos un vector del tamaño del vocabulario, donde solo una posición tiene un 1 que indica la palabra correcta, y el resto son ceros. El problema de la ordenación desapareció, pero surgió uno nuevo: si el vocabulario tiene 20 mil palabras, cada vector será de 20 mil dimensiones. Consume una cantidad enorme de memoria, y además la semántica de las palabras no la capta el modelo.

Luego llegaron Bag of Words y N-gramas: contamos cuántas veces aparece cada palabra en el texto. Añade contexto, pero nuevamente, vectores dispersos muy grandes y el modelo no entiende relaciones profundas entre palabras. Por ejemplo, en la frase "El bibliotecario ama los libros", si las palabras librarian y book no están juntas, los N-gramas no captarán que están relacionadas.

Aquí es donde entra en juego la codificación correcta mediante embedding. La idea es que palabras similares deben estar cerca unas de otras en el espacio vectorial. Imagínate un plano bidimensional: en un eje está el tamaño del animal, en el otro, el nivel de peligro. Tigre y león estarán cerca, (grandes y peligrosos), mientras que un hámster estará separado, (pequeño y seguro). Eso es el embedding: un vector denso que guarda el significado de la palabra en un espacio n-dimensional.

Lo más genial: con estos vectores se puede hacer matemática. Toma el vector de "hijo", réstale "hombre" y añádele "mujer" — obtendrás un vector cercano a "hija". O: Madrid + Alemania - España = Berlín. Funciona porque el modelo capta las relaciones entre conceptos.

¿Y cómo se entrenan estos embeddings? Google propuso Word2Vec con dos enfoques. En CBOW tomas las palabras del contexto y predices la palabra central. Skip-Gram hace lo contrario: a partir de la palabra central predices sus vecinos. Ambas técnicas funcionan bien para entrenar word embedding.

En modelos modernos como GPT o BERT, todo es un poco diferente. La capa de embedding no se toma como algo predefinido, sino que se entrena junto con el modelo completo. Primero, el texto se divide en tokens, luego una red sencilla crea un embedding para cada token. Los pesos de esa capa son parámetros entrenables que aprenden a representar las palabras en el espacio adecuado. Después, estos embeddings pasan por bloques de decodificadores y llegan a la capa de salida, que da probabilidades para el siguiente token.

Un pequeño detalle: la codificación posicional. Los transformadores procesan todos los tokens en paralelo, a diferencia de las RNN. Por eso, hay que decirle a la modelo en qué orden van las palabras. Se toma un vector posicional y se suma al vector de embedding. Así se obtiene una combinación: el significado de la palabra + la información sobre su posición en el texto.

Tras la codificación posicional, el embedding entra en el mecanismo de atención — que es el corazón de todos los grandes modelos de lenguaje. El embedding capta la semántica de las palabras individuales, pero el contexto se entiende gracias a la atención. Por eso, la palabra "llave" en diferentes contextos tendrá diferentes representaciones contextuales.

Así, combinando ideas simples — tokenización, conteo de palabras, codificación correcta mediante embedding — se llega poco a poco a los transformadores y ChatGPT. Los embeddings están en todas partes: en sistemas de recomendación, en búsquedas de imágenes similares, en la base de todos los LLM modernos. Si quieres entender realmente el NLP, necesitas comprender cómo funcionan CBOW, Skip-Gram y toda esa arquitectura. Esa es la base con la que todo empieza.
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
  • Recompensa
  • Comentar
  • Republicar
  • Compartir
Comentar
Añadir un comentario
Añadir un comentario
Sin comentarios
  • Anclado