Прогнозирование метеорологических показателей с использованием нейросетевых технологий

Бесплатный доступ

В статье рассматривается применение нейросетевых технологий для прогнозирования метеорологических показателей в Москве. Актуальность исследования обусловлена необходимостью повышения точности и надежности прогнозов температуры, что становится особенно важным в условиях изменения климата и роста экстремальных погодных явлений. Методология включает сбор и обработку метеорологических данных, настройку и обучение нейросетевой модели с помощью языка программирования Python и его библиотек. В статье представлена работоспособная модель прогнозирования метеорологических показателей, верифицированная с использованием следующих метрик: средняя абсолютная ошибка (MAE) и коэффициент детерминации ( R5 ).

Еще

Нейросетевая модель, прогнозирование, анализ данных, метеорология, погода

Короткий адрес: https://sciup.org/148330363

IDR: 148330363   |   УДК: 004.852   |   DOI: 10.18137/RNU.V9187.24.04.P.64

Forecasting meteorological indicators using neural network technologies

The article discusses the use of neural network technologies for forecasting meteorological indicators in Moscow. The relevance of the study is grounded on the need to improve the accuracy and reliability of temperature forecasts, which is becoming especially important in the context of climate change and the growth of extreme weather events. The methodology includes collecting and processing meteorological data, setting up and training a neural network model using the Python programming language and related libraries. As a final result, the article provides a working model for forecasting meteorological indicators, tested on the average absolute error and the determination coefficient.

Еще

Текст научной статьи Прогнозирование метеорологических показателей с использованием нейросетевых технологий

Москва как один из крупнейших мегаполисов мира сталкивается с уникальными климатическими вызовами, что делает эффективное прогнозирование погоды особенно актуальным 1 .

Традиционные методы прогнозирования, разработанные на статистических моделях и численных методах, имеют свои ограничения, особенно в условиях быстрых изменений метеорологических условий. В последние годы нейросетевые технологии, основанные на принципах глубокого обучения, продемонстрировали значительные успехи в различных областях, включая метеорологию. Эти методы способны обрабатывать большие объемы данных и выявлять сложные паттерны, что открывает новые перспективы для повышения точности прогнозов погоды.

1 Миронов Н. Столица субтропиков: как изменится климат в Москве в ближайшие десятилетия // Вечерняя Москва. 2024. 22 июля. URL: https:// (дата обращения: 22.10.24).

Прогнозирование метеорологических показателей с использованием нейросетевых...

Раскатова Марина Викторовна кандидат технических наук, доцент кафедры вычислительных машин, систем и сетей, Национальный исследовательский университет «МЭИ», Москва. Сфера научных интересов: нейронные сети, вычислительная техника, прогнозирование временных рядов, сравнительный анализ моделей прогнозирования. Автор более 100 опубликованных научных работ. ORCID: 0000-0001-7671-3312, SPIN-код: 8053-5041, AuthorID: 609945.

Нейронная сеть

Нейронные сети являются мощным инструментом для анализа данных, обнаружения паттернов и автоматизации процессов в различных областях [1]. Профессор Саймон Хайкин в своей книге «Нейронные сети» отмечает, что «нейронная сеть – это громадный распределенный параллельный процессор, состоящий из элементарных единиц обработки информации, накапливающих экспериментальные знания и предоставляющих их для последующей обработки» [2, с. 32].

Учитывая мнения различных ученых, можно представить следующую классификацию нейронных сетей:

  • •    «…по характеру обучения – нейронные сети, использующие обучение с учителем и без учителя» (Ф.М. Гафаров и А.Ф. Галимянов [3, с. 12]);

  • •    «…по характеру настройки синапсов – сети с фиксированными связями. В этом случае весовые коэффициенты нейронной сети выбираются сразу исходя из условия задачи; сети с динамическими связями. Для них в процессе обучения происходит настройка синаптических связей» (В.А. Головко и В.В. Краснопрошин [4, с. 24]);

  • •    «три основных типа нейронных сетей:

  • -    полносвязные нейронные сети – каждый нейрон передает свой выходной сигнал остальным нейронам, в том числе и самому себе;

  • -    многослойные нейронные сети – нейроны объединяются в слои;

  • -    слабосвязные нейронные сети» (Д.В. Сысоев, О.В. Курипта и Д.К. Проскурин [5, с. 20]).

Язык программирования Python

Для представления «кодирования информации» можно использовать различные языки программирования, в том числе Python [6, с. 2].

С.К. Буйначев и Н.Ю. Боклаг подчеркивают, что «Python – это язык программирования с динамическим контролем типа, в котором имена во время выполнения программы могут представлять значения различных типов» [7, с. 8]. То есть образуется связь между именем и значением, где данные представлены объектами.

Анализ данных в Python

