Введение: Gaode Map содержит десятки миллионов точек интереса, таких как здания, нижние магазины, школы и т. д., и каждый день появляются новые точки интереса. Чтобы поддерживать актуальность данных POI, AutoNavi будет охватывать и обновлять их путем сбора большого количества данных. На самом деле имена POI сложны и изменчивы, в то же время процесс изготовления названия требует строгих требований, ручное изготовление имен POI требует больших трудозатрат.
Поэтому автоматическая генерация названий POI особенно важна, и семантическое понимание машиной списков продавцов является ключевой частью этого процесса. Эта статья в основном знакомит с практикой и бизнес-эффектом соответствующих технических решений в AutoNavi.
1. ПредпосылкиВ реальном мире списки торговцев очень странные, и сложно заставить машину правильно понять значение таблички. Существует много типов текстов для списков продавцов.Как показано на рисунке ниже, мы можем видеть состав таблички продавцов.
В сочетании с процессом создания названия POI мы в настоящее время делим текстовые строки табличек POI на 4 категории: основное имя, характер бизнеса (включая сферу деятельности, конкретные проекты), название филиала, шум (включая текст, не относящийся к POI, адрес, контактная информация). ), первые три категории будут участвовать в создании имен POI. Для таблички, показанной выше, каноническое название, которое она выводит, должно быть «Century Hongtu Real Estate (Xingye Road Store)». Среди них «Century Hongtu» — это основное название, «недвижимость» — это сфера деятельности, а «Xingye Road Store» — это название филиала.
Выяснение текста, необходимого для составления имени из таблички, требует не только некоторых особенностей самой текстовой строки, но и анализа путем объединения контекста таблички и информации изображения. Простое распознавание текстовых строк может столкнуться со следующими проблемами: Как показано на рисунке ниже, на двух табличках упоминается «China Telecom», но их значения различны, и в настоящее время необходимо понимать контекст.
2. Технические решения
С точки зрения семантического понимания текста это должна быть проблема классификации текста. Но прямая классификация не работает. В действительности, при понимании семантики текстовой строки таблички необходимо совмещать графику, положение, содержание и контекстную связь, чтобы судить. С этой целью мы разделяем проблему понимания списка продавцов на две подзадачи, которые необходимо решить: 1. Как совместить изображение, текст и пространственное положение, 2. Как совместить контекст. Поэтому мы предлагаем двухступенчатую каскадную модель.
2.1 Двухступенчатая каскадная модель
Двухэтапная каскадная модель разделена на два основных этапа: на первом этапе извлекаются однотекстовые информационные признаки, включая положение текста и текстовое содержимое и т. д., а на втором этапе извлекаются признаки контекстной связи текстовой строки в табличке, исключая простая идентификация только одного текста Неоднозначность, вызванная текстовым атрибутом, точно идентифицируется.
2.1.1 Первый этап извлечения признаков одной текстовой строки
Функции одиночной строки текста можно разделить на функции части речи (на уровне токенов) и функции на уровне предложения. Кроме того, информация о местоположении (PV) также является более важной информацией, которую необходимо извлекать и кодировать. Вышеупомянутые функции объединены для получения функций одной строки текста.
С точки зрения извлечения признаков на уровне токенов мы определяем три части речи: основное слово (C), обычное слово (U) и конечное слово (T) в сочетании с композицией имени и процессом имени. Здесь мы используем сеть LSTM для изучения последовательностей имен частей речи.
Что касается извлечения признаков слоя уровня предложения, из-за относительно небольшого количества аннотаций используется модель BERT с большим объемом предварительных знаний. В то же время, чтобы лучше соответствовать потребностям текущего бизнес-сценария, мы объединяем набор данных POI в бизнесе, продолжаем предобучение на основе исходной модели предобучения, предоставленной Google, и получаем новый модель БЕРТ-ПОИ.
Предварительно обученный корпус текстов POI не имеет слишком большого контекста.При построении выборки мы связываем два названия POI или случайным образом делим одни и те же POI и разделяем их с помощью SEP для многозадачного обучения: заполняем пропущенные слова Полная сумма предсказывает принадлежат ли две строки текста одной и той же POI. После экспериментов было обнаружено, что модель предварительного обучения BERT-POI на данных POI примерно на 20% выше, чем модель BERT-Google, выпущенная Google.
Кроме того, используя предварительно обученную модель для последующих задач распознавания атрибутов, по сравнению с BERT-Google, BERT-POI улучшает запоминание основного имени, названия филиала и сферы деятельности на 3-6%.
На следующем рисунке показана схема процесса нашей предварительной подготовки:
Затем мы точно настраиваем предварительно обученный BERT-POI, чтобы извлечь особенности слоя уровня предложения.
2.1.2 Извлечение текстовой корреляции на втором этапе
Первый этап извлекает функции одной текстовой строки, как добиться контекстной ассоциации, мы добавили модуль второго этапа, структура модели выглядит следующим образом:
Второй этап в основном использует BILSTM (двунаправленный LSTM) для обработки выходных данных первого этапа, который может изучать текущие текстовые функции и другие текстовые функции на табличке для устранения двусмысленности.
3. Деловой эффект
После того, как табличка семантически понята, формулируется стратегия генерации имени в соответствии с конкретным типом вывода. Например: для одного владельца + табличка с шумом мы используем основное имя в качестве имени POI, а для одного владельца + название филиала + бизнес-характер + табличка с шумом мы проанализируем структуру основного имени, чтобы увидеть если деловой характер нужно сращивать.
На следующем рисунке показана часть нашей текущей стратегии сплайсинга для понимания семантики бляшек и имен:
4. Резюме
В настоящее время точность модуля понимания семантики бизнес-табличек составляет более 95%, что играет важную роль в автоматическом создании имен POI. Модуль семантического понимания торговых табличек является лишь частью автоматизации имен POI.В автоматизации названий POI он также включает такие модули, как фильтрация шумовых табличек, прикреплены ли таблички к зданиям, конфиденциальные категории, отсутствующий текст, генерация имени и ошибка в названии. коррекция. Мы будем более глубоко изучать мультимодальность графики и текста, больше применять ее в наших сценариях реальной жизни и производить больше данных более высокого качества.