В рамках наработки навыка ml, реализовал модель легендарного дата сета Титаник.
Titanic - Machine Learning from Disaster | Kaggle
Понятно, что он простой, и его можно использовать только для тренировки.
В работе были проведены следующие этапы:
- Загрузка данных
- Исследование дата сета (аналитика выживания по полу, аналитика выживания по возрасту, аналитика выживания по классу пассажиров)
- Заполнение пропусков в данных
- Выделение новых признаков
- Кодирование категориальных признаков и обработка данных
- Обучение baseline-модели
- показатели полученной модели
- Стандартизация данных
- Расчёт модели со стандартизацией данных
- Кросс-валидация для логистической регрессии
- Построение модели на лучших параметрах
- Добавление в модель двух новых сгенерированных признаков. Повторный цикл обучения, прогнозирования и оценки.
- Дополнительное моделирование - сравнение нескольких моделей, выбор наилучшей для уточненного прогноза. Сравнивались следующие методы: логистическая регрессия, дерево решений, метод k ближайших соседей, метод опорных векторов, наивный байесовский классификатор.
- Для выбранной модели - метода ближайших соседей KNN проведена кросс-валидация, подобраны оптимальные параметры.
Выводы
- Сработало сравнение различных моделей для выбора вспомогательной модели расчета - метод ближайших соседей KNN. Он показал более высокий результат чем первоначальная модель - логистическая регрессия.
- Подбор оптимального параметра, как правило добавляет несколько процентов к точности модели.
- Добавленные дамми-переменные также улучшили точность прогноза.
- Прогноз на не стандартизированных тестовых данных показал более точный результат.
- Основная оценка модели проведена по показателям roc-auc и f1.
Ссылка:
https://github.com/NikLaz25/Different-tasks/blob/main/model_titanic.ipynb