Word embeddings : Una guía fácil de entender

Escrito por Manuel Herranz | 02/09/24

LinkedIn, las publicaciones de blogs y las redes sociales están llenas de contenido que describe cómo las incrustaciones de palabras son la base para la IA generativa: la piedra angular de todo lo relacionado con la inteligencia artificial. Si habla con un ingeniero de aprendizaje automático, un científico de datos o un matemático, es probable que encuentre el concepto de "incrustaciones de palabras" detrás de gran parte de la ciencia del procesamiento del lenguaje natural (PLN) y la IA generativa que nos rodea desde finales de 2022, y las ondas de cambio que ha enviado a través del mundo tal como lo conocíamos


Si en 2021 predijimos que "la IA leerá texto para descubrir información para usted", esta afirmación se basó en la comprensión de cómo funcionaban las incrustaciones de palabras y los primeros experimentos.

Los Word embeddings son representaciones numéricas de palabras en un espacio vectorial de alta dimensión. Capturan relaciones semánticas entre palabras basadas en sus patrones de uso en grandes corpus de texto. Sin embargo, no todo el mundo tiene una formación en ingeniería o matemáticas para entenderlo.

Como traductor, usted comprende que las palabras tienen significados y relaciones complejas. Las incrustaciones de palabras son una forma de representar estas complejidades matemáticamente, lo que ayuda a las computadoras a procesar y comprender el lenguaje de manera más similar a como lo hacen los humanos.

Imagine un espacio vasto y multidimensional donde cada palabra en un idioma está representada por un punto único. Este punto está definido por una lista de números (un vector). Las palabras con significados o patrones de uso similares terminan más cerca en este espacio.

Por ejemplo, "perro" y "gato" podrían estar relativamente cerca en este espacio porque ambos son mascotas comunes. "Felino" estaría muy cerca de "gato", mientras que "automóvil" estaría lejos de ambos.

Estas representaciones se crean analizando enormes cantidades de texto (corpus) para ver cómo se usan las palabras en contexto. Si dos palabras aparecen a menudo en contextos similares, la computadora asume que están relacionadas y las posiciona más cerca en este espacio matemático.

Para un traductor, este concepto es valioso porque:

  1. Ayuda a capturar matices en el significado que podrían existir entre los idiomas.
  2. Puede sugerir sinónimos o palabras relacionadas que podrían ser útiles en la traducción. 
  3.  Forma la base de muchos sistemas modernos de traducción automática.

Comprender las incrustaciones de palabras puede darle una idea de cómo funcionan las herramientas de traducción automática y por qué hacen ciertas elecciones en las traducciones. 

Estos son algunos puntos básicos para leer más sobre los word embeddings: 

  1. Representación vectorial: Cada palabra se representa como un vector denso de números reales. 
  2. Similitud semántica: Las palabras con significados similares se colocan más cerca en el espacio vectorial.
  3. Dimensionalidad: Por lo general, varían de 50 a 300 dimensiones, lo que permite una rica representación de las relaciones entre palabras.
  4. Usos: Comunes en tareas de procesamiento del lenguaje natural como traducción automática, análisis de sentimientos y clasificación de texto.
  5. Métodos de entrenamiento: Se pueden crear utilizando técnicas como Word2Vec, GloVe o FastText.
  6. Analogías: Pueden capturar relaciones semánticas, permitiendo operaciones como "rey - hombre + mujer = reina".

¿Cómo se entrenan los word embeddings? 

Los word embeddings generalmente se entrenan en grandes corpus de texto. El principio subyacente es que las palabras que aparecen en contextos similares tienden a tener significados similares.

Hay dos métodos de entrenamiento populares:

  1. Bolsa continua de palabras (CBOW): Predice una palabra objetivo basada en sus palabras de contexto.. 
  2. Skip-gram: Predice palabras de contexto dadas una palabra objetivo.

