Обновить
16
0
Пётр В@osanwe

Руководитель группы ML Яндекс Погоды

Отправить сообщение

Как мы научились прогнозировать грозы на карте осадков в Яндекс Погоде

Время на прочтение6 мин
Охват и читатели4.5K

Экстремальные погодные явления оказывают большое влияние на нашу жизнь. Это может проявляться в бытовых вещах, просто чтобы не попасть под сильный ливень или грозу. А ещё — в обеспечении бизнеса. Например, в прошлом году в Европе из‑за града погиб один из самых старых виноградников.

Именно поэтому мы решили улучшить наш прогноз экстремальных погодных явлений. Прежде всего мы сфокусировались на суперкраткосрочном прогнозе молний на карте осадков, также известной как наукаст, чтобы расширить нашу технологию прогнозирования погоды Meteum. Таким образом мы стали первыми в России, кто сделал карту наукаста гроз на ближайшие два часа с шагом 10 минут. Дело в том, что экстремальные погодные явления часто связаны с конвективными явлениями в атмосфере, которые сложно прогнозировать на долгий срок. То есть если в прогнозе есть гроза, то часто вместе с ней будет ожидаться сильный дождь и ветер, а в некоторых регионах и град.

Меня зовут Пётр Вытовтов. Я руководитель группы ML и качества прогноза в Яндекс Погоде. Сегодня я хочу рассказать вам о том, как мы добавляли прогноз молний в нашу модель наукаста с использованием данных со спутников, метеорологических радаров и применением трансформерных моделей.

Читать далее

Как мы отказались от нейросетей, а затем вернули их в прогноз осадков Яндекс.Погоды

Время на прочтение6 мин
Охват и читатели18K
Мы уже рассказывали, как Яндекс.Погода делает сверхкраткосрочный прогноз осадков по метеорологическим радарам и спутниковым наблюдениям. Сегодня расскажем, как нам удалось поднять качество такого прогноза за счет внедрения нейросетевых подходов и почему мы уже отказывались от них в прошлом. А ещё вы узнаете, как мы улучшали визуальное восприятие самой карты на границе радарных и спутниковых наблюдений.

И снова про наукастинг


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


Рисунок 1. Карта осадков Яндекс.Погоды
Читать дальше →

Реализация работы с Long Poll сервером в клиенте ВКонтакте для Sailfish OS

Время на прочтение11 мин
Охват и читатели5.1K

Введение


К сожалению, даже сейчас, в современном мире, не всегда удаётся воспользоваться всеми благами технологии push и порой приходится реализовывать обходные пути, например, в виде Long Poll, который позволяет эмулировать механизм push-уведомлений. В частности, такая необходимость возникла при реализации клиента ВКонтакте для Sailfish OS.

В данной статье не будут рассматриваться принципы взаимодействия с Long Poll сервером ВКонтакте — он имеет очень подробную документацию, а базовые примеры уже публиковались ранее. Вместо этого будет рассмотрена практическая реализация под конкретную платформу.

Подразумевается, что читатель знаком с разработкой под Sailfish OS не только на QML, но и на C++.
Читать дальше →

Работа с таймером в Sailfish OS на долгих интервалах времени

Время на прочтение5 мин
Охват и читатели2.3K

Введение


Довольно часто, при реализации какой-либо логики в приложении, возникает потребность в срабатывании некоторой функции через определённый промежуток времени. Наиболее очевидным примером такой потребности является приложение таймера. Например, cooktimer или Saildoro.

Как было сказано в одной из предыдущих статей, для добавления таймера в приложение на Sailfish OS можно использовать стандартный элемент Timer или его C++ аналог — QTimer. Однако, по умолчанию, работа этих таймеров приостанавливается на долгих промежутках времени из-за того, что устройство может уйти в «сон». Как раз с этой проблемой и столкнулись разработчики двух приложений, упомянутых выше.

В данной статье представлен стандартный для системы, но к сожалению недокументированный способ обработки такого поведения Sailfish OS.
Читать дальше →

Алгоритмы подсказки слов в телефонной клавиатуре vs. Защита персональных данных

Время на прочтение3 мин
Охват и читатели13K

Языковые модели


В виртуальных клавиатурах мобильных телефонов повсеместно используются алгоритмы подсказки слов по первым введённым буквам и автоматического исправления опечаток в них. Функция нужная, так как печатать на телефоне неудобно. Однако она часто раздражает пользователей своей «глупостью».

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

Нейронные сети с задачей предсказания слов справляются лучше. Например, нейросетевой алгоритм в состоянии понять, что после слов «Linus is the best» должно идти слово «programmer», а после «Shakespair is the best» — «writer». У n-граммной модели для этой задачи, скорее всего, не хватит статистики: даже если в обучающих текстах встречалась информация о Торвальдсе и Шекспире, скорее всего она не была сформулирована ровно этими же словами в том же порядке.

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

Важный момент: предсказания модели сильно зависят от обучающей выборки. На скриншотах ниже показаны примеры подсказок для обычной, профессиональной и неформальной лексик.
Читать дальше →

Разработка сканера Wi-Fi сетей для Sailfish OS

Время на прочтение14 мин
Охват и читатели5.3K

Введение


Порой, при решении рабочих задач, возникает необходимость в информации об окружающих сетях Wi-Fi: канал, мощность, тип шифрования и др. И если для популярных мобильных ОС Android и iOS утилит много, то для Sailfish OS — только одна. Сегодня, на примере данной утилиты, будет разобрано получение информации об окружающих сетях Wi-Fi и её отображение двумя способами: списком и графически.

До изучения материала желательно иметь базовое представление о разработке под Sailfish OS и об утилите wpa_cli.
Читать дальше →

Использование системных функций D-Bus в Sailfish OS

Время на прочтение15 мин
Охват и читатели5K

Введение


Данная статья является продолжением материала об использовании системного API в Sailfish OS и посвящена функциям D-Bus в данной операционной системе. Подробно будет разобрано взаимодействие со стандартным календарём и вспышкой. Список остальных основных функций D-Bus системы представлен в конце статьи.

Для понимания изложенного материала необходимо знание основ разработки для Sailfish OS и принципов взаимодействия с D-Bus в рамках операционной системы. Хорошей стартовой точкой являются соответствующие статьи от FRUCT:

[1] Начало разработки для Sailfish OS;
[2] Разработка для Sailfish OS: работа с D-Bus.
Читать дальше →

Использование системного API в Sailfish OS

Время на прочтение8 мин
Охват и читатели4.1K

Введение


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

В той статье рассматривался базовый принцип внутренней работы приложения. Данный материал открывает серию из двух статей, в которой он будет рассмотрен подробнее:
  1. Работа с недокументированным API для управления устройством (текущая);
  2. Работа с интерфейсами D-Bus, предоставляемыми операционной системой.

В текущей статье описывается как управлять яркостью экрана и системной громкостью, а также как включать и выключать Bluetooth и режим полёта.

Подразумевается, что читатель уже установил Sailfish OS SDK и разрабатывал приложения с его использованием.
Читать дальше →

Информация

В рейтинге
Не участвует
Работает в
Зарегистрирован
Активность