Практический проект, демонстрирующий полный цикл работы с табличными данными в рамках машинного обучения — от первичного анализа и подготовки данных до обучения классических моделей машинного обучения, ансамблевых методов, кластеризации, подбора гиперпараметров и нейронных сетей.
Проект состоит из 19 Jupyter Notebook, последовательно демонстрирующих основные этапы работы с данными и построения моделей машинного обучения.
В проекте используется Star Dataset, загруженный с Kaggle:
Часть ноутбуков проекта также опубликована в открытом доступе на моём профиле Kaggle:
В Kaggle представлены публичные версии ноутбуков с выполненными ячейками и сохранёнными результатами.
Полная версия проекта, включающая все 19 ноутбуков, представлена в данном GitHub-репозитории.
Ноутбуки рекомендуется просматривать последовательно, в соответствии с указанной нумерацией, поскольку каждый этап продолжает предыдущий и формирует последовательный процесс работы с данными.
01_statistics_grouping_filtering.ipynb
Первичный статистический анализ данных, группировка и фильтрация.
02_sampling.ipynb
Работа с выборками и подмножествами данных.
03_analysis_metrics.ipynb
Анализ данных и расчёт соответствующих метрик.
04_05_visualization_matplotlib_seaborn.ipynb
Визуализация данных с использованием Matplotlib и Seaborn.
06_visualization_plotly.ipynb
Создание интерактивных визуализаций с использованием Plotly.
07_missing_values_outliers.ipynb
Выявление и обработка пропущенных значений и выбросов.
08_informative_features.ipynb
Анализ и отбор информативных признаков.
09_encoding_scaling_normalization.ipynb
Подготовка признаков для обучения моделей машинного обучения, включая кодирование категориальных признаков, масштабирование и нормализацию данных.
10_logistic_regression.ipynb
Обучение и оценка модели логистической регрессии.
11_decision_tree_random_forest.ipynb
Обучение и оценка моделей деревья решений и случайный лес.
12_perceptron.ipynb
Обучение и оценка модели на основе персептрона.
13_clustering.ipynb
Применение методов кластеризации к данным.
14_ensemble_bagging.ipynb
Применение ансамблевых методов на основе Bagging.
15_ensemble_boosting.ipynb
Применение ансамблевых методов на основе Boosting.
16_ensemble_stacking.ipynb
Применение ансамблевого метода Stacking.
17_hyperparameter_tuning.ipynb
Подбор и оптимизация гиперпараметров моделей машинного обучения.
18_fcn_1.ipynb
19_fcn_2.ipynb
Обучение и исследование полносвязных нейронных сетей.
Каждый ноутбук содержит:
- пояснения выполняемых этапов;
- исходный код;
- промежуточные результаты;
- визуализации, где это необходимо;
- результаты обучения моделей;
- результаты оценки моделей.
Все ноутбуки загружены с выполненными ячейками и сохранёнными результатами, поэтому результаты работы можно просмотреть непосредственно в GitHub без повторного запуска кода.