Propiedades y capacidades de las incrustaciones de palabras

  • Composicionalidad: Los vectores de palabras se pueden combinar (por ejemplo, mediante el promedio) para representar frases u oraciones. Esta es una gran característica para ir más allá del nivel de la palabra al nivel de la oración o párrafo, por lo tanto, "transmitir un mensaje".
  • Cross-lingual embeddings: Esto es muy interesante para la traducción automática o para transferir conocimiento de un idioma a otro, ya que la incrustación de palabras puede mapear palabras de diferentes idiomas en un espacio vectorial compartido (digamos el concepto de "coche" en español europeo o "carro" en español latinoamericano, el concepto de "automóvil", "medios de transporte", etc.)
  • Manejo de palabras fuera del vocabulario: Algunos modelos como FastText pueden generar incrustaciones para palabras no vistas basadas en información de subpalabras. Es útil cuando se enfrentan a palabras nuevas como "Fitfluencer".

Limitaciones del word embedding 

Polisemia: Las incrustaciones de palabras estándar luchan con palabras que tienen múltiples significados. Es el fenómeno de las palabras que tienen múltiples significados distintos.

Los modelos tradicionales de word embedding como Word2Vec o GloVe asignan un solo vector a cada palabra, independientemente de sus posibles significados múltiples. Este enfoque conduce a la fusión de significados, donde el vector se convierte en una representación promediada de todos los sentidos posibles de la palabra. Como resultado, la incrustación puede no representar con precisión cualquier significado único, diluyendo la precisión semántica de la representación.

El problema se ve agravado por la naturaleza insensible al contexto de estos ebeddings. En el lenguaje natural, el significado pretendido de una palabra polisémica a menudo está determinado por su contexto circundante. Los embbedings de palabras estándar, sin embargo, no tienen en cuenta esta información contextual, lo que lleva a posibles interpretaciones erróneas en aplicaciones posteriores.

Considere palabras como "banco", que podría referirse a una institución financiera o al borde de un río, o "planta", que podría significar vegetación o una fábrica. En estos casos, los Word embeddings luchan por diferenciar entre estos significados distintos, lo que puede conducir a errores en tareas como la traducción automática, la recuperación de información o el análisis de sentimientos, donde la comprensión del sentido correcto de una palabra es crucial.

Esta limitación puede tener efectos cuantitativos significativos en el rendimiento de los modelos de PLN. La investigación ha demostrado que la precisión de los modelos de Word embeddings a menudo disminuye notablemente para palabras polisémicas en comparación con palabras monosémicas (de un solo significado). Esta disminución en el rendimiento puede propagarse en cascada a través de varias tareas de PLN, como la traducción automática o el análisis de sentimientos, afectando la confiabilidad y eficacia general de los sistemas que dependen de estas incrustaciones. Esta naturaleza estática es un problema prominente en las incrustaciones tradicionales porque asignan un vector fijo a cada palabra, independientemente del contexto.

Sin embargo, esta limitación sigue siendo un área activa de investigación en el campo del procesamiento del lenguaje natural, y es por eso que los glosarios, una función de glosario y la gestión de la terminología siguen siendo un área de experiencia en traducción automática para empresas de traducción y traductores.

 

Codificaciones posicionales:

Las codificaciones posicionales todavía se agregan a las incrustaciones de tokens para incorporar el orden de los tokens en la secuencia, permitiendo que el modelo entienda la estructura del texto.
 

Capas del transformador:

Los tokens incrustados (más codificaciones posicionales) pasan a través de múltiples capas de transformador, donde los mecanismos de autoatención permiten al modelo considerar todo el contexto de una secuencia, mejorando la relevancia contextual de las incrustaciones.

Técnicas avanzadas para superar esas limitaciones iniciales: Refinamiento para mejorar los Word embeddings con conocimientos externos

El refinamiento es una técnica sofisticada en el campo del procesamiento del lenguaje natural que tiene como objetivo refinar los Word embeddings preentrenados mediante la incorporación de información de fuentes de conocimiento externas. Este método aborda algunas de las limitaciones inherentes de los Word embeddings estándar, particularmente su dificultad para manejar la polisemia y la falta de información semántica o relacional explícita.

