Word Embeddings: cómo la IA nos muestra la evolución de las palabras

Carlos Rodríguez Abellán    5 junio, 2019

Introducción

El lenguaje, tal y como lo conocemos, es muy distinto a como se originó (hace al menos 400 mil años). Pese a esto no es necesario remontarnos tan atrás en el tiempo para descubrir que la manera en la que nos comunicamos hoy en día es muy distinta a aquella en la que lo hacían, por ejemplo, nuestros padres. Estas diferencias vienen marcadas por motivos muy diversos como pueden ser el marco sociocultural del momento, la formación del individuo o la manera de expresarse de las personas más cercanas, entre otros.

Ser capaces de entender la evolución de la semántica de nuestro lenguaje nos permite captar el verdadero significado de las palabras en función del contexto en el que se encuentren.

Es por ello que para entender correctamente el significado de una palabra es imprescindible analizarla dentro de su contexto. Dicho contexto puede englobar tanto desde la posición de la palabra en la frase – o documento – como al contexto social y/o temporal en el que se enmarque.

Palabra ‘ordenador’ en la edición de 1817 del Diccionario de la Lengua Castellana [1]

Un ejemplo del cambio en el significado de las palabras a lo largo del tiempo puede verse, por ejemplo, en la palabra ‘ordenador’ que, en el Diccionario de la Lengua Castellana de 1817, solo tenía una acepción y era para designar a aquella persona que, literalmente, ordenaba. Hoy en día muy posiblemente pensaríamos en nuestro portátil o computadora.

Word Embeddings

Dentro del Procesado de Lenguaje Natural (PLN) y de la Lingüística Computacional existen una serie de técnicas que permiten identificar similitudes entre palabras en función de la co-ocurrencia entre ellas en determinados fragmentos de texto.

La premisa en la que se basan estas técnicas es que es posible definir – o caracterizar – una palabra por el resto de palabras de las que aparezca acompañada.

Entre estas técnicas destacan los modelos de word embeddings que vinculan cada palabra o frase de un determinado corpus (conjunto de documentos) a un vector de números reales.

Como estos vectores representan coordenadas en un determinado espacio vectorial podemos calcular palabras próximas, o análogas, en función de la distancia que exista entre sus vectores. Es decir, cuanto más cerca se encuentren dos vectores palabra éstas tendrán una semántica más similar que de encontrarse más alejados. El cálculo de esta similitud o cercanía entre vectores puede hacerse de diversas maneras siendo algunas de las más utilizadas la distancia euclidea o la similitud del coseno.

En la siguiente figura [2] aparecen representados algunos vectores palabra y sus relaciones calculadas con GloVe, un modelo de word embeddings desarrollado por la Universidad Stanford, el cual es capaz de capturar conceptos como que ‘hombre’ es a ‘mujer’ como ‘rey’ es a ‘reina’, relaciones entre verbos y tiempos verbales o vincular nombres de países con sus capitales.

Representación del concepto de los word embeddings capturando información relativa al género, tiempos verbales, entidades, etc.

Estos modelos son ampliamente utilizados en PLN ya que mejoran de forma notable la habilidad de los modelos de lenguaje actuales para aprender directamente de textos. Algunas de las áreas o tareas en las que se aplican pueden ser extracción de información, traducción automática o clasificación de documentos.

Además del mencionado GloVe [3], otros modelos populares de word embeddings son Word2Vec (Google) [4] o fastText (Facebook) [5].

Estudio de la evolución del lenguaje mediante word embeddings

Teniendo como objetivo estudiar cómo el significado de las palabras evoluciona a lo largo del tiempo, los modelos basados en word embeddings son de gran utilidad ya que nos permiten representar una palabra en función de su contexto. Utilizando estos modelos para analizar el contexto de todas las palabras de un una determinada lista de palabras en documentos publicados a lo largo del tiempo y en distintos medios podemos estudiar cómo la semántica ha variado – o no – con el pasar de los años.

La siguiente figura ilustra la evolución en la semántica – en inglés – de tres palabras a lo largo del último siglo y medio [6]. La palabra ‘gay’, por ejemplo, ha derivado de significar ‘cheerful’ (alegre), a referirse a la homosexualidad. La palabra ‘broadcast’ refleja cómo el avance de la tecnología impacta de forma directa en el lenguaje ya que, en los años 80 hacía referencia a la difusión de semillas mientras que, hoy en día, su significado se refiere a la difusión de señales de televisión o radio.

Evolución de la semántica de las palabras ‘gay’, ‘broadcast’ y ‘awful’ en los últimos 150 años

La evolución en la tecnología o los cambios en el contexto sociopolítico tienen un impacto considerable en el significado de las palabras a lo largo del tiempo. Este impacto se aprecia de manera significativa en los siguientes resultados [7] donde la trayectoria de palabras como ‘apple’ o ‘trump’ a lo largo del tiempo han variado de forma considerable en apenas 30 años.

Evolución de las palabras ‘apple’, ‘amazon’, ‘obama’ y ‘trump’ en los últimos 30 años

Apple’ ha pasado de tener, principalmente, significado de fruta a aparecer de forma más frecuente en contextos que hablan sobre marcas o productos tecnológicos. Lo mismo ha ocurrido con ‘amazon’ que, antes de la creación de la compañía a la que da marca dicha palabra, hacía referencia a la naturaleza. Con ‘obama’ y ‘trump’ la evolución gira en torno a los roles profesionales que ambas personas han ocupado a lo largo de sus vidas convergiendo ambas palabras en contextos de semántica similar, la política.

Bonus

En el este enlace se encuentra una visualización de las palabras más comunes en inglés calculados mediante Word2vec en el cual se representan las palabras rodeadas de aquellas que en cuanto a su semántica son más similares.

Referencias

[1] https://archive.org/details/5eddiccionariode00acaduoft/page/n3
[2] https://cbail.github.io/textasdata/word2vec/rmarkdown/word2vec.html
[3] https://nlp.stanford.edu/projects/glove/
[4] https://arxiv.org/abs/1301.3781
[5] https://fasttext.cc/
[6] https://arxiv.org/pdf/1605.09096.pdf
[7] https://arxiv.org/pdf/1703.00607.pdf

Comentarios

    1. Me alegro que te haya parecido interesante! Si quieres conocer más sobre NLP te recomiendo estar alerta. Iremos subiendo contenido sobre el tema!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *