Предоставлен набор данных о звездах. Имеются следующие их 6 характеристик:
- Temperature (K). Абсолютная температура в Кельвинах. Целевой показатель;
- Luminosity(L/Lo). Светимость звезды относительно Солнца;
- Radius(R/Ro). Радиус звезды относительно радиуса Солнца;
- Absolute magnitude(Mv). Физическая величина, характеризующая блеск звезды;
- Star color. Цвет звезды, определяемый на основе спектрального анализа;
- Star type. Тип звезды.
Метрика данного проекта - RMSE. Необходимые значения данного показатель - менее 4 500.
- 0 - Коричневый карлик;
- 1 - Красный карлик;
- 2 - Белый карлик;
- 3 - Звезды главной последовательности;
- 4 - Сверхгигант;
- 5 - Гипергигант.
В рамках данного проекта необходимо предсказать абсолютную температуру на поверхности звезды в Кельвинах. Существуют различные способы определения абсолютной температуры на поверхности звезды, но заказчик, Обсерватори, надеется, что технологии машинного обучения помогут определить температуру точнее.
- Импортирование библиотек и файлов
- Предобработка и анализ данных
- Подготовка данных к построению модели
- Построение базовой нейронной сети
- Улучшение нейронной сети
- Выводы
- Осуществлена предобработка данных;
- Проведен исследовательский анализ данных - поиск наибольших корреляций между параметрами базы данных. Наибольшие коэффициенты корреляции обнаружены между целевым показателем - температурой и следующими параметрами: абсолютной звездной величиной (0.71) и цветов (0.68). В целом наибольшая взаимосвязь наблюдается между абсолютной звездной величиной и типом звезды - 0.92.
- Создана базовая модель нейронной сети. Осуществлено тестирование и обучение нейронной сети. Достигнуто следующее значение метрики RMSE - около 4 350. Параметры базовой нейронной сети:
- Количество входных нейронов - количество независимых переменных (17);
- Количество скрытых слоев - 2. Количество слоев на каждом слое:
- 1 слой - 8 нейронов;
- 2 слой - 5 нейронов.
- Количество нейронов в выходном слое - 1;
- Функции активации - LeakyReLU;
- Оптимизатор - Адам. Скорость обучения - 2e-3;
- Инициализация весов - инициализация Кайминга.
- Количество эпох - 8 001;
- Тестирование модели - каждые 1000 эпох.
- Реализованы иные модели нейронной сети с той же архитектурой, что и базовая, но с изменениями:
- С использованием батчей при обучении;
- С осуществлением нормализации батчей;
- С "выключение" нейройнов - Dropout.
- С изменением количества эпох и периодичностью тестирования модели;
- С изменением скорости обучения (learning rate).
- Наилучшее значение метрики RMSE продемонстрировала нейронная сеть с осуществлением нормализации батчей. Ее параметры:
- Количество эпох - 5 001;
- Тестирование модели - каждые 500 эпох.
- Скорость обучения - 1e-3.
- RMSE - 4 053.
- Рекомендовано использование нейронной сети с осуществлением нормализации батчей поскольку ее метрика ниже, а ресурсы на обучение и тестирование не столь значительны в отличие от базовой нейронной сети.
График значений RMSE с предсказанными значениями нейронной сети с нормализацией батчей:
График значений RMSE с предсказанными значениями базовой нейронной сети:
math
, matplotlib
, numpy
pandas
, torch
, phik
, sklearn