#СообщениеФорума Угадайте город по фотографии

  • Автор темы Света Чистякова
  • Дата начала
С

Света Чистякова

Guest
Мы выпустили новую игру, в которую можно играть с Алисой, — «Угадайте город по фотографии». Механика игры простая: вам показывают случайную фотографию с Яндекс.Карт, а вы угадываете, в каком из четырёх городов России она сделана. Сама игра при этом достаточно сложная. На снимках попадается всё подряд — и знаковые достопримечательности, и места, которые есть в каждом городе: новостройки, церкви, торговые центры, спальные районы. Узнать Москву по Красной площади или Казань по мечети Кул-Шариф не составляет труда. Но чтобы определить, в каком городе России снята панельная девятиэтажка, надо быть настоящим краеведом.


alt

Скриншот игры

Правильный ответ могут подсказать детали: рельеф, растения, транспорт, вывески и указатели. Если на фото вы видите пирамидальный тополь, вряд ли оно сделано где-то на севере. Если на снимке «сталинка», это определённо не Ноябрьск и не Новый Уренгой — они основаны в 1970-х годах. Обилие японских машин говорит о том, что на фотографии, вероятно, один из городов Дальнего Востока — и так далее.

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

Как готовили фотографии

Снимки, которые вы видите в игре, — из Яндекс.Карт; их загрузили пользователи. Мы взяли все фото с Карт, сделанные на территории России, и исключили те, которые были сняты в сельской местности и в небольших городах. Если для города доступно всего две-три фотографии, Алиса не научится распознавать его достоверно.

alt

Пользовательские фотографии на Яндекс.Картах

Затем фотографии автоматически отфильтровали. Во-первых, убрали снимки плохого качества: слишком маленькие или слишком тёмные. Во-вторых, отбросили снимки с неподходящими сюжетами — например, фотографии, где большую часть кадра занимают вывеска или объявление. В результате осталось около 400 тысяч фотографий, сделанных в 111 городах России. Распределение по городам получилось неравномерным: очевидно, что снимков Санкт-Петербурга на Яндекс.Картах гораздо больше, чем фотографий Старого Оскола.

Как Алиса училась распознавать города

В Лаборатории машинного интеллекта Яндекса обучили специализированный нейросетевой классификатор. Он не просто распознаёт на фото объекты, а по их особенностям пытается определить, в каком городе они могли бы находиться.


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


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


Мы разделили фотографии на две части: одни использовались только для обучения, а другие только для игры. Это позволило научить нейросеть, и вместе с ней и Алису, обобщать наблюдения и находить закономерности, а не выдавать заученный ответ.

Все фотографии, которые показывает игра, Алиса видит впервые. Более того, искусственный интеллект, в отличие от людей, не обучается в ходе игры. Если сыграть несколько раундов подряд, какой-то снимок может выпасть повторно — человек его узнает, а Алиса будет смотреть на фото как в первый раз.

Что видит на снимках нейронная сеть

Точно понять, почему нейронная сеть приняла то или иное решение, нельзя — но можно выделить на снимке области, которые сыграли важную роль при вынесении вердикта. На чёрно-белом изображении красным отмечены зоны, которые помогли нейросети определить, что на фото — Владивосток (это правильный ответ).

alt

alt


Однозначного ответа на вопрос «Какой город на фотографии?» искусственный интеллект не даёт. Вместо этого он вычисляет вероятности: например, нейросеть может быть на 75% уверена, что на снимке Ялта и на 25% — что Москва.

alt

Часовня Николая Чудотворца в Ялте. Красным цветом отмечены области, которые «голосовали» за то, что это Москва. Зелёным — за то, что это Ялта.

Мы несколько недель тестировали игру в Яндексе. Пока статистика показывает, что Алиса справляется с угадыванием в среднем лучше, чем живые игроки. У людей при этом есть фора — они могут определять города по надписям и кодам регионов на автомобильных номерах. Алиса в игре этого не делает: мы сознательно не стали добавлять функцию распознавания текста.


alt

Запустить игру



Проверьте себя — откройте игру в браузере или скажите Алисе «Давай сыграем в „Угадай город по фото“». Если вам удастся обойти искусственный интеллект, можете считать себя краеведом-экспертом.

Кстати, соревноваться можно не только с Алисой, но и с другими людьми — для этого используйте ссылку «Бросить вызов друзьям». По ссылке друзья увидят тот же набор снимков, что и вы.

Читать далее...
 
Верх