«Никакого плато, конечно же, нет»

Уральский программист с помощью нейросети спрогнозировал развитие пандемии коронавируса

Основатель уральской IT-компании NetAngels Антон Халиков спрогнозировал, как может развиваться пандемия коронавируса в России на основе текущих статистических данных. Как рассказал он на своей странице в Facebook, для этого он внес данные о текущей заболеваемости и смертности, которые публикует Роспотребнадзор, в написанную им рекуррентную нейронную сеть.

Яромир Романов / Znak.com

Предложенный прогноз строит кривую заражений до 10 мая: по нему сеть предсказывает, что уже 8 мая число выявленных случаев заболевания COVID-19 в стране превысит 200 тыс. человек, а к 10 мая в день будет выявляться свыше 20 тыс. случаев. Число умерших также может превысить 2 тыс. человек. «Никакого плато, конечно же, нет, и после майских мы все дружно продолжим сидеть по домам», — комментирует специалист.

«По работе мне нужно постоянно строить прогнозы по различным показателям. Например, раз мы хостеры, нам надо прогнозировать покупку новых серверов. Оборудование едет один-два месяца с момента оплаты, поэтому надо заранее знать, сколько новых серверов у нас должно быть через два месяца. Для этого я постоянно строю прогнозы изменения спроса на все наши услуги на пару месяцев вперед. Разумеется, для этого я в первую очередь обладаю данными по спросу за несколько предыдущих лет за каждый день, — объяснил Антон Халиков Znak.com принцип работы его сети. — Здесь задача очень похожа: у меня есть данные, взятые из публичных источников: количество заболевших за каждый день и количество умерших за каждый день. Нужно построить прогноз, как будут развиваться эти два показателя. Но поскольку данных за предыдущие периоды довольно мало, всего пара месяцев, построить долгосрочный прогноз по ним не получится, это будет чистая фантазия».

страница Антона Халикова на Facebook

В сетях типа RNN используется насколько слоев нейронов, первый из которых обладает памятью, то есть видит не только текущее значение показателя, но и помнит его предыдущие значения. Сети показывают тестовую выборку данных за последнюю неделю и «обучающую» — все данные, которые были ранее. Сеть делает прогноз на «тестовую неделю», допуская некую ошибку. Ее запоминают и вновь запускают обучающую выборку. Это повторяется до тех пор, пока программисты не добиваются приемлемого уровня ошибки. 

«В итоге у нас получается архитектура сети, которую можно использовать для прогнозов. Тогда мы переобучаем эту сеть уже на всех данных и строим прогноз», — рассказал Антон Халиков.
страница Антона Халикова на Facebook

В то же время он отмечает, что сеть за один шаг делает прогноз лишь на один день. «Чтобы сделать прогноз на завтра, мы показываем ей цифры за три предыдущих дня, и она выдает прогноз. Для послезавтра ей надо показать два предыдущих дня плюс прогноз на завтра. И так далее. В итоге на четвертый день она начинает строить прогноз на основе исключительно предыдущих прогнозов. И, разумеется, тут уже она просто пытается продолжить тренд. Никаким образом она не сможет понять, что что-то изменится. Для сети это просто цифры, значения которых она никаким образом не понимает», — уточнил автор модели. Поэтому, как уточняет Антон Халиков, корректнее всего ситуацию отражает график с ежедневным числом выявленных случаев. «Говорят, что для уверенного понимания, что мы на плато и пик пройден, роста не должно быть две недели подряд. На этой картинке как раз нарисованы фактические данные по ежедневному приросту заболевших, а также прогноз», — добавил он. 

страница Антона Халикова на Facebook
Сколько на самом деле умирает от коронавируса и когда кончится самоизоляция? Интервью доцента МГУ Михаила Тамма

Напомним, по состоянию на 3 мая в России зарегистрировано 134 687 случаев коронавирусной инфекции в 85 регионах. За весь период выписано по выздоровлению 16 639 человек, 1280 человек умерли из-за наступивших после вируса осложнений. В Свердловской области на сегодня подтвердились 1144 случая коронавируса. 

Подпишитесь на рассылку самых интересных материалов Znak.com
Новости России
Internal Server Error
Internal Server Error
Internal Server Error
Internal Server Error
Internal Server Error
Internal Server Error
Internal Server Error
Internal Server Error
Internal Server Error
Internal Server Error
Отправьте нам новость

У вас есть интересная информация? Думаете, мы могли бы об этом написать? Нам интересно все. Поделитесь информацией и обязательно оставьте координаты для связи.

Координаты нужны, чтобы связаться с вами для уточнений и подтверждений.

Ваше сообщение попадет к нам напрямую, мы гарантируем вашу конфиденциальность как источника, если вы не попросите об обратном.

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