оценивание похожести текстов на основе канонического

advertisement
СБОРНИК НАУЧНЫХ ТРУДОВ НГТУ. – 2008. – № 3(53) – 59–68
УДК 519.767
ОЦЕНИВАНИЕ ПОХОЖЕСТИ ТЕКСТОВ НА ОСНОВЕ
КАНОНИЧЕСКОГО ПРЕДСТАВЛЕНИЯ
В.М. НЕДЕЛЬКО, Ю.Д. МАНУЗИНА, М.А. НАЗАРЬЕВА♦
Рассмотрен способ введения меры сходства текстов, основанный на оценивании близости графов, представляющих грамматические связи между словами, а также логических
графов, отражающих «глубинный синтаксис» высказывания. Обсуждены возможности
использования понятийного аппарата, разработанного в рамках теории моделей, для
интерпретации высказываний и определения их семантической близости.
ВВЕДЕНИЕ
Настоящая работа ориентирована на решение прикладных задач, требующих компьютерного анализа текстов на естественном языке в ограниченной
предметной области. В качестве таких задач рассмотрены задача оценивания
ответов в свободной форме в тестах и задача поиска текста по эталону. В связи с этим не предполагалось достичь универсальности разрабатываемых методов. Вместе с тем предложенные в работе методы могут быть использованы
для решения других прикладных задач если не непосредственно, то по подобию паттернов проектирования в программировании.
Особенность и новизна данной работы не в использовании практически
стандартных методов компьютерной лингвистики [1], а в технологии разработки программ, в частности объектно-ориентированного программирования.
Основная задача – оценивание текстовых ответов при тестировании, что
сводится к вычислению меры отличия заданного текста от эталонного. Очевидно, что подобная мера должна улавливать лишь существенные отличия.
Для достижения данной цели типичным приемом служит разбиение множества предложений (текстов) на классы эквивалентности и сравнение не самих
предложений, а их канонических форм. Под канонической формой предложения здесь понимается выделенный представитель (возможно, искусственно
сконструированный) соответствующего класса эквивалентности.
Принято выделять три этапа лингвистического анализа: морфологический, синтаксический и семантический. В данной работе первые два этапа
будут связаны, поэтому назовем их грамматическим анализом, результатом
которого станет граф грамматических связей. Последний этап назовем этапом
логического анализа, в результате которого получим логический граф, кото

