Aan de slagGa gratis aan de slag

Gensim bag-of-words

Nu ga je je nieuwe gensim-corpus en -woordenboek gebruiken om de meest voorkomende termen per document en over alle documenten te bekijken. Je kunt je woordenboek gebruiken om de termen op te zoeken. Raad eens wat de topics zijn en verken gerust meer documenten in de IPython Shell!

Je hebt toegang tot de objecten dictionary en corpus die je in de vorige oefening hebt gemaakt, evenals tot Python’s defaultdict en itertools om te helpen bij het maken van tussentijdse datastructuren voor analyse.

  • Met defaultdict kunnen we een woordenboek initialiseren dat een standaardwaarde toekent aan niet-bestaande sleutels. Door het argument int mee te geven, zorgen we ervoor dat niet-bestaande sleutels automatisch de standaardwaarde 0 krijgen. Dit is ideaal voor het opslaan van woordtellingen in deze oefening.

  • itertools.chain.from_iterable() laat ons door een set van reeksen itereren alsof het één doorlopende reeks is. Met deze functie kunnen we eenvoudig door ons corpus-object (dat een lijst van lijsten is) itereren.

Het vijfde document uit corpus is opgeslagen in de variabele doc, die in aflopende volgorde is gesorteerd.

Deze oefening maakt deel uit van de cursus

Introductie tot Natural Language Processing in Python

Cursus bekijken

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Save the fifth document: doc
doc = corpus[4]

# Sort the doc for frequency: bow_doc
bow_doc = sorted(doc, key=lambda w: w[1], reverse=True)

# Print the top 5 words of the document alongside the count
for word_id, word_count in bow_doc[:5]:
    print(dictionary.____(____), ____)
    
# Create the defaultdict: total_word_count
total_word_count = ____
for word_id, word_count in itertools.chain.from_iterable(corpus):
    ____[____] += ____
Code bewerken en uitvoeren