Giter Club home page Giter Club logo

first_nn's Introduction

Проект "Прогнозирование температуры звезды"

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

Предоставлен набор данных о звездах. Имеются следующие их 6 характеристик:

  • Temperature (K). Абсолютная температура в Кельвинах. Целевой показатель;
  • Luminosity(L/Lo). Светимость звезды относительно Солнца;
  • Radius(R/Ro). Радиус звезды относительно радиуса Солнца;
  • Absolute magnitude(Mv). Физическая величина, характеризующая блеск звезды;
  • Star color. Цвет звезды, определяемый на основе спектрального анализа;
  • Star type. Тип звезды.

Метрика данного проекта - RMSE. Необходимые значения данного показатель - менее 4 500.

Типы звезд (параметр Star type)

  • 0 - Коричневый карлик;
  • 1 - Красный карлик;
  • 2 - Белый карлик;
  • 3 - Звезды главной последовательности;
  • 4 - Сверхгигант;
  • 5 - Гипергигант.


В рамках данного проекта необходимо предсказать абсолютную температуру на поверхности звезды в Кельвинах. Существуют различные способы определения абсолютной температуры на поверхности звезды, но заказчик, Обсерватори, надеется, что технологии машинного обучения помогут определить температуру точнее.

План работы

  1. Импортирование библиотек и файлов
  2. Предобработка и анализ данных
  3. Подготовка данных к построению модели
  4. Построение базовой нейронной сети
  5. Улучшение нейронной сети
  6. Выводы

Решенные задачи

  1. Осуществлена предобработка данных;
  2. Проведен исследовательский анализ данных - поиск наибольших корреляций между параметрами базы данных. Наибольшие коэффициенты корреляции обнаружены между целевым показателем - температурой и следующими параметрами: абсолютной звездной величиной (0.71) и цветов (0.68). В целом наибольшая взаимосвязь наблюдается между абсолютной звездной величиной и типом звезды - 0.92.
  3. Создана базовая модель нейронной сети. Осуществлено тестирование и обучение нейронной сети. Достигнуто следующее значение метрики RMSE - около 4 350. Параметры базовой нейронной сети:
    • Количество входных нейронов - количество независимых переменных (17);
    • Количество скрытых слоев - 2. Количество слоев на каждом слое:
      • 1 слой - 8 нейронов;
      • 2 слой - 5 нейронов.
    • Количество нейронов в выходном слое - 1;
    • Функции активации - LeakyReLU;
    • Оптимизатор - Адам. Скорость обучения - 2e-3;
    • Инициализация весов - инициализация Кайминга.
    • Количество эпох - 8 001;
    • Тестирование модели - каждые 1000 эпох.
  4. Реализованы иные модели нейронной сети с той же архитектурой, что и базовая, но с изменениями:
    • С использованием батчей при обучении;
    • С осуществлением нормализации батчей;
    • С "выключение" нейройнов - Dropout.
    • С изменением количества эпох и периодичностью тестирования модели;
    • С изменением скорости обучения (learning rate).
  5. Наилучшее значение метрики RMSE продемонстрировала нейронная сеть с осуществлением нормализации батчей. Ее параметры:
    • Количество эпох - 5 001;
    • Тестирование модели - каждые 500 эпох.
    • Скорость обучения - 1e-3.
    • RMSE - 4 053.
  6. Рекомендовано использование нейронной сети с осуществлением нормализации батчей поскольку ее метрика ниже, а ресурсы на обучение и тестирование не столь значительны в отличие от базовой нейронной сети.

График значений RMSE с предсказанными значениями нейронной сети с нормализацией батчей:

image

График значений RMSE с предсказанными значениями базовой нейронной сети:

image

Использованные библиотеки

math, matplotlib, numpy pandas, torch, phik, sklearn

first_nn's People

Contributors

midle68 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.