Доцент кафедры программных систем и баз данных, канд. физ.-мат. наук
Магистранты кафедры параллельных вычислительных технологий
60
В.М. Неделько, Ю.Д. Манузина и др.
рому взаимно-однозначно соответствует формула логики предикатов первого
порядка.
Вполне адекватное сравнение текстов вряд ли возможно без анализа их
смысла. При этом понятие смысла для естественного языка, пожалуй, наименее формализовано. В работе будет предложена одна их возможных интерпретаций данного понятия на основе идей, известных из теории моделей.
1. КАНОНИЧЕСКОЕ ГРАММАТИЧЕСКОЕ ПРЕДСТАВЛЕНИЕ
Исходным представлением текста является линейная последовательность
слов. Однако для интерпретации предложения важно не соседство слов, а
грамматические связи между ними. Порядок слов на самом деле также играет
роль, в частности для расстановки акцентов, но в рамках рассматриваемых
задач его можно не учитывать. Поэтому каноническим представлением на
уровне синтаксического анализа служит граф грамматических связей. Выбор
конкретной формы графа определяется грамматической адекватностью и
удобством работы с ним.
Простейший вариант графа для предложения: «Окрас шерсти сверху от
песочного до рыжевато-коричневого, снизу почти белый» представлен на
рис. 1. Узлы соответствуют словам, а дуги – отношениям.
Рис. 1. Простейший граф связей для предложения: «Окрас шерсти
сверху от песочного до рыжевато-коричневого, снизу почти белый»
Заметим теперь, что грамматические отношения несимметричны, поэтому
дуги графа следует сделать ориентированными. Ориентированные дуги естественным образом реализуются через указатели, а узлы графа представляются
структурами или объектами. При этом технически гораздо удобнее, если число указателей в узлах каждого типа фиксировано (хотя часть их них могут ни
на что не ссылаться). Многие части речи подразумевают вполне определенный набор связей. Если добавить некоторые вспомогательные узлы, например
для отношения родительного падежа, то можно любое предложение представить связанным графом, узлы которого имеют набор дуг, фиксированный для
соответствующей части речи.
На рис. 2 для того же текста приведен вариант ориентированного грамматического графа. Из каждого узла исходит (не более чем) заданное число дуг,
Оценивание похожести текстов…
61
определяемое частью речи, к которой относится слово в узле. Здесь введен
вспомогательный узел, представляющий родительный падеж.
Рис. 2. Ориентированный граф связей для предложения: «Окрас шерсти
сверху от песочного до рыжевато-коричневого, снизу почти белый»
Однако между словами в предложении имеют место отношения не только
связи, но и агрегации, поскольку предложение можно разбить на словосочетания, которые с грамматической точки зрения выступают едиными объектами.
Отношение агрегации не всегда бинарное, например однородные члены
могут агрегироваться в произвольном количестве. Однако такие случаи относительно редки, кроме того, произвольное отношение можно представить через композицию бинарных. В итоге, грамматический граф можно представить
дихотомическим деревом последовательной агрегации словосочетаний.
Дерево – вид графа, удобный с точки зрения работы с ним. Обычно грамматический разбор и строится так, чтобы в результате получалось дерево связей. Мы также будем строить дерево разбора, или, точнее говоря, квазидерево,
поскольку в некоторых случаях ветви дерева будут «смыкаться».
На рис. 3 приведен пример дерева грамматического разбора. Связи между
словами на этом рисунке не приведены, однако они однозначно восстанавливаются по узлам дерева, если в узлах хранятся соответствующие атрибуты.
Построение такого графа — большая проблема компьютерной лингвистики, пока не решенная для произвольного предложения, поскольку узлы должны генерироваться на основе лингвистических правил, которых, в общем случае, нет. Однако в контексте рассматриваемого класса задач эта проблема решаема, так как не требуется абсолютная «правильность» разбора и допустимы
«лишние» решения.
На уровне текста проблема становится на порядок сложнее, например за
счет анафорических ссылок, поэтому мы постулируем отсутствие грамматических связей между предложениями, фактически перенося все такого рода
связи на следующий уровень анализа.
Известно также, что для значительного множества конструкций естественного языка не удается построить дерево грамматического разбора, например из-за разрывных составляющих.
62
В.М. Неделько, Ю.Д. Манузина и др.
Рис. 3. Дихотомическое квазидерево грамматического разбора
для предложения: «Окрас шерсти сверху от песочного до рыжевато-коричневого, снизу почти белый»
2. АЛГОРИТМ ПОСТРОЕНИЯ ГРАММАТИЧЕСКОГО ГРАФА
Грамматический разбор будет заключаться в построении дерева, что подразумевает конструирование агрегирующих (нетерминальных) узлов и снабжение их подходящими атрибутами. К атрибутам относятся, главным образом, тип связи дочерних узлов (падежная, союзная и т.п.) и возможные грамматические роли данного узла (словосочетания). При этом грамматическая
роль поддерева может отличаться от ролей обоих дочерних узлов.
В техническом плане алгоритм построения такого дерева основан на идеях объектного (или многоагентного) подхода. Каждый узел может «отвечать»
на вопрос о возможности образования связи заданного типа с заданным узлом. Тогда алгоритм построения дерева сводится к процессу комбинирования
элементов, однородных по интерфейсу.
Заметим, что после включения в дерево элемент, как правило, становится
неспособным образовывать другие связи, однако в некоторых случаях он может войти и в другие ветви.
Поскольку полный перебор всех возможных деревьев имеет экспоненциальную сложность, необходимо осуществлять ограниченный перебор. При
построении примеров, изложенных в настоящей работе, использовался эвристический алгоритм направленного поиска.
Оценивание похожести текстов…
63
3. МЕРА СХОДСТВА НА ГРАММАТИЧЕСКИХ ГРАФАХ
Наиболее адекватная мера сходства высказываний, очевидно, может быть
получена только при учете семантики. Однако интересным представляется
исследование, насколько адекватной является мера сходства, учитывающая
лишь синтаксическую составляющую. В этом разделе введем меру сходства
на представлениях в виде графов. Достаточно естественно построить такую
меру на основе доли совпадающих узлов и дуг, при этом можно дополнительно учесть важность связей.
Поскольку в рассматриваемых практических задачах сравниваемые высказывания неравноправны (одно является эталонным), мера сходства может
быть несимметричной. Так, число совпадающих элементов имеет смысл относить не к общему их числу, а к их числу в эталоне.
В качестве примеров были вычислены степени сходства предложений,
полученных в результате поиска по запросу информации о львах, а также для
текстовых ответов в тестах по информатике. Полученные результаты не противоречили интуитивным оценкам. Точность в оценивании близости высказываний для рассмотренных задач приемлема, поскольку ошибки в них не
являются критическими (в тестах предполагается возможность апелляции).
4. ЛОГИЧЕСКОЕ ПРЕДСТАВЛЕНИЕ ВЫСКАЗЫВАНИЙ
Утверждение о том, что любое предложение на естественном языке можно записать как формулу предикатов первого порядка, неверно. Поэтому в
общем случае мы можем заданному предложению лишь сопоставить формулу
логики предикатов первого порядка, как правило, однозначно. При этом адекватность такого представления будет различаться для разных высказываний.
Например, предложение: «Окрас шерсти сверху от песочного до рыжеватокоричневого, снизу почти белый» может быть вполне адекватно записано следующим образом.
" x, y , ((Окрас(x, y), Шерсть(y), Сверху(x)) Ю
( $ z, t , От(x, z), Песочный(z), До(x, t), Рыжеватый(t), Коричневый(t))),
((Окрас(x, y), Шерсть(y), Снизу(x)) Ю ( $ w , Почти(x, w), Белый(w))).
Такого рода формула, конечно, не может отразить «оттенки» смысла высказывания (эмоциональной окраски, акцентов и т. п.).
Во многих источниках представление логической формулой отождествляют с основным смыслом высказывания. Однако мы будем считать это пред-
64
В.М. Неделько, Ю.Д. Манузина и др.
ставление соответствующим уровню «глубинного синтаксиса», определяя
понятие смысла иначе. При этом мы считаем получение такого представления
важным при анализе текстов, поскольку язык логики предикатов является
вполне строгим и формализованным, предложения на этом языке можно
сравнивать более адекватно.
Представление на языке логики предикатов – символьное, однако для
компьютерного анализа гораздо удобнее представление в виде графа. Более
того, представление графом позволит избежать дублирований фрагментов
формулы, как это происходит в примере (Окрас(x, y), Шерсть(y)).
Узлами графа будут кванторы, предикаты и логические связки. Дуги между предикатами (и связками) будут означать отношение частное–общее, что
соответствует логическому следованию. Дуги между кванторами будут отражать их вложенность.
При анализе предикатных представлений текстов можно заметить частую
встречаемость фрагментов вида $ y, A( x, y ), B ( y ) , которую назовем связыванием двуместного предиката по одноместному. Более того, во всех построенных представлениях двуместные предикаты включались только таким образом. Поэтому для отражения таких ситуаций введем специальный узел, обозначающий конъюнкцию по второй позиции (местности) предиката (на графе
мы не используем переменных, поэтому логические связки соединяют позиции предикатов).
На рис. 4 приведен граф логического представления предложения: «Гиперссылка – фрагмент документа, который является указателем на некоторый объект». В виде формулы данное предложение запишется следующим образом:
" x , Гиперссылка(x) Ю
( $ y, z, t , Фрагмент(x, y), Документ(y), Являться(x, z),
Указатель(z, t), Объект(t)).
На рисунке не показан квантор, соответствующий переменной z. Заметим,
что вместо предиката «являться» более правильно было бы использовать логическую связку.
По логическому графу предикатное представление может быть получено
автоматически.
Для сравнения высказываний можно применять меру сходства их логических графов. Построение логического графа по грамматическому дереву –
задача достаточно нетривиальная, однако ее можно решить с качеством, приемлемым для многих приложений. При этом по грамматическому дереву
удобнее строить логический граф, чем сразу предикатную формулу. И наобо-
Оценивание похожести текстов…
65
рот, строить граф на основе графа иного вида удобнее, чем на основе представлений в других формах (отличных от графов).
Рис. 4. Логический граф для предложения: «Гиперссылка – фрагмент
документа, который является указателем на некоторый объект»
5. СИНТАКСИС, СЕМАНТИКА И ТЕОРИЯ МОДЕЛЕЙ
В логике высказыванием называется сконструированная по определенным
правилам последовательность символов из заданного алфавита. Совокупность
такого рода правил называют синтаксисом. Для семантики общеупотребительное строгое математическое определение отсутствует.
Если говорить неформально, семантика высказывания — это те мысли,
которые хотел передать автор. Однако мысли — сущность, недоступная для
наблюдения, и для их описания нужны вспомогательные средства.
Идеальным решением было бы сконструировать некоторый математический объект, который можно было бы сопоставить мыслеобразам и использовать в качестве представления последних.
Одно из таких средств давно известно и широко используется — это модели, или идеализированные представления реальности. В качестве примеров
можно привести понятия физического тела или материальной точки из физики. Наиболее строго этот подход развит в теории моделей [2], в которой модели – это некие абстракции, позволяющие интерпретировать утверждения, в
частности ставить вопрос об их истинности.
Как известно, формулами в логике высказываний являются сконструированные по определенным правилам последовательности из высказывательных
В.М. Неделько, Ю.Д. Манузина и др.
66
символов A, B, C,…, логических связок ЩЪ
, , Ш и скобок (, ). Моделями в этом
случае являются любые подмножества высказывательных символов. Если
мощность множества высказывательных символов равна n, то число моделей
составит 2n . При этом количество классов эквивалентных, т. е. не различиn
мых на этих моделях, высказываний равно 22 .
Логика высказываний – наиболее простая иллюстрация применения теории моделей. В логике предикатов построение моделей уже существенно
сложнее.
В данной работе нас интересует возможность использования подобного
подхода при работе с естественным языком. При этом не ставится цель достичь такого же уровня формализации.
Выбор множества моделей определяется предметной областью [4]. Например, если речь идет о зрительных образах и сценах, то моделями, естественно, будут комбинации геометрических фигур. Открытой является проблема построения универсального набора моделей. Возможно, ее решение и будет означать построение искусственного интеллекта.
Вполне естественно назвать смыслом высказывания множество моделей,
на которых оно истинно. Однако для естественного языка истинность не всегда определяется однозначно.
Кроме того, понятие истинности применимо только для утвердительных
предложений, для вопросительных и повелительных, вероятно, требуется
вводить новые отношения между высказыванием и моделью.
В логике для каждой формулы однозначно определено множество моделей, на которых она истинна. Для высказываний на естественном языке обычно невозможно четко определить множество соответствующих моделей, т. е.
смыслов, которые могут соответствовать данному высказыванию.
Для формализации неопределенности, присущей естественному языку,
возможно использовать нечеткую логику или вероятностный формализм. Более адекватным представляется вероятностный подход, поскольку говорящий,
как правило, вкладывает в высказывание вполне определенный смысл, который нам неизвестен. Нечеткие множества были бы адекватными, если бы в
высказывание вкладывалось несколько смыслов одновременно, с разной степенью выраженности.
При вероятностном подходе каждому высказыванию можно сопоставить
функцию правдоподобия, определенную на множестве моделей, которая пропорциональна вероятности того, что говорящий выберет данное высказывание
для отражения данного смысла (модели).
Оценивание похожести текстов…
67
Заметим, что в ряде случаев, например для оценивания ответов в тестах, в
качестве эталона не обязательно брать высказывание – можно задать функцию правдоподобия, для которой не всегда существует высказывание.
В качестве примера построения и использования полного пространства
моделей можно привести разработанный ранее подход к построению решающей функции на основе несогласованных вероятностных логических высказываний экспертов [5], где в роли моделей выступают зависимости между
переменными, характеризующими объекты исследования.
6. МЕРА СХОДСТВА ПО МНОЖЕСТВАМ МОДЕЛЕЙ
Когда высказывание является логической формулой, а множество всех
моделей конечно, мера сходства высказываний может быть [3] введена как
отношение числа моделей, на которых высказывания либо одновременно истинны, либо одновременно ложны, к их общему числу.
В общем случае сходство высказываний определяется через сходство их
функций правдоподобия. Последнее может вводиться на основе известных
способов задания расстояний на распределениях.
Пожалуй, наиболее известным из таких расстояний является энтропийная
метрика Кульбака. Однако данное расстояние не учитывает, что на самих моделях может быть определено понятие близости. Поэтому более подходящей
представляется транспортная метрика Монжа–Канторовича, либо некоторая
комбинированная метрика.
ЗАКЛЮЧЕНИЕ
Основная идея данной работы заключается в выборе для анализа текстов
на естественном языке математического аппарата, который был бы достаточно строгим и выразительным одновременно. Подходящим для этой цели выглядит представление в форме логических графов.
Представление в виде графов также удобно для оценивания степени близости высказываний.
[1] Моделирование языковой деятельности в интеллектуальных системах /
ред.: А.Е. Кибрик, А.С. Нариньяни. – М.: Наука. 1987.
[2] Кейслер Г., Чен Ч.Ч. Теория моделей. – М.: Мир. 1977.
[3] Викентьев А.А. Метрика и информативность на знаниях экспертов в
различных моделях теорий // Искусственный интеллект. – 2004. – Т. 2. –
С. 37–42.
68
В.М. Неделько, Ю.Д. Манузина и др.
[4] Неделько В.М. Информация и модели // Algorithmic and Mathematical
Foundations of the Artificial Intelligence. Number 1. Supplement to Int. // Inf.
Technol. and Know. – 2008. – Vol. 2. – P. 142–148.
[5] Лбов Г.С., Неделько В.М. Байесовский подход к решению задачи прогнозирования на основе информации экспертов и таблицы данных // Докл.
РАН. – 1997. – Т. 357. – № 1. – С. 29–32.
Download