Erstellen und Abfragen eines Korpus mit gensim
Es ist an der Zeit, die Methoden anzuwenden, die du im vorherigen Video gelernt hast, um dein erstes gensim Wörterbuch und Korpus zu erstellen!
Du wirst diese Datenstrukturen verwenden, um Worttrends und potenziell interessante Themen in deinem Dokumentensatz zu untersuchen. Für den Anfang haben wir ein paar zusätzliche chaotische Artikel aus Wikipedia importiert, die vorverarbeitet wurden, indem alle Wörter kleingeschrieben, tokenisiert und Stoppwörter und Satzzeichen entfernt wurden. Diese wurden dann in einer Liste von Dokumenten-Tokens mit der Bezeichnung articles gespeichert. Du musst einige leichte Vorverarbeitungen vornehmen und dann das gensim Wörterbuch und den Korpus erstellen.
Diese Übung ist Teil des Kurses
Einführung in die natürliche Sprachverarbeitung in Python
Anleitung zur Übung
Importiere
Dictionaryvongensim.corpora.dictionary.Initialisiere eine
gensimDictionarymit den Token inarticles.Bekomme die ID für
"computer"vondictionary. Dazu verwendest du die Methode.token2id, die ids aus Text zurückgibt, und dann die Kette.get(), die Token aus ids zurückgibt. Gib"computer"als Argument für.get()ein.Verwende ein Listenverständnis, in dem du über
articlesiterierst, um einegensimMmCorpusausdictionaryzu erstellen.- Verwende im Ausgabeausdruck die Methode
.doc2bow()aufdictionarymitarticleals Argument.
- Verwende im Ausgabeausdruck die Methode
Drucke die ersten 10 Wort-IDs mit ihrer Häufigkeit aus dem fünften Dokument. Das haben wir für dich getan, also klick auf "Antwort abschicken", um die Ergebnisse zu sehen!
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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])