Word2Vec: cómo las máquinas aprendieron a representar palabras
En enero de 2013, Tomás Mikolov, Kai Chen, Greg Corrado y Jeffrey Dean publicaron un paper titulado Efficient Estimation of Word Representations in Vector Space.
El título era técnico. La idea, enorme. El paper abordaba un problema fundamental del procesamiento del lenguaje natural: cómo representar el significado de las palabras de una forma que una máquina pudiera utilizar. Hasta entonces, muchos sistemas trataban las palabras como unidades aisladas, simples índices dentro de un vocabulario. Para un modelo así, “rey”, “reina”, “perro” o “termómetro” eran solo identificadores distintos, sin una relación interna clara entre ellos. El propio paper señala esa limitación: muchos sistemas NLP trataban las palabras como unidades atómicas, sin noción de similitud entre palabras.
Word2Vec cambió esa perspectiva. Su propuesta no consistía simplemente en almacenar palabras, sino en aprender representaciones vectoriales: convertir cada palabra en un punto dentro de un espacio matemático. En ese espacio, las palabras con significados parecidos podían quedar cerca, y ciertas relaciones lingüísticas podían aparecer como direcciones.
La idea de representar palabras como vectores no era completamente nueva. Lo importante fue demostrar que se podían aprender vectores de buena calidad, a gran escala y con un coste computacional mucho menor que el de modelos neuronales más complejos. El paper presentaba dos arquitecturas —CBOW y Skip-gram— diseñadas precisamente para eso.
A partir de ahí, ocurrió algo muy poderoso: el significado empezó a parecerse a la geometría. Las palabras ya no eran solo símbolos. Eran coordenadas. Distancias. Relaciones. Direcciones, y esa forma de representar el lenguaje se convirtió en uno de los cimientos silenciosos del procesamiento moderno del lenguaje natural. No explica por sí sola los Transformers, ni BERT, ni GPT, pero ayuda a entender una idea previa fundamental:
antes de que una máquina pueda trabajar con lenguaje, necesita convertirlo en algo que pueda calcular.
Word2Vec fue una de las demostraciones más claras de que eso era posible.

Antes de Word2Vec: palabras como símbolos aislados
Antes de Word2Vec, muchos sistemas de procesamiento del lenguaje natural trabajaban con las palabras como si fueran piezas independientes. Cada palabra se representaba como un identificador dentro de un vocabulario. Algo práctico, fácil de manejar y suficientemente robusto para muchas tareas clásicas. Pero también muy limitado: el sistema no sabía que “rey” y “reina” estaban más cerca entre sí que “rey” y “tornillo”.
Para una máquina, si no se le da más información, todas esas palabras son simplemente códigos distintos. Ese enfoque funcionaba razonablemente bien cuando había muchísimos datos y tareas relativamente cerradas. Los modelos de N-gramas, por ejemplo, podían estimar probabilidades de secuencias de palabras observando enormes corpus de texto. Pero tenían una debilidad clara: no capturaban de forma natural la similitud entre palabras ni las relaciones internas del lenguaje.
El propio paper de Mikolov y su equipo parte de esta idea: muchos sistemas NLP trataban las palabras como unidades atómicas, sin una noción de similitud entre ellas.
Ese era el problema de fondo. El lenguaje no funciona como una lista plana de etiquetas. Las palabras tienen relaciones: semánticas, gramaticales, culturales, contextuales. “Madrid” se relaciona con “España”, “París” con “Francia”, “caminar” con “caminando”, “grande” con “mayor”.
La pregunta era cómo hacer que una máquina pudiera capturar parte de esas relaciones sin programarlas manualmente.
Word2Vec aparece justo ahí: como una forma de pasar de palabras vistas como símbolos aislados a palabras entendidas como posiciones dentro de un espacio, y ese cambio, aunque pueda parecer técnico, fue enorme, porque cuando una palabra tiene coordenadas, ya no solo se puede almacenar, También se puede comparar, acercar, alejar y relacionar.

