10 - Práctica 1 - Word2Vec: de palabras a vectores

Lección 10 del curso Álgebra Lineal para Ciencia de Datos y Machine Learning.

Introducción

En la lección anterior hablamos de las proyecciones vectoriales y de los cambios de base y vimos sus aplicaciones en Ciencia de Datos y Machine Learning.

En esta lección combinaremos todo lo visto hasta el momento en esta primera parte del curso para abordar una disciplina muy interesante en el Machine Learning: el procesamiento del lenguaje natural.

En particular veremos cómo funciona Word2Vec, un modelo de Machine Learning que permite representar texto de manera vectorial, una tarea esencial del Procesamiento del Lenguaje Natural, y usaremos este modelo para realizar un análisis básico de texto.

Contenido exclusivo suscriptores

Suscríbete y accede al código fuente y al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

¿Qué es el Procesamiento del Lenguaje Natural?

El Procesamiento del Lenguaje Natural (o Natural Language Processing, NLP) es un área de las Ciencias Computacionales que busca que los computadores logren comprender el lenguaje humano (principalmente escrito).

La codificación del texto en el NLP

Los computadores sólo pueden procesar cantidades numéricas y por tanto el texto debe ser codificado en este formato.

La codificación vectorial del texto

El uso de vectores para codificar el texto es el enfoque usado en Machine Learning.

Existen varias alternativas para realizar esta codificación, pero las usadas convencionalmente son la codificación one-hot y el uso de embeddings (como los generados precisamente por Word2Vec). Veamos en detalle estas dos alternativas.

Codificación one-hot

En esta codificación cada palabra se codifica como un vector que tendrá el mismo tamaño del vocabulario y donde todas las posiciones se codifican con valores de 0 exceptuando una sola (de allí el término one-hot).

La desventajas de este esquema de codificación son:

Codificación con embeddings: Word2Vec

Como alternativa a la codificación one-hot se pueden entrenar modelos de Machine Learning que son capaces de “aprender” a codificar cada palabra con vectores de menor tamaño y mucho más densos.

Un ejemplo de esto es precisamente Word2Vec que toma como entrada una palabra y genera la codificación correspondiente en formato vectorial (conocido como embedding).

Las principales ventajas de Word2Vec en el procesamiento del lenguaje natural son:

Veamos entonces cómo hacer uso de Word2Vec en Python y cómo realizar un análisis de texto básico con este modelo.

Contenido exclusivo suscriptores

Recuerda suscribirte para acceder al código fuente y al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

Conclusión

Muy bien, con esta aplicación práctica ya hemos visto el papel tan importante que juegan los vectores en el Machine Learning y en la Ciencia de Datos, y particularmente en el procesamiento del lenguaje natural. Así que con esto terminamos este primer módulo del curso.

En el segundo módulo nos enfocaremos en las matrices. Y en particular, en la siguiente lección, comenzaremos hablando de las matrices y su importancia en la Ciencia de Datos y el Machine Learning.

Ver todas las lecciones de este curso