¿Cómo funcionan los embeddings?

1

Cómo Entender y Aplicar Embeddings en IA: De Teoría a Práctica

2

Introducción a One-Hot Encoding y TF-IDF en IA

3

Representación Vectorial de Palabras

4

Evaluación de Similitudes Semánticas: Métodos y Aplicaciones

Quiz: ¿Cómo funcionan los embeddings?

Creación de embeddings

5

Creación y entrenamiento de modelos Word2Vec con Gensim

6

Procesamiento y Limpieza de Datos para IA con Word2Vec y Gensim

7

Entrenamiento de Modelos Word2Vec con GenSim y Análisis de Similitud

8

Word2Vec: Entrenando IA para Comprender el Lenguaje

Quiz: Creación de embeddings

Usando embeddings preentrenados

9

Uso práctico de Sentence Transformers en procesamiento de textos

10

Análisis Semántico: Buscar Textos con Sentence Transformers

11

Manejo de Embeddings con OpenAI: API, Instalación y Datasets

12

Manejo y Visualización de Embeddings con OpenAI: Guía Práctica

13

Creación de un Motor de Búsqueda Semántico con Python

14

Transformación de Texto a Embeddings con Sentence Transformer

Quiz: Usando embeddings preentrenados

Bases de datos vectoriales

15

Qué es y cómo usar una base de datos vectorial

16

Gestión de Bases de Datos Vectoriales con ChromaDB: Instalación y Uso

17

Generación y manejo de embeddings en Chroma con Sentence Transformer

18

Consultas avanzadas y filtrado en bases de datos con Chroma

19

Cargar colección de Chroma previamente creada

20

Configuración y Uso de Pinecone: Desde la Instalación hasta la Inserción de Datos

21

Optimización de Ingesta de Datos en Pinecone: Procesos y Estrategias

22

Consultas Avanzadas en Pinecone: De Texto a Vector y Filtros

23

Carga de índices en Pinecone: Gestión eficiente en la nube

24

Carga de embeddings en Pinecone para búsqueda semántica

25

Creación de buscador semántico con Gradio y Sentence Transformer

Quiz: Bases de datos vectoriales

Conclusiones

26

Potenciando los LLMs: Integración de Embeddings y Datos Vectoriales

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Word2Vec: Entrenando IA para Comprender el Lenguaje

8/26
Recursos

Aportes 5

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Esta es la clase que más me costó entender por completo, así que busqué más recursos. Comparto mi resumen de pasos:

.

  1. Construcción del vocabulario:
    1. Se construye un vocabulario que incluya todas las palabras únicas presentes en el corpus de texto, donde cada palabra se asociará a un índice único.
  2. Definición del contexto
    1. Se define la ventana de contexto, que determina el número de palabras a la izquierda y derecha de una palabra objetivo serán considerados como parte de su contexto.
  3. Creación de pares de palabras
    1. Se recorre todo el vocabulario para identificando una palabra y las palabras de su contexto, según la ventaja de contexto definido.
    2. Se crea pares de palabra objetivo y palabra de contexto, pares (i = palabra objetivo, j = palabra de contexto).
  4. Co-ocurrencia y matriz de co-ocurrencia
    1. Se crea una matriz donde las filas y las columnas representan las palabras del vocabulario construido. Si nuestro vocabulario es de 10000, la matriz será de 10000 x 10000.
    2. Cada celda de la matriz almacena la frecuencia con la que 2 palabras aparecen juntas en un mismo contexto (por ejemplo, en la misma oración o párrafo) a lo largo de todo el corpus. Para cada par de palabras (i, j), la celda (i, j) de la matriz contiene un número que indica cuántas veces aparecen las palabras i y j juntas.
    3. Estas matrices suelen ser grandes y dispersas (muchos ceros)
  5. Generación del vector de palabra (enbedding)
    1. Se crea un vector One-Hot para cada una de las palabras del vocabulario. Cada uno de estos vectores solo tiene un valor 1 en la posición de la palabra que representa, el resto de elementos es 0. Si nuestro vocabulario es de 1000 palabras el vector tendrá 999 ceros y 1 en la posición de la palabra que representa.
    2. Se crea la matriz de vectores de palabra (o matriz de proyección) en base al vocabulario y número de dimensiones que se ha definido. Esta matriz tiene una fila para cada palabra en el vocabulario y una columna para cada dimensión en el espacio vectorial deseado. En el entrenamiento se inicializa esta matriz con valores aleatorios pequeños, pero que luego serán ajustados continuamente por medio de técnicas de optimización.
    3. Para obtener la representación vectorial de una palabra objetivo en el espacio vectorial, se multiplica su vector one-hot por la matriz de proyección. Con lo cual ha generado el vector de palabra
  6. Función de pérdida
    1. Esta función cuantifica cuán diferentes son las predicciones del modelo de las palabras reales del contexto. Para eso en la variantes skip-gram de word2vec se utiliza el método “Muestreo negativo” con una función llamada “Binary Cross-Emtropy Loss”, el cual compara las probabilidades predichas por el modelo con las probabilidades reales.
    2. Se selecciona ejemplos positivos y negativo. Para cada palabra objetivo en el corpus seleccionamos algunas palabras de su contexto como ejemplos positivos y algunas palabras que no están es su contexto como ejemplos negativo.
    3. Se predicen las probabilidades. El modelo, por medio del cálculo de las distancias los vectores de palabras genera las probabilidades de que una palabra este en su contexto.
      1. Para los ejemplos positivos, el modelo calcula la probabilidad de que cada palabra real del contexto esté cerca de la palabra objetivo.
      2. Para los ejemplos negativos, el modelo también calcula la probabilidad de que las palabras que no están en el contexto estén cerca de la palabra objetivo.
      3. Finalmente, las probabilidades de ejemplos positivos y negativos se combinan para obtener la predicción total para la palabra objetivo. Esto se hace restando la probabilidad de los ejemplos negativos de la probabilidad de los ejemplos positivos. La idea es que la probabilidad total sea alta para las palabras del contexto real y baja para las palabras que no están en el contexto.
    4. Se calcula la pérdida. Para ello se compara las probabilidades predichas con las probabilidades reales
  7. Optimización
    1. En este paso se quiere ajustar la matriz de vectores de palabras (o matriz de proyección) para minimizar la función de pérdida.
    2. Se calcula el gradiente de la función de pérdida con respecto a los vectores de palabras. Estos gradientes indican el ajuste que deben hacerse a los vectores de palabra para reducir la pérdida.
    3. Se actualiza los vectores de palabras. Para ello se multiplica los vectores de palabra por una tasa de aprendizaje Nuevo Vector = Vector Actual - Tasa de Aprendizaje * Gradiente
  8. Iteración y convergencia
    1. Se repite el proceso de cálculo de gradiente y actualización de vectores en múltiples épocas de entrenamiento
    2. El entrenamiento continua hasta que la función de pérdida converge, es decir, deja de disminuir significativamente. Lo que indica que los vectores de palabra han aprendido efectivamente las relaciones semánticas del corpus

adjunto link que ayuda a entender mejor que pasa adentro de word2vec(?
https://www.tensorflow.org/text/tutorials/word2vec

Dejo un articulo y en español, donde explica como funciona word2vec.
https://old.tacosdedatos.com/word-to-vec-ilustrado

Dejo este artículo que me pareció útil para seguir aprendiendo más sobre el funcionamiento de word2vec, espero les sirva: https://jalammar.github.io/illustrated-word2vec/

Un muy buen articulo para entender word2vec: <https://gist.github.com/aparrish/2f562e3737544cf29aaf1af30362f469>