1 Предыстория проблемы
Точная и прямая способность задавать вопросы и отвечать на них очень важна для создания имиджа Сяобу как «знающего знания и лучше понимающего вас». В сценарии с голосовым помощником часто возникают такие проблемы, как полисемия или разговорная речь. Например: костюм Ли Бая, поэзия Ли Бая, игра Ли Бая. Первый Ли Бай относится к игровому персонажу, второй относится к поэту Ли Бай, а третий относится к песне Ли Бай. Как точно определить, что имеет в виду пользователь, и дать правильный ответ — вот задача, с которой сталкивается Xiaobu Assistant.Граф знаний является краеугольным камнем для понимания машинами объективного мира и обладает сильными выразительными способностями и гибкостью моделирования. В настоящее время созданный OPPO граф знаний OGraph насчитывает сотни миллионов сущностей и миллиарды взаимосвязей. Далее давайте посмотрим, как Xiaobu и Ograph столкнутся, решат проблему неоднозначности сущностей с помощью технологии связывания сущностей и помогут Xiaobu стать умным помощником, который может слушать, говорить и понимать вас лучше.
2 Введение в задачу
Связывание сущностей является базовой задачей в области НЛП и графа знаний, то есть для заданного китайского текста задача связывания описания (упоминания) сущности в нем с соответствующей сущностью в данной базе знаний.
Задача связывания сущностей была впервые предложена на конференции TAC в 2009 году. До популярности глубокого обучения в 2014 году связывание сущностей выполнялось с помощью статистических функций и методов на основе графов. В 2017 году была предложена схема Deep Joint, которая использует структуру Attention для семантического сопоставления для устранения неоднозначности сущностей. Позже команда добилась распознавания сущностей и устранения неоднозначности в той же модели за счет инноваций в структуре модели, и для устранения неоднозначности по-прежнему используется внимание. В 2018 году была предложена схема Deep Type для преобразования проблемы устранения неоднозначности в классификацию сущностей.После получения категории сущности Link Count использовался для определения сущности, которая должна быть связана. В 2020 году стали популярными предварительно обученные языковые модели.Решение Entity Knowledge использует большое количество корпусов и мощных предварительно обученных моделей для связывания сущностей в виде аннотации последовательности.
3 технических решения
Связывание сущностей обычно делится на три подзадачи: распознавание сущностей, вызов сущностей-кандидатов и устранение неоднозначности сущностей.
3.1 Распознавание объектов
Функция распознавания объекта состоит в том, чтобы идентифицировать описание объекта (то есть упоминание) в запросе.Например, Ли Бай в том, кто является императором династии Ли Бай, является упоминанием, которое необходимо идентифицировать. В общем распознавании сущностей предметной области сущности имеют большую величину, множество типов и разнообразные выражения, поэтому схема должна учитывать как эффективность, так и обобщение.
Xiaobu Assistant разработал распознавание сущностей на основе словаря, используя собственный инструмент сопоставления Word Parser, который имеет преимущества перед инструментами с открытым исходным кодом с точки зрения производительности и функций.
Ссылка на объект не заботится о типе объекта, поэтому распознавание объекта может использовать режим аннотации метки B / I или указателя.В то же время, чтобы улучшить богатство входной информации, лексическая информация вводится как функция дополнение, и тестируются такие структуры, как Lattice LSTM и FLAT Эффект распознавания улучшается примерно на 1%.
3.2 Отзыв объекта-кандидата
Цель отзыва сущностей-кандидатов состоит в том, чтобы использовать упоминание для напоминания всех возможных сущностей-кандидатов, но в Интернете существует большое количество прозвищ, омофонов и разговорных выражений, таких как прозвища и псевдонимы, такие как Цуанфу и Доусэн, а также будет выражение такие ошибки, как пухлый Ultraman, Ultraman Tractor и Qianya Collection, не могут быть отозваны без сопоставления псевдонимов с правильными сущностями. В голосовой сцене нет прямой обратной связи от пользователей, и невозможно добывать информацию через клики пользователей, такие как поиск, поэтому добыча псевдонимов сущностей довольно сложна.
В соответствии с характеристиками проблемы мы построили два набора решений.Общий поиск псевдонимов использует извлечение информации в качестве основного режима для создания вторичного процесса анализа и в полной мере использует информацию описания, информацию псевдонимов и информацию о взаимосвязях в OGraph. мои псевдонимы.
Для анализа псевдонимов, таких как ошибки пользовательского ввода, омофоны и почти звуки, Assistant Xiaobu впервые разработал процесс обнаружения псевдонимов, основанный на кластеризации признаков. Этапы майнинга следующие:
1) Фильтрация запросов: с помощью методов фильтрации ключевых слов домена и фильтрации журналов поисковых кликов запросы, которые могут содержать псевдонимы для извлечения, отфильтровываются из поисковых запросов пользователей и онлайн-запросов Xiaobu Assistant.
2) Распознавание сущностей: используйте технологию распознавания сущностей для идентификации сущностей из запроса, подлежащего добыче. Модель распознавания сущностей получается с помощью общей модели распознавания сущностей + тонкой настройки вертикальной области.
3) Построение признаков предметной области: поскольку псевдонимы сущностей, полученные непосредственно в результате распознавания сущностей, неточны и не связаны со стандартными именами сущностей, необходимо сконструировать признаки предметной области, чтобы связать добытые псевдонимы сущностей со стандартными именами сущностей. В соответствии с характеристиками сцены мы выбрали радикальные черты и черты пиньинь.
4) Кластеризация функций: используйте метод кластеризации, чтобы связать добытые псевдонимы сущностей и стандартные имена сущностей. С помощью этого решения для майнинга были получены сотни тысяч псевдонимов сущностей с точностью более 95%, что решило проблему высокочастотных онлайн-псевдонимов.
3.3 Многозначность сущностей
Устранение неоднозначности сущностей является наиболее важным шагом в связывании сущностей.Сутью устранения неоднозначности является сортировка.Путем сортировки сущностей-кандидатов получается ранговая оценка каждой сущности-кандидата, и выбирается окончательный результат. Устранение неоднозначности сущностей имеет следующие основные проблемы:
1) В сценарии с голосовым помощником это в основном короткий текст, поэтому контекстные функции отсутствуют, и для устранения неоднозначности необходимы дополнительные функции.
2) При устранении неоднозначности мы не можем устранять неоднозначность только за счет семантических признаков, но и полностью учитывать глобальные признаки устранения неоднозначности.Например, Энди Лау в «Энди Лау прочитал лекцию для студентов, сравнивая бомбы с руками девушек», с семантической точки зрения , профессор Университета Цинхуа Энди Лау Более в соответствии, это на самом деле название статьи актера Энди Лау и «Эксперт по обезвреживанию бомб».
3) На графике есть невыровненные объекты, что затрудняет устранение неоднозначности модели и подвержено ошибкам маркировки корпуса. Например, Китай и Китайская Народная Республика являются двумя объектами на некоторых картах с открытым исходным кодом, в результате чего некоторые правильно обозначают объект Китай в обучающем наборе, а некоторые правильно обозначают объект Китайская Народная Республика.
В ответ на проблемы, упомянутые выше, мы начинаем с подготовки данных, выбора модели, оптимизации модели и т. д. и решаем эти проблемы с помощью целевой оптимизации.
3.3.1 Подготовка данных
При построении выборок устранения неоднозначности мы предоставляем модели как можно больше информации, и выборки состоят из трех частей: выборки запросов, выборки сущностей и статистические признаки.
Построение образца запроса: при вводе образца запроса информация о местоположении упоминания передается в модель, чтобы модель могла определить конкретное местоположение упоминания в запросе. Поэтому будет введен идентификатор #, а к обеим сторонам упоминания будет добавлен единый идентификатор "#" Образец следующий:
Образец описания сущности: Образец сущности должен содержать характеристики сущности, для устранения неоднозначности В первой версии образца сущности мы разработали соединение упоминания и стандартного имени, чтобы указать, являются ли стандартное имя и упоминание то же самое; построено "Тип: тип объекта" "Это описание предоставляет информацию о типе объекта; в то же время добавляется тройная информация описания объекта и графа. Во втором издании мы напрямую преобразовали признак того, совпадают ли стандартное имя и упоминание, в текстовое описание «одинаковое/различное» и добавили признак «не/изизм». производительность улучшилась примерно на 2%.
Построение выборки статистических признаков: чтобы избежать того, чтобы модель устранения неоднозначности фокусировалась только на семантических признаках, мы подсчитывали статистические признаки, такие как признаки совместного появления запроса и объекта, популярность, богатство и упоминание признаков совместного появления в качестве входных данных модели, чтобы помочь в глобальном анализе. устранение неоднозначности.
3.3.2 Выбор модели
При обучении сортировке существует три распространенных режима: точечный, попарный и список.Для задачи сортировки устранения неоднозначности объектов, для которой требуется только TOP1, нет необходимости рассматривать отношения порядка между объектами-кандидатами, а только глобальную корреляцию, поэтому мы выбрал поточечный метод.
Обобщая предыдущие модели устранения неоднозначности, Deep Joint начинается с сортировки, а Deep Type начинается с классификации, обе из которых достигли хороших результатов, что указывает на то, что задачи классификации и сортировки полезны для устранения неоднозначности Поэтому мы разработали многозадачность в соответствии с характеристики задачи.Структура модели выполняет сортировку и классификацию одновременно.Две задачи совместно используют параметры модели,обучаются вместе и оптимизируют функцию потерь вместе.Обмен информацией задачи сортировки и задачи классификации,модель может работать лучше.Функция потери многозадачности выглядит следующим образом.
Чтобы лучше интегрировать статистические признаки, мы напрямую соединили встраивание статистических признаков с вектором признаков для сортировки.
В конце концов, структура нашей модели выглядит следующим образом: сплайсинг образцов запросов и сущностей, ввод предварительно обученной языковой модели и сращивание вектора положения CLS и встраивания статистических признаков в качестве вектора признаков. Задача сортировки вводит вектор признаков в полносвязный слой, а затем, наконец, выводит оценку в интервале [-1,1] после tanh.Чем выше оценка, тем больше вероятность, что это целевой объект. Задача классификации вводит вектор признаков в полностью связанный слой и выводит оценки каждой классификации через слой softmax.
В результате экспериментов эффект многозадачной модели связывания объектов, как правило, лучше, чем у однозадачной модели Конкретный F1 показан в следующей таблице.
3.3.3 Оптимизация модели
Для того, чтобы понять, на какие входные признаки обращает внимание модель, визуализируется модель с помощью метода визуализации взаимной информации, визуализируется важность каждого слова, чем темнее цвет, тем выше важность. Посредством визуализации обнаружено, что модель имеет тенденцию фокусироваться на типе объекта и сегменте, используемом для различения объекта, например, медленное питание, еда, метод приема пищи, ветчина в примере 1, Сэнди, Губка Боб Квадратные Штаны, переключаемый источник питания. в примере 2. Например, три вида персонажей, расы, мечты о трех королевствах и т. д. Можно увидеть, что все функции, на которые обращает внимание многозадачная модель, полезны для устранения неоднозначности.
Уверенное обучение (CL) — это алгоритмическая основа для выявления ошибок меток и описания шума меток. В ответ на проблему маркировки ошибок, согласно идее доверительного обучения, 5 моделей обучаются на исходных данных в методе n-flod, и эти модели используются для прогнозирования меток исходного обучающего набора, и затем метки, выдаваемые моделями 5, объединяются как настоящие метки.В исходном обучающем наборе образцы, чьи реальные метки не соответствуют исходным меткам, очищаются.Очищенные образцы составляют 3%, из которых 80%+ неправильно маркируются.
Состязательное обучение относится к методу построения состязательных выборок и участию в обучении модели в процессе обучения модели. Во время обычного обучения, если направление градиента крутое, небольшое отклонение может иметь большое влияние. Чтобы предотвратить такие возмущения, состязательное обучение использует возмущенные состязательные выборки для атаки во время обучения модели, тем самым повышая надежность модели. Видно, что эффект FGM и PGD для генерации состязательных выборок значительно улучшен.
4. Применение технологии
4.1 Приложение в Xiaobu Assistant
В сценарии помощника Xiaobu пользователи возлагают большие надежды на интеллект голосового помощника, и они будут задавать различные интересные вопросы, такие как вопросы с несколькими переходами и запросы на отношения шести степеней. С помощью технологии связывания сущностей Xiaobu Assistant может точно определить, на что ссылается пользователь, а с помощью технологии сопоставления подграфов он может обрабатывать вопросы и ответы сущностей, структурированные вопросы и ответы, вопросы и ответы с несколькими переходами, шесть- запрос отношения степени и т. д., охватывающий большинство структурированных вопросов.
Чтобы проверить способность Xiaobu Assistant связывать объекты, мы протестировали наш алгоритм как на самостоятельно созданном оценочном наборе, так и на оценочном наборе Qianyan, который может дать хорошие результаты.
4.2 Приложения в OGraph
Связывание сущностей можно применять не только в KBQA, но и в важной части процесса извлечения информации. Процесс извлечения информации Ograph использует модель извлечения информации Casrel и модель MRC, специально обученную для задач класса сущностей, и может получить большое количество троек-кандидатов.
После получения троек необходимо использовать технологию связывания сущностей, чтобы связать тройки с сущностями в базе знаний. Чтобы обеспечить отзыв ссылок сущностей, мы оптимизируем способность отзыва сущностей-кандидатов и в то же время используем добытую таблицу псевдонимов сущностей и систему поиска ES для отзыва, чтобы обеспечить эффект ссылки и произвести миллионы троек через весь процесс.
5 Резюме
Благодаря изучению технологии связывания сущностей Xiaobu Assistant может лучше анализировать разговорные выражения, псевдонимы и двусмысленности различных сущностей С помощью других процессов KBQA и богатых запасов знаний OGraph он смог ответить на большинство поставленных вопросов. пользователями.Естественно, понимание языка сложно и долго, и эволюция помощника Сяобу никогда не остановится.
6 ссылок
1.Deep Joint Entity Disambiguation with Local Neural Attention. Octavian-Eugen Ganea, Thomas Hofmann.
2.Improving Entity Linking by Modeling Latent Entity Type Information,Shuang Chen, Jinpeng Wang, Feng Jiang, Chin-Yew Lin.
3.End-to-End Neural Entity Linking. Nikolaos Kolitsas, Octavian-Eugen Ganea, Thomas Hofmann.
4.Investigating Entity Knowledge in BERT with Simple Neural End-To-End Entity Linking, Samuel Broscheit.
5.Towards Deep Learning Models Resistant to Adversarial Attacks. A Madry, A Makelov, L Schmidt, D Tsipras.
6.Confident Learning: Estimating Uncertainty in Dataset Labels. Curtis G. Northcutt, Lu Jiang, Isaac L. Chuang.
7.Towards a Deep and Unified Understanding of Deep Neural Models in NLP. Chaoyu Guan, Xiting Wang, Quanshi Zhang, Runjin Chen, Di He, Xing Xie.
об авторе
FrankFan OPPO Старший инженер по алгоритмам НЛП
Занимаясь в основном работой, связанной с диалогами и графами знаний, он имеет богатый опыт исследований и разработок в области анализа сущностей, маркировки последовательностей, извлечения отношений, связывания сущностей и т. д., а также накопил более десяти патентов.
Чтобы получить больше интересного контента, отсканируйте код, чтобы подписаться на общедоступную учетную запись [OPPO Digital Intelligence Technology].