La intuición central: una palabra se entiende por sus vecinos
La idea de fondo de Word2Vec es sencilla, pero muy potente:
una palabra puede entenderse observando las palabras que suelen aparecer a su alrededor.
No hace falta decirle explícitamente al modelo que “médico” y “hospital” están relacionados, o que “rey” y “reina” comparten una parte de significado. Si esas palabras aparecen muchas veces en contextos parecidos, el modelo puede empezar a detectar patrones.
Word2Vec explota precisamente esa intuición. En lugar de tratar cada palabra como una etiqueta aislada, intenta aprender una representación numérica a partir de sus vecinos. El significado deja de estar definido por una regla escrita a mano y empieza a emerger de las compañías que una palabra mantiene dentro del texto.
Esta idea conecta con una intuición clásica del lenguaje: las palabras no viven solas. Aparecen en frases, se combinan con otras, ocupan ciertos lugares y participan en ciertos patrones. Si dos palabras aparecen en contextos similares, probablemente comparten algo.
El paper no se limita a defender esta idea de forma teórica. Su objetivo declarado era aprender vectores de palabras de alta calidad a partir de datasets enormes, con vocabularios de millones de términos y miles de millones de palabras de entrenamiento.
Word2Vec no intenta “entender” una palabra como lo haría una persona. Lo que hace es colocarla en un espacio donde sus relaciones con otras palabras puedan medirse, y cuando esas relaciones se pueden medir, empiezan a aparecer cosas sorprendentes: cercanía semántica, patrones gramaticales y, más adelante, analogías que parecen convertir el significado en geometría.

La apuesta del paper: simplificar para poder escalar
Una de las cosas más elegantes de Word2Vec es que no intentó ganar añadiendo más complejidad.
Antes de este trabajo ya existían modelos neuronales capaces de aprender representaciones continuas de palabras. El problema era que muchos de ellos eran demasiado costosos de entrenar a gran escala. Las arquitecturas con capas ocultas no lineales podían ser más expresivas, pero también hacían que el entrenamiento fuera mucho más pesado, especialmente con vocabularios grandes y corpus de miles de millones de palabras.
El paper identifica precisamente ese cuello de botella: buena parte del coste venía de las capas ocultas y de las operaciones necesarias para predecir palabras dentro de vocabularios enormes.
La decisión de Mikolov y su equipo fue radical por su sencillez: eliminar parte de esa complejidad. En lugar de construir una red neuronal profunda para modelar el lenguaje completo, propusieron arquitecturas log-lineales más simples, centradas directamente en aprender buenos vectores de palabras. El objetivo no era representar todos los matices posibles con una arquitectura sofisticada, sino entrenar mucho más rápido sobre muchos más datos.
Word2Vec no fue una victoria de la complejidad. Fue una victoria de la eficiencia.
Esa eficiencia permitió entrenar representaciones de alta calidad con un coste computacional mucho menor. El propio paper destaca que podían aprenderse buenos vectores de palabras en menos de un día a partir de un conjunto de 1.600 millones de palabras.
A veces, en inteligencia artificial, simplificar no significa perder capacidad. Significa quitar lo que impide escalar.
CBOW: adivinar una palabra a partir de su contexto
La primera arquitectura que propone el paper es CBOW, siglas de Continuous Bag-of-Words.
La idea es sencilla: si conocemos las palabras que rodean a una palabra, podemos intentar predecir cuál es la palabra que falta en el centro.
Por ejemplo, en una frase como: “El gato duerme en el ___”, si alrededor aparecen palabras como “gato”, “duerme” y “en”, el modelo puede aprender que ciertas palabras tienen más probabilidad de aparecer en ese hueco que otras. No necesita una regla escrita a mano. Aprende observando millones de ejemplos.
CBOW toma las palabras del contexto, combina sus vectores y utiliza esa representación para predecir la palabra central. En el paper, esta arquitectura elimina la capa oculta no lineal de modelos neuronales anteriores y comparte la capa de proyección entre las palabras del contexto, lo que reduce mucho el coste de entrenamiento.
Su nombre incluye “bag-of-words” porque no se preocupa demasiado por el orden exacto de las palabras del contexto. Lo importante es qué palabras aparecen alrededor, no tanto la posición precisa de cada una.
Esa simplificación puede parecer una pérdida, pero era precisamente parte de la apuesta. CBOW sacrifica cierta riqueza estructural para ganar velocidad y escala. Y al hacerlo, consigue aprender representaciones útiles de palabras de forma mucho más eficiente.
En términos simples, CBOW aprende jugando a completar huecos, pero al repetir ese juego millones de veces, empieza a descubrir qué palabras viven en contextos parecidos. Y de esa repetición nace algo mucho más interesante que una predicción: nace una representación matemática del significado.

Skip-gram: usar una palabra para predecir su entorno
La segunda arquitectura propuesta por Word2Vec es Skip-gram.
Si CBOW intenta adivinar una palabra a partir de las palabras que la rodean, Skip-gram hace justo lo contrario: toma una palabra central y trata de predecir qué palabras suelen aparecer a su alrededor.
Por ejemplo, si la palabra central es: “hospital”, el modelo puede aprender que en su contexto suelen aparecer palabras como “médico”, “paciente”, “enfermera”, “urgencias” o “tratamiento”. No porque alguien se lo haya indicado manualmente, sino porque esas asociaciones aparecen una y otra vez en los datos.
El paper describe Skip-gram como una arquitectura que usa la palabra actual como entrada y predice palabras dentro de una ventana antes y después de ella. Cuanto mayor es esa ventana, mejor puede ser la calidad de los vectores, aunque también aumenta el coste computacional. Esta arquitectura resultó especialmente potente para capturar relaciones semánticas.
En los experimentos del paper, Skip-gram consiguió resultados muy superiores en la parte semántica del test de analogías frente a CBOW y otros modelos anteriores. No era simplemente más rápido o más simple: también aprendía relaciones de significado con una calidad sorprendente.
una palabra revela quién es por las compañías que suele tener.
Skip-gram convierte esa idea en entrenamiento. Observa una palabra, mira su entorno y ajusta sus vectores para que las palabras que aparecen juntas queden más relacionadas dentro del espacio. Así, poco a poco, el modelo no solo aprende palabras, aprende vecindarios de significado.

La aritmética del significado
La parte más famosa de Word2Vec no fue solo que las palabras pudieran convertirse en vectores, sino que fue descubrir que esos vectores parecían conservar relaciones.
El ejemplo más conocido es casi un icono de la historia del procesamiento del lenguaje natural:
vector("King") - vector("Man") + vector("Woman") ≈ vector("Queen")La operación no funciona porque el modelo “sepa” qué es un rey o una reina en sentido humano. Funciona porque, al entrenarse sobre enormes cantidades de texto, Word2Vec aprende que ciertas relaciones aparecen como direcciones dentro del espacio vectorial. La relación entre masculino y femenino, entre capital y país, entre singular y plural o entre presente y pasado puede quedar codificada como desplazamientos geométricos.
El propio paper recoge esta idea y explica que las operaciones algebraicas sobre vectores podían resolver analogías lingüísticas. Por ejemplo, biggest - big + small apunta hacia smallest. También muestra relaciones como Paris - France + Italy = Rome o Microsoft - Windows + Google = Android.
Esto fue lo realmente llamativo.
No se trataba solo de que “perro” estuviera cerca de “gato” o “Madrid” cerca de “España”. Eso ya habría sido útil. Lo sorprendente era que las relaciones entre palabras parecían tener estructura.
Dicho de otra forma:
el significado no solo tenía distancia; también tenía dirección.
Y esa fue una de las grandes aportaciones culturales de Word2Vec. Hizo visible una idea poderosa: parte del lenguaje podía organizarse como geometría. No era comprensión humana. No era razonamiento profundo. Pero era una demostración impresionante de que, con suficientes datos y una arquitectura adecuada, las regularidades del lenguaje podían emerger en forma de vectores.

Resultados: mejores vectores, menos coste
Word2Vec no fue importante solo porque la idea fuera elegante. Fue importante porque funcionaba muy bien en la práctica. El paper comparó sus nuevas arquitecturas, CBOW y Skip-gram, frente a modelos neuronales anteriores. Los resultados fueron claros: con arquitecturas más simples, era posible obtener vectores de palabras de gran calidad y hacerlo con un coste computacional mucho menor.
En las pruebas de analogías semánticas y sintácticas, Skip-gram destacó especialmente en relaciones semánticas. Frente a modelos anteriores como RNNLM o NNLM, consiguió capturar mucho mejor relaciones como país-capital, empresa-producto, género o asociaciones entre conceptos.
La otra gran victoria fue la velocidad. El paper afirma que podían aprenderse vectores de alta calidad en menos de un día a partir de un conjunto de 1.600 millones de palabras. Además, en los experimentos con Google News, trabajaron con un corpus de unos 6.000 millones de tokens y un vocabulario restringido al millón de palabras más frecuentes.
Hasta entonces, entrenar buenos modelos neuronales de lenguaje podía ser muy costoso. Word2Vec demostró que, si se simplificaba bien la arquitectura, se podía escalar mucho más rápido sin perder calidad.
Esa combinación —simplicidad, velocidad y calidad— explica por qué Word2Vec tuvo tanto impacto. No era solo una técnica interesante para investigadores. Era una herramienta práctica para convertir enormes cantidades de texto en mapas útiles de significado.
Impacto posterior: de Word2Vec a los modelos modernos
Word2Vec se convirtió rápidamente en una pieza fundamental del procesamiento del lenguaje natural. Su impacto no vino solo por sus resultados, sino porque ofrecía algo muy práctico: una forma eficiente de transformar palabras en vectores reutilizables. A partir de ahí, esos vectores podían alimentar otros sistemas: clasificadores, buscadores, traductores, modelos de recomendación, análisis de sentimiento o sistemas de preguntas y respuestas.
El propio paper ya apuntaba en esa dirección. Sus autores mencionaban aplicaciones en traducción automática, recuperación de información, question answering y extensión automática de bases de conocimiento. También destacaban que los vectores de palabras podían convertirse en un bloque importante para futuras aplicaciones de PLN.
La influencia fue inmediata. Word2Vec ayudó a popularizar una idea que hoy parece evidente: antes de que un modelo pueda trabajar con lenguaje, necesita convertirlo en una representación numérica útil. Las palabras dejaron de ser simples identificadores y pasaron a ocupar posiciones dentro de un espacio donde podían compararse, combinarse y relacionarse.
Después vendrían otros modelos y mejoras: GloVe, fastText, embeddings contextuales, ELMo, BERT, GPT y finalmente los grandes modelos generativos actuales. Cada uno resolvió problemas nuevos, pero todos heredaron una premisa de fondo:
el lenguaje puede transformarse en geometría computable.
Eso no significa que los modelos modernos funcionen igual que Word2Vec. De hecho, una de las grandes diferencias es que Word2Vec genera vectores estáticos: cada palabra tiene una representación fija. Los Transformers, en cambio, generan representaciones contextuales, donde el significado de una palabra cambia según la frase en la que aparece.
Pero precisamente por eso Word2Vec ocupa un lugar tan importante, ya que no fue el destino final, fue una de las puertas de entrada.
Mirada crítica: lo que Word2Vec no podía resolver
Word2Vec fue una idea brillante, pero no era una solución completa para el lenguaje. Su principal limitación es que asigna a cada palabra un único vector fijo. Es decir, una palabra tiene la misma representación independientemente del contexto en el que aparezca.
Eso funciona bien para muchas relaciones generales, pero falla cuando una palabra cambia de significado según la frase. Por ejemplo, “banco” no significa lo mismo en “me senté en el banco del parque” que en “pedí un préstamo al banco”. Para Word2Vec, ambas apariciones comparten una misma representación base. Ahí estaba uno de sus límites más importantes: capturaba relaciones estadísticas entre palabras, pero no construía significado contextual dinámico.
También tenía dificultades con la morfología. El propio paper señalaba que alcanzar una precisión perfecta en el test de analogías era poco realista, entre otras cosas porque los modelos no incorporaban información explícita sobre la estructura interna de las palabras. Los autores apuntaban que incluir información morfológica podía mejorar especialmente las preguntas sintácticas.
Y había otro punto importante: las famosas analogías eran muy llamativas, pero no debían confundirse con comprensión profunda. Que el modelo pueda aproximar King - Man + Woman ≈ Queen no significa que entienda la monarquía, el género o las relaciones sociales como lo haría una persona. Significa que ha aprendido regularidades estadísticas muy potentes dentro de un espacio vectorial.
Word2Vec demostró que una parte del significado podía representarse como geometría. Pero también dejó claro que el lenguaje necesita algo más que coordenadas fijas: necesita contexto, ambigüedad, matices y adaptación dinámica.
Por eso sus limitaciones no reducen su importancia, al contrario: explican por qué el campo siguió avanzando hacia embeddings contextuales, modelos basados en Transformers y arquitecturas capaces de representar una misma palabra de forma distinta según el texto que la rodea.
Conclusión: el significado como espacio
Word2Vec no fue la última palabra en representación del lenguaje, pero sí fue una demostración decisiva. El paper mostró que era posible aprender vectores de palabras de alta calidad con arquitecturas relativamente simples, entrenadas sobre grandes cantidades de texto y con un coste computacional mucho menor que modelos neuronales más pesados. Sus autores defendían precisamente esa idea: modelos más simples podían escalar mejor y producir representaciones útiles para muchas tareas de procesamiento del lenguaje natural.
Su impacto no estuvo solo en CBOW, Skip-gram o en una métrica concreta. Estuvo en hacer visible una intuición poderosa: las palabras podían organizarse en un espacio donde las distancias y las direcciones tenían significado. Palabras parecidas quedaban cerca. Relaciones parecidas seguían trayectorias similares. Algunas analogías podían resolverse con operaciones vectoriales sorprendentemente simples.
Eso cambió la forma de mirar el lenguaje. Antes, una palabra podía ser solo un símbolo. Después de Word2Vec, podía ser una coordenada dentro de un mapa semántico.
Por supuesto, aquel mapa era imperfecto. No resolvía la ambigüedad contextual, no entendía las palabras como una persona y no podía adaptar dinámicamente el significado a cada frase. Pero abrió una puerta esencial: demostrar que parte del significado podía emerger de los datos y representarse como geometría computable.
Word2Vec no enseñó a las máquinas a comprender el lenguaje como lo hacemos nosotros. Pero demostró que el lenguaje podía convertirse en números sin perder toda su estructura, y esa idea —convertir palabras en vectores, relaciones en direcciones y significado en espacio— sigue latiendo bajo buena parte de la inteligencia artificial moderna.
🌐 Enlaces de interés
📘 Paper Word2Vec: Efficient Estimation of Word Representations in Vector Space — Mikolov, Chen, Corrado y Dean:
Paper original de 2013 donde se presentan las arquitecturas CBOW y Skip-gram para aprender vectores de palabras de forma eficiente (https://arxiv.org/abs/1301.3781)
Distributed Representations of Words and Phrases and their Compositionality — Mikolov et al.
Trabajo complementario publicado ese mismo año, donde se desarrollan mejoras importantes como el negative sampling, el tratamiento de frases y nuevas optimizaciones para Skip-gram (https://arxiv.org/abs/1310.4546)
Google Code Archive — word2vec
Archivo histórico de la herramienta original de Word2Vec, con implementación eficiente de CBOW y Skip-gram para calcular representaciones vectoriales de palabras. (https://code.google.com/archive/p/word2vec/)
TensorFlow — Word Embeddings
Guía práctica para entender y entrenar embeddings de palabras con TensorFlow, útil para quien quiera pasar de la teoría al código. (https://www.tensorflow.org/text/guide/word_embeddings?hl=es-419)
TensorFlow Embedding Projector
Herramienta visual para explorar embeddings en espacios de menor dimensión y entender mejor cómo se agrupan las palabras en un espacio vectorial. (https://projector.tensorflow.org/)
💙 En Lozkorp
PAPER 2013: Word2Vec: cómo las máquinas aprendieron a representar palabras
PAPER 2017: Attention Is All You Need: el paper que cambió la inteligencia artificial moderna
Otros:





















Comentarios