Нейросетевые методы работы с базами знаний для ответа на вопросы, ведения диалога и обработки текста тема диссертации и автореферата по ВАК РФ 00.00.00, кандидат наук Евсеев Дмитрий Андреевич

  • Евсеев Дмитрий Андреевич
  • кандидат науккандидат наук
  • 2023, ФГАОУ ВО «Московский физико-технический институт (национальный исследовательский университет)»
  • Специальность ВАК РФ00.00.00
  • Количество страниц 150
Евсеев Дмитрий Андреевич. Нейросетевые методы работы с базами знаний для ответа на вопросы, ведения диалога и обработки текста: дис. кандидат наук: 00.00.00 - Другие cпециальности. ФГАОУ ВО «Московский физико-технический институт (национальный исследовательский университет)». 2023. 150 с.

Оглавление диссертации кандидат наук Евсеев Дмитрий Андреевич

Введение

Глава 1. Использование баз знаний в диалоговых системах

1.1 Обзор баз знаний

1.2 Обзор диалоговых систем, использующих базы знаний

1.2.1 Индустриальные виртуальные ассистенты

1.2.2 Диалоговые ассистенты, разработанные командами-участниками Alexa Prize

1.3 Схема компонентов диалогового ассистента DREAM, использующих базы знаний

1.4 Краткий обзор нейросетевых моделей для связывания текста с базами знаний и генерации реплик с использованием баз знаний

1.5 Выводы по разделу

Глава 2. Методы связывания текстов с базами знаний

2.1 Извлечение сущностей (Entity Detection)

2.2 Связывание сущностей (Entity Linking)

2.2.1 Извлечение возможных сущностей

2.2.2 Разрешение неоднозначности сущностей с использованием текстовых описаний

2.2.3 Разрешение неоднозначности сущностей с использованием связей в графе Wikidata

2.2.4 Тестирование на датасете WNED-WIKI

2.3 Извлечение информации о пользователе из реплики

2.4 Извлечение фактов из баз знаний

2.4.1 Wiki Parser

2.4.2 Использование аннотаций в сценариях диалогов

2.4.3 Извлечение фактов для шаблонных реплик в тематических сценариях

2.4.4 Извлечение релевантных фактов для ответа на

фактоидные вопросы и генерации реплик

2.5 Выводы по разделу

Глава 3. Ответы на фактоидные вопросы

3.1 Ответ на вопросы по тексту

3.1.1 Методы нахождения ответа в параграфе

3.1.2 Сервис Text QA в DREAM

3.2 Ответ на вопросы по графу знаний

3.2.1 Схема KBQA

3.2.2 Определение шаблона SPARQL-запроса с помощью

модели классификации

3.2.3 Определение шаблона SPARQL-запроса на основе синтаксического разбора вопроса

3.2.4 Relation Ranking (определение наиболее вероятных отношений)

3.2.5 Path Ranking (определение наиболее вероятных путей в графе)

3.2.6 Эксперименты с обучением мультиязычного BERT в задачах извлечения сущностей и определения наиболее подходящих отношений для SPARQL-запроса

3.2.7 Результаты вопросно-ответной системы на датасете LC-QuAD

3.2.8 Результаты вопросно-ответной системы на датасете LC-QuAD

3.2.9 Результаты версии вопросно-ответной системы для

русского языка на датасете RuBQ

3.2.10 Направления дальнейшей работы

3.3 Программный модуль для ответа на фактоидные вопросы

(Factoid QA)

3.4 Выводы по разделу

Глава 4. Ведение диалога с использованием баз знаний

4.1 Использование аннотаций Entity Detection и Wiki Parser для

извлечения сущностей и заполнения слотов в DFF DSL

4.2 Обсуждение темы по страницам Википедии и wikiHow

4.3 Управляемая генерация реплик с использованием фактов

4.3.1 Проекционные слои внимания

4.3.2 Смешивающий слой

4.3.3 Основная ветка

4.3.4 Классификаторы диалоговых актов и сентимента

4.3.5 Сравнение точности генерации реплики для заданного атрибута при предобучении и дообучении модели

4.3.6 Генерация реплики с определенным содержанием

4.3.7 Эксперименты с Blenderbot

4.3.8 Knowledge Grounding Skill

4.4 Выводы по разделу

Глава 5. Использование баз знаний для нахождения ошибок в

документах

5.1 Нахождение фактологических ошибок в исторических сочинениях

5.1.1 Нахождение в тексте исторических событий, явлений или процессов

5.1.2 Нахождение в тексте ролей исторических личностей

5.1.3 Нахождение в тексте указания причинно-следственных связей событий и влияния событий на дальнейшую историю117

5.1.4 Нахождение ошибок в датах в исторических сочинениях

5.2 Нахождение фактологических ошибок в сочинениях по литературе118

5.3 Тестирование моделей нахождения ошибок в сочинениях

5.4 Выводы по разделу

Заключение

Список сокращений и условных обозначений

Словарь терминов

Список литературы

Список рисунков

Список таблиц

Приложение А. Примеры данных, извлекаемых компонентами

для привязки текстов к базам знаний

А.1 Связь тегов модели классификации подстрок и типов сущностей . 146 А.2 Пример аннотаций сервиса для связывания сущностей в тексте с

базами знаний

А.3 Примеры заголовков параграфов из страниц Википедии,

извлекаемых компонентом Fact Retrieval

А.4 Примеры параграфов, извлекаемых компонентом Fact Retrieval

Приложение Б. Типы вопросов из датасета RuBQ2

Рекомендованный список диссертаций по специальности «Другие cпециальности», 00.00.00 шифр ВАК

Введение диссертации (часть автореферата) на тему «Нейросетевые методы работы с базами знаний для ответа на вопросы, ведения диалога и обработки текста»

Введение

В настоящее время диалоговые ассистенты (Алиса, Google Assistant, Alexa) широко используются в мобильных устройствах и смарт-колонках. Для понимания реплики пользователя и генерации содержательных ответных реплик диалоговый ассистент должен обладать знаниями о мире. В связи с этим одной из важнейших задач искусственного интеллекта является создание методов для анализа содержания реплики на основе знаний в памяти ассистента, а также для генерации реплик с использованием фактов в памяти. В большинстве диалоговых ассистентов [1—4], в том числе и в DREAM [5], в разработке которого принимал участие автор диссертационного исследования, в качестве источника фактов применяются базы знаний.

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

Первый этап анализа содержания реплики - извлечение сущностей, определение, какие подстроки в тексте соответствуют сущностям. Далее выполняется связывание сущностей с базой знаний - нахождение в базе знаний элементов, которые соответствуют подстрокам с сущностями в реплике пользователя. Информация о типах из базы знаний для найденных сущностей может использоваться для включения определенных тематических сценариев. Также идентификация в базе знаний сущности, соответствующей подстроке, позволяет извлекать факты о сущности.

Для параллельного ведения диалога со многими пользователями необходим запуск нескольких копий сервиса на вычислительном кластере. Большинство систем, которые достигают SOTA качества связывания сущностей [6; 7], занимают достаточно много памяти, а легкие системы [8; 9] значительно уступа-

ют ресурсоемким моделям по качеству. Таким образом, необходима разработка системы с низким потреблением памяти (RAM - менее 3 Гб, GPU - менее 2 Гб) для диалогового ассистента DREAM.

Для ответа на фактоидные вопросы пользователя применяются вопросно-ответные системы. Вопросно-ответные системы могут использовать в качестве источников набор текстовых документов [10—12] или графовые базы знаний [13; 14]. Преимущество графовых баз знаний состоит в структурированном представлении фактов по сравнению с текстом, более удобном для ответа на вопросы, ответ на которые получается путем объединения нескольких фактов, а также независимости узлов и ребер графа от языка.

Один из подходов к задаче ответа на сложные вопросы по графу знаний - перевод вопроса на естественном языке в SPARQL-запрос к базе знаний, выполнение которого дает ответ. В системах WQAqua [15] и QAnswer [16] происходит заполнение возможных SPARQL-запросов сущностями из базы знаний, найденными по n-граммам из вопроса, далее - определение наиболее вероятных запросов на основе различных параметров. В системе QAmp [14] сущности, извлеченные из вопроса с помощью рекуррентной сети, связываются с базой знаний, и по алгоритму обмена сообщениями определяется узел графа, который является ответом на вопрос. В системе NSQA [17] реализовано формирование графа, отражающего синтаксическую структуру вопроса, связывание сущностей и отношений моделями на основе архитектуры Трансформер [18] и построение SPARQL-запроса. Датасеты LC-QuAD [19] и RuBQ2.0 [20] наиболее часто используются разработчиками систем для конвертации вопросов в SPARQL-запросы.

Системы WQAqua и QAnswer показывают низкое качество ответа на сложные вопросы, системы QAmp и NSQA работают только с базой знаний DBPedia. В связи с этим, требуется разработать архитектуру системы для ответа на вопросы по графу знаний (Knowledge Base Question Answering, KBQA), которая приведет к улучшению качества на датасетах LC-QuAD и RuBQ2.0, и будет поддерживать базу Wikidata [21], содержащую наибольшее количество фактов. Для интеграции в диалоговый ассистент DREAM архитектура должна быть модульной, в которой каждый из компонентов может быть заменен на другой при условии сохранения формата входных и выходных данных, чтобы можно было

использовать имеющиеся в DREAM аннотаторы (сервисы для анализа реплик) для работы с базами знаний.

Текстовые базы данных содержат большее количество фактов по сравнению с графовыми базами знаний, поэтому широко используются в диалоговых системах в качестве источников для генерации реплик сценарными и нейросе-тевыми компонентами. Для ответа на фактоидные вопросы и генерации реплик с заданным содержанием производится извлечение фактов, семантически близких к истории диалога (нескольким последним репликам). В существующих открытых диалоговых ассистентах [1—3] в компонентах для извлечения релевантных фактов используются индексы, требующие большого объема ресурсов [22; 23]. Таким образом, необходима интеграция методов для уменьшения размера индекса [24] в диалоговый ассистент, а также их дальнейшая оптимизация для обеспечения высокой скорости извлечения параграфов.

Сценарные компоненты в диалоговом ассистенте предназначены для ведения диалога на определенные темы, предсказуемого на несколько шагов вперед. При разработке сценария диалога необходимо вручную прописывать ответные реплики для каждого из состояний, что отнимает много времени. Поэтому, как правило, трудно предусмотреть сценарий диалога для всех возможных тем, интересующих пользователя. Автором был разработан программный модуль DFF Wiki Skill для ведения диалога на произвольную тему (например, космос) по текстовым страницам, что позволяет поддерживать связный диалог из нескольких шагов без ручного проектирования сценария.

Для разработки сценариев диалога используются предметно-ориентированные языки (domain-specific language, DSL), которые позволяют определять состояния в диалоге и переходы между состояниями. Сущности, извлеченные из реплики, используются для задания условий перехода в состояния и заполнения слотов в ответных репликах. В большинстве фреймворков, таких как RASA или JAICP, требуемые сущности определяются только с помощью тегов NER (именованных сущностей) или регулярных выражений. Автором были разработаны компоненты фреймворка Dialog Flow Framework (DFF) для связывания сущностей с базой знаний, получения триплетов из базы и элементы языка разметки DFF DSL для интеграции диалогового сценария с базами знаний. Использование не только тегов модели извлечения сущностей, но и триплетов из

Wikidata [21] позволяет более удобным способом задавать в сценарии сущности, которые нужно извлечь из реплики или вставить в слот.

В большинстве диалоговых систем для генерации реплик используются вручную написанные сценарии, основанные на конечных автоматах (в диалоговом ассистенте DREAM для разработки сценариев применяется Dialog Flow Framework). Для каждой реплики пользователя система определяет состояние с определенной ответной репликой, далее происходит переход к следующему состоянию диалога, но реплика может не соответствовать ни одному из условий для имеющихся состояний. В таких случаях оказываются полезными генеративные модели. Для ведения диалога в нужном направлении в модели добавляется возможность генерации реплики для заданных атрибутов (например, диалогового акта или сентимента) [25; 26] или генерации реплики с использованием фактов в текстовом виде [27; 28]. При этом существующие генеративные модели не способны формировать реплику, одновременно учитывая и требуемые атрибуты, и содержание реплики. Таким образом, необходима разработка подхода для управляемой генерации реплик в диалоге для заданных атрибутов реплики, таких как диалоговый акт и сентимент, и фактов из базы знаний.

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

Для достижения поставленной цели необходимо было решить следующие задачи:

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

2. Предложить методы для конвертации вопроса на естественном языке в SPARQL-запрос, выполнение которого с использованием базы знаний дает ответ на вопрос.

3. Обучить и опубликовать модели для ответа на вопросы по тексту и графу знаний.

4. Разработать компоненты диалоговой системы для извлечения релевантных фактов из баз знаний, используемых в различных программных модулях для генерации реплик.

5. Разработать и опубликовать компоненты для извлечения сущностей, связывания и получения дополнительной информации о них из базы знаний для фреймворка построения диалоговых сценариев.

6. Предложить элементы языка разметки для задания в сценарии диалога сущностей, извлекаемых из реплики, по тегам именованных сущностей и триплетам из базы знаний.

7. Разработать и опубликовать программный модуль для ведения диалога на определенную тему по текстовым страницам.

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

9. Разработать компоненты для фактологического анализа документов.

Научная новизна:

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

2. Предложены новые методы для конвертации вопроса на естественном языке в БРАН^Ь-запрос с помощью синтаксического разбора вопроса и классификации вопроса по типу БРАН^Ь-запроса, которые приводят к улучшению качества ответа на вопросы по базам знаний.

3. Обучены и опубликованы оригинальные нейросетевые модели для ответа на вопросы по тексту и графу знаний на английском и русском языке.

4. Разработаны и опубликованы компоненты с низким потреблением памяти для извлечения фактов из баз знаний, используемых в различных программных модулях для генерации реплик.

5. Предложен и разработан оригинальный сценарный программный модуль для ведения диалога на различные темы по текстовым страницам (Википедия, ш1кШош, новости или другие текстовые страницы, представленные в формате списка параграфов с заголовками).

6. Опубликованы компоненты фреймворка для разработки сценариев диалогов DFF для извлечения сущностей и связывания с Wikidata, а также элементы языка разметки DFF DSL для перехода в состояния диалога в зависимости от наличия в реплике сущности определенного типа и сохранения сущностей определенного типа в память для последующего заполнения слотов. Связывание сущностей с Wikidata и использование триплетов из Wikidata в сценарии позволяет более гибко задавать нужные сущности по сравнению с фреймворками, которые используют только типы NER.

7. Предложен новый подход и обучены модели для управляемой генерации реплик в диалоге на основе фактов с возможностью одновременного контроля нескольких атрибутов реплики.

Практическая значимость работы:

— предложенные методы для конвертации вопроса на естественном языке в SPARQL-запрос улучшают качество ответа на вопросы по графу знаний;

— разработанные модели для ответа на вопросы по тексту используются в качестве компонентов системы для получения объяснимых ответов в Институте системного программирования РАН, что подтверждено Актом о внедрении;

— предложенная архитектура системы для извлечения сущностей и связывания с базой знаний позволяет снизить потребление памяти системой;

— система для извлечения сущностей, вопросно-ответные системы по графу знаний и тексту, а также программный модуль для ведения диалога на различные темы по страницам Википедии были применены в диалоговой системе DREAM 1 в рамках конкурса Alexa Prize 4;

— система для извлечения сущностей реализована в качестве компонента фреймворка для разработки сценариев Dialog Flow Framework 2;

— модели для извлечения сущностей из текста и ответа на вопросы по графу знаний опубликованы в открытом доступе в библиотеке DeepPavlov 3, модель для управляемой генерации реплик для заданного

1 https://github .com/deeppavlov/dream

2https://github .com/deeppavlov/dialog_flow_sdk

3https://github .com/deeppavlov/DeepPavlov/tree/feat/kbqa_research/deeppavlov/configs/kb qa

диалогового акта и сентимента с использованием фактов - в репозито-

4

рии 4;

— по результатам данной работы оформлены свидетельства о государственной регистрации программ для ЭВМ №2021615808 «Программа для выявления содержательных ошибок и упоминаний исторических событий в тексте сочинений по истории», в которой используется система для извлечения сущностей из текста, №2021664168 «Среда для создания сценарных разговорных агентов», №2022616117 «Система для генерации реплик в диалоге по графу знаний Wikidata».

Методология и методы исследования. В данной работе были применены:

— основы теории вероятностей;

— методы машинного обучения и теории глубокого обучения;

— метод численного эксперимента;

— методы разработки на языках Python, Bash. Была выполнена разработка программного кода для библиотек с открытым исходным кодом DeepPavlov и DREAM.

Основные положения, выносимые на защиту:

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

2. Разработанные методы для построения SPARQL-запроса улучшают качество ответа на вопросы по базе знаний.

3. Опубликованные компоненты Dialog Flow Framework и элементы языка разметки DFF DSL за счет связывания сущностей с Wikidata и использования триплетов из Wikidata в сценарии позволяют более гибко задавать нужные сущности по сравнению с фреймворками, которые используют только типы NER.

4. Предложенная архитектура на основе проекционных слоев внимания (PALs) и метод обучения модели для управляемой генерации реплик в диалоге для заданного диалогового акта, сентимента и фактов приво-

4https://github .com/deeppavlov/controllable-generation

дят к лучшему контролю атрибутов реплики по сравнению с моделями, не использующими PALs.

Достоверность полученных результатов обеспечивается экспериментами на наборах данных для ответа на вопросы и извлечения сущностей, а также применением в соревновании «Alexa Prize Challenge 4» 5. Результаты находятся в качественном соответствии с результатами, полученными другими авторами.

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

— Конференция «AI Journey», стендовый доклад «Knowledge Base Question Answering», Dmitry Evseev, Mikhail Arkhipov, 8-9 ноября 2019, Москва.

— XXVI Международная конференция по компьютерной лингвистике и интеллектуальным технологиям «Диалог», доклад «SPARQL query generation for complex question answering with BERT and BiLSTM-based model», Evseev Dmitry, Arkhipov Mikhail, 17 - 20 июня 2020, Москва.

— Конференция ML Conf EU, доклад «How to build multiskill AI assistant with DeepPavlov», Kornev Daniel, Serikov Oleg, Evseev Dmitry, et al. 3 ноября, 2020, онлайн.

— Конференция IDP-2020 «SPARQL query generation for complex question answering with BERT and BiLSTM-based model», 8-11 декабря 2020, Москва.

— Конференция EMNLP-2021, CODI 2021: 2nd Workshop on Computational Approaches to Discourse, доклад «Discourse-Driven Integrated Dialogue Development Environment for Open-Domain Dialogue Systems», Kuznetsov Denis, Evseev Dmitry et al., 10-11 ноября 2021, Пунта-Кана.

— XXVIII Международная конференция по компьютерной лингвистике и интеллектуальным технологиям «Диалог», доклад «Lightweight and Accurate System for Entity Extraction and Linking», Evseev Dmitry, 15 -18 июня 2022, Москва.

— XXVIII Международная конференция по компьютерной лингвистике и интеллектуальным технологиям «Диалог», доклад «Controllable Multiattribute Dialog Generation with PALs and Grounding Knowledge», Evseev Dmitry, Nagovitsin Mark, Kuznetsov Denis, 15 - 18 июня 2022, Москва.

5https://www.amazon.science/alexa-prize/socialbot-grand-challenge/2020

— Конференция «Нейроинформатика-2022», воркшоп «Приложения нейронных сетей», стендовый доклад «Controllable Multi-attribute Dialog Generation with PALs and Grounding Knowledge», Evseev Dmitry, Nagovitsin Mark, Kuznetsov Denis, 17 октября 2022, Долгопрудный.

— Открытая конференция ИСП РАН, воркшоп «Системы доверенного искусственного интеллекта», доклад «Генерация развернутых ответов на вопросы по тексту и графу знаний», Евсеев Д., Сурков В., 1-2 декабря 2022, Москва.

— Конференция IDP-2022, доклад «Использование генеративных моделей в вопросно-ответных системах», Сурков В., Евсеев Д., 6-9 декабря 2022, Москва.

Личный вклад. Результаты, представленные в работах [29], [30], [31] и [32], получены автором самостоятельно. В работах [33] и [34] автором были реализованы аннотаторы для извлечения сущностей из реплики и связывания с базой знаний Wikidata для использования в фреймворке для разработки сценариев диалогов Dialog Flow Framework. В работе [5] автором были разработаны компоненты диалогового ассистента DREAM для извлечения сущностей, связывания сущностей с базой знаний Wikidata, извлечения фактов из Wikidata и Википедии, программные модули для ответа на фактоидные вопросы и обсуждения сущностей по страницам Википедии. В [35] автором были проведены эксперименты с обучением Blenderbot генерации реплик с заданным диалоговым актом и сентиментом с использованием фактов. В [36] автором были разработаны сервисы для выявления содержательных ошибок в исторических сочинениях. Программа ЭВМ [37] разработана автором самостоятельно. В [38] автором были разработаны компоненты для извлечения сущностей из текста и последующего связывания с базами знаний.

Публикации. Основные результаты по теме диссертации изложены в 7 печатных изданиях, 2 из которых издано в журналах, индексируемых RSCI, 4 -в периодических научных журналах, индексируемых Scopus. Зарегистрированы 4 программы для ЭВМ.

Объем и структура работы. Работа состоит из введения, 5 глав, заключения и приложения. Полный объем диссертации составляет 150 страниц, включая 26 рисунков и 21 таблицу. Список литературы содержит 124 наименования.

Глава 1. Использование баз знаний в диалоговых системах

1.1 Обзор баз знаний

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

Freebase [39] — база знаний, содержащая метаданные, собранные интернет-сообществом, в данный момент не поддерживается. Целью Freebase являлось создание глобального ресурса, который позволит людям (и машинам) иметь более эффективный доступ к общеизвестной информации. Разрабатывалась американской компанией Metaweb, запущена публично в марте 2007 г. Компания была куплена Google в 2010-м году, и её база знаний Freebase легла в основу графа знаний Google Knowledge Graph.

Wikidata [21] — это совместно редактируемая мультиязычная база знаний. Для многих страниц Wikidata существует соответствующая страница Википе-дии. Проект появился в 2012 году, разработкой проекта занимается Wikimedia Deutschland.

Основные свойства Wikidata:

— Свободная. Данные можно изменять, копировать, распространять и обрабатывать, а также использовать в коммерческих целях.

— Совместно наполняемая. Информация вносится и поддерживается редакторами Wikidata, а также ботами.

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

— Вторичная база данных. В Wikidata хранятся не только сами утверждения, но и их источники, а также ссылки на соответствующие элементы

других баз знаний (например, для сущности Q649 «Москва» есть соответствующая сущность Freebase /m/04swd).

— Высокая степень структурированности упрощает обработку данных различными внешними сервисами и проектами Викимедиа.

— Наличие программного интерфейса (API) для доступа к данным Wikidata.

Факты в Wikidata хранятся в виде утверждений (Рисунки 1.1, 1.2), которые содержат свойство объекта (например, «население») и значения свойства (например, «11977988»). К примеру, неформальное утверждение «лимон — желтый» (англ. «lemon is yellow») можно представить в виде утверждения из свойства P462 (цвет) - https://www.wikidata.org/wiki/PropertyiP462 со значением Q943 («желтый») - https://www.wikidata.org/wiki/Q943 для объекта Q1093742 («лимон») - https://www.wikidata.org/wiki/Q1093742.

Рисунок 1.1 — Пример сущности в Wikidata.

Свойство объекта может соответствовать нескольким значениям. Например, свойство «occupation» (профессия) у Пьер-Симона Лапласа связано со зна-

Рисунок 1.2 — Пример утверждения в Wikidata.

чениями «математик», «астроном», и т. д. для перечисления всех его видов деятельности.

Значения могут быть разных типов, включая другие записи Wikidata, числа, строки, фото- или видеофайлы. Для каждого из свойств есть список допустимых типов значений. Например, для свойства P106 («род занятий») значение должно быть типа «Item». Также для свойств могут быть более сложные правила их использования («constraints»). Например, свойство P571 «дата основания» имеет «ограничение на единственное значение».

Для предоставления дополнительной информации о значениях утверждений используются квалификаторы (англ. qualifiers). Например, у сущности в Wikidata Q7200 («А. С. Пушкин») значение Q649 («Москва») для свойства P551 «место жительства» уточняется квалификатором (дата начала, 6 сентября 1833).

DBpedia [40] — краудсорсинговый проект, в ходе которого происходит извлечение и публикация под свободной лицензией структурированной фактической информации из Википедии. Проект был запущен в 2007 году в Свободном университете Берлина и Лейпцигском университете, в сотрудничестве с фирмой OpenLink Software.

YAGO (Another Great Ontology) [41] - это открытая база знаний, разработанная в Институте информатики Макса Планка в Саарбрюккене. Она автоматически извлекается из Википедии и других источников.

По состоянию на 2019 год YAGO3 содержит информацию о более чем 10 миллионах сущностей и более 120 миллионов фактов об этих сущностях. Информация в YAGO извлекается из Wikipedia (например, категории, перенаправления, информационные блоки), WordNet (например, синсеты, гипонимия) и GeoNames. Точность YAGO была вручную оценена выше 95% на выборке фактов.

В данной работе в качестве базы знаний для ответа на фактоидные вопросы и получения фактов о сущностях для использования в сценариях диалогов была выбрана Wikidata, так как:

— данная база знаний содержит наибольшее количество триплетов по сравнению с другими базами (сравнение баз знаний представлено в Таблице 1);

— в Wikidata информация о сущностях хранится в виде утверждений, что удобно при использовании Wikidata для ответа на вопросы;

— в Wikidata постоянно добавляются новые сущности;

— Wikidata имеет дампы (файлы с содержимым базы знаний) в удобном формате для скачивания и обработки.

База знаний DBpedia YAGO Wikidata OpenCyc NELL

Версия 2016-04 YAGO3 2016-08-01 2016-09-05 08m.995

# сущностей 5,109,890 5,130,031 17,581,152 118,125 1,974,297

# аксиом 397,831,457 1,435,808,056 1,633,309,138 2,413,894 3,402,971

средняя степень входа 13.52 17.44 9.83 10.03 5.33

средняя степень исхода 47.55 101.86 41.25 9.23 1.25

# классов 754 576,331 30,765 116,822 290

# отношений 3,555 93,659 11,053 165 1,334

Таблица 1 — Сравнение различных баз знаний.

1.2 Обзор диалоговых систем, использующих базы знаний

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

1.2.1 Индустриальные виртуальные ассистенты

Google Assistant (Google Ассистент) — облачный сервис персонального ассистента, разработанный компанией Google и представленный на презентации Google I/O 18 мая 2016 года. Основные функции Google Assistant [42]:

— Прогноз погоды: Диалоговая система способна отвечать на вопросы о текущей погоде: «Какой будет погода через неделю?» или «В среду выпадет снег?».

— Ответ на общие вопросы. Например, на вопрос «В каком городе находится Эрмитаж?» он даст ответ «Санкт-Петербург». Для поиска фактов используется Google Knowledge Graph, который был построен на основе базы знаний Freebase, Википедии и других источников.

— Можно добавлять мероприятия в свой Google-календарь.

— С помощью голосовых команд можно задать навигационные запросы, например: «Где находится ближайший магазин?» или «Построй маршрут домой».

— С помощью голосового ассистента можно отправлять сообщения SMS, E-Mail и WhatsApp.

Cortana — голосовой ассистент с элементами искусственного интеллекта от Microsoft, представленный во время конференции Build в Сан-Франциско 2 апреля 2014 года. Cortana способна определять текущие потребности пользователей. Персональному ассистенту можно дать доступ к списку контактов,

электронной почте, истории браузера для использования этих данных при определении, какая функция нужна пользователю в данный момент. Cortana заменяет стандартную поисковую систему и вызывается нажатием кнопки «Поиск». Нужный запрос можно ввести вручную или задать голосом. В качестве источников для поиска информации используются система Bing, Foursquare и личные файлы пользователя. Также Cortana может поддерживать беседу, петь и рассказывать анекдоты, напоминать о событиях в календаре.

Похожие диссертационные работы по специальности «Другие cпециальности», 00.00.00 шифр ВАК

Список литературы диссертационного исследования кандидат наук Евсеев Дмитрий Андреевич, 2023 год

литературе

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

подготовки к ЕГЭ. База знаний содержит триплеты со следующими отношениями:

- http://www.wikidata.org/prop/direct/P50 (автор произведения);

- http://www.w3.org/2000/01/rdf-schema#label (название сущности);

- http://www.wikidata.org/prop/direct/P136 (жанр);

- http://www.wikidata.org/prop/direct/P571 (год публикации);

- http://www.wikidata.org/prop/direct/P674 (герой произведения);

- citation (отношение, которого изначально не было в Wikidata, связывает произведение и ID цитаты из него);

- citation_text (связывает ID цитаты и текст цитаты).

Часть триплетов с авторами произведений, годом публикации, жанрами и героями уже были в наличии в Wikidata, другая часть была добавлена на основе данных из справочника для подготовки к ЕГЭ.

Сущности, извлеченные из текста, связываются с базой знаний. Далее в каждом из предложений происходит поиск следующих ошибок:

- упоминание в предложении названия литературного произведения и имени писателя, который не был автором данного произведения;

- упоминание в предложении названия литературного произведения неверного жанра;

- упоминание имени героя из произведения, которое не относится к теме сочинения (если при этом другое произведение не упоминается в предложении).

Цитаты извлекаются из текста с помощью регулярных выражений (происходит поиск фрагментов текста, выделенных кавычками). Далее происходит извлечение из базы знаний всех цитат, относящихся к данному произведению и поиск цитаты, наиболее близкой по расстоянию Левенштейна к найденному фрагменту текста. Если расстояние между одной из цитат из базы и фрагментом текста меньше порогового значения, но при этом фрагмент не совпадает полностью с цитатой, то данный случай рассматривается как ошибка в цитате.

5.3 Тестирование моделей нахождения ошибок в сочинениях

В задаче нахождения исторических событий тестовые данные представлены в виде текстов с В10-разметкой токенов.

В качестве метрики используется П, вычисление которой происходит так же, как и в задаче извлечения сущностей (формула 2.7). Обученная модель достигает П=0.81 в задаче нахождения в тексте подстрок с событиями (Таблица 18).

Компонент F1

Нахождение событий 0.81

Классификация ролей исторических личностей 0.8

Таблица 18 — F1 различных компонентов на тестовой выборке обучающих данных.

Также вычисляется точность определения количества событий в тексте. После извлечения подстрок с событиями подсчитывается их число (в сочинениях в датасете встречается от 0 до 2 событий). Точность вычисляется по формуле 5.1:

Nri qht event s

accuracy =-—=-

N total

где Nright events — число сочинений, для которых модель определила правильное количество событий, Ntotai — общее число сочинений. Разработанная модель достигает accuracy = 81.2 на датасете neznaika.info и accuracy = 100 на датасете ПРО//ЧТЕНИЕ (Таблица 19).

В задаче классификации ролей 2 класса: 1 — для правильно выделенной роли, 0 — для неправильно выделенной. В задаче классификации ролей модель на основе BERT достигает F1=0.8 (Таблица 18).

Вычисляется точность определения количества ролей в сочинении (от 0 до 2 в датасете) по формуле 5.1. Разработанная модель достигает accuracy = 54.4 на датасете neznaika.info и accuracy = 43.2 на датасете ПРО//ЧТЕНИЕ. Аналогично определяется точность нахождения количества причинно-следственных связей (в сочинениях встречается от 0 до 2) и количества упоминаний влияний событий на дальнейшую историю (Таблица 19).

(5.1)

Компонент neznaika.info ПРО//ЧТЕНИЕ

Нахождение событий 81.2 100

Нахождение в тексте ролей исторических личностей 54.4 43.2

Нахождение в тексте причин и следствий событий 38.2 51.3

Нахождение в тексте влияния событий на дальнейшую историю 64.7 43.2

Таблица 19 — Точность различных компонентов анализа сочинения на датасетах neznaika.info и ПРО//ЧТЕНИЕ.

5.4 Выводы по разделу

По результатам, полученным в данной главе, можно сделать следующие выводы:

Представлены модели для нахождения фактологических ошибок в сочинениях ЕГЭ по истории. В текстах выделяются следующие типы содержательных ошибок: неправильное указание роли исторической личности, неправильное указание причинно-следственных связей и ошибки в датах событий. Для детектирования исторических событий в тексте используется модель классификации токенов на основе BERT, даты выделяются с помощью регулярных выражений. Были составлены базы данных дат и причинно-следственных связей событий. Связывание событий с базой происходит путем поиска в индексе событий, название которых близко по tf-idf к извлеченной из текста подстроке события. Предложенные модели были обучены и протестированы на датасетах сочинений с сайта neznaika.info и ПРО//ЧТЕНИЕ.

Заключение

Основные результаты работы заключаются в следующем:

1. Представлен аннотатор диалогового ассистента DREAM для извлечения сущностей, который поддерживает больше типов сущностей (42 типа), чем в других диалоговых ассистентах-участниках Alexa Prize, что приводит к более гибкому использованию нужных сущностей в сценариях диалогов.

2. Разработана система для связывания сущностей из текста с базами знаний. Предложенная архитектура системы, в которой сущности хранятся в SQLite-базе данных, и разрешение неоднозначности сущностей реализовано с использованием связей между возможными сущностями в графе Wikidata, позволяет снизить потребление памяти системой.

3. Разработан аннотатор Fact Retrieval диалогового ассистента DREAM, в котором для извлечения фактов, семантически релевантных истории диалога, используются методы на основе векторизации параграфов бинарными эмбеддингами и удаления из индекса неинформативных параграфов. Одновременное использование данных двух методов позволяет уменьшить размер индекса параграфов более чем в 100 раз по сравнению с аннотаторами диалоговых ассистентов, основанными на векторизации параграфов эмбеддингами с действительными значениями компонент, и производить поиск в среднем за 0.5 секунды.

4. Предложены методы для конвертации вопроса на естественном языке в SPARQL-запрос с помощью синтаксического разбора вопроса и классификации вопроса по типу SPARQL-запроса, которые улучшают качество ответа на вопросы по графу знаний на датасете LC-QuAD с F1=0.44 у NSQA до F1=0.63 и на датасете RuBQ2.0 с accuracy=36.1 у SimBa до accuracy=53.1.

5. В связи с малым количеством данных в русскоязычном датасете RuBQ для ответа на вопросы по графу знаний, проведены исследования по переносу мультиязычного BERT на русский язык для подзадач KBQA: извлечение сущностей из вопросов и определение наиболее вероятных отношений. Эксперименты показали, что при переносе с английского

языка на русский без дообучения качество сравнимо с качеством моделей, обученных на небольшом количестве имеющихся в RuBQ примеров на русском языке, F1 в задачах извлечения сущностей и ранжирования отношений увеличивается при добавлении большого количества англоязычных примеров в небольшой русскоязычный датасет. Данные результаты указывают об отсутствии необходимости сбора большого (более 10000 обучающих примеров) русскоязычного датасета, так как это требует значительных временных и финансовых ресурсов.

6. Разработан программный модуль для ведения диалога на различные темы по текстовым страницам (Википедия, wikiHow, новости или другие текстовые страницы, представленные в формате списка параграфов с заголовками параграфов). Данный компонент позволяет поддерживать связный диалог из нескольких шагов без ручного проектирования сценария. Добавление данного программного модуля в диалоговый ассистент DREAM во время конкурса Alexa Prize 4 привело к увеличению средней оценки пользователей.

7. Представлены компоненты фреймворка для построения сценариев диалога Dialog Flow Framework для работы с базой знаний и элементы языка разметки DFF DSL для интеграции диалогового сценария с базой знаний. По сравнению с другими фреймворками, использование не только типов именованных сущностей, но и триплетов из Wikidata позволяет более удобным способом в сценарии задавать сущности для извлечения из реплики или заполнения слотов.

8. Предложен подход на основе проекционных слоев внимания и обучены модели для управляемой генерации реплик в диалоге для заданных атрибутов реплики, таких как диалоговый акт и сентимент. Разработанная модель для управляемой генерации превосходит базовую версию Blenderbot (с 38.2 до 77.0 для диалоговых актов и с 28.4 до 84.9 для сентимента) и модель CRAYON (с 82.2 до 85.9 для сентимента) по точности генерации реплики для заданных атрибутов на датасете Daily Dialog и сравнима с базовым Blenderbot по перплексии генерации с использованием фактов на датасете Wizard of Wikipedia.

9. Предложены методы для нахождения фактологических ошибок в документах. Были разработаны модели для извлечения событий и ролей ис-

торических личностей из текста, нахождения ошибок в датах событий и причинно-следственных связях. Обученные модели были протестированы на датасетах сочинений neznaika.info (были достигнуты значения точности 81.2, 54.4, 38.2, 64.7 в задачах нахождения в тексте событий, ролей, причин и следствий событий, влияния событий на дальнейшую историю соответственно) и ПРО//ЧТЕНИЕ (значения точности 100, 43.2, 51.3, 43.2 в задачах нахождения в тексте событий, ролей, причин и следствий событий, влияния событий на дальнейшую историю соответственно).

Список сокращений и условных обозначений

API - программный интерфейс приложения [Application Programming Interface]

BERT - архитектура и метод предобучения транформера, при котором модель должна предсказать токены последовательности, замененные на специальный MASK-токен, а также, является ли второе предложение из двух поданных на вход продолжением первого в тексте [Bidirectional Encoder Representation from Transformers]

BiGRU - двунаправленная сеть управляемых рекуррентных блоков [Bidirectional Gated Recurrent Unit]

BiLSTM - двунаправленная сеть долгой краткосрочной памяти [Bidirectional Long Short Term Memory]

BiLSTM-CRF - двунаправленная сеть долгой краткосрочной памяти [Bidirectional Long Short-Term Memory] с условным случайным полем [Conditional Random Field]

BIO - разметка последовательности токенов текста, при которой выделяются токены начала сущности, внутренней части сущности и токены, не относящиеся к сущностям [begin, in, out]

BPR - бинарный поиск параграфов, векторизация параграфов и вопросов бинарными векторами [Binary Passage Retrieval]

CLS - служебный токен в модели BERT [classification token] CRF - условные случайные поля [Conditional Random Field] DeepPavlov DFF - фреймворк для разработки сценарных диалогов, разработанный в DeepPavlov [Dialogflow Framework]

DialoGPT - диалоговый генеративный предобученный Трансформер [Dialogue Generative Pretrained Transformer]

DPR - поиск в индексе векторов параграфов, полученных с помощью обученной нейронной сети [Dense Passage Retrieval]

DSL - предметно-ориентированный язык [domain-specific language] ELMo - векторные представления из языковых моделей [Embeddings from Language Models]

Faiss - библиотека для поиска векторов, рвзработанная Facebook AI Research [Facebook AI Research Similarity Search]

FTS5 - расширение SQLite для полнотекстового поиска [Full-text Search

5]

GloVe - метод векторизации слов, основанный на частоте слов в наборе данных [Global Vectors]

GPT - генеративный предобученный Трансформер [Generative Pretrained Transformer]

GRU - управляемый рекуррентный блок, разновидность архитектуры рекуррентных нейронных сетей, обладающая улучшенными свойствами обработки долговременных последовательностей, но при этом имеющая меньшее число параметров по сравнению с LSTM [Gated Recurrent Unit]

HDT - формат для хранения триплетов базы знаний в бинарном виде [Header, Dictionary, Triples]

JAICP - фреймворк для разработки сценарных диалогов, разработанный в Just AI [Just AI Conversational Platform] KB - база знаний [Knowledge Base]

KBQA - ответ на вопросы по базе знаний [Knowledge Base Question Answering]

LSTM - долгая краткосрочная память, разновидность архитектуры рекуррентных нейронных сетей, обладающая улучшенными свойствами обработки долговременных последовательностей [Long Short Term Memory]

MASK - специальный токен BERT, на который случайные токены последовательности заменяются при обучении

MIPS - поиск векторов с максимальным скалярным произведением с данным вектором [Maximum Inner Product Search]

NER - распознавание именованных сущностей [Named Entity Recognition] NLG - генерация текста [Natural Language Generation] NLU - анализ текста, обработка различными аннотаторами [Natural Language Understanding]

ODQA - ответ на вопросы с использованием текстовых баз данных [Open-domain Question Answering]

PAL - проекционные слои внимания [Projected Attention Layers] POS - часть речи [part of speech]

QA - ответ на вопросы [Question Answering] RAM - оперативная память [Random Access Memory] RDF - среда описания ресурса, модель представления данных, в которой ресурсом являются сущности, утверждения о сущностях - это триплеты [Resource Description Framework]

RoBERTa - архитектура на основе Трансформер, по сравнению с базовой версией обученная на датасете большего размера, и только на задаче предсказания маскированного токена, без задачи определения, является ли второе предложение продолжением первого [Robustly Optimized Bidirectional Encoder Representation from Transformers]

RuBQ - набор данных для ответа на вопросы по базе знаний на русском языке [Russian Knowledge Base Questions]

SEP - служебный токен архитектур на основе Трансформер, который разбивает сегменты последовательности токенов

SOTA - получение алгоритмом или моделью более высоких метрик качества или эффективности по сравнению с предыдущими подходами [state-of-the-art]

SPARQL - язык запросов к данным, предоставленным по модели RDF [SPARQL Protocol and RDF Query Language]

SQuAD - набор данных для ответа на вопросы по тексту [Stanford Question Answering Dataset]

TF-IDF - показатель, который используется для оценки важности слова в документе [term frequency, inverse document frequency]

TransE - перенос в пространстве векторных представлений, метод для получения векторных представлений узлов графа [translations in the embedding space]

WNED-WIKI - набор данных для связывания сущностей в тексте с Вики-педией [Walking Named Entity Disambiguation on Wikipedia]

Word2Vec - метод получения векторных представлений слов [words to vectors]

Словарь терминов

Аннотатор — сервис в диалоговом ассистенте, который выполняет разметку реплики (классификация по типам эмоций, извлечение сущностей, и т.д.).

База знаний — база данных, содержащая правила вывода и структурированную информацию в некоторой предметной области.

Граф знаний — граф, в узлах которого - сущности, связанные отношениями.

Датасет — набор данных для обучения или тестирования модели.

Декодер — нейронная сеть, которая генерирует текст по векторным представлениям.

Диалоговый акт — определенная функция, которую выполняет реплика в диалоге (например, утверждение, вопрос, и т. д.).

Разрешение неоднозначности сущностей — выбор из множества возможных сущностей для данной подстроки в тексте наиболее подходящей сущности.

Связывание сущностей — определение, каким сущностям в базе знаний соответствуют подстроки в тексте.

Сентимент — тональность реплики (к примеру, положительная, отрицательная или нейтральная).

Синтаксический парсер — компонент, который выполняет синтаксический разбор предложения, определяет синтаксическую роль и зависимости между словами в предложении.

Токен — элементарная часть, на которые разбивается текст (обычно слово или знак препинания).

Триплет в базе знаний — набор <сущность-субъект, отношение, сущность-объект^ например, <Россия, столица, Москва>.

Управляемая генерация — генерация текста с заданными атрибутами (например, с заданным диалоговым актом или сентиментом) или с заданным содержанием.

Фактоидный вопрос — вопрос, который требует для ответа знания одного или нескольких фактов.

Эмбеддинг — векторное представление объекта.

Энкодер — нейронная сеть для получения векторного представления текста.

Языковая модель (language model) — модель для задания вероятностного распределения последовательности слов, позволяет сказать с какой вероятностью может встретиться заданная последовательность слов.

Список литературы

1. Alquist 4.0: Towards Social Intelligence Using Generative Models and Dialogue Personalization / J. Konrad [и др.] // arXiv preprint arXiv:2109.07968. — 2021.

2. Neural, neural everywhere: Controlled generation meets scaffolded, structured dialogue / E. A. Chi [и др.] // Alexa Prize Proceedings. — 2021.

3. Proto: A Neural Cocktail for Generating Appealing Conversations / S. Saha [и др.] // arXiv preprint arXiv:2109.02513. — 2021.

4. An Approach to Inference-Driven Dialogue Management within a Social Chatbot / S. E. Finch [и др.] // arXiv preprint arXiv:2111.00570. — 2021.

5. DREAM Technical Report for the Alexa Prize 4 / D. Baymurzina [и др.] // 4th Proceedings of Alexa Prize. — 2021.

6. Autoregressive entity retrieval / N. De Cao [и др.] // arXiv preprint arXiv:2010.00904. — 2020.

7. Scalable zero-shot entity linking with dense entity retrieval / L. Wu [и др.] // arXiv preprint arXiv:1911.03814. — 2019.

8. Rel: An entity linker standing on the shoulders of giants / J. M. van Hulst [и др.] // Proceedings of the 43rd International ACM SIGIR Conference on Research and Development in Information Retrieval. — 2020. — с. 2197—2200.

9. Delpeuch A. Opentapioca: Lightweight entity linking for wikidata // arXiv preprint arXiv:1904.09131. — 2019.

10. Reading wikipedia to answer open-domain questions / D. Chen [и др.] // arXiv preprint arXiv:1704.00051. — 2017.

11. Squad: 100,000+ questions for machine comprehension of text / P. Rajpurkar [и др.] // arXiv preprint arXiv:1606.05250. — 2016.

12. Real-time open-domain question answering with dense-sparse phrase index / M. Seo [и др.] // arXiv preprint arXiv:1906.05807. — 2019.

13. Large-scale Simple Question Answering with Memory Networks / A. Bordes [и др.] // CoRR. — 2015. — т. abs/1506.02075. — arXiv: 1506.02075. — URL: http://arxiv.org/abs/1506.02075.

14. Message Passing for Complex Question Answering over Knowledge Graphs / S. Vakulenko [h gp.] // Proceedings of the 28th ACM International Conference on Information and Knowledge Management. — 2019. — c. 1431—1440.

15. Diefenbach D., Singh K., Maret P. Wdaqua-core1: a question answering service for rdf knowledge bases // Companion Proceedings of the The Web Conference 2018. — 2018. — c. 1087—1091.

16. QAnswer KG: designing a portable question answering system over RDF data / D. Diefenbach [h gp.] // European Semantic Web Conference. — Springer. 2020. — c. 429—445.

17. Leveraging abstract meaning representation for knowledge base question answering / P. Kapanipathi [h gp.] // arXiv preprint arXiv:2012.01707. — 2020.

18. Attention is all you need / A. Vaswani [h gp.] // Advances in neural information processing systems. — 2017. — t. 30.

19. Lc-quad: A corpus for complex question answering over knowledge graphs / P. Trivedi [h gp.] // The Semantic Web-ISWC 2017: 16th International Semantic Web Conference, Vienna, Austria, October 21-25, 2017, Proceedings, Part II 16. — Springer. 2017. — c. 210—218.

20. RuBQ 2.0: An Innovated Russian Question Answering Dataset / I. Rybin [h gp.] //. — 05.2021. — c. 532—547. — ISBN 978-3-030-77384-7. — DOI: 10.1007/978-3-030-77385-4_32.

21. Vrandecic D., Krotzsch M. Wikidata: a free collaborative knowledgebase // Communications of the ACM. — 2014. — t. 57, № 10. — c. 78—85.

22. Dense passage retrieval for open-domain question answering / V. Karpukhin [h gp.] // arXiv preprint arXiv:2004.04906. — 2020.

23. Reimers N., Gurevych I. Sentence-bert: Sentence embeddings using siamese bert-networks // arXiv preprint arXiv:1908.10084. — 2019.

24. Yamada I., Asai A., Hajishirzi H. Efficient passage retrieval with hashing for open-domain question answering // arXiv preprint arXiv:2106.00882. — 2021.

25. Plug and Play Language Models: A Simple Approach to Controlled Text Generation / S. Dathathri [и др.]. — 2019. — DOI: 10.48550/ARXIV.1912. 02164. — URL: https://arxiv.org/abs/1912.02164.

26. Controllable Dialogue Generation with Disentangled Multi-grained Style Specification and Attribute Consistency Reward / Z. Hu [и др.]. — 2021. — arXiv: 2109.06717 [cs.CL].

27. Recipes for building an open-domain chatbot / S. Roller [и др.] // arXiv preprint arXiv:2004.13637. — 2020.

28. CoLV: A Collaborative Latent Variable Model for Knowledge-Grounded Dialogue Generation / H. Zhan [и др.] // Proceedings of the 2021 Conference on Empirical Methods in Natural Language Processing. — 2021. — с. 2250— 2261.

29. Evseev D., Arkhipov M. Y. Sparql query generation for complex question answering with bert and bilstm-based model // Computational Linguistics and Intellectual Technologies. — 2020. — с. 270—282.

30. Евсеев Д. А. Генерация запросов для ответа на сложные вопросы на русском языке с использованием синтаксического парсера // Искусственный интеллект и принятие решений. — 2021. — № 3. — с. 57—65.

31. Evseev D. Lightweight and accurate system for entity extraction and linking // Computational Linguistics and Intellectual Technologies. — 2022. — с. 176—184.

32. Evseev D., Burtsev M. Using graph and text knowledge bases in DREAM dialogue assistant // Proceedings of MIPT. — 2022. — т. 14, № 3. — с. 21— 33.

33. Discourse-Driven Integrated Dialogue Development Environment for Open-Domain Dialogue Systems / D. Kuznetsov [и др.] // Proceedings of the 2nd Workshop on Computational Approaches to Discourse. — 2021. — с. 29—51.

34. Среда для создания сценарных разговорных агентов : а.с. / Д. Кузнецов, Д. Баймурзина, Д. Евсеев ; федеральное государственное автономное образовательное учреждение высшего образования «Московский физико-технический институт (национальный исследовательский универси-

тет)». — № 2021664168 ; заявл. 25.08.2021 ; опубл. 01.09.2021 (Российская Федерация). — 1 с.

35. Evseev D., Nagovitsin M, Kuznetsov D. Controllable Multi-attribute Dialog Generation with PALs and Grounding Knowledge // Computational Linguistics and Intellectual Technologies. — 2022. — с. 185—202.

36. Программа для выявления содержательных ошибок и упоминаний исторических событий в тексте сочинений по истории : а.с. / Д. Кузнецов, Д. Евсеев ; федеральное государственное автономное образовательное учреждение высшего образования «Московский физико-технический институт (национальный исследовательский университет)». — № 2021615808 ; заявл. 01.04.2021 ; опубл. 13.04.2021 (Российская Федерация). — 1 с.

37. Система для генерации реплик в диалоге по графу знаний Wikidata : а.с. / Д. Евсеев ; федеральное государственное автономное образовательное учреждение высшего образования «Московский физико-технический институт (национальный исследовательский университет)». — № 2022616117 ; заявл. 31.03.2022 ; опубл. 05.04.2022 (Российская Федерация). — 1 с.

38. Сервис для извлечения сущностей из текста и дальнейшего связывания с базами знаний : а.с. / Д. Евсеев, М. Талиманчук ; федеральное государственное автономное образовательное учреждение высшего образования «Московский физико-технический институт (национальный исследовательский университет)». — № 2022680619 ; заявл. 01.11.2022 ; опубл. 03.11.2022 (Российская Федерация). — 1 с.

39. Freebase: a collaboratively created graph database for structuring human knowledge / K. Bollacker [и др.] // Proceedings of the 2008 ACM SIGMOD international conference on Management of data. — 2008. — с. 1247—1250.

40. Dbpedia-a large-scale, multilingual knowledge base extracted from wikipedia / J. Lehmann [и др.] // Semantic web. — 2015. — т. 6, № 2. — с. 167—195.

41. Suchanek F. M, Kasneci G., Weikum G. Yago: a core of semantic knowledge // Proceedings of the 16th international conference on World Wide Web. — 2007. — с. 697—706.

42. Chip. Что может Google Ассистент: основные команды. — 2018. — URL: https: / / ichip. ru / sovety / chto- mozhet - google- assistent - osnovnye- komandy-387212 (дата обр. 01.09.2022).

43. Яндекс. Представляем голосового помощника Алису. — 2017. — URL: https://yandex.ru/blog/company/alisa (дата обр. 01.09.2022).

44. Hochreiter S., Schmidhuber J. Long short-term memory // Neural computation. — 1997. — т. 9, № 8. — с. 1735—1780.

45. Neural generation meets real people: Towards emotionally engaging mixed-initiative conversations / A. Paranjape [и др.] // arXiv preprint arXiv:2008.12348. — 2020.

46. The Stanford CoreNLP natural language processing toolkit / C. D. Manning [и др.] // Proceedings of 52nd annual meeting of the association for computational linguistics: system demonstrations. — 2014. — с. 55—60.

47. Lafferty J., McCallum A., Pereira F. C. Conditional random fields: Probabilistic models for segmenting and labeling sequence data. — 2001.

48. Broscheit S. Investigating Entity Knowledge in BERT with Simple Neural End-To-End Entity Linking // Proceedings of the 23rd Conference on Computational Natural Language Learning (CoNLL). — Hong Kong, China : Association for Computational Linguistics, 11.2019. — с. 677—685. — DOI: 10.18653/v1/K19-1063. — URL: https://aclanthology.org/K19-1063.

49. Bert: Pre-training of deep bidirectional transformers for language understanding / J. Devlin [и др.] // arXiv preprint arXiv:1810.04805. — 2018.

50. Topical-Chat: Towards Knowledge-Grounded Open-Domain Conversations. / K. Gopalakrishnan [и др.] // INTERSPEECH. — 2019. — с. 1891—1895.

51. Dozat T, Manning C. D. Deep biaffine attention for neural dependency parsing // arXiv preprint arXiv:1611.01734. — 2016.

52. Aho A. V., Corasick M. J. Efficient string matching: an aid to bibliographic search // Communications of the ACM. — 1975. — т. 18, № 6. — с. 333—340.

53. Gunrock 2.0: A user adaptive social conversational system / K. Liang [и др.] // arXiv preprint arXiv:2011.08906. — 2020.

54. Huang Z, Xu W , Yu K . Bidirectional LSTM-CRF models for sequence tagging // arXiv preprint arXiv:1508.01991. — 2015.

55. Dialogpt: Large-scale generative pre-training for conversational response generation / Y. Zhang [h gp.] // arXiv preprint arXiv:1911.00536. — 2019.

56. Ganea O.-E., Hofmann T. Deep joint entity disambiguation with local neural attention // arXiv preprint arXiv:1704.04920. — 2017.

57. Le P., Titov I. Improving entity linking by modeling latent relations between mentions // arXiv preprint arXiv:1804.10637. — 2018.

58. Le P., Titov I. Boosting entity linking performance by leveraging unlabeled documents // arXiv preprint arXiv:1906.01250. — 2019.

59. Raiman J., Raiman O. Deeptype: multilingual entity linking by neural type system evolution // Proceedings of the AAAI Conference on Artificial Intelligence. t. 32. — 2018.

60. Barba E, Procopio L., Navigli R. ExtEnD: Extractive Entity Disambiguation // Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers). — 2022. — c. 2478—2488.

61. Beltagy I., Peters M. E, Cohan A. Longformer: The long-document transformer // arXiv preprint arXiv:2004.05150. — 2020.

62. Bart: Denoising sequence-to-sequence pre-training for natural language generation, translation, and comprehension / M. Lewis [h gp.] // arXiv preprint arXiv:1910.13461. — 2019.

63. Dai Z, Li L, Xu W. Cfo: Conditional focused neural question answering with large-scale knowledge bases // arXiv preprint arXiv:1606.01994. — 2016.

64. Ture F., Jojic O. No Need to Pay Attention: Simple Recurrent Neural Networks Work!(for Answering"Simple"Questions) // arXiv preprint arXiv:1606.05029. — 2016.

65. A semantics-aware transformer model of relation linking for knowledge base question answering / T. Naseem [h gp.] // Proceedings of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing (Volume 2: Short Papers). — 2021. — c. 256—262.

66. On the properties of neural machine translation: Encoder-decoder approaches / K. Cho [h gp.] // arXiv preprint arXiv:1409.1259. — 2014.

67. Natural language processing (almost) from scratch / R. Collobert [h gp.] // Journal of machine learning research. — 2011. — t. 12, ARTICLE. — c. 2493— 2537.

68. Neural architectures for named entity recognition / G. Lample [h gp.] // arXiv preprint arXiv:1603.01360. — 2016.

69. Ma X., Hovy E. End-to-end sequence labeling via bi-directional lstm-cnns-crf // arXiv preprint arXiv:1603.01354. — 2016.

70. Efficient estimation of word representations in vector space / T. Mikolov [h gp.] // arXiv preprint arXiv:1301.3781. — 2013.

71. Chiu J. P., Nichols E. Named Entity Recognition with Bidirectional LSTM-CNNs // Transactions of the Association for Computational Linguistics. — Cambridge, MA, 2016. — t. 4. — c. 357—370. — DOI: 10.1162/tacl_a_ 00104. — URL: https://aclanthology.org/Q16-1026.

72. Pennington J., Socher R., Manning C. D. Glove: Global vectors for word representation // Proceedings of the 2014 conference on empirical methods in natural language processing (EMNLP). — 2014. — c. 1532—1543.

73. Sang E. F., De Meulder F. Introduction to the CoNLL-2003 shared task: Language-independent named entity recognition // arXiv preprint cs/0306050. — 2003.

74. Semi-supervised sequence modeling with cross-view training / K. Clark [h gp.] // arXiv preprint arXiv:1809.08370. — 2018.

75. Semi-supervised sequence tagging with bidirectional language models / M. E. Peters [h gp.] // arXiv preprint arXiv:1705.00108. — 2017.

76. Deep contextualized word representations / M. E. Peters [h gp.] // CoRR. — 2018. — t. abs/1802.05365. — arXiv: 1802.05365. — URL: http://arxiv.org/ abs/1802.05365.

77. Yu J., Bohnet B., Poesio M. Named entity recognition as dependency parsing // arXiv preprint arXiv:2005.07150. — 2020.

78. Dice loss for data-imbalanced NLP tasks / X. Li [h gp.] // arXiv preprint arXiv:1911.02855. — 2019.

79. Ferragina P., Scaiella U. Fast and accurate annotation of short texts with wikipedia pages // IEEE software. — 2011. — t. 29, № 1. — c. 70—75.

80. Martins P. H, Marinho Z, Martins A. F. Joint learning of named entity recognition and entity linking // arXiv preprint arXiv:1907.08243. — 2019.

81. Kolitsas N., Ganea O.-E., Hofmann T. End-to-end neural entity linking // arXiv preprint arXiv:1808.07699. — 2018.

82. KILT: a benchmark for knowledge intensive language tasks / F. Petroni [h gp.] // arXiv preprint arXiv:2009.02252. — 2020.

83. Exploring the limits of transfer learning with a unified text-to-text transformer. / C. Raffel [h gp.] //J. Mach. Learn. Res. — 2020. — t. 21, № 140. — c. 1—67.

84. Wang Z. Extracting and Inferring Personal Attributes from Dialogue. — University of Washington, 2021.

85. Getting to know you: User attribute extraction from dialogues / C.-S. Wu [h gp.] // arXiv preprint arXiv:1908.04621. — 2019.

86. End-to-end memory networks / S. Sukhbaatar, J. Weston, R. Fergus [h gp.] // Advances in neural information processing systems. — 2015. — t. 28.

87. The probabilistic relevance framework: BM25 and beyond / S. Robertson, H. Zaragoza [h gp.] // Foundations and Trends® in Information Retrieval. — 2009. — t. 3, № 4. — c. 333—389.

88. Natural questions: a benchmark for question answering research / T. Kwiatkowski [h gp.] // Transactions of the Association for Computational Linguistics. — 2019. — t. 7. — c. 453—466.

89. Answering complex open-domain questions with multi-hop dense retrieval / W. Xiong [h gp.] // arXiv preprint arXiv:2009.12756. — 2020.

90. Arora S., Liang Y, Ma T. A simple but tough-to-beat baseline for sentence embeddings // International conference on learning representations. — 2017.

91. Pruning the index contents for memory efficient open-domain qa / M. Fajcik [h gp.] // arXiv preprint arXiv:2102.10697. — 2021.

92. Woods W. A, WA W. Lunar rocks in natural English: Explorations in natural language question answering. — 1977.

93. Woods W. A. Augmented Transition Networks for Natural Language Analysis. — 1969.

94. Kupiec J., MURAX A. Robust Linguistic Approach For Question Answering Using An On-Line Encyclopedia // Proceedings of ACM-SIGIR. t. 93.

95. Kwok C. C, Etzioni O, Weld D. S. Scaling question answering to the web // Proceedings of the 10th international conference on World Wide Web. — 2001. — c. 150—161.

96. Using Wikipedia at the TREC QA Track. / D. Ahn [h gp.] // TREC. — Citeseer. 2004.

97. End-to-end open-domain question answering with bertserini / W. Yang [h gp.] // arXiv preprint arXiv:1902.01718. — 2019.

98. REALM: Retrieval-Augmented Language Model Pre-Training / K. Guu [h gp.] // Proceedings of the 37th International Conference on Machine Learning. — JMLR.org, 2020. — (ICML'20).

99. Retrieval-augmented generation for knowledge-intensive nlp tasks / P. Lewis [h gp.] // Advances in Neural Information Processing Systems. — 2020. — t. 33. — c. 9459—9474.

100. Izacard G., Grave E. Leveraging Passage Retrieval with Generative Models for Open Domain Question Answering. — 2020. — URL: https://arxiv.org/ abs/2007.0128.

101. Kg-fid: Infusing knowledge graph in fusion-in-decoder for open-domain question answering / D. Yu [h gp.] // arXiv preprint arXiv:2110.04330. — 2021.

102. Open domain question answering using early fusion of knowledge bases and text / H. Sun [h gp.] // arXiv preprint arXiv:1809.00782. — 2018.

103. Bidirectional attention flow for machine comprehension / M. Seo [h gp.] // arXiv preprint arXiv:1611.01603. — 2016.

104. Gated self-matching networks for reading comprehension and question answering / W. Wang [h gp.] // Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers). — 2017. — c. 189—198.

105. Weston J., Chopra S., Bordes A. Memory networks // arXiv preprint arXiv:1410.3916. — 2014.

106. Translating embeddings for modeling multi-relational data / A. Bordes [h gp.] // Advances in neural information processing systems. — 2013. — t. 26.

107. Ochieng P. PAROT: Translating natural language to SPARQL // Expert Systems with Applications. — 2021. — t. 176. — c. 114712.

108. Logical neural networks / R. Riegel [h gp.] // arXiv preprint arXiv:2006.13155. — 2020.

109. Learning to rank query graphs for complex question answering over knowledge graphs / G. Maheshwari [h gp.] // International semantic web conference. — Springer. 2019. — c. 487—504.

110. Zafar H., Napolitano G., Lehmann J. Formal query generation for question answering over knowledge bases // European semantic web conference. — Springer. 2018. — c. 714—728.

111. Conversational question answering over knowledge graphs with transformer and graph attention networks / E. Kacupaj [h gp.] // arXiv preprint arXiv:2104.01569. — 2021.

112. Wizard of wikipedia: Knowledge-powered conversational agents / E. Dinan [h gp.] // arXiv preprint arXiv:1811.01241. — 2018.

113. Pytorch-biggraph: A large-scale graph embedding system / A. Lerer [h gp.] // arXiv preprint arXiv:1903.12287. — 2019.

114. Korablinov V., Braslavski P. RuBQ: a Russian dataset for question answering over Wikidata // International Semantic Web Conference. — Springer. 2020. — c. 97—110.

115. Gu Y., Su Y. ArcaneQA: Dynamic Program Induction and Contextualized Encoding for Knowledge Base Question Answering // Proceedings of the 29th International Conference on Computational Linguistics. — Gyeongju, Republic of Korea : International Committee on Computational Linguistics, 10.2022. — c. 1718—1731. — URL: https://aclanthology.org/2022.coling-1.148.

116. ReTraCk: A Flexible and Efficient Framework for Knowledge Base Question Answering / S. Chen [h gp.] // Proceedings of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing: System Demonstrations. — Online : Association for Computational Linguistics, 08.2021. — c. 325—336. — DOI: 10.18653/v1/2021.acl-demo.39. — URL: https://aclanthology.org/2021. acl-demo.39.

117. A Controllable Model of Grounded Response Generation / Z. Wu [h gp.]. — 2021. — arXiv: 2005.00613 [cs.CL].

118. Retrieval-free knowledge-grounded dialogue response generation with adapters / Y. Xu [h gp.] // arXiv preprint arXiv:2105.06232. — 2021.

119. Generating Informative Dialogue Responses with Keywords-Guided Networks / H.-D. Xu [h gp.] // CCF International Conference on Natural Language Processing and Chinese Computing. — Springer. 2021. — c. 179— 192.

120. Controllable Response Generation for Assistive Use-cases / S. H. Kumar [h gp.] // arXiv preprint arXiv:2112.02246. — 2021.

121. Controlling dialogue generation with semantic exemplars / P. Gupta [h gp.] // arXiv preprint arXiv:2008.09075. — 2020.

122. Stickland A. C, Murray I. BERT and PALs: Projected Attention Layers for Efficient Adaptation in Multi-Task Learning. — 2019. — arXiv: 1902.02671 [cs.LG].

123. Vlachos A., Riedel S. Identification and Verification of Simple Claims about Statistical Properties // Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing. — Lisbon, Portugal : Association

for Computational Linguistics, 09.2015. — c. 2596—2601. — DOI: 10.18653/ v1/D15-1312. — URL: https://www.aclweb.org/anthology/D15-1312.

124. Thorne J., Vlachos A. An Extensible Framework for Verification of Numerical Claims // Proceedings of the Software Demonstrations of the 15th Conference of the European Chapter of the Association for Computational Linguistics. — Valencia, Spain : Association for Computational Linguistics, 04.2017. — c. 37— 40. — URL: https://www.aclweb.org/anthology/E17-3010.

Список рисунков

1.1 Пример сущности в Wikidata............................................16

1.2 Пример утверждения в Wikidata........................................17

1.3 Схема компонентов DREAM............................................24

1.4 Схема компонентов DREAM, использующих базы знаний.....25

2.1 Схема модели для классификации токенов по типам, в которой вектора токенов на выходе Трансформера проходят через полносвязный слой и слой softmax................... 35

2.2 Схема модели для классификации подстрок по типам, в которой вектора токенов подстроки с сущностью на выходе Трансформера усредняются и далее проходят через полносвязный слой и слой softmax................... 36

2.3 Разрешение неоднозначности сущностей с использованием текстовых описаний........................... 43

2.4 Устранение неоднозначности сущностей с помощью связей в

графе Wikidata.............................. 44

2.5 Схема моделей в Binary Passage Retrieval............... 56

3.1 Схема KBQA: сначала происходит определение шаблона

SPARQL-запроса, далее компонент Entity Detection извлекает подстроки с сущностями из вопроса, Entity Linking привязывает их к сущностям из базы знаний, Relation Ranking определяет N наиболее вероятных отношений, Relation Path Ranking - К

наиболее вероятных наборов возможных отношений..................71

3.2 Определение типа сущности-ответа по синтаксическому дереву. . 74

3.3 Определение вершин, уточняющих сущность-ответ, по синтаксическому дереву..................................................75

3.4 Определение вершин, уточняющих сущность-ответ, по синтаксическому дереву..................................................77

3.5 Ранжирование отношений с помощью BiLSTM........................78

3.6 Ранжирование путей в графе с помощью модели классификации

на основе BERT..........................................................81

4.1 Пример сценария RASA......................... 92

4.2 Пример сценария JAICP........................ 94

4.3 Пример сценария DFF DSL, в котором реализовано извлечение из реплики фамилии художника по типу из Wikidata «wiki:Q1028181» и вставка ее в слот ответной реплики....... 97

4.4 Пример диалога DFF Wiki Skill.................... 98

4.5 Схема сценария DFF Wiki Skill.................... 99

4.6 Извлечение сущностей и заполнение слотов в сценарии DFF

Wiki Skill.................................101

4.7 Использование страницы из wikiHow в сценарии DFF Wiki Skill. . 102

4.8 Условия для перехода на различные ветви в сценарии DFF Wiki Skill....................................102

4.9 Добавление PALs, соответствующих различным значениям диалогового акта и сентимента, в слой декодера Blenderbot параллельно слою внимания......................106

4.10 Генерация реплики в Blenderbot на основе фактов из Википедии. 111

5.1 Пример события в базе: по ключу "event" - название события,

"date_interval" - даты начала и конца события...........118

Список таблиц

1 Сравнение различных баз знаний................... 18

2 Сравнение предложенной системы для связывания сущностей с другими решениями по потребляемой памяти и F1 на датасете WNED-WIKI............................... 45

3 20 наиболее частых отношений в датасете DialogueNLI....... 48

4 Сравнение различных моделей по F1 на датасете DialogueNLI. . . 49

5 Сравнение различных методов векторизации параграфов и реплик по точности @20 на датасете Natural Questions и объему памяти, занимаемой индексом параграфов Википедии....... 57

6 Процент вопросов из тестовой выборки, в которых одно из правильных отношений из датасета имеет максимальную вероятность................................ 79

7 Сравнение F1 на тестовом наборе RuBQ1.0 модели для ранжирования отношений, обученной на LC-QuAD2.0 и на смешанном датасете из LC-QuAD2.0 и RuBQ............. 83

8 Сравнение F1 на тестовом наборе RuBQ1.0 модели для извлечения сущностей, обученной на LC-QuAD2.0 и на смешанном датасете из LC-QuAD2.0 и RuBQ............. 83

9 Сравнение вопросно-ответных систем по F1 на датасете LC-QuAD. 84

10 Процент вопросов для разных типов SPARQL-запросов....... 85

11 Точность ответа предложенной вопросно-ответной системы для различных типов вопросов на датасете LC-QuAD2.0. ....... 86

12 Сравнение предложенной вопросно-ответной системы с WQAqua

по точности на датасете RuBQ1.0................... 86

13 Сравнение предложенной вопросно-ответной системы с QAnswer

и SimBa по точности на датасете RuBQ2.0.............. 87

14 Сравнение DFF, RASA и JAICP по поддержке различных способов задания сущностей в сценарии................ 95

15 Сравнение методов обучения РЛЬэ, встроенных в уменьшенную версию Э1а1оСРТ, по точности генерации реплики для заданных

значений диалогового акта и сентимента и по перплексии на датасете Daily Dialog..........................109

16 Сравнение управляемого Blenderbot с Blenderbot из Huggingface по balanced accuracy и перплексии генерации реплик для заданных атрибутов и фактов.....................110

17 Сравнение управляемого Blenderbot с моделью CRAYON по точности генерации реплик для заданного диалогового акта и сентимента................................110

18 F1 различных компонентов на тестовой выборке обучающих данных..................................120

19 Точность различных компонентов анализа сочинения на датасетах neznaika.info и ПРО//ЧТЕНИЕ..............121

20 Связь тегов модели классификации подстрок и типов сущностей

из Wikidata................................146

21 Примеры заголовков параграфов из страниц Википедии для различных типов сущностей, которые извлекаются в аннотаторе

Fact Retrieval...............................148

Приложение А

Примеры данных, извлекаемых компонентами для привязки

текстов к базам знаний

А.1 Связь тегов модели классификации подстрок и типов

сущностей

Entity tag Wikidata types

film Q11424, Q5398426, Q29168811 Q24869, Q202866, Q15416

song Q482994, Q55850593, Q7302866 Q105543609, Q134556

literary work Q7725634

animal Q729, Q7377, Q57814795, Q39201

sport team Q847017, Q12973014

food Q2095, Q19861951

city Q7930989

country Q7275, Q6256

fac Q12280, Q811979, Q12819564 Q41176, Q1248784 Q34442, Q25631158

event Q1656682, Q108586636, Q16510064

product Q431289, Q167270, Q2424752

law Q3150005, Q93288, Q1864008

language Q20829075, Q20162172 Q34770, Q33742

nation Q6266, Q41710, Q81058955 Q33829, Q231002

norp Q4392985, Q9174, Q110401282 Q5390013, Q7257, Q49447, Q82821

per Q5

loc Q1048835, Q15642541, Q486972 Q82794, Q618123

org Q43229

Entity tag Wikidata types

work of art Q838948, Q17537576

academic discipline Q11862829

type of sport Q31629

music genre Q188451

sports season Q27020041

sports event Q13406554, Q18608583

county Q28575

politician Q82955

actor Q33999

writer Q36180, Q28389, Q49757

musician Q639669, Q177220, Q36834 Q753110, Q488205

athlete Q2066131, Q18536342

national sports team Q1194951

river Q4022

road Q34442

business Q4830453, Q891723 Q6881511, Q783794

occupation Q4164871, Q12737077, Q28640

chemical element Q11344, Q11173

sports league Q623109

political party Q7278

us state Q35657

association football club Q476028

championship Q1344963, Q500834, Q1079023

sports venue Q1076486

Таблица 20 — Связь тегов модели классификации подстрок и типов сущностей из Wikidata.

А.2 Пример аннотаций сервиса для связывания сущностей в

тексте с базами знаний

Пример аннотаций Entity Extraction Service для текста «The Mona Lisa is a sixteenth century oil painting created by Leonardo. It's held at the Louvre in Paris.»:

— подстроки с сущностями: ['Mona Lisa', 'Leonardo', 'The Louvre', 'Paris'];

— индексы позиций подстрок с сущностями: [[4, 13], [61, 69], [84, 94], [98, 103]];

— IDs сущностей в Wikidata: ['Q12418', 'Q762', 'Q19675', 'Q90'];

— теги Entity Detection сущностей: ['WORK_OF_ART', 'PERSON', 'FAC', 'GPE'];

— вероятности сущностей: [0.96, 0.82, 0.95, 0.99];

— страницы Википедии для сущностей: ['Mona Lisa', 'Leonardo da Vinci', 'Louvre', 'Paris'];

— ссылки на изображения на страницах Wikidata;

— типы сущностей в DBPedia: ['Artwork', 'Person', 'Art_museum', 'Location'];

— категории из страницы Википедии: ['1500s paintings', '1452 births', '1793 establishments in France', '3rd-century BC establishments'];

— первые параграфы из страниц Википедии для извлеченных сущностей: ['The Mona Lisa is a half-length portrait painting by Italian artist Leonardo da Vinci.', ...].

Типы сущностей Типы сущностей в Wikidata Заголовки в страницах Ви-кипедии

animal Q16521, Q55983715 distribution, relationship with humans, behavior, in popular culture

athlete Q2066131, Q18536342 club career, international career, player profile, records

team Q20639856, Q847017 support, stadium, colors and mascot, club rivalries, records

musician Q488205, Q36834, Q177220, Q753110 compositional style, musical style, vocal style, music career

band Q215380, Q105756498 early years, breakthrough success, band split-up, new line-up, musical style, development

author Q36180, Q49757, Q214917, Q6625963, Q28389 fictional works, critics by other authors, life and career

book Q571, Q277759, Q8261, Q47461344, Q7725634, Q1667921 composition history, principal characters, background, film

game Q7889 game modes, multiplayer, customization, films, virtual reality

film Q11424, Q29168811, Q24869, Q202866 plot, production, development, filming locations, music, casting, special effects

Таблица 21 — Примеры заголовков параграфов из страниц Википедии для различных типов сущностей, которые извлекаются в аннотаторе Fact Retrieval.

А.3 Примеры заголовков параграфов из страниц Википедии, извлекаемых компонентом Fact Retrieval

А.4 Примеры параграфов, извлекаемых компонентом Fact

Retrieval

Пример 5 наиболее вероятных параграфов, которые Fact Retrieval возвращает на вопрос «Who played Sheldon Cooper in The Big Bang Theory?»:

— Jim Parsons James Joseph Parsons (born March 24, 1973) is an American actor. He is known for playing Sheldon Cooper in the CBS sitcom "The Big Bang Theory" ... (содержит ответ на вопрос)

— Sheldon Cooper Sheldon Lee Cooper, Ph.D., Sc.D., is a fictional character in the CBS television series "The Big Bang Theory" and its spinoff series "Young Sheldon", portrayed by actors Jim Parsons in "The Big Bang Theory" and Iain Armitage in "Young Sheldon" (with Parsons as the latter series' narrator) ... (содержит ответ на вопрос)

— retained in both pilots were Leonard (Johnny Galecki) and Sheldon (Jim Parsons), who are named after Sheldon Leonard, a longtime figure in episodic television as producer, director and actor ... (содержит ответ на вопрос)

— gratitude ("I possess the DNA of Leonard Nimoy?!"). cast member George Takei has made a cameo, and Leonard Nimoy made a cameo as the voice of Sheldon's vintage ... (не релевантный параграф)

— Leonard Hofstadter Leonard Leakey Hofstadter, Ph.D., is a fictional character in the CBS television series "The Big Bang Theory", in which he is portrayed by actor Johnny Galecki. Leonard is an experimental physicist, who shares an apartment with colleague and best friend Dr. Sheldon Cooper (Jim Parsons) ... (содержит ответ на вопрос)

В приведенном примере в Википедии было найдено 4 различных параграфа, содержащих ответ на вопрос.

Приложение Б Типы вопросов из датасета RuBQ2.0

— «1-hop» — SPARQL-запрос с одним триплетом Пример: «Кто написал роман "Зима тревоги нашей"?» SELECT ?answer WHERE wd:Q2063426wdt:P50 ?answer

— «multi-constraint» — SPARQL-запрос, где сущность-ответ входит в несколько триплетов

Пример: «На какой реке стоит Минск?»

SELECT ?answer WHERE wd:Q2280 wdt:P206 ?answer . ?answer wdt:P31 wd:Q4022

— «qualifier-constraint» — SPARQL-запрос содержит уточняющее отношение

Пример: «Какой футболист в 2004 году получил "Золотой мяч"?» SELECT ?answer WHERE wd:Q166177 p:P1346 [ ps:P1346 ?answer; pq:P585 "2004-01-01T00:00:00+00:00"8sd:dateTime] .

— «count» — в SPARQL-запросе используется оператор COUNT для подсчета количества сущностей

Пример: «Сколько существует законов Ньютона?»

SELECT (COUNT(?laws) as ?answer) WHERE wd:Q38433 wdt:P527 ?laws

— «ranking» - сортировка сущностей-ответов по определенному параметру, SPARQL-запрос содержит оператор ORDER

Пример: «В каком городе находится самая высокая в мире телебашня?» SELECT ?answer WHERE ?en p:P2048/psn:P2048/wikibase:quantityAmount ?h . ?en wdt:P31 wd:Q11166728 . ?en wdt:P131* ?answer . ?answer wdt:P31 wd:Q515 .

Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.