Skip to content

Deep learning solution for air pollution monitoring using ground and satellite data.

License

Notifications You must be signed in to change notification settings

vprud/air_tracer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

air_tracer

В этом репозитории хранится исходный код по построению предиктивной модели на основе градиентного бустинга концентрации загрязняющих веществ (CO, NO2, NO, PM2.5, PM10) по городу Москва за 2020 календарный год рамках задачи хакатона ЛЦТ. А также исходный код по моделированию распространения загрязняющих веществ на территории города Москва. В папке models хранятся обученные модели.

Для моделирования загрязняющих вещества по территории города была впервые применена уникальная архитектура нейронной сети на основе модифицированных автоэнкодеров. Процесс обучения проходил в два шага:

  1. Интерполяция данных со спутниковых снимков космической программы Copernicus
  2. Прогон модели на парах векторов (измерения со спутника и с датчиков)

Архитектура сети - 4 линейных слоя с активационой функцией reLu. Размерность каждого слоя следующая: 60-128-256-800. Несмотря на относительно простую архитектуру, нейросеть продемонстрировала хорошую способность к воспроизведению динамики движения газа в атмосфере города. На графике ниже показана динамика концентраций СО в городе Москва вечером 21 сентября 2020 года:

Simulation Demo

При дальнейшем продолжении исследований в этой области, качество моделирования вырастит.

Базовое использование предиктора

Скачайте и настроение виртуальное окружение:

git clone https://github.com/cut4cut/air_tracer.git
cd air_tracer
python -m venv venv
. venv/bin/acivate
pip install -r requirements.txt

Для запуска обучения достаточно ввести комманду:

python air_tracer -f y -d <путь к папке с данными> -s <путь к папке, где сохранить модель>

Для тестовго предсказания c дефольтными параметрами:

python air_tracer -f n

Чтобы получить предсказания по NO для поста 'Марьино' на момент времени 21-09-2021 15:00:

python air_tracer -f n -a "Марьино" "NO" "21-09-2021 15:00"

Также можно запросить описание всех комманд:

python air_tracer -h

Решение собиралось и тестировалось на macOS 10.15.7 (19H1419) 1,6 GHz 2‑ядерный процессор Intel Core i5.

Базовое использование нейронной сети

Скачайте и настроение виртуальное окружение:

git clone https://github.com/cut4cut/air_tracer.git
cd air_tracer
python -m venv venv
. venv/bin/acivate
pip install -r requirements.txt

Запустить сервер с jupyter lab командой:

jupyter lab

В папке notes хранятся файлы:

  1. 03_prep_data_AEnetwork.ipynb - процесс подготовки датасета для обучения
  2. 04_AEnetwork.ipynb - процесс обучения и сохранения модели

Решение собиралось и тестировалось на macOS 11.3.1 (20E241) 2,6 GHz 6‑ядерный процессор Intel Core i7.

About

Deep learning solution for air pollution monitoring using ground and satellite data.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages