Crear y consultar un corpus con gensim
¡Es hora de aplicar los métodos que viste en el vídeo anterior para crear tu primer diccionario y corpus de gensim!
Usará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 adicionales y desordenados de Wikipedia, que se preprocesaron poniendo todas las palabras en minúsculas, tokenizándolas y eliminando las stop words y la puntuación. Luego se guardaron en una lista de tokens de documentos llamada articles. Tendrás que hacer un preprocesamiento ligero y después generar el diccionario y el corpus de gensim.
Este ejercicio forma parte del curso
Introducción al Natural Language Processing en Python
Instrucciones del ejercicio
- Importa
Dictionarydesdegensim.corpora.dictionary. - Inicializa un
Dictionarydegensimcon los tokens dearticles. - Obtén el id de
"computer"desdedictionary. Para ello, usa su método.token2id, que devuelve ids a partir de texto, y encadena.get(), que devuelve los tokens a partir de ids. Pasa"computer"como argumento a.get(). - Usa una list comprehension en la que iteres sobre
articlespara crear unMmCorpusdegensima partir dedictionary.- En la expresión de salida, usa el método
.doc2bow()sobredictionaryconarticlecomo argumento.
- En la expresión de salida, usa el método
- Imprime los primeros 10 ids de palabras con sus frecuencias del quinto documento. Esto ya está hecho por ti, así que pulsa "Enviar respuesta" para ver los resultados.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el 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])