training_projects

Форк
0

..
/
mobile_tariffs_recommendation 
7 месяцев назад
README.md

Рекомендация тарифов для оператора мобильной связи "Мегалайн"

Оператор мобильной связи «Мегалайн» выяснил: многие клиенты пользуются архивными тарифами. Они хотят построить систему, способную проанализировать поведение клиентов и предложить пользователям новый тариф: «Смарт» или «Ультра».

Цель исследования: Построить модель для задачи классификации, которая выберет подходящий тариф. Построить модель с максимально большим значением accuracy. Чтобы сдать проект успешно, нужно довести долю правильных ответов по крайней мере до 0.75. Проверить accuracy на тестовой выборке самостоятельно.

Контекст исследования: Данные о поведении клиентов, которые уже перешли на тарифы «Смарт» или «Ультра».

План исследования:

  • Изучить общую информацию о данных
  • Разбить данные на выборки
  • Исследовать модели
  • Проверить модель на тестовой выборке
  • Проверить модель на адекватность
  • Сделать общие выводы по исследованию

Описание данных:

Датасэт - /datasets/users_behavior.csv

Каждый объект в наборе данных — это информация о поведении одного пользователя за месяц. Известно:

  • сalls — количество звонков,
  • minutes — суммарная длительность звонков в минутах,
  • messages — количество sms-сообщений,
  • mb_used — израсходованный интернет-трафик в Мб,
  • is_ultra — каким тарифом пользовался в течение месяца («Ультра» — 1, «Смарт» — 0).

Вывод


По результатам исследования, лучшей моделью для задачи классификации, которая выбирает подходящий тариф, оказалась модель RandomForestClassifier с гиперпараметрами max_depth = 7и n_estimators = 5. Ее точность предсказания на тестовой выборке составила 0.8102643856920684. Обучили модели "Дерево решений", "Случайный лес" и "Логистическая регрессия", применяя различные гиперпараметры для каждой.


Исследование было разделено на несколько этапов:

1. Изучение общей информации о данных:

  • Загрузили необходимые для работы библиотеки
  • Успешно выгрузили и изучили предоставленные данные о поведении клиентов, которые уже перешли на тарифы «Смарт» или «Ультра».
  • Данные оказались готовыми для работы - не было выявлено пропусков или расхождений в типах данных

2. Разбивка данных на выборки:

  • Разбили данные на три выборки (в соотношении 3:1:1): на обучающую, валидационную и тестовую
  • Применили новоизученный параметр stratify

3. Исследование моделей:

  • Провели исследование трёх изученных ранее моделей на валидационной выборке
  • RandomForestClassifier (случайный лес) - оказалась фаворитом среди моделей. Модель показала лучшую точность среди других - 0.81493 при показателях max_depth = 7 и n_estimators = 5
  • На втором месте - DecisionTreeClassifier (дерево решений). Она выдала точность ~ 0.8118 при max_depth = 5
  • Последняя модель в "рейтинге" - LogisticRegression (логистическая регрессия) с точностью ~ 0.7465

4. Проверка моделей на тестовой выборке:

  • Объединили тренировочную и валидационную выборку в новую обучающую, на которой дообучили лучшую модель с лучшими гиперпараметрами
  • Дообученная модель RF показала более точный результат метрики качества после проверки на тестовой выборке, чем старая
  • Окончательная точность выбранной модели на тестовой выборке: 0.8102643856920684

5. Проверка модели на адекватность:

  • Обучили "глупую" модель, которая всегда предсказывает один тариф
  • Сверили точности предсказаний "глупой" модели и нашей лучшей модели на тестовых выборках -> лучшая модель показала более точный уровень предсказаний
  • "Лучшая" модель -> адекватная

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.