/03_recommendations_tariff_plan

На основании данных о поведении клиентов построить модель с максимально большим значением accuracy для задачи классификации, которая предложит подходящий тариф.

Primary LanguageJupyter Notebook

Рекомендация тарифного плана

В распоряжении - данные 500 пользователей компании: кто они, откуда, каким тарифом пользуются, сколько звонков и сообщений каждый отправил за 2018-й год.

Описание тарифов:

«Смарт» «Ультра»
Ежемесячная плата 550 руб. 1950 руб.
Минут разговора 500 мин 3000 мин
Сообщений 50 1000
Интернет-трафик 15 Гб 30 Гб
Стоимость услуг сверх тарифного пакета:
Минута разговора* 3 руб. 1 руб.
Сообщение 3 руб. 1 руб.
1 Гб интернет-трафика* 200 руб. 150 руб.

*Количество использованных минут и мегабайтов «Мегалайн» всегда округляет вверх. Если пользователь проговорил всего 1 секунду, в тарифе засчитывается целая минута.

Цель исследования:

Провести предварительный анализ тарифов на небольшой выборке клиентов и сделать вывод — какой тариф выгоднее.

Этапы исследования:

  1. Чтение данных из предоставленного файла.
  2. Подготовка данных
  3. Построение моделей машинного обучения и оценка их качества:
    • RandomForest
    • LogisticRegression
    • DessisionTree
  4. Проверка лучшей модели на тестовой выборке
  5. Сравнение модели с константной
  6. Итоговый вывод

Итоговый вывод:

Условным заказчиком был предоставлен набор данных об использовании услуг мобильной связи клиентами компании. Согласно техническому заданию, необходимо создать модель, которая выберет оптимальный тарифный план пользователей, использующих архивные тарифы. При этом, качество модели должно измеряться метрикой Accuracy, не хуже 0,75.

В ходе исследования построены три популярные модели машинного обучения (RandomForest, LogisticRegression, DessisionTree) с подбором оптимальных гиперпараметров и определены значения заданной метрики. По результатам работы, самой качественной оказалась модель RandomForest с метрикой качества accuracy равной 0.807. Модель DessisionTree значение 0.793, что оказалось немногим меньше значения, полученного моделью "случайный лес".Прогноз с помощью модели LogisticRegression показал значение метрики 0.734.

Таким образом, за лучшую была выбрана модель RandomForest.

При проверке качества выбранной модели на тестовой выборке получили внушительный показатель accuracy, равный 0.800. Полученный показатель означает, что наша модель способна предсказать верный ответ в 80%.