Zacznij terazZacznij za darmo

Ograniczanie liczby cech

Jak już wiesz, użycie CountVectorizer z domyślnymi ustawieniami tworzy osobną cechę dla każdego słowa w korpusie. Może to prowadzić do powstania zbyt wielu cech – często takich, które mają znikomą wartość analityczną.

W tym celu CountVectorizer udostępnia parametry pozwalające ograniczyć liczbę cech:

  • min_df : uwzględnia tylko słowa, które występują w więcej niż określonym odsetku dokumentów. Pozwala to usunąć rzadkie słowa, które nie będą dobrze uogólniać się na różne teksty.
  • max_df : uwzględnia tylko słowa, które występują w mniej niż określonym odsetku dokumentów. Dzięki temu można wyeliminować bardzo popularne słowa pojawiające się w każdym korpusie bez wnoszenia wartości – na przykład „and" czy „the".

To ćwiczenie jest częścią kursu

Inżynieria cech w uczeniu maszynowym w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Ogranicz liczbę cech w CountVectorizer, ustawiając minimalną liczbę dokumentów, w których słowo musi wystąpić, na 20%, a maksymalną na 80%.
  • Dopasuj i zastosuj wektoryzator na kolumnie text_clean w jednym kroku.
  • Przekształć tę (rzadką) macierz w tablicę numpy zawierającą liczby wystąpień.
  • Wyświetl wymiary nowej, zredukowanej tablicy.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Import CountVectorizer
from sklearn.feature_extraction.text import CountVectorizer

# Specify arguements to limit the number of features generated
cv = ____

# Fit, transform, and convert into array
cv_transformed = ____(speech_df['text_clean'])
cv_array = ____

# Print the array shape
print(____)
Edytuj i uruchom kod