Построение правил синтаксического анализа запросов пользователя в вопросно-ответной системе
|
Введение 3
Глава 1. Обзор диалоговых систем 6
1.1. Диалоговые системы 6
1.2. Основные принципы работы диалоговых систем 8
1.3. Основные проблемы диалоговых систем 8
1.4. Выводы из главы 1 10
Глава 2. Связь синтаксического анализа с извлечением фактов из текста 12
2.1. Извлечение информации как метод представления семантики текста . 12
2.2. Проблемы, связанные с синтаксическим анализом 14
2.3. Описание парсера Helis 15
2.3.1. Алгоритм CYK 15
2.3.2. Изменения в Helis 17
2.3.3. Структура синтаксических правил 18
2.3.4. Шаблоны для извлечения фактов 20
2.3.5. Структура шаблонов 21
2.4. Выводы из главы 2 21
Глава 3. Составление правил, описывающих синтаксис информационного запроса 23
3.1. Информационный диалог 23
3.1.1. Особенности информационного диалога 23
3.1.2. Формальный анализ запроса пользователя 25
3.2. Описание правил 26
3.2.1. Директивы 26
3.2.2. Вопросы 35
3.2.3. Группы ключевых слов 36
3.3. Проверка результатов и недостатки 36
3.4. Выводы из главы 3 38
Заключение 39
Литература 41
Электронные ресурсы 44
Приложение 1. Собранные потенциальные запросы пользователей новостному чат-боту 46
Приложение 2. Правила синтаксического анализа запросов пользователя 50
Глава 1. Обзор диалоговых систем 6
1.1. Диалоговые системы 6
1.2. Основные принципы работы диалоговых систем 8
1.3. Основные проблемы диалоговых систем 8
1.4. Выводы из главы 1 10
Глава 2. Связь синтаксического анализа с извлечением фактов из текста 12
2.1. Извлечение информации как метод представления семантики текста . 12
2.2. Проблемы, связанные с синтаксическим анализом 14
2.3. Описание парсера Helis 15
2.3.1. Алгоритм CYK 15
2.3.2. Изменения в Helis 17
2.3.3. Структура синтаксических правил 18
2.3.4. Шаблоны для извлечения фактов 20
2.3.5. Структура шаблонов 21
2.4. Выводы из главы 2 21
Глава 3. Составление правил, описывающих синтаксис информационного запроса 23
3.1. Информационный диалог 23
3.1.1. Особенности информационного диалога 23
3.1.2. Формальный анализ запроса пользователя 25
3.2. Описание правил 26
3.2.1. Директивы 26
3.2.2. Вопросы 35
3.2.3. Группы ключевых слов 36
3.3. Проверка результатов и недостатки 36
3.4. Выводы из главы 3 38
Заключение 39
Литература 41
Электронные ресурсы 44
Приложение 1. Собранные потенциальные запросы пользователей новостному чат-боту 46
Приложение 2. Правила синтаксического анализа запросов пользователя 50
Проблема взаимодействия пользователя и компьютера возникла в середине ХХ в., когда операции на ЭВМ могли выполнять лишь обученные специалисты. Со временем порог, который необходимо перешагнуть пользователю компьютера, начал постепенно снижаться. С появлением простых операционных систем, которые затем были снабжены графическим пользовательским интерфейсом, все больше людей смогли выполнять работу на вычислительных машинах.
Однако на данный момент существует множество программ и приложений, для которых идеальным способом взаимодействия было бы общение с компьютером на естественном языке. Разработки в этом направлении ведутся еще с 60-х гг. прошлого века, но проблема далеко не решена.
Пользователь компьютера сегодня для выполнения все большего количества функций обращается к специализированным диалоговым системам: чат-ботам и вопросно-ответным системам. Для их
функционирования крайне важно правильно обработать запрос пользователя. Анализ запроса проходит в несколько этапов, на каждом из которых парсер передает на следующий этап наиболее вероятные варианты разбора. Поскольку инструменты анализа на разных уровнях языка еще не идеальны (особенно для русского языка), верный вариант разбора может быть утерян на одном из ранних уровней, после чего парсер уже не сможет правильно проанализировать запрос.
Парсер Helis, разрабатываемый А.М. Поповым и Е.В. Еникеевой с 2017 года, обладает структурой и алгоритмом поиска, позволяющими обрабатывать и хранить все варианты синтаксического разбора до того, как они будут переданы на следующий уровень извлечения семантики (фактов).
Целью этой работы является написание правил синтаксического анализа в грамматике парсера Helis для обработки запросов пользователя на естественном языке, обращенных новостному чат-боту.
Поставленная цель предполагает выполнение следующих задач:
• изучение устройства диалоговых систем и их подвидов;
• обзор имеющихся способов извлечения семантики из запросов пользователей, в том числе на русском языке;
• изучение устройства парсера Helis, используемой им грамматики и структуры правил синтаксического анализа ;
• написание правил синтаксического анализа :
о исследование характера общения между человеком и чат-ботом;
о поиск характерных синтаксических структур в запросах.
Материалом для исследования послужила выборка из 80 потенциальных запросов новостному чат-боту, собранная путем опроса респондентов.
Актуальность данной работы обусловлена тем, что большинство парсеров, занимающихся извлечением фактов из текстов на русском языке, основаны на правилах и не обладают высокой точностью работы .
Практическая значимость работы связана с возможностью использования результатов для создания новостного чат-бота, использующего парсер Helis для обработки запросов.
Глава 1 представляет собой обзор диалоговых систем и их подвидов, истории их развития и проблем, стоящих перед ними сейчас.
Глава 2 рассматривает проблему извлечения информации из текста и описывает, как этот метод применяется для выявления семантики текста, в том числе и в системах, работающих с русским языком. Также детально описан парсер Helis: принцип его работы, преимущества и отличия от других систем.
Глава 3 посвящена собственно проблеме написания правил синтаксического анализа. Представлены имеющиеся исследования на тему характера взаимодействия пользователя и узкоспециализированного диалогового агента. Описаны и кратко обоснованы полученные правила.
Благодарю А.М. Попова за научное консультирование, оказанное им в ходе написания данной работы, и за предоставление технической помощи, связанной с парсером Helis.
Однако на данный момент существует множество программ и приложений, для которых идеальным способом взаимодействия было бы общение с компьютером на естественном языке. Разработки в этом направлении ведутся еще с 60-х гг. прошлого века, но проблема далеко не решена.
Пользователь компьютера сегодня для выполнения все большего количества функций обращается к специализированным диалоговым системам: чат-ботам и вопросно-ответным системам. Для их
функционирования крайне важно правильно обработать запрос пользователя. Анализ запроса проходит в несколько этапов, на каждом из которых парсер передает на следующий этап наиболее вероятные варианты разбора. Поскольку инструменты анализа на разных уровнях языка еще не идеальны (особенно для русского языка), верный вариант разбора может быть утерян на одном из ранних уровней, после чего парсер уже не сможет правильно проанализировать запрос.
Парсер Helis, разрабатываемый А.М. Поповым и Е.В. Еникеевой с 2017 года, обладает структурой и алгоритмом поиска, позволяющими обрабатывать и хранить все варианты синтаксического разбора до того, как они будут переданы на следующий уровень извлечения семантики (фактов).
Целью этой работы является написание правил синтаксического анализа в грамматике парсера Helis для обработки запросов пользователя на естественном языке, обращенных новостному чат-боту.
Поставленная цель предполагает выполнение следующих задач:
• изучение устройства диалоговых систем и их подвидов;
• обзор имеющихся способов извлечения семантики из запросов пользователей, в том числе на русском языке;
• изучение устройства парсера Helis, используемой им грамматики и структуры правил синтаксического анализа ;
• написание правил синтаксического анализа :
о исследование характера общения между человеком и чат-ботом;
о поиск характерных синтаксических структур в запросах.
Материалом для исследования послужила выборка из 80 потенциальных запросов новостному чат-боту, собранная путем опроса респондентов.
Актуальность данной работы обусловлена тем, что большинство парсеров, занимающихся извлечением фактов из текстов на русском языке, основаны на правилах и не обладают высокой точностью работы .
Практическая значимость работы связана с возможностью использования результатов для создания новостного чат-бота, использующего парсер Helis для обработки запросов.
Глава 1 представляет собой обзор диалоговых систем и их подвидов, истории их развития и проблем, стоящих перед ними сейчас.
Глава 2 рассматривает проблему извлечения информации из текста и описывает, как этот метод применяется для выявления семантики текста, в том числе и в системах, работающих с русским языком. Также детально описан парсер Helis: принцип его работы, преимущества и отличия от других систем.
Глава 3 посвящена собственно проблеме написания правил синтаксического анализа. Представлены имеющиеся исследования на тему характера взаимодействия пользователя и узкоспециализированного диалогового агента. Описаны и кратко обоснованы полученные правила.
Благодарю А.М. Попова за научное консультирование, оказанное им в ходе написания данной работы, и за предоставление технической помощи, связанной с парсером Helis.
В этой работе были представлены правила синтаксического анализа в грамматике парсера Helis для обработки запросов пользователя на естественном языке, обращенных новостному чат-боту.
Было написано 20 правил, вошедших в итоговый набор, 16 из которых были описаны в главе 3. Большинство правил было составлено по модели запроса-директива, так как этот тип предложений показывает наибольшую вариативность основных синтаксических структур, тогда как другой частотный тип запросов - вопрос - можно описать трансформацией имеющихся структур. Наименее частотный третий тип запросов из выборки в свою очередь полностью покрывается правилами, описывающими подчинительные связи существительных.
В процессе работы было отмечено, что наиболее часто к большому количеству вариантов разбора приводит морфологическая неоднозначность. В используемом парсером словаре OpenCorpora встречаются целые парадигмы неизменяемых словоформ, которые могут совпадать с другими лексемами (например, предлог «про» и аббревиатура «ПРО», личное местоимение «я» и фамилия «Я»). Хотя это явление не привело к случаям комбинаторного взрыва при работе, работа парсера на синтаксическом уровне может быть улучшена на предваряющем его этапе морфоанализа.
Итоговые правила не стремятся исчерпывающе описать все вариации запросов на естественном языке. Без объёмного корпуса логов общения с подобными системами такая задача является чрезвычайно сложной для выполнения. Запрос может быть сформулирован так, что парсер не окажется способен составить единое древо разбора. Так, при проверке результатов было выявлено, что большинство ошибок при анализе возникает из -за того, что лексический модуль парсера не распознает определенные токены. Помимо этого, проблемы создал синтаксис вопросительных предложений, в которых изменяется порядок слов и частотен эллипсис. Однако директивы, базовый тип запросов, не выявили ошибок в работе парсера. И поскольку Helis выдает все варианты анализа, в том числе и неполные, результаты всё равно передаются на следующий уровень, где к полученным поддеревьям будут применяться шаблоны для извлечения фактов.
Было написано 20 правил, вошедших в итоговый набор, 16 из которых были описаны в главе 3. Большинство правил было составлено по модели запроса-директива, так как этот тип предложений показывает наибольшую вариативность основных синтаксических структур, тогда как другой частотный тип запросов - вопрос - можно описать трансформацией имеющихся структур. Наименее частотный третий тип запросов из выборки в свою очередь полностью покрывается правилами, описывающими подчинительные связи существительных.
В процессе работы было отмечено, что наиболее часто к большому количеству вариантов разбора приводит морфологическая неоднозначность. В используемом парсером словаре OpenCorpora встречаются целые парадигмы неизменяемых словоформ, которые могут совпадать с другими лексемами (например, предлог «про» и аббревиатура «ПРО», личное местоимение «я» и фамилия «Я»). Хотя это явление не привело к случаям комбинаторного взрыва при работе, работа парсера на синтаксическом уровне может быть улучшена на предваряющем его этапе морфоанализа.
Итоговые правила не стремятся исчерпывающе описать все вариации запросов на естественном языке. Без объёмного корпуса логов общения с подобными системами такая задача является чрезвычайно сложной для выполнения. Запрос может быть сформулирован так, что парсер не окажется способен составить единое древо разбора. Так, при проверке результатов было выявлено, что большинство ошибок при анализе возникает из -за того, что лексический модуль парсера не распознает определенные токены. Помимо этого, проблемы создал синтаксис вопросительных предложений, в которых изменяется порядок слов и частотен эллипсис. Однако директивы, базовый тип запросов, не выявили ошибок в работе парсера. И поскольку Helis выдает все варианты анализа, в том числе и неполные, результаты всё равно передаются на следующий уровень, где к полученным поддеревьям будут применяться шаблоны для извлечения фактов.





