Метрики качества на данных Twitter
Вы обучите модель логистической регрессии, которая предсказывает тональность твитов, и оцените её качество на тестовой выборке с помощью различных метрик.
Матрица X уже создана за вас. Она содержит признаки, полученные методом «мешка слов» (BOW) на основе столбца text.
Метки хранятся в векторе y. Значение 0 соответствует негативным твитам, 1 — нейтральным, 2 — позитивным.
Обратите внимание: несмотря на наличие 3 классов, задача по-прежнему является задачей классификации. Точность по-прежнему измеряет долю правильно предсказанных объектов. Матрица ошибок теперь будет размером 3×3: каждая строка показывает количество предсказанных объектов для классов 2, 1 и 0, а каждый столбец — истинное количество объектов в классах 2, 1 и 0.
Все необходимые пакеты уже импортированы за вас.
Это упражнение является частью курса
Анализ тональности текста на Python
Инструкции к упражнению
- Разделите данные на обучающую и тестовую выборки, используя стратификацию по
y. - Обучите классификатор на основе логистической регрессии.
- Получите предсказания на тестовой выборке.
- Выведите значение точности и матрицу ошибок, полученные на тестовой выборке.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Split the data into training and testing sets
X_train, X_test, y_train, y_test = ____(X, y, test_size=0.3, random_state=123, ____=y)
# Train a logistic regression
log_reg = ____.____(___, ____)
# Make predictions on the test set
y_predicted = log_reg.____(___)
# Print the performance metrics
print('Accuracy score test set: ', ____(y_test, y_predicted))
print('Confusion matrix test set: \n', ____(y_test, y_predicted)/len(y_test))