НачатьНачать бесплатно

Tf-idf

Подсчёт количества вхождений слов может быть полезен при построении моделей, однако слова, встречающиеся очень часто, способны нежелательным образом искажать результаты. Чтобы снизить влияние таких слов на модель, применяется нормализация. В этом упражнении вы будете использовать метод TF-IDF (term frequency-inverse document frequency — частота слова, обратная частоте документа), о котором шла речь в видео. TF-IDF уменьшает вес часто встречающихся слов и повышает значимость слов, которые редко появляются в документах.

Это упражнение является частью курса

Конструирование признаков для машинного обучения в Python

Посмотреть курс

Инструкции к упражнению

  • Импортируйте TfidfVectorizer из sklearn.feature_extraction.text.
  • Создайте экземпляр TfidfVectorizer, ограничив количество признаков до 100 и исключив стоп-слова английского языка.
  • Обучите векторизатор и примените его к столбцу text_clean за один шаг.
  • Создайте DataFrame tv_df, содержащий веса слов, и используйте названия признаков в качестве имён столбцов.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Import TfidfVectorizer
____

# Instantiate TfidfVectorizer
tv = ____

# Fit the vectroizer and transform the data
tv_transformed = ____(speech_df['text_clean'])

# Create a DataFrame with these features
tv_df = pd.DataFrame(tv_transformed.____, 
                     columns=tv.____).add_prefix('TFIDF_')
print(tv_df.head())
Редактировать и запускать код