Creación y consulta de un corpus con Gensim
¡Es hora de aplicar los métodos que aprendiste en el vídeo anterior para crear tu primer diccionario y corpus gensim
!
Utilizarás estas estructuras de datos para investigar tendencias de palabras y posibles temas interesantes en tu conjunto de documentos. Para empezar, hemos importado algunos artículos desordenados adicionales de Wikipedia, que se preprocesaron escribiendo todas las palabras en minúsculas, tokenizándolas y eliminando las palabras vacías y los signos de puntuación. A continuación, se almacenaron en una lista de fichas de documentos denominada articles
. Tendrás que hacer un ligero preprocesamiento y luego generar el diccionario y el corpus gensim
.
Este ejercicio forma parte del curso
Introducción al procesamiento de lenguaje natural en Python
Instrucciones de ejercicio
Importa
Dictionary
desdegensim.corpora.dictionary
.Inicializa un
gensim
Dictionary
con las fichas enarticles
.Obtén el identificador de
"computer"
endictionary
. Para ello, utiliza su método.token2id
que devuelve ids a partir de texto, y luego encadena.get()
que devuelve tokens a partir de ids. Pasa"computer"
como argumento a.get()
.Utiliza una comprensión de lista en la que iteras sobre
articles
para crear ungensim
MmCorpus
a partir dedictionary
.- En la expresión de salida, utiliza el método
.doc2bow()
endictionary
conarticle
como argumento.
- En la expresión de salida, utiliza el método
Imprime los 10 primeros identificadores de palabra con sus recuentos de frecuencia del quinto documento. Ya lo hemos hecho por ti, así que pulsa "Enviar respuesta" para ver los resultados.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# Import Dictionary
____
# Create a Dictionary from the articles: dictionary
dictionary = ____(____)
# Select the id for "computer": computer_id
computer_id = ____.____.get("____")
# Use computer_id with the dictionary to print the word
print(dictionary.get(computer_id))
# Create a MmCorpus: corpus
corpus = [____.____(____) for article in articles]
# Print the first 10 word ids with their frequency counts from the fifth document
print(corpus[4][:10])