En su núcleo, el refinamiento ajusta los vectores de los Word embeddings previamente entrenados para alinearse mejor con las relaciones semánticas definidas en los recursos léxicos externos. Estos recursos pueden incluir bases de datos lingüísticas integrales como WordNet o FrameNet, o incluso ontologías específicas de dominio. El proceso comienza con Word embeddings preentrenados, como los generados por algoritmos populares como Word2Vec, GloVe o FastText. Estas incrustaciones iniciales capturan la semántica distributiva basada en la coocurrencia de palabras en grandes corpus de texto.

El procedimiento de refinamiento luego utiliza un léxico semántico o base de conocimiento que define las relaciones entre las palabras. Este recurso externo proporciona información estructurada sobre los significados de las palabras y las conexiones que pueden no ser capturadas completamente por los métodos distributivos solos. El algoritmo actualiza iterativamente los vectores de palabras, acercando palabras semánticamente relacionadas en el espacio vectorial mientras mantiene la similitud con sus incrustaciones originales. 

Matemáticamente, el refinamiento generalmente implica minimizar una función de costo que equilibra dos objetivos primarios. El primero es mantener los vectores refinados cerca de sus valores originales preentrenados, preservando la valiosa información distributiva aprendida de grandes corpus de texto. El segundo es garantizar que las palabras conectadas en el recurso semántico tengan representaciones vectoriales similares, incorporando así el conocimiento estructurado en el espacio de incrustación.

Este enfoque ofrece varias ventajas sobre los Word embeddings estándar. En primer lugar, mejora la precisión semántica al capturar relaciones de palabras más matizadas que se definen explícitamente en el recurso de conocimiento. Esto puede conducir a un mejor rendimiento en varias tareas de procesamiento del lenguaje natural, especialmente aquellas que requieren una comprensión semántica de grano fino.

En segundo lugar, el refinamiento facilita la adaptación del dominio. Las incrustaciones de propósito general se pueden adaptar a dominios específicos mediante el uso de recursos de conocimiento específicos de dominio, haciéndolas más relevantes y precisas para aplicaciones especializadas. Esto es particularmente útil en campos como la medicina, el derecho o las finanzas, donde la terminología y el uso de palabras pueden ser altamente especializados.

En tercer lugar, el refinamiento puede mejorar potencialmente las representaciones de palabras raras. Estas palabras a menudo tienen malas representaciones en Word embeddings estándar debido a las ocurrencias limitadas en el corpus de entrenamiento. Al aprovechar el conocimiento externo, el refinamiento puede mejorar la calidad de estas representaciones, lo que lleva a un mejor manejo de términos poco comunes.

Por último, el refinamiento conserva la valiosa información distributiva aprendida de grandes corpus de texto al tiempo que agrega conocimiento estructurado. Esta combinación de enfoques basados en datos y conocimientos da como resultado incrustaciones que se benefician tanto de los patrones estadísticos en el uso del lenguaje como de la información semántica curada.

En conclusión, el refinamiento representa una técnica poderosa para mejorar los Word embeddings, cerrando la brecha entre los métodos puramente distributivos y los recursos de conocimiento estructurado. A medida que el procesamiento del lenguaje natural continúa avanzando, técnicas como el refinamiento juegan un papel crucial en el desarrollo de representaciones más sofisticadas y semánticamente ricas del lenguaje.

 

Refinamiento: Desafíos y direcciones futuras

El refinamiento de los Word embeddings ha surgido como una técnica poderosa para mejorar la riqueza semántica de las representaciones de palabras distributivas. Sin embargo, como cualquier método avanzado en el procesamiento del lenguaje natural, viene con su propio conjunto de desafíos y limitaciones que los investigadores y profesionales deben navegar.

