ПочатиПочніть безкоштовно

Навчіть модель логістичної регресії

Коли у вас будуть випадкові тренувальна та тестова вибірки, ви можете навчити модель логістичної регресії на тренувальній вибірці за допомогою функції glm(). glm() — це розширена версія lm(), що дає змогу будувати різні типи регресійних моделей, а не лише звичайну лінійну регресію методом найменших квадратів.

Обов'язково передайте аргумент family = "binomial" у glm(), щоб вказати, що ви виконуєте логістичну (а не лінійну) регресію. Наприклад:

glm(Target ~ ., family = "binomial", dataset)

Не переймайтеся попередженнями на кшталт glm.fit: algorithm did not converge або glm.fit: fitted probabilities numerically 0 or 1 occurred. Вони типові для невеликих наборів даних і зазвичай не створюють проблем. Здебільшого це означає, що ваш набір даних є «ідеально відокремлюваним», що може ускладнювати математику моделі, але функція glm() в R майже завжди достатньо стійка, щоб коректно впоратися з такою ситуацією.

Коли ви навчите модель glm() на своєму наборі даних, ви можете передбачити результат (наприклад, rock або mine) на вибірці test за допомогою функції predict() з аргументом type = "response":

predict(my_model, test, type = "response")

Ця вправа є частиною курсу

Machine Learning з пакетом caret в R

Переглянути курс

Інструкції до вправи

  • Навчіть логістичну регресію під назвою model для передбачення Class, використовуючи всі інші змінні як предиктори. Використайте тренувальну вибірку для Sonar.
  • Зробіть передбачення на вибірці test, використовуючи цю модель. Назвіть результат p, як ви робили раніше.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Fit glm model: model


# Predict on test: p
Редагувати та запускати код