Нейронные сети на службе у метеорологов

by Anastasia Zorina

Опыт применения сверточных нейронных сетей в Дальневосточном центре НИЦ «Планета»

Для наблюдения за погодой и климатом существует сеть наземных станций, которые производят регулярные замеры параметров атмосферы и поверхности Земли. Однако сеть таких станций, например, в районах Сибири и Дальнего Востока, мала и распределена неравномерно, при этом сбор и обобщение данных для их дальнейшего анализа занимает много времени. И здесь на помощь приходят спутники, с помощью которых можно произвести съемку практически любой территории с различной периодичностью.

Основная проблема, с которой приходится сталкиваться при съемке Земли из космоса — это облака. Еще большую проблему представляет съемка заснеженных территорий под облаками, так как и снег, и облачность могут выглядеть очень похожими друг на друга. И хотя проблему частично удается решить путем сопоставления снимков видимого и инфракрасного диапазонов, вопрос эффективного разделения облачности и снега до сих пор остается открытым.

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

Основная идея нового подхода заключается в использовании новейших технологий компьютерного зрения и глубокого машинного обучения – сверточных нейронных сетей (CNN). Сегодня CNN показывают впечатляющие результаты при распознавании образов и даже при генерации новых фотореалистичных изображений.

В Дальневосточном центре НИЦ «Планета» для реализации алгоритма, способного классифицировать снег, применили CNN, обученную на текстурах. Текстуры представляют собой небольшие изображения с примерами снега, облачности, земли и т.д., которым присваивается определенная метка класса, к которому она относится.

Для обучения классификатора была собрана выборка, состоящая из более 120 тысяч примеров текстур, выделенных на изображениях отечественного спутника «Метеор-М» №2. Далее, в результате предобработки этот набор был увеличен до 3,5 млн. текстур, что позволило достичь максимальной точности, хотя сам процесс обучения нейронной сети занимает при этом достаточно много времени и значительных вычислительных ресурсов. Исходя из этого расчеты были произведены на вычислительных мощностях Центра коллективного пользования «Центр данных ДВО РАН» (http://lits.ccfebras.ru/). Для вычислений был использован гибридный кластер с графическими ускорителями NVIDIA Tesla P100,который установлен в ВЦ ДВО РАН. Решение рассматриваемой задачи исключительно на центральном процессоре заняло бы в 54 раза больше времени. В основе применённой нейронной сети лежат такие известные модели, как AlexNet, GoogLeNet Inception и ResNet, в которых используются различные архитектурные решения. Взяв за основу «строительные блоки» из других архитектур, была создана сеть, наилучшим образом подходящая для задачи классификации снега.

Полученная модель была протестирована в сравнении с другими методиками и показала высокую точность классификации, в том числе при сопоставлении с результатами ручного выделения на спутниковых изображениях снежного покрова, проведённого опытным специалистом-дешифровщиком. Помимо повышения качества классификации, также удалось решить упомянутую выше проблему с территориальной привязанностью и сезонностью алгоритмов. При помощи CNN оказалось возможным обобщить обучающие данные, что было не под силу другим алгоритмам классификации.

Таким образом, в Дальневосточном центре НИЦ «Планета» имеется возможность производить оперативный мониторинг снежного покрова и получать маски облачности для всей территории России, а при необходимости и за её пределами. Эта информация крайне важна специалистам в периоды становления и схода снежного покрова, а также для анализа многолетних климатических изменений в виду того, что снег и облака, дающие осадки, являются одним из основных факторов, вызывающих наводнения.

Применение нейросетевых технологий в сфере спутникового мониторинга не ограничивается одними лишь масками снега и облачности. В настоящее время в Дальневосточном центре НИЦ «Планета» ведется разработка новых моделей, одна из которых способна классифицировать типы облачности, а другая – генерировать карты осадков на краткосрочный период, что в конечном итоге позволит повысить качество и оперативность метеорологических прогнозов.

Рисунок 1. Маска снега (голубой – снег, серый – облачность, зеленый – земля без снега).

Рисунок 2. Текстурные карты признаков (feature maps), извлекаемые сетью в процессе обучения.

Рисунок 3. Примеры обучающих текстур.