N-gram-modeller för filmtaglines
I den här övningen har vi ett corpus med mer än 9 000 filmtaglines. Uppgiften är att skapa n-gram-modeller upp till n=1, n=2 och n=3 för dessa data och undersöka antalet särdrag för varje modell.
Därefter jämför vi antalet särdrag som genereras av respektive modell.
Den här övningen är en del av kursen
Funktionsutveckling för NLP i Python
Övningsinstruktioner
- Skapa en n-gram-modell med n-gram upp till n=1. Kalla den
ng1. - Skapa en n-gram-modell med n-gram upp till n=2. Kalla den
ng2. - Skapa en n-gram-modell med n-gram upp till n=3. Kalla den
ng3. - Skriv ut antalet särdrag för varje modell.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Generate n-grams upto n=1
vectorizer_ng1 = CountVectorizer(ngram_range=(1,1))
ng1 = vectorizer_ng1.____(corpus)
# Generate n-grams upto n=2
vectorizer_ng2 = CountVectorizer(ngram_range=(1,2))
ng2 = vectorizer_ng2.____(corpus)
# Generate n-grams upto n=3
vectorizer_ng3 = CountVectorizer(ngram_range=(____, ____))
ng3 = vectorizer_ng3.fit_transform(corpus)
# Print the number of features for each model
print("ng1, ng2 and ng3 have %i, %i and %i features respectively" % (ng1.____[1], ng2.____[1], ng3.____[1]))