Для анализа метеорологических данных в Python используются следующие библиотеки: Tensor Flow, Num Py, scikit-learn, Pandas, Matplotlib, statsmodels – «для очистки и подготовки данных, анализа и визуализации данных, а также для создания нейронной модели» [8, с. 25].

Данные о метеорологических значениях были взяты с сайта «Прогноз погоды в Москве» .

Первым этапом решения задачи является предварительный анализ данных (см. Рисунок 1). Набор данных состоит из 57 записей с интервалом в 1 день и включает в себя следующие признаки: «Дата», «Температура», «Давление (мм)», «Ветер (м/с)», «Влажность (%)». Все перечисленные параметры являются количественными переменными, что позволяет использовать разнообразные статистические методы для их анализа. К ним относятся:

  • •    проверка данных на дубликаты;

  • •    пропущенные значения;

  • •    повторяющиеся значения;

  • •    очистка данных;

  • •    статистический анализ;

  • •    визуализация.

Дат*

Т*»«>*р*Турв

Д*ал«ни«(ми)

0«т«р<к/с)

Жлаоюст» (*)

е 01.09.2024

29

755

1

30

1  «2.И.2024

27

757

2

32

2  03.09.2024

27

757

1

31

3   64.09.2024

20

759

2

52

4  05.09.2024

21

761

2

42

$  00.09.2024

23

761

1

39

0  07.09.2024

24

760

1

36

7  00.09.2024

25

750

1

34

S 09.09.2024

20

754

1

40

9   10.09.2024

20

750

2

36

10 11.09.2024

24

749

2

30

11 12.09.2024

а

751

1

34

12 13.09.2024

27

754

3

30

13 14.09.2024

26

755

2

32

14 15.09.2024

26

757

2

24

Рисунок 1. Исходные данные

Источник: здесь и далее схемы, рисунки и графики составлены авторами

Прогнозирование метеорологических показателей с использованием нейросетевых...

На Рисунке 2 представлены результаты проверки на дубликаты (используется метод duplicated), пропущенные значения (можно выявить с помощью метода isnull), уникальные значения (nunique).

Дата            в

Температура      е

Давление(мм)     в

Ветер(м/с)       в

Влажность (X) в

dtype: int64

в

Температура

Дааленне(мм)

Ветер(м/с)

Влажность (X)

count 57.000000

57.ееееее

57.000000

57.000000

■•an     17.298246

752.964912

2.859649

54.333333

*td      7.176263

5.223453

1.705439

21.429563

■in      4.000000

74е.ееееее

a ль^льльа/ь А

24.000600

25X     u.eoeeeo

749.ееееее

35.000000

sex     is.eeeeee

753.000080

* алаллл

53.000000

7SX     гз.ееееее

757.008000

4.000000

72.000000

■ax      гэ.ееееее

761.000000

95.000000

Дата             57

Тамларатура      28

Даалемиа(мм)     19

Ветер(м/с)        7

Влажность (X)    42

Рисунок 2. Предварительный анализ данных

В результате предварительного анализа не выявлены дубликаты и пропущенные значения. Было найдено количество уникальных значений для каждого столбца и проведен статистический анализ. Все это обеспечивает отсутствие неточностей при выполнении машинного обучения. По проведенной обработке данных можно сделать вывод, что показатели корректны для дальнейших этапов создания модели прогнозирования.

«Визуализация данных – это набор методов, которые позволяют использовать визуальное представление для изучения, анализа и коммуникации количественных данных, в том числе видеть тенденции и закономерности» 2 . В работе использовались следующие способы визуализации: гистограмма, диаграмма размаха и корреляционный анализ.

«Конечная цель визуализации данных – способствовать принятию более эффективных решений и мер» 3 .

Гистограмма – это своего рода столбчатая диаграмма, которая дает дискретное отображение частоты значений [9, с. 18].

Диаграмма размаха – особый вид диаграммы, компактно показывающий распределение элементов. На ней видно медиану, размах, можно оценить дисперсию, асимметрию и определить выбросы.

Корреляционный анализ – это метод математической статистики, который позволяет определить степень взаимосвязи между различными параметрами [10, с. 2].

По матрице корреляций можно увидеть, что на прогнозируемую переменную «Температура» больше всего влияет переменная «Влажность (%)», однако переменные «Давление (мм)» и «Ветер (м/с)» также влияют на эту зависимую переменную, но в меньшей степени (см. Рисунок 3).

Рисунок 3. Визуализация данных

Прогнозирование метеорологических данных с помощью нейронной сети

Для прогнозирования переменной «Температура» данные были разделены на обучающую и тестовую выборки в соотношении 80 % на 20 %, где 80 % – (training set) – используется исключительно для обучения модели. Тестовая выборка (testing set) полностью независима от обучающей выборки и предназначена для оценки качества работы модели. Без ее применения нельзя гарантировать несмещенность оценок модели [11, с. 7].

Далее была выполнена стандартизация модели. Преобразование данных в набор, имеющий определенные статистические характеристики, но неопределенные минимальные и максимальные значения, называется стандартизацией данных [12, с. 87]. После этого была разработана архитектура нейронной сети с одним входным слоем (64 нейрона), одним скрытым слоем (32 нейрона) и одним выходным слоем, который прогнозирует температуру. Далее разработанная нейронная модель обучалась на тренировочных данных в течение 100 эпох с размером пакета 32. После этого оценка проводилась на тестовых данных. Здесь вычисляются метрики производительности: средняя абсолютная ошибка

Прогнозирование метеорологических показателей с использованием нейросетевых...

(MAE) и коэффициент детерминации ( R 2), которые могут быть использованы для оценки качества прогноза модели. В данном случае ошибка R2 = 0,77; MAE = 3,08, что считается хорошим результатом (см. Рисунок 4).

МАЕ: 3.086972916548428

RA2: 0.7733358995710944

Предсказанная температура воздуха на 28.10.24: 23 ° PS C:\Users\user> Q

Рисунок 4. Вывод предсказанной погоды

В целом представленная модель – это полноценная система для обработки данных погоды, предсказания температуры и выполнения прогноза на основе новых входных данных. Она обеспечивает анализ, обработку, обучение и оценку системы, создавая основу для использования в реальных задачах предсказания.

Заключение

Таким образом, в статье показано применение нейронных сетей с использованием языка программирования Python и различных библиотек, в частности для прогнозирования метеорологических показателей. В статье также представлен предварительный анализ данных, выявлены ключевые взаимосвязи и построена модель нейронной сети, которая показала высокую точность предсказаний (R2 = 0,77; MAE = 3,08). Результаты подтверждают эффективность нейронных сетей в этой области и их потенциал для точного прогнозирования.

Список литературы Прогнозирование метеорологических показателей с использованием нейросетевых технологий

  • Раскатова М.В., Терелецкова Е.Е., Сало А.А. Нейросети и перспективы их использования в экономико-хозяйственной деятельности // Цифровая трансформация: тенденции и перспективы: II Международная научно-практическая конференция, Москва, 20 декабря 2023 г. М.: Мир науки, 2023. С. 397–404. EDN UHTNLG
  • Хайкин С. Нейронные сети: полный курс. 2-е изд. / Пер. с англ. Н.Н. Куссуль, А.Ю. Шелестова. М.: Вильямс, 2006. 1104 с. ISBN 5-8459-0890-6.
  • Гафаров Ф.М., Галимянов А.Ф. Искусственные нейронные сети и их приложения: учеб. пособие. Казань: Изд-во Казанского университета, 2018. 121 с.
  • Головко В.А., Краснопрошин В.В. Нейросетевые технологии обработки данных: учеб. пособие. Минск: БГУ, 2017. 263 с. ISBN 978-985-566-467-4. EDN GLV GIE.
  • Сысоев Д.В., Курипта О.В., Проскурин Д.К. Введение в теорию искусственного интеллекта: учеб. пособие. Воронеж: Воронежский государственный архитектурно-строительный университет, 2014. 170 с. ISBN 978-5-89040-498-5. EDN UGOVA X.
  • Марченко А.Л. Python: большая книга примеров: учеб. пособие. М.: Изд-во Московского университета, 2023. 361 с. ISBN 978-5-19-011853-7.
  • Буйначев С.К., Боклаг Н.Ю. Основы программирования на языке Python: учеб. пособие. Екатеринбург: Изд-во Урал. ун-та, 2014. 92 c. ISBN 978-5-7996-1198-9. EDN HIM EBZ.
  • Маккинни У. Python и анализ данных: Первичная обработка данных с применением pandas, NumPy и Jupiter: учеб. пособие. 3-е изд. / Пер. с англ. А.А. Слинкина. М.: МК Пресс, 2023. 536 с. ISBN 978-5-93700-174-0.
  • Лемешевский С.В. Графическая визуализация данных: учеб. пособие. Минск: Институт математики НАН Беларуси, 2020. 25 с.
  • Румянцев М.И. Корреляционный анализ: методические указания. Магнитогорск: Магнитогорский государственный технический университет им. Г.И. Носова, 2017. 12 с.
  • Кугаевских А.В., Муромцев Д.И., Кирсанова О.В. Классические методы машинного обучения: учеб. пособие. СПб.: Университет ИТМО, 2022. EDN MJQVRZ.
  • Старовойтов В.В., Голуб Ю.И. Нормализация данных в машинном обучении // Информатика. 2021. Т. 18. № 3. С. 83–96. EDN JKAHKM. DOI: 10.37661/1816-0301-2021-18-3-83-96
Еще