[Перевод] Обновление Google Maps через глубинное обучение и Street View

Ежедневно Google Maps строят полезные маршруты, выдают информацию о пробках и о коммерческих организациях для миллионов людей. Чтобы нашим пользователям было удобнее, эта информация должна в реальном времени отражать постоянно изменяющийся мир. Автомобили Street View ежедневно собирают миллионы изображений, и вручную невозможно проанализировать более 80 миллиардов изображений высокого разрешения, собранных на сегодня, чтобы найти новую или обновлённую информацию, пригодную для размещения на Google Maps. Одна из целей команды Ground Truth — автоматическое извлечение информации из изображений с географической привязкой для улучшения Google Maps.

В работе «Извлечение структурированной информации из базы изображений Street View с использованием attention-алгоритмов» мы описали наш подход к точному автоматическому распознаванию названий улиц на очень сложных фотографиях Street View из разных стран при помощи глубинной нейросети. Наш алгоритм показал точность в 84,2% на сложном наборе данных French Street Name Signs (FSNS), и серьёзно опередил предыдущих лидеров в этой области. Что важно, наша система легко масштабируется на извлечение других типов информации из фотографий Street View, и сейчас помогает нам автоматически распознавать вывески коммерческих предприятий. И мы с удовольствием объявляем о том, что эта модель выложена в общий доступ!
image
Пример успешно распознанного системой названия улицы. Один и тот же знак может быть представлен несколькими фотографиями, до 4-х шт.

Распознавание текста в естественной среде — сложная задача для компьютерного зрения и машинного обучения. Традиционные системы распознавания символов (OCR) занимаются извлечением текста с отсканированных документов, а текст, полученный с фотографий улиц, распознавать сложнее из-за визуальных артефактов — искажения, загораживания, размытия, сложного фона или разных точек обзора. Наши попытки решения этих исследовательских задач начались в 2008 году, когда мы использовали нейросети для размытия лиц и автомобильных номеров для защиты приватности наших пользователей. После этого исследования мы поняли, что обладая достаточно большим количеством помеченных данных, мы можем использовать машинное обучение не только для защиты приватности пользователей, но и для добавления свежей информации в Google Maps.

В 2014 году команда Ground Truth опубликовала передовой метод распознавания номеров домов из набора данных Street View House Numbers (SVHN), который был выполнен тогдашним студентом, а ныне — сотрудником Google, Яном Гудфелло. Эта работа представляла не только академический интерес, но была критичной для улучшения точности Google Maps. Сегодня местоположение примерно трети адресов по всему миру улучшено благодаря этой системе. В некоторых странах, например, Бразилии, этот алгоритм уточнил местоположение более 90% адресов на Google Maps, что чрезвычайно сильно повысило удобство использования наших карт.

Следующим логичным шагом был перенос этих техник на названия улиц. Для решения этой задачи мы создали и выпустили набор данных French Street Name Signs (FSNS), большой набор с более чем миллионом названий улиц. Набор FSNS стал результатом многолетней работы, нацеленным на предоставление всем желающим возможности улучшить их OCR-модели на сложном и реальном наборе данных. FSNS гораздо больше и более сложный, чем SVHN, поскольку точное распознавание названий улиц требует комбинирования информации с нескольких разных изображений.

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

Вооружившись этим набором, стажёр Google Вожна Збигнев всё лето 2016 года разрабатывал модель глубинного обучения для автоматической разметки изображений Street View. Одна из интересных и полезных особенностей новой модели — возможность нормализации текста по нашим стандартам для названий, а также игнорирование лишнего текста, полученного с изображений.

image
Пример нормализации текста по бразильским данным. «AV.» Превращается в «Avenida», а «Pres.» в «Presidente»

image
В этом примере модель не тушуется, встретив сразу два знака, правильно превращает «Av» в «Avenue» и правильно игнорирует число »1600».

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

Но автоматического создания адресов недостаточно — мы хотим ещё обеспечивать прокладку маршрута до коммерческих организаций по их названию. В 2015 году мы опубликовали работу «Крупномасштабное распознавание коммерческих организаций с фотографий Street View», в котором был предложен метод точного распознавания вывесок коммерческих заведений. Однако после того, как витрина организации обнаружена, необходимо ещё точно извлечь её название — модель должна разобраться в том, где на фото указано название, а где — не имеющий к нему отношения текст. Мы называем эту извлечённую информацию «структурированным текстом». И это не просто текст, а текст, объединённый с его семантическим значением.

Используя различные тренировочные данные, мы можем заставить нашу модель, читавшую название улиц, извлекать названия коммерческих заведений с фасадов зданий. В этом случае мы могли извлечь название и проверить, известно ли нам об этом заведении по информации с Google Maps. Это позволяет нам составлять более точные и актуальные списки коммерческих организаций.

image
Система правильно распознала название магазина как «Zelina Pneus», несмотря на отсутствие информации о расположении магазина. Она также правильно проигнорировала названия брендов шин, продающихся в магазине.

Применение этих крупных моделей на 80 млрд изображений Street View требует серьёзной вычислительной мощности. Поэтому команда Ground Truth самой первой получила доступ к Tensor Processing Unit, о выходе которого было объявлено в этом году, для кардинального уменьшения вычислительных затрат.

Люди полагаются на точность Google Maps и на их возможность помогать людям. Мы поддерживаем Google Maps в актуальном состоянии, имея дело с постоянно меняющимися городскими ландшафтами. Дороги и коммерческие заведения представляют для нас технические трудности, которые мы ещё не смогли на 100% преодолеть. Задача Ground Truth — находиться на передовой прогресса в машинном обучении и создавать более удобный продукт для более чем миллиарда пользователей Google Maps.

© Geektimes