Una de las principales preocupaciones en el refinamiento es la calidad de la fuente de conocimiento utilizada. La efectividad del proceso de refinamiento está intrínsecamente vinculada a la exhaustividad, precisión y relevancia de la base de conocimientos externa empleada. Si la fuente de conocimiento es incompleta, obsoleta o contiene errores, estas deficiencias pueden propagarse en las incrustaciones refinadas. Esta dependencia subraya la importancia de seleccionar y examinar cuidadosamente las fuentes de conocimiento, especialmente cuando se trabaja en dominios especializados o contextos multilingües.

Otra consideración es el costo computacional asociado con el refinamiento. Mientras que los Word embeddings preentrenados están fácilmente disponibles y se pueden usar fuera de la plataforma, el refinamiento introduce un paso adicional en el proceso de preparación de la incrustación. Este proceso puede ser computacionalmente intensivo, particularmente cuando se trata de vocabularios grandes o gráficos de conocimiento complejos. Los mayores requisitos computacionales pueden plantear desafíos en entornos con recursos limitados o cuando es necesario un despliegue rápido.

A pesar de las mejoras ofrecidas por el refinamiento, las incrustaciones resultantes aún conservan una limitación fundamental de los Word embeddings tradicionales: su naturaleza estática. Las incrustaciones refinadas, al igual que sus contrapartes no refinadas, asignan un vector fijo a cada palabra, independientemente del contexto. Este enfoque no aborda completamente el desafío de la polisemia o el significado dependiente del contexto. Las palabras con múltiples sentidos o patrones de uso todavía están representadas por un solo vector, que puede no capturar el espectro completo de sus matices semánticos.

No obstante, las incrustaciones refinadas han demostrado mejoras tangibles en varias tareas de procesamiento del lenguaje natural. En los juicios de similitud semántica, a menudo exhiben una mejor correlación con las calificaciones humanas, capturando relaciones matizadas entre palabras con mayor precisión. Las tareas de desambiguación del sentido de las palabras se benefician de la información semántica adicional incorporada a través del refinamiento, lo que permite una diferenciación más precisa entre múltiples sentidos de la palabra. En el reconocimiento de entidades nombradas, las incrustaciones refinadas pueden aprovechar el conocimiento externo para representar mejor los sustantivos propios y la terminología específica de dominio. Las tareas de clasificación de texto también muestran mejoras, particularmente cuando la clasificación se basa en distinciones semánticas de grano fino.

Mirando hacia el futuro, el campo del refinamiento continúa evolucionando, con varias direcciones de investigación prometedoras. Un área de enfoque es la combinación efectiva de múltiples fuentes de conocimiento. Los investigadores están explorando formas de integrar información de diversos recursos léxicos, ontologías y gráficos de conocimiento para crear incrustaciones refinadas más completas y robustas. Este enfoque tiene como objetivo aprovechar las fortalezas de las diferentes fuentes de conocimiento al tiempo que mitiga sus limitaciones individuales.

Otra vía emocionante es el desarrollo de técnicas de refinamiento dinámico. Estos métodos buscan abordar la naturaleza estática de las incrustaciones tradicionales adaptando el proceso de refinamiento al contexto. El objetivo es crear incrustaciones que puedan representar de manera flexible las palabras en función de su uso en contextos específicos, resolviendo potencialmente ambigüedades y capturando variaciones sutiles de significado de manera más efectiva. 

Además, hay un trabajo en curso para integrar conceptos de refinamiento con modelos de incrustación más avanzados como BERT o GPT. Estos modelos de incrustación contextualizados han revolucionado muchas tareas de PLN, y los investigadores están explorando formas de incorporar conocimiento externo en estas arquitecturas. Esta integración podría combinar potencialmente las fortalezas de las representaciones contextuales profundas con la información semántica estructurada proporcionada por el refinamiento.

El refinamiento representa un paso significativo para cerrar la brecha entre los métodos puramente distributivos de representación de palabras y los enfoques más estructurados para capturar el significado semántico en el procesamiento del lenguaje natural. Si bien los desafíos permanecen, la investigación y el desarrollo en curso en esta área prometen producir representaciones de palabras aún más poderosas y matizadas, avanzando aún más nuestra capacidad de procesar y comprender el lenguaje natural de maneras cada vez más sofisticadas.