N-gram модели для слоганов фильмов
В этом упражнении вам предоставлен corpus, содержащий более 9000 слоганов фильмов. Ваша задача — построить n-gram модели с n, равным 1, 2 и 3, и определить количество признаков для каждой из них.
Затем вы сравните количество признаков, которые генерирует каждая модель.
Это упражнение является частью курса
Конструирование признаков для NLP на Python
Инструкции к упражнению
- Постройте n-gram модель с n-граммами до n=1. Назовите её
ng1. - Постройте n-gram модель с n-граммами до n=2. Назовите её
ng2. - Постройте n-gram модель с n-граммами до n=3. Назовите её
ng3. - Выведите количество признаков для каждой модели.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# 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]))