Estás leyendo la publicación: ¿Cómo se puede utilizar el modelo Top2Vec para el modelado de temas?
En el procesamiento del lenguaje natural, vemos varios tipos de modelado que permiten que las aplicaciones interactúen con el lenguaje humano. En el escenario reciente, hemos visto la importancia de este modelado en varios campos. El modelado de temas también es una parte de la PNL que se utiliza para abstraer temas de un conjunto de documentos diferentes y se han realizado varias investigaciones y trabajos en el modelado de temas. Top2Vec es también un enfoque o algoritmo para realizar el modelado de temas. En este artículo, vamos a discutir el modelado de temas y el algoritmo Top2Vec para el modelado de temas. Los puntos principales que se discutirán en el artículo se enumeran a continuación.
Tabla de contenidos
- Acerca del modelado de temas
- Algoritmos para el modelado de temas
- ¿Qué es Top2Vec?
- Procedimiento de trabajo del modelo Top2Vec
- Paso 1: Generación de palabras y vectores incrustados
- Paso 2: Realice la reducción en las dimensiones de los vectores de incrustación
- Paso 3: Realizar agrupamiento en vectores reducidos
- Paso 4: Cálculo de los centroides de los conglomerados
- Paso 5: Asignación de temas a las palabras
Primero comprendamos qué es el modelado de temas.
Acerca del modelado de temas
El modelado de temas es un tipo de proceso en el procesamiento del lenguaje natural que se ocupa del descubrimiento de la presentación de la estructura semántica en los documentos de texto. También podemos comparar este modelado con el modelado estadístico que entra en escena cuando existe la necesidad de descubrir los temas abstractos que ocurren en los datos del texto. Por ejemplo, en un artículo, hay palabras como ciencia de datos y análisis de datos, entonces el artículo será sobre ciencia de datos.
Existe la posibilidad de que el artículo se centre en un 60 % en la ciencia de datos y el 40 % del contenido se trate de servicios en la nube. Entonces podemos pensar que posee 1,5 veces más palabras de ciencia de datos que las palabras de servicios en la nube.
Algorítmicamente, podemos pensar en este proceso como un proceso de agrupamiento en el que el modelado crea el agrupamiento de palabras similares. Esto es similar a los otros modelos de PNL porque también usa un marco matemático para capturar la intuición detrás de los documentos, con la ayuda del marco matemático los algoritmos examinan los documentos y descubren los temas porque en el marco matemático hay disponibilidad de estadísticas. de las palabras.
También podemos pensar en el modelado de temas como un tipo de modelado probabilístico porque la probabilidad se usa para descubrir las estructuras semánticas latentes de un documento. En la mayoría de los proyectos, este modelado puede considerarse una herramienta de minería de texto.
Fuente de imagen
La imagen de arriba es una representación del proceso de descubrimiento utilizando una matriz de palabras de documentos, en la imagen podemos ver que las columnas representan el documento y las filas representan la palabra.
En la matriz, la celda se usa para almacenar la frecuencia de la palabra en el documento y la intensidad del color representa la frecuencia. Usando el modelado de temas, podemos hacer grupos de documentos que usan palabras similares y palabras que han ocurrido en un conjunto similar de documentos. El resultado final representa los temas.
¿Está buscando un repositorio completo de bibliotecas de Python utilizadas en ciencia de datos, echa un vistazo aquí.
Algoritmos para el modelado de temas
Este tipo de modelado ha sido parte de muchos tipos de investigación desde 1998, cuando Papadimitriou, Raghavan, Tamaki y Vempala lo explicaron por primera vez y lo llamaron análisis semántico probabilístico latente (PLSA). LDA (asignación latente de Dirichlet) es el algoritmo más utilizado para el modelado de temas.
En una variedad de técnicas podemos ver la inclusión del método SVD (descomposición en valores singulares) y en algunas de las otras técnicas se puede ver el uso del método de factorización de matrices no negativas. En los últimos años, cuando se introducen los gráficos, también se puede ver la implementación del modelo de bloques estocásticos.
En este artículo, vamos a discutir una de esas técnicas denominada Top2Vec que ha representado un nivel de resultado potencial en el modelado de temas que utiliza vectores y agrupamiento para completar su trabajo. Presentemos el modelo Top2Vec.
¿Qué es Top2Vec?
Top2Vec se puede considerar como un algoritmo para realizar el modelado de temas de una manera muy sencilla. También podemos decir que es un transformador para realizar modelado de temas. No solo se limita al modelado de temas, sino que también se puede utilizar para búsquedas de relaciones semánticas en documentos. Usando este algoritmo, podemos reconocer automáticamente el tema en un documento de texto y este algoritmo genera vectores de tema, documento y palabra incrustados conjuntamente.
A continuación podemos ver el uso importante de Top2Vec:
- Obtención del número de documentos detectados
- Obtener contenido y tamaño de los temas.
- Encontrar la jerarquía en los temas
- Uso de palabras clave para buscar temas
- Uso de temas para buscar documentos
- Uso de palabras clave para buscar documentos
- Encontrar palabras similares
- Encontrar los mismos documentos.
Las características atómicas son una cosa muy importante sobre este algoritmo y también tiene funciones que pueden funcionar con texto largo y corto. Podemos instalar este algoritmo usando las siguientes líneas de códigos.
!pip instalar top2vec
Su implementación se puede encontrar aquí. En este artículo, veremos cómo funciona.
Modelado de temas con Top2Vec
En lo anterior, hemos hablado de lo que se puede hacer usando Top2Vec y para realizar estas tareas se utiliza el siguiente paso:
- Generación de vectores y palabras de incrustación.
- Realizar la reducción en las dimensiones de los vectores de incrustación.
- Realizar agrupamiento en vectores reducidos
- Cálculo de centroides de los clusters
- Asignación de temas a las palabras.
Vamos a explicar todos los pasos uno por uno.
Paso 1: Generación de palabras y vectores incrustados
Este paso incluye la generación de vectores de incrustación que nos permiten representar el documento de texto en el marco matemático. Este marco puede ser multidimensional donde la dimensión depende de la palabra o documento de texto. Esto se puede realizar usando Doc2Vec o Universal Sentence Encoder o BERT Sentence Transformer.
La imagen de arriba es una representación del vector de palabra general usando el sistema de incrustación de una palabra caliente.
Paso 2: Realice la reducción en las dimensiones de los vectores de incrustación
En este paso, los vectores de documento de alta dimensión generados a partir de los vectores se reducen en su tamaño. Este es un proceso básico de reducción de dimensiones y Top2Vec utiliza la técnica de reducción de dimensiones UMAP; este permite que los próximos pasos encuentren un área densa para la agrupación.
Fuente de imagen
La imagen de arriba representa los vectores de palabras debajo de los documentos y podemos ver que son densos y se pueden separar en grupos.
Paso 3: Realizar agrupamiento en vectores reducidos
Este paso divide los vectores reducidos dimensionalmente en diferentes grupos utilizando la técnica de agrupamiento HDBSCAN. Este paso nos puede dar una aproximación de los números del tema en los documentos.
Fuente de imagen
La imagen de arriba es la representación del paso 3 donde los colores se usan para separar los vectores de diferentes grupos.
Paso 4: Cálculo de los centroides de los conglomerados
Este paso se puede considerar como nuestro comienzo del modelado de temas donde calculamos el centroide de cada área densa de los grupos del paso 3 y los vectores finales que obtenemos de este vector se pueden llamar nuestro vector de temas.
Fuente de imagen
En la imagen de arriba podemos ver que hay tres tipos de puntos y el rojo es escaso y está lejos de los otros puntos, por lo que pueden considerarse documentos atípicos utilizando los puntos azules que son densos. El algoritmo calcula el vector de tema.
Paso 5: Asignación de temas a las palabras
Este paso es el paso final de Top2Vec, donde encuentra los n vectores de palabras más cercanos y los alimenta al vector de tema para que puedan convertirse en palabras de tema. La siguiente imagen es la representación del paso final.
Fuente de imagen
Aquí podemos ver como el Top2Vec finalmente nos da el resultado del modelado de tópicos. Podemos encontrar su implementación en GitHub aquí.
Ultimas palabras
En este artículo, hemos discutido el modelado de temas que forma parte del procesamiento del lenguaje natural y el algoritmo Top2Vec. Podemos usar el algoritmo Top2Vec para realizar el modelado de temas. La implementación que he mencionado anteriormente se puede utilizar para realizar Top2Vec.