Практика предобработки текста
Теперь ваша очередь применить изученные техники для очистки текста и улучшения результатов NLP. Вам потребуется удалить стоп-слова и небуквенные символы, выполнить лемматизацию, а затем построить новый мешок слов на основе очищенного текста.
Вы начинаете с тех же токенов, что и в предыдущем упражнении: lower_tokens. Класс Counter уже импортирован.
Это упражнение является частью курса
Введение в обработку естественного языка на Python
Инструкции к упражнению
- Импортируйте класс
WordNetLemmatizerизnltk.stem. - Создайте список
alpha_only, содержащий только буквенные символы. Для проверки используйте метод.isalpha(). - Создайте ещё один список
no_stops, включающий слова изalpha_only, которые не входят вenglish_stops. - Создайте объект
WordNetLemmatizerс именемwordnet_lemmatizerи примените его метод.lemmatize()к токенам изno_stops, чтобы получить новый списокlemmatized. - Создайте новый
Counterс именемbowна основе лемматизированных слов. - Наконец, выведите 10 наиболее часто встречающихся токенов.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Import WordNetLemmatizer
____
# Retain alphabetic words: alpha_only
alpha_only = [t for t in ____ if ____]
# Remove all stop words: no_stops
no_stops = [t for t in ____ if t not in ____]
# Instantiate the WordNetLemmatizer
wordnet_lemmatizer = ____
# Lemmatize all tokens into a new list: lemmatized
lemmatized = [____ for t in ____]
# Create the bag-of-words: bow
bow = ____(____)
# Print the 10 most common tokens
print(____.____(__))