Ćwiczenie z preprocessingu tekstu
Czas zastosować poznane techniki w praktyce – oczyścisz tekst, by uzyskać lepsze wyniki analizy NLP. Usuń stop słowa i znaki niebędące literami, przeprowadź lematyzację, a następnie utwórz nowy model bag-of-words na oczyszczonym tekście.
Punktm wyjścia są tokeny lower_tokens utworzone w poprzednim ćwiczeniu. Klasa Counter jest już zaimportowana.
To ćwiczenie jest częścią kursu
Wprowadzenie do przetwarzania języka naturalnego w Pythonie
Instrukcje do ćwiczenia
- Zaimportuj klasę
WordNetLemmatizerznltk.stem. - Utwórz listę
alpha_onlyzawierającą wyłącznie znaki alfabetyczne. Użyj metody.isalpha(), aby to sprawdzić. - Utwórz kolejną listę
no_stopszłożoną ze słów zalpha_only, które nie występują wenglish_stops. - Utwórz obiekt
WordNetLemmatizero nazwiewordnet_lemmatizeri użyj jego metody.lemmatize()na tokenach zno_stops, aby uzyskać nową listęlemmatized. - Utwórz nowy obiekt
Countero nazwiebowna podstawie zlematyzowanych słów. - Na końcu wyświetl 10 najczęściej występujących tokenów.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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(____.____(__))