Крок 3: Побудова класифікатора
Це останній крок у прогнозуванні сентименту. Ми дослідили та збагатили наш набір даних ознаками, пов'язаними із сентиментом, і перетворили його на числові вектори.
Ви використаєте набір даних, створений на попередніх кроках. Він містить ознаку довжини відгуків і 200 ознак, створених за допомогою векторизатора Tfidf.
Ваше завдання — навчити логістичну регресію для передбачення сентименту. Дані вже імпортовано для вас під назвою reviews_transformed. Цільова змінна називається score і є бінарною: 1, якщо відгук про продукт позитивний, і 0 — інакше.
Навчіть модель логістичної регресії та оцініть її якість на тестових даних. Наскільки добре спрацьовує модель?
Усі потрібні пакети вже імпортовано для вас.
Ця вправа є частиною курсу
Аналіз тональності в Python
Інструкції до вправи
- Виконайте поділ на train/test, відведіть 20% даних для тестування та встановіть випадкове зерно на
456. - Навчіть модель логістичної регресії.
- Передбачте клас.
- Виведіть accuracy та матрицю плутанини для тестової вибірки.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Define X and y
y = reviews_transformed.score
X = reviews_transformed.drop('score', axis=1)
# Train/test split
X_train, X_test, y_train, y_test = ____(____, ____, ____=0.2, ____=456)
# Train a logistic regression
log_reg = ____.____(____, ____)
# Predict the labels
y_predicted = log_reg.____(____)
# Print accuracy score and confusion matrix on test set
print('Accuracy on the test set: ', ____(____, ____))
print(____(____, ____)/len(y_test))