«Яндекс» научил нейросеть узнавать города

320a500a6d841a31959105a2c17b114c_ce_1920

В Лаборатории машинного интеллекта Яндекса обучили специализированный нейросетевой классификатор, который не только распознаёт на фотографиях объекты, а по их особенностям пытается определить, в каком городе они находятся. В основе классификатора лежит нейронная сеть с архитектурой SE-ResNeXt-50, обученная на 80 тысячах классов. Её обучают почти так же, как людей: показывают фотографию и сообщают, в каком городе она снята.

В качестве обучающей выборки разработчики взяли 400 тысяч фотографий 111 российских городов, которые пользователи загрузили на Яндекс.Карты. Алгоритм SE-ResNeXt-50 представляет собой свёрточную нейросеть, разработанную китайскими исследователями в 2017 году. Разработчики переобучили её для своих задач — такой подход часто используется для сохранения выученных ранее генерализованных способностей распознавания образов и относительно быстрой адаптации сети.

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

Во время игры пользователю дают 12 вопросов — снимок с Яндекс. Карт и четыре города, в котором он мог быть сделан. После выбора пользователь узнает правильный ответ, а также то, к какому городу снимок отнес алгоритм. Кроме того, он видит карту с расположением города. По итогам игры сервис показывает, сколько ответов набрали игрок и нейросеть, распределение количества правильных ответов по игрокам, а также предлагает поиграть с другом, которому можно отправить ссылку.

©  Популярная Механика