first commit

This commit is contained in:
Masha
2026-09-01 08:55:25 +03:00
commit cf7d1c1421
+34
View File
@@ -0,0 +1,34 @@
# Прогноз смертности персонажей «Песни льда и огня»
Учебный проект по бинарной классификации: модель оценивает вероятность смерти персонажа на основе его возраста, пола, популярности, принадлежности к дому, культуры и других характеристик.
## Структура проекта
- `data/character-predictions.csv` — исходные данные о персонажах;
- `notebooks/asoiaf_mortality.ipynb` — анализ данных, подготовка признаков, обучение и сравнение моделей.
## Основные этапы
1. Загрузка данных и анализ пропусков.
2. Создание целевой переменной `death`.
3. Отбор признаков и исключение утечек данных.
4. Исследование связи смертности с домом, популярностью и числом погибших родственников.
5. Предобработка числовых и категориальных признаков.
6. Сравнение Dummy Classifier, логистической регрессии и случайного леса.
7. Анализ ошибок, вероятностей и важности признаков.
## Результаты
Лучший ROC AUC показал Random Forest — около **0.74**. Он также получил F1 около **0.49**. Самым важным признаком оказалась популярность персонажа, заметно меньший вклад внесли возраст, пол и количество погибших родственников.
Dummy-модель имеет высокую accuracy из-за преобладания живых персонажей, но не обнаруживает ни одной смерти. Это показывает, почему при несбалансированных классах важно учитывать не только accuracy, но также precision, recall, F1 и ROC AUC.
## Запуск
Для работы потребуются Python и библиотеки `pandas`, `matplotlib`, `scikit-learn`, а также Jupyter Notebook.
Из корня проекта запустите:
```bash
jupyter notebook notebooks/asoiaf_mortality.ipynb
```