Прогноз погоды, который вы видите на Яндексе, — наш собственный. Его составляет технология метеопрогнозирования Meteum. Недавно Meteum обновился: прогноз стал точнее, и мы научились лучше определять зоны осадков. В этом помогают сигналы от пользователей — Яндекс спрашивает, идёт ли сейчас дождь, а люди дают ответы. Здесь мы расскажем, чем Meteum 2.0 отличается от Meteum 1.0 и почему сигналы о дожде не менее важны, чем показания метеостанций.
С чего всё началось
Отказаться от стороннего прогноза погоды и делать свой мы решили в 2015 году. Яндекс всю историю занимается анализом данных, а прогнозирование погоды — задача как раз из этой области. Есть огромный архив данных о том, какой погода была в прошлом, есть данные о том, какая она сейчас. Нужно это проанализировать и сделать вывод, какой она будет в будущем.
Большинство прогнозов строится метеомоделями. Это математические модели, которые предсказывают, каким будет состояние атмосферы Земли в тот или иной момент. Хороших метеомоделей много, но все они иногда ошибаются. При этом в их ошибках, как правило, есть те или иные закономерности.
Мы взяли несколько метеомоделей, включая собственную, и стали обрабатывать их прогнозы с помощью машинного обучения. Результат — ещё один прогноз, в котором выявлены закономерности и скомпенсированы ошибки исходных моделей. Кроме того, этот прогноз рассчитывается для точки, где находится человек, а не для ближайшего города. Технология получила название Meteum.
Meteum 2.0
Прогнозов, которые всегда были бы абсолютно верными, к сожалению, пока не существует, и наш не исключение. Поэтому прогнозирование погоды — это постоянная борьба за повышение точности. На эту тему пишутся научные работы и выдаются патенты, но в целом сделать прогноз точнее можно двумя способами: использовать больше данных — чтобы учесть то, что не учитывалось раньше — и совершенствовать методы их обработки. В Meteum 2.0 мы задействовали оба.
Шесть лет назад, когда мы запускали первый Meteum, для обработки данных использовался метод машинного обучения MatrixNet. Сейчас мы перешли на CatBoost — более новый и более перспективный для задач анализа погоды метод. Система прогнозирования на основе CatBoost, помимо данных от исходных метеомоделей, умеет учитывать и дополнительные факторы: высоту солнца над горизонтом или удалённость от водоёма. Всё это тоже влияет на погоду.
Данных у нас тоже стало больше. Во-первых, мы, как и раньше, используем метеомодели. Когда Meteum только появился, их было три, а сейчас пять: из США, Канады, Японии, Европы и наша собственная. Во-вторых, мы начали применять для составления прогноза погоды данные с метеорадаров и спутниковые снимки.
Радары и спутники
Метеорологические радары находятся на поверхности Земли и делают трёхмерные снимки атмосферы в радиусе 200 километров. Спутники размещаются на геостационарной орбите и фотографируют Землю из космоса — на их снимках видны зоны облачности. По данным с радаров и спутников составляется карта осадков. Это краткосрочный прогноз, с помощью которого можно с точностью до минут понять, когда начнётся и когда закончится дождь.
Наконец, ещё один важный источник данных в Meteum 2.0 — сигналы от пользователей. Те, кто пользуется Яндекс.Погодой или приложением Яндекс, наверняка замечали, что время от времени мы спрашиваем, идёт ли сейчас дождь, и показываем два варианта: «Да» и «Нет». Ответить на вопрос — доли секунды, но между тем такие ответы сильно помогают улучшить качество прогноза.
Коллективный прогноз
Изначально мы задавали пользователям вопрос о дожде, чтобы проверить, верен ли наш прогноз. С каждым днём мы получали всё больше сообщений, и в какой-то момент стало ясно, что подобные сигналы могут быть не просто средством контроля, но и полноценным источником данных для обучения Meteum 2.0 — наряду с радарами, спутниковыми снимками и сводками с метеостанций.
Любой прогноз — это попытка предугадать развитие событий: какую температуру и силу ветра измерит метеостанция, куда двинется облако на спутниковом снимке и так далее. Так же и с сообщениями о дожде. Meteum 2.0 анализирует уже присланные сигналы и учится прогнозировать, какие пришлют в будущем.
Благодаря сообщениям от пользователей краткосрочный прогноз осадков стал на 20% точнее. Самый заметный прирост качества — на Урале, в Сибири и на Дальнем Востоке, то есть в регионах, для которых у нас нет данных метеорадаров. Раньше мы прогнозировали осадки в этих местах, опираясь только на спутниковые снимки. С появлением нового источника данных — сигналов от пользователей — точность прогноза приблизилась к той, которую дают радарные наблюдения.