0Pricing
Learn AI with Python · Lección

Word2Vec: Skip-gram y CBOW

Teoría de Word2Vec, implementación con gensim y aritmética vectorial (king - man + woman = queen).

Word2Vec: Skip-gram y CBOW es una lección gratuita de Learn AI with Python en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Learn AI with Python, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Learn AI with Python incluye 4 lecciones en total.

De las palabras a los vectores

El aprendizaje automático necesita números, pero las palabras son símbolos. Los embeddings de palabras asignan cada palabra a un vector denso, de modo que las palabras similares quedan cerca unas de otras en el espacio vectorial.

La hipótesis distribucional

Word2Vec se basa en la idea de que las palabras que aparecen en contextos similares tienen significados similares. Al aprender a predecir el contexto, el modelo captura el significado en los vectores.

Dos arquitecturas

Word2Vec tiene dos esquemas de entrenamiento:

  • CBOW predice la palabra objetivo a partir de su contexto circundante
  • Skip-gram predice el contexto circundante a partir de la palabra objetivo

CBOW frente a Skip-gram

CBOW es más rápido y funciona bien con palabras frecuentes. Skip-gram es más lento, pero gestiona mejor las palabras poco frecuentes y los conjuntos de datos pequeños. Skip-gram suele ser la opción predeterminada cuando se busca calidad.

Entrenamiento con gensim

La biblioteca gensim facilita el uso de Word2Vec. Se le pasan sentences tokenizadas (listas de listas de palabras) y se configura el embedding.

from gensim.models import Word2Vec

sentences = [["the", "cat", "sat"], ["the", "dog", "ran"]]
model = Word2Vec(sentences=sentences, vector_size=100, window=5, min_count=1)

Parámetros clave

Los principales parámetros son:

  • vector_size dimensión del embedding (por ejemplo, 100-300)
  • window anchura del contexto alrededor de cada palabra
  • min_count ignora las palabras cuya frecuencia sea inferior a este valor
from gensim.models import Word2Vec

model = Word2Vec(
    sentences,
    vector_size=200,
    window=5,
    min_count=5,
)

Elegir Skip-gram con sg=1

El parámetro sg selecciona la arquitectura: sg=0 utiliza CBOW (opción predeterminada) y sg=1 utiliza skip-gram.

from gensim.models import Word2Vec

model = Word2Vec(sentences, vector_size=100, window=5, min_count=1, sg=1)
# sg=1 -> skip-gram

Acceso a los vectores de palabras

Los vectores entrenados se encuentran en model.wv. Indexe esta estructura con una palabra para obtener el vector correspondiente.

vec = model.wv["cat"]
print(vec.shape)   # (vector_size,)
print("dog" in model.wv)

Encontrar palabras similares

wv.most_similar devuelve las palabras cuyos vectores están más cerca, una forma rápida de inspeccionar lo que ha aprendido el embedding.

print(model.wv.most_similar("cat", topn=5))
# returns list of (word, similarity) pairs

Aritmética con palabras

La propiedad más conocida es que las operaciones con vectores capturan relaciones. king - man + woman queda cerca de queen, lo que demuestra que el embedding codifica analogías.

result = model.wv.most_similar(
    positive=["king", "woman"],
    negative=["man"],
    topn=1,
)
print(result)   # often [("queen", 0.7...)]

Uso de embeddings en tareas posteriores

Para representar una oración, calcule el promedio de sus vectores de palabras y páselo a cualquier clasificador. Los embeddings de Word2Vec preentrenados también ofrecen un punto de partida sólido cuando los datos son escasos.

import numpy as np

def sentence_vector(words, model):
    vecs = [model.wv[w] for w in words if w in model.wv]
    return np.mean(vecs, axis=0) if vecs else np.zeros(model.vector_size)

Comprobación rápida

Compruebe sus conocimientos sobre Word2Vec.

Resumen

Resumen: Word2Vec aprende vectores densos de palabras a partir del contexto. CBOW predice una palabra a partir del contexto (es rápido); skip-gram (sg=1) predice el contexto a partir de una palabra (es mejor para palabras poco frecuentes). En gensim, establezca vector_size, window y min_count, y después utilice wv.most_similar y analogías como king - man + woman.

Preguntas frecuentes

¿La lección «Word2Vec: Skip-gram y CBOW» es gratis?

Sí — el texto completo de «Word2Vec: Skip-gram y CBOW» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Learn AI with Python, actualiza a CoddyKit PRO. El curso de Learn AI with Python incluye 4 lecciones en total.

¿Qué aprenderé en «Word2Vec: Skip-gram y CBOW»?

Teoría de Word2Vec, implementación con gensim y aritmética vectorial (king - man + woman = queen). Practicas Learn AI with Python con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Learn AI with Python?

No se requiere experiencia previa. Learn AI with Python en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «Word2Vec: Skip-gram y CBOW»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Learn AI with Python?

Sí. Cada lección de Learn AI with Python incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Word2Vec: Skip-gram y CBOW
  2. Embeddings de GloVe y FastText
  3. Clasificación de texto con BERT
  4. Similitud semántica y embeddings de oraciones
← Volver a Learn AI with Python