Секция «Машинная лингвистика»
Построение вопросно-ответной системы для русского языка:
модуль анализа вопросов
А.А.Соловьёв, О.В Пескова Московский государственный технический университет им. Н.Э.Баумана [email protected], [email protected]
Введение
Бурный рост объёма общедоступной информации в сети интернет предъявляет всё более сильные требования к информационно-поисковым системам. Интерес исследователей (и пользователей, надо полагать) перемещается от традиционного поиска по произвольному запросу (ad hoc retrieval) к другим задачам информационного поиска. Сегодня термин «информационный поиск» (information retrieval) включает в себя также направления: ответы на вопросы (question answering), поиск изображений (image retrieval), поиск видео, географически-зависимый поиск, межъязыковой поиск и другие. В частности, на конференции CLEF (Cross Language Evaluation Forum) наблюдается нарастающая волна интереса к дорожкам QA@CLEF (ответы на вопрос) с пиком в 2006 году. Нельзя не заметить и следующую волну интереса к дорожке ImageCLEF (поиск изображений). Обе дорожки уже давно не уступают по популярности поиску по запросу (Рис. 1).
CLEF 2000 - 2009 Tracks
1
L Г
. 1 if 1 1 I i 1 li 1
2000 2001 2002 2003 2004 2005 2006 2007 2008 2009
Years
■ AdHoc
■ DomSpec
■ iCLEF
□ CL-SR
■ QA@CLEF
□ ImageCLEF
■ WebClef
□ Geo Clef
■ Video Clef
□ INFLE
□ M о rpho Challenge
■ CLEF-IP
■ LogCLEF
■ GfidCLEF
Рис. 1. Количество участников для различных дорожек CLEF с 2000 по 2009 годы [1]
Однако сегодня вопросно-ответные системы показывают далеко не впечатляющие результаты. Так, лучшая система на дорожке GikiCLEF 2009 продемонстрировала точность 47% (отметим, что это результат работы систем на многоязыковой коллекции). Отдельно отметим тот факт, что сегодня очень мало русскоязычных вопросно-ответных систем участвует в открытой независимой оценке качества. В публикациях встречается только один случай, дающий возможность сравнить хотя бы две системы - это участие системы Стокона (сегодня AskNet.ru) и Exacatus.ru на семинаре РОМИП 2006 [2]. Обе системы используют метод семантического индексирования, который является сегодня только одним из множества методов, используемых исследователями в мире [3,4]. По мнению авторов,
требуется провести исследование других популярных методов на русскоязычном корпусе.
Анализ существующих работ показал, что для проведения независимой оценки на корпусах русского языка всего спектра методов, применяемых в вопросноответных системах, требуется создание исследовательской программной платформы в согласии с т.н. типовой архитектурой вопросно-ответной системы (Common architecture for Question Answering [3]). В качестве основы предлагается использовать систему с открытым исходным кодом OpenEphyra, которая уже была использована другими исследователями для работы с английским, немецким и голландским языками [5]. Архитектура системы OpehEphyra повторяет типовую архитектуру (Рис. 2).
Основными задачами для работы являются реализация практически всех модулей конвейера системы для русского языка. Авторы предполагают задействовать следующие существующие программные библиотеки для обработки русского языка: библиотеки лексического, морфологического и синтаксического разбора от aot.ru [6], модуль морфологического разбора предложений mystem [7], классификацию вопросов системы AskNet.ru для русского языка [8], тезаурус русского языка RussNet [9]. Ряд недостающих модулей необходимо разработать самостоятельно: синтаксические шаблоны вопросов и ответов, модуль категоризации вопросов, модуль распознавания именованных сущностей.
Query Generation
Extraction Selection
Answer Extraction and Selection
Рис. 2. Архитектура системы OpenEphyra [10]
Целью работы является подготовка базовой исследовательской системы для выступления на семинарах РОМИП, CLEF, TREC. Без подобной системы авторы считают невозможным проведение экспериментальных исследований методов автоматического ответа на вопросы на русском языке. Учитывая результаты аналогичного проекта на голландском языке - в работе [5] была достигнута точность 3.5% - авторы ожидают, что базовая реализация системы продемонстрирует точность того же порядка на дорожке РОМИП прошлых лет. Отдельной проблемой является
невозможность повторно использовать вопросно-ответные дорожки РОМИП в автоматическом режиме [2]. Для решения этой проблемы авторы планируют создать повторно используемую тестовую коллекцию на основе подмножества заданий РОМИП, с использованием регулярных выражений для сравнения ответов, как предложено организаторами TREC в работе [11].
Далее в статье обсуждается только первый этап работы вопросно-ответной системы - модуль анализа вопросов. Рассмотрены: постановка задачи анализа вопроса, методы анализа вопросов и доступный аппарат экспериментального исследования методов на тестовой коллекции вопросов.
Задача анализа вопроса
Первым этапом работы является создание модуля анализа вопросов (Question Analysis на Рис. 2). Для модуля ставится следующая задача: для вопроса на естественном языке выделить фокус вопроса, опору вопроса и определить семантический тэг ответа (Рис. 3).
фокус-
опора-
семантическии тэг-
Программный модуль анализа вопросов
Рис. 3. Недетализированная диаграмма IDEF0 для процесса анализа вопроса.
Фокус вопроса (англ.: question focus) - это такие сведения, содержащиеся в вопросе, которые несут в себе информацию об ожиданиях пользователя от информации в ответе [4].
Опора вопроса (англ.: question support) - это остальная часть вопроса (после «вычета» фокуса), которая несёт в себе информацию, поддерживающую выбор конкретного ответа.
Семантический тэг ответа (англ.: answer tag, answer type) - класс
запрашиваемой пользователем информации согласно некоторой ранее заданной таксономии.
Ниже приведены примеры анализа вопросов из заданий РОМИП 2009, выполненного вручную (Таблица 1, сохранена орфография реальных запросов).
№ Вопрос, жирным шрифтом выделен фокус Семантический тэг
nqa2009 6368 как отключить перехват клавиатуры? Recipe
nqa2009 7185 сколько стоит поченить гнездо у телефона сони эрикссон? Money
nqa2009 6425 в каких религиях как рассматривается карма? Definition
nqa2009 3123 отечественная война кто с кем ? Country
nqa2009 8557 являются ли чердаки пожароопасными помещениями? Yes/No
nqa2009_7801 какое колличество циклов чтения/записи предусмотренно компанией &_)Ш1т для картриджей стандарта ко 4? Cardinal
nqa2009 8763 когда начнется распродажа в меге ? Date
nqa2009 9150 во сколько заход солнца 27 февраля? Time
nqa2009 8754 когда можно сводить кошек? Age
nqa2009 6797 какие в тамбове есть студии звукозаписи?? Organization
Таблица 1. Примеры анализа вопросов из заданий РОМИП 2009.
Таксономия семантических тэгов обычно выбирается разработчиками системы так, чтобы покрыть большую часть вопросов к системе. Следующая таксономия была заимствована из [3] и дополнена авторами несколькими тэгами, чтобы лучше покрывать тестовую коллекцию вопросов РОМИП 2009: Age, Disease, Ordinal, Recipe, Animal, Duration, Organ, Salutation, Areas, Event, Organization, Substance, Attraction, Geological objects, People, Term (Reverse definition), Cardinal, Law, Percent, Time, Company-roles, Location, Person, Title-of-work, Country, Manner, Phrase (NNP), URL, Date, Measure, Plant, Weather, Date-Reference, Money, Product, Yes/No, Definition, Occupation, Reason.
Методы анализа вопросов
В этом разделе дан краткий обзор существующих методов анализа вопросов.
Символьные шаблоны вопросов. Простейшим способом определить тэг или фокус в вопросе является подготовка шаблонов (регулярных выражений) для распознавания распространённого вопросительного оборота. Ниже приведёны некоторые правила, используемые в системе OpenEphyra для английского языка (Таблица 2). ____________________________________________________________________
Семантический тэг Регулярное выражение вопроса
NEaward (what|which|name|give|tell) (.* )?(accolade|award|certification|decoration|honoring| honouring|medal|prize|reward)
NEbird (what|which|name|give|tell) (.* )?bird
NEbirthstone (what|which|name|give|tell) (.* )?birthstone
NEcolor (what|which|name|give|tell) (.* )?(color|colour)
NEconflict (what|which|name|give|tell) (.* )?(battle|conflict|conquest|crisis|crusade|liberation| massacre|rebellion|revolt|revolution|uprising|war)
NEdate (when|what|which|name|give|tell) (.* )?(birthday|date|day)
NEdate-century (when|what|which|name|give|tell) (.* )?century
Таблица 2. Символьные шаблоны вопросов из системы ОреиБрИуга [10].
Для выделения фокуса в работе [3] использовались следующие шаблоны, использующие в т.ч. и морфологическую информацию (Таблица 3, на английском языке):
Вопросительное слово Шаблон
What, which , name , list, identify question word + headword of first noun cluster
Who, why, whom, when question word
Where question word + main verb
How question word plus next word if it seeks an count attribute + headword of first noun cluster
question word plus the next word if it seeks an attribute
if question seeks a methodology, then just question word
Таблица 3. Примеры шаблонов для выделения фокуса вопроса на английском языке [3].
Очевидными недостатками такого подхода являются:
1. Практическая невозможность покрыть значимую часть реальных вопросов пользователей. Набор вопросов подбирается так, чтобы обработать конкретный набор тестовых заданий. Выйти за пределы этого покрытия «неудобным вопросом» достаточно легко.
2. После ряда экспериментов становится очевидно, что связь между
вопросительными словами и семантическими тэгами не так прямолинейна. Так слово «кто» может сигнализировать и о персоне, и об организации, и о стране, и о народе (например, в вопросе «Кто выиграл войну?»).
3. Выделение фокуса на основе шаблонов также работает в очень ограниченных
случаях.
Метод шаблонов успешно использовался в системах, учувствовавших в TREC-8 (1999), в котором организаторы подготовили вопросы для дорожки QA вручную. Однако, уже в TREC-9 (2000) были предложены задания на основе реальных запросов пользователей и те системы, которые не применили иные методы анализа вопроса, заметно отстали от адаптировавшихся лидеров.
Синтаксические шаблоны вопросов. Для выделения фокуса вопроса следующим шагом после символьных шаблонов стал метод синтаксических
шаблонов. В основе метода лежит предположение, что фокус вопроса часто находится в определённом синтаксическом отношении с вопросительным словом, м.б. не в одном, но набор вариантов этих отношений ограничен. Если выполнить синтаксический разбор предложения, то получится синтаксическое дерево (Рис. 4). Этот пример наглядно демонстрирует, что для работы на коллекции реальных вопросов пользователей система в т.ч. должна справляться с опечатками и орфографическими ошибками.
Вот пример синтаксического шаблона для распознавания фокуса, используемого в системе OpenEphyra:
(ROOT (SBARQ (WHNP (WP What)) (SQ (VP (VBZ is) (NP (NP (DT the) (NN name)) (PP (IN of) (*NP xx)))))))
Здесь в скобочной нотации задано синтаксическое дерево со словами или их синтаксическими/морфологическими метками в узлах. Такой шаблон дерева
сравнивается с реальным деревом вопроса и, в случае совпадения, фокусом считаются члены предложения, соответствующие позиции XX в шаблоне.
отключить
КакВ \Вин
Род
Рис. 4. Синтаксическое дерево, построенное системой SemanticAnalyzer [12] для вопроса nqa2009_6368 «как отключить перехват клавиатуры?»
Статистика употребления слов в вопросах. В работе [3] предложен метод автоматического обучения статистической модели для простановки семантического тэга. Для каждого вопроса из обучающей выборки выделяют три «потока» признаков (features stream):
1. все слова как есть и дополнительные метки к некоторым из них (например, метка bqw означает, что вопросительное слово стоит в начале предложения);
2. метки частей речи слов и порядковые номера слов в предложении;
3. Фокусные слова с гиперонимами, согласно лексическому тезаурусу.
Ниже приведены признаки для одного вопроса на английском языке (Таблица 4).
Слова как есть Which which bqw which JJ European city host 1992 Olympics
Части речи WDT 0 which WDT JJ 0 european JJ NN 1 city NN VBD 2 hosted VBD DT 3 CD 4 1992 CD NNS 5 Olympics NNS
Гиперонимы European city metropolis urban_center municipality urban_area geographical_area geographic_area geographical_region geographic_region region location entity metropolis urban_center city_center central_city financial_center hub civic_center municipal center down town inner city
Таблица 4. Признаки для вопроса " Which European city hosted the 1992 Olympics?" [3]
Разметив вручную коллекцию из более 4 тыс. вопросов авторы [3] посчитали, какие свойства чаще означают каждый семантический тэг. Для этого использовался математический аппарат максимизации энтропии. Всего на коллекции из 4 тыс. вопросов было порождено 36 тыс. признаков. Ниже приведены веса для принятия решения о простановке того или иного тэга на основании выявленных признаков (Таблица 5).
Недостатком статистического метода является необходимость создания большой обучающей коллекции вопросов вручную. Так, авторы работы [3] не удовлетворены размером своей коллекции из 4 тыс. вопросов TREC-9.
Признаки Семантический тэг Вес
many | COUNTO CARDINAL 6,87
why WRB REASON 33,04
Region LOCATION 5,75
who_V PERSON 4,09
when_V | DEFNO DATE 17,31
Period DURATION 7,66
Government LOCATION 9,56
Таблица 5. Признаки для простановки семантического тэга [3'
Оценка методов анализа вопросов
Рассмотрим процедуру экспериментального исследования методов анализа вопросов.
Создание тестовой коллекции вопросов. Как и в других задачах информационного поиска предлагается создать текстовую коллекцию вопросов и выполнить анализ вручную с помощью инструмента асессора. В качестве тестовой коллекции авторы используют задания к вопросно-ответной дорожке семинара
РОМИП 2009. Это 9617 русскоязычных вопросов, сформулированных пользователями в интернете.
task: nqa2009_5517 progress: 733 of 9617
где можно купить шузы в Донецке?
_ The nominal corresponding to the question word is the focus of the
Copy-paste focus here (optional)- clause, expressing the new information which the utterance of the
где можно купить clause is expected to provide, while the remainder expresses what it
taken for granted (Foley, 1999)
©Age € Disease © Ordinal © Recipe
©Animal € Duration € Organ © Salutation
©Areas € Event Ш Organization © Substance
© Attraction € Geological objects © People © Term (Reverse definition)
© Cardinal © Law € Percent ©Time
© Company-roles € Location © Person © Title-of-work
© Country' € Manner € Phrase (NNP) © URL
©Date € Measure € Plant © Weather
© Date-Reference Z Money € Product © Yes'No
© Definition € Occupation € Reason
Ф List Question clearly demand the Hst of answers © Fact: It is clear that answer must be a single fact © Check if you doubt
[ Assess | ( Not supported ) [ Skip )
Рис. 5. Интерфейс асессора Авторами был разработана программа - интерфейс асессора - позволяющая выделять фокус и проставлять семантический тэг у вопроса (Рис. 5). Было обработано 733 вопроса.
Метрики. В качестве основной метрики предлагается использовать ошибку простановки семантического тэга: Et = (M-N)/M, где N - число вопросов,
обработанных асессором, М - число вопросов, для которых модулем анализа вопроса был проставлен тот же семантический тэг, что и асессором [3].
Вторая метрика должна оценивать правильность выделения фокуса в вопросе. Авторы не нашли существующей метрики в литературе, поэтому предлагают свои метрики: точность Р и полноту Я выделения фокуса у заданного вопроса:
Л п В\ \Л п ВІ
------- ° -------'-, где А - множество слов, отмеченные асессором как
Pf =
Rf =
В 7 Л
входящие в фокус, В - множество слов в фокусе, выделенном модулем анализа вопроса автоматически. В обоих множествах игнорируются незначимые слова: вопросные слова, предлоги, союзы. Элементами обоих множеств являются не слова как лексические единицы, а позиции слов в предложении, т.е. множество может содержать несколько экземпляров одного слова, если оно повторялось в предложении-вопросе. В качестве метрик по всей коллекции вопросов следует брать средние точность и полноту.
Результаты простого эксперимента. На коллекции русскоязычных вопросов был поставлен эксперимент по исследованию тривиальной реализации модуля простановки семантического тэга. Модуль использовал таблицу поиска слов в вопросе для выбора того или иного семантического тэга. Ниже перечислены все
Слово Тэг Слово Тэг
Скачать URL подарить | подарок Product
Кто Person ли Yes/No
Как Recipe определение | что такое Definition
Где Location цена | стоимость | сколько стоит Money
когда | в каком году Date возраст | сколько лет Age
Таблица 6. Правила работы тривиального модуля анализа вопросов на русском языке
Эксперимент показал, что такая реализация модуля анализа вопроса даёт ошибку 67%. На момент написания статьи авторы не проводили экспериментов с выделением фокуса.
Заключение
В задаче автоматического ответа на вопрос на естественном языке первым этапом работы системы является анализ вопроса. Качество работы модуля анализа вопроса существенно влияет на качество работы системы в целом [3]. Зарубежными исследователями были поставлены эксперименты по анализу вопросов на английском языке, причём разные исследовательские группы, использовали разные методы решения этой первой задачи.
В настоящей работе выполнен обзор существующих методов для английского языка, разработана процедура оценки методов, обработана вручную тестовая коллекция русскоязычных вопросов и поставлен эксперимент для исследования некоторой тривиальной реализации модуля. Авторы планируют собрать полный конвейер типовой вопросно-ответной системы из тривиально реализованных модулей, который станет экспериментальной площадкой для исследования более эффективных методов.
Список литературы
1. Carol Peters. What happened in CLEF 2009 Introduction to the Working Notes. //
Proceedings of CLEF’2009. URL: http://www.clef-
campaign.org/2009/working notes/CLEF2009WN-%20intro2.pdf
2. Российский семинар по Оценке Методов Информационного Поиска. Труды четвертого российского семинара РОМИП'2006. СПб.: НУ ЦСИ, 2006, 274 с.
3. Abraham Ittycheriah. A Statistical Approach For Open Domain Question Answering // Advances in Open Domain Question Answering. Springer Netherlands, 2006. Part 1. Vol.32.
4. Burger, J. и др. Issues, tasks and program structures to roadmap research in question & answering (Q&A). NIST DUC Vision and Roadmap Documents, 2001. URL: http://www.nlpir.nist.gov/projects/duc/roadmapping.html
5. Menno van Zaanen. Multi-lingual Question Answering using OpenEphyra //
Proceedings of CLEF’2008. URL: http://www.clef-
campaign.org/2008/working notes/vanzaanen-paper.pdf
6. Автоматическая Обработка Текста [Электронный ресурс]. URL: http://aot.ru.
7. Segalovich I. A fast morphological algorithm with unknown word guessing induced by a dictionary for a web search engine. MLMTA, 2003.
8. Поисковая система AskNet.ru [Электронный ресурс]: Перечень вопросов,
поддерживаемых системой AskNet для проведения семантического поиска. URL: http://www.asknet.ru/Technology/ListOfQueryru.htm (дата обращения: 27.11.2009).
9. Азарова И. В. и др. Разработка компьютерного тезауруса русского языка типа WordNet // Доклады научной конференции "Корпусная лингвистика и лингвистические базы данных" / Под ред. А.С. Герда. СПб., 2002. С. 6-18.
10. Ephyra - trac [Электронный ресурс]: Overview of the Ephyra Architecture. URL: http://mu.lti.cs.cmu.edu/trac/Ephyra/wiki/Docs/ArchitectureOverview.
11. Ellen M. Voorhees. Evaluating Question Answering System Performance // Advances in Open Domain Question Answering. Springer Netherlands, 2006. Part 5. Vol.32.
12. Semantic Analyzer group blog [Электронный ресурс]. URL: http://semanticanalyzer.info/