Skip to content

Latest commit

History

10 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Health Insurance Cross Sell Prediction Research Notebook

Описание проекта

Этот блокнот содержит полное исследование задачи бинарной классификации. Мы предсказываем реакцию клиентов на предложение мед страхования. Задача взята из соревнования Kaggle Playground Series Season 4 Episode 7.

Структура исследования:

  1. EDA (Exploratory Data Analysis): анализ данных
  2. LightAutoML Baseline: базовое решение с использованием LightAutoML, две конфигурации
  3. Custom Solution: собственные решения без использования LightAutoML
    • Простые pipeline подходы
    • Улучшенные методы с очисткой данных
    • CatBoost решения: простой, продвинутый, с Optuna
  4. Выводы и суммаризация: анализ результатов и заключение

Основные выводы EDA

После анализа данных мы выяснили следующее:

  1. Дисбаланс классов: Классы распределены неравномерно - класс 0 составляет 87.70% (10,089,739 наблюдений), класс 1 только 12.30% (1,415,059 наблюдений). Соотношение 7.13:1. Нужно учесть это при обучении моделей используя техники балансировки классов.

  2. Важные признаки: Наиболее важными признаками являются Previously_Insured (корреляция -0.3459), Policy_Sales_Channel (-0.1527) и Age (0.1221). Эти признаки сильнее всего связаны с целевой переменной.

  3. Типы данных: В данных 7 численных признаков и 3 категориальных.

  4. Распределения: Признак Annual_Premium имеет скошенное распределение с большим разбросом значений, необходимо логарифмическое преобразование.

  5. Выбросы: Найдены выбросы в Annual_Premium (20.66% данных) и Driving_License (0.20%). Выбросы в Annual_Premium требуют специальной обработки.

  6. Пропущенные значения: Пропущенных значений в данных нет, все 11,504,798 наблюдений содержат полную информацию.

  7. Преобразования: Желательно логарифмирование Annual_Premium, категоризация Age, создание признаков взаимодействия между важными признаками.

Результаты на Kaggle

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

kaggle

  • Наилучший результат показал catboost с optuna 0.89518
  • LightGBM c optuna 0.88089
  • Бейзлайн на LightAutoML 0.87945

Выводы и заключение:

  1. EDA анализ показал дисбаланс классов и важность некоторых признаков для предсказания целевой переменной

  2. LightAutoML baseline показал хорошие результаты с двумя разными конфигурациями. Это подтверждает что автоматизированные подходы работают хорошо

  3. Собственное решение с CatBoost дало значительное улучшение результатов по сравнению с baseline. Простой подход с минимальной предобработкой оказался самым эффективным

  4. Feature engineering не дал значительного улучшения качества модели. Это значит что базовых признаков достаточно для этой задачи

  5. Оптимизация гиперпараметров через Optuna помогла дополнительно улучшить качество модели

About

Research notebook for Kaggle Playground S4E7 (health insurance cross-sell): EDA, LightAutoML baselines, then hand-built CatBoost and LightGBM tuned with Optuna. Best submission 0.895 ROC AUC, ahead of the AutoML baseline.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages