Применение RuleML для представления и вывода знаний о семантической структуре фольклорных текстов, полученных на основе их теоретико-графовых моделей Н.Д.Москин, Н.В.Каргинова, И.В.Кравцов, А.Г.Варфоломеев (Петрозаводский государственный университет) 1. Введение Интернет представляет идеальную среду для организации распределенных научных исследований и публикации их результатов. При этом методики и инструменты исследований, а также результаты в виде научных статей фактически являются знаниями сетевого сообщества исследователей. Но эти знания не структурированы, они понятны только человеку (да и то не всегда), и абсолютно не доступны для какой-либо машинной обработки. Сохранение знаний в некотором стандартном формализованном виде могло бы способствовать организации эффективного поиска знаний для их повторного использования, а также разработке модулей автоматической генерации или проверки гипотез. Технологии для формализации методик и результатов научных исследований уже существуют. В рамках современного направления Semantic Web разрабатываются стандарты представления бизнес-правил [9], в виде которых могут быть записаны и научные выводы, гипотезы, формулы или алгоритмы. Примерами таких стандартов являются язык PMML [10], служащий для записи регрессионных и других предиктивных моделей анализа данных, форматы группы MKM [11] для обмена математическими результатами, а также язык RuleML [12], имеющий универсальный характер. В нашей статье исследуются возможности RuleML для записи результатов исследований фольклорных песен на основе их теоретико-графовых моделей. 2. О представлении семантической структуры текстов в виде графов Все чаще в лингвистических, исторических и социальных исследованиях при анализе текстов применяются математические методы и компьютерные технологии. При этом возникают достаточно сложные задачи, для решения которых существующие методы оказываются не всегда достаточными. Например, при изучении больших массивов гуманитарных текстов возникает проблема агрегации содержащейся в ней информации в некотором структурированном виде. Другой задачей является разработка эффективных механизмов сравнительного анализа текстов, которые могут быть использованы в стилистической диагностике, атрибуции анонимных текстов и т. д. Из-за многоплановости, многоуровневости своей организации текст представляет собой довольно сложный объект исследования. Между его единицами могут быть опреде- лены различные системы отношений, то есть одному и тому же тексту может быть поставлено в соответствие несколько различных структур [4, стр. 117]. Подобные структуры естественно описывать в виде графов, которые представляют собой совокупность некоторых объектов и отношений между этими объектами. К таким моделям можно отнести лексические сети, деревья зависимостей, деревья составляющих, семантические сети и т. д. [5, стр. 17]. Графы используются в гуманитарных областях знаний для автоматической обработки текстов, информационного поиска, реферирования и индексирования текстов, автоматического перевода, стилистической диагностики, в задачах атрибуции анонимных текстов. 3. Бесёдные песни и их графы К настоящему времени специалистами, изучающими народную культуру России и ближнего зарубежья, накоплены большие по объему коллекции фольклорных текстов, которые хранятся как в печатной, так и в электронной форме в виде реляционных баз данных. Композиционно фольклорный текст строится из отдельных картин, следующих одна за другой на основе образно-поэтической ассоциации [1, стр. 26]. С такой картиной определенным образом «коррелирует» так называемый композиционный фрагмент (мотив), который занимает центральное место среди песенных текстообразующих блоков: он либо совпадает с ней, либо образует ее часть. Мотивы повторяются в других песнях (не всегда в одной и той же последовательности) и служат исходными элементами для построения новых текстов. Правда, до сих пор остается дискуссионным вопрос о границах и объеме содержания термина. Рассмотрим один из мотивов бесёдной песни «Все мужовья до жон добры», записанную Ф. Студитским в 1841 году [3, стр. 67]: Все мужовья до жон добры, Покупили жонам тафты; Ещё мой муж не доброй до меня, Он купил, мутил, Коровушку купил, Жены лишнюю работу снарядил. Содержательную основу мотива можно представить в виде помеченного мультиграфа, в узлах которого находятся объекты песни (см. рисунок 1). Согласно А. Т. Хроленко [6, стр. 41], в фольклорных песнях можно выделить следующие группы объектов (лексико-семантических полей): персонажи, части человеческого тела, проявление качеств человека, его эмоций, этикет, одежда и украшения, жилище, пища, питье, животный мир, растительный мир, земля и воды, явления природы, разные предметы. На наш взгляд, к этому разбиению необходимо добавить еще две группы: конструкции (печь, сани, карета) и обычаи, традиции (праздник, хоровод, подарки). Рисунок 1. Граф мотива песни «Все мужовья до жон добры» Между объектами устанавливаются связи двух видов. Действия, подкрепленные в тексте глаголами или их отглагольными формами, будем называть локальными. Этот вид связей, как правило, образует синтагматические отношения в тексте. Каждой локальной связи можно поставить в соответствие ее порядковый номер появления в тексте. Если между двумя объектами существует несколько связей, то между вершинами графа устанавливаются кратные ребра. Помимо локальных в тексте существуют глобальные связи, которые распространяются на всю песню и, как правило, никак не выражены в тексте. Этот вид связей соответствует парадигматическим отношениям между объектами. В фольклорных песнях встречаются отношения «равенства» (например, «коровка» – «лишняя работа»), «принадлежности» («мужовья» – «муж», «девушка» – «коса») и «месторасположения» («горенка» – «стол»). Если связать графы мотивов, объединив одинаковые персонажи в одну вершину, то подобную структуру можно изобразить в виде единого графа сюжета фольклорной песни. 4. Методы анализа графов При анализе подобных графов можно использовать следующие методы [2]: Визуализация графов, что позволит оценить сложность рассматриваемой струк- туры и ее основные особенности. Аппроксимация графов, которая, с одной стороны, позволит обобщить структуру графа, отбросив лишние, несущественные связи, а, с другой стороны, уменьшить сложность задачи при дальнейшем анализе. Методы сравнения и классификации графов. Один из подходов связан с исполь- зованием различных числовых инвариантов графа (число вершин и ребер, максимальная степень вершины, параметр связности и функциональный вес вершин [5], распределение объектов и связей на группы и т. д.). Второй подход основан на использовании подграфо- вой метрики [7]. На множестве графов задается мера, которая позволяет оценить насколько те или иные структуры «похожи» друг на друга. В зависимости от способа задания меры можно предложить несколько видов классификации графов. 5. Способы формализации правил. RuleML. В процессе анализа фольклорных песен и их теоретико-графовых моделей исследователь обнаруживает новые закономерности, делает определенные выводы. Эти результаты важно сохранить в удобном виде, чтобы облегчить доступ к информации другим исследователям, которые с помощью специальных программных средств могут автоматически получить новые знания. Так как закономерности обычно представляют собой логические заключения, их удобно хранить с помощью правил вывода. Правило представляет собой некоторую инструкцию, с помощью которой можно получить новую информацию (факты) на основе уже имеющейся. В общем виде ее можно записать в виде предложений «Если (условие), то (вывод)». Существуют различные языки для записи подобных правил. Например, это форматы сред CLIPS или SWI-Prolog. Однако если важно, чтобы правила можно было представить в Интернете, то удобно воспользоваться разрабатываемым стандартом RuleML (Rule Markup Language – язык разметки для описания правил) [12]. С помощью данного языка можно публиковать и обмениваться правилами, созданными в рамках разных систем и задач. 6. Примеры анализа фольклорных текстов с записью результатов в виде RuleML-правил. На основе коллекции бесёдных песен была составлена выборка из 50 текстов [2]. В ней представлены как небольшие «утушные» песни в 7-8 строк (например, «Вьюнчик»), так и песни в 38-40 строк (например, хороводная песня «Ты, отеческая дочь»). Каждой песне были поставлены в соответствие следующие характеристики: фамилия, имя и отчество автора, фамилия, имя и отчество собирателя, место записи, год записи, вид (бесёдная, плясовая, свадебная, бытовая и т. д.), жанр (круговая, хороводная, плясовая, игровая и т. д.), тема (любовная, семейная, хвалебная, шуточная и т. д.), темп (частый, быстрый, медленный, протяжный и т. д.), движение (при пляске, при ходьбе парами, при игре и т. д.). В результате проведенного исследования, оказалось, что в среднем бесёдная песня состоит из 12 объектов и 14 связей. Между числом вершин и числом ребер существует достаточно сильная зависимость (коэффициент корреляции равен 0,87). Песни, которые исполнялись в быстром темпе, в основном содержат большое количество объектов и связей (число вершин m 14 , а ребер n 17 ). В эту группу входят семейные и любовные песни. Напротив, медленные песни характеризуются небольшим числом объектов и связей (чис- ло вершин m 14 , а ребер n 17 ). В эту группу попали все песни на темы «свадьба» и «игра». Здесь, однако, не учитывались песни из сборников К. Петрова, В. Лысанова и Е. Барсова, поскольку для этих текстов характеристика «темп» не определена. Таким образом, на данном этапе можно определить знание следующего вида: 1) Если в графе песни число вершин m 14 и число ребер n 17 , то эта песня с большой вероятностью исполнялась в быстром темпе. На языке RuleML данная закономерность может быть записана следующим образом: <Implies> <head> <Atom> <Rel>имеет темп</Rel> <Var>песня</Var> <Var>быстрый</Var> <Var>с большой вероятностью</Var> </Atom> <head> <body> <And> <Atom> <Rel>больше</Rel> <Var>число вершин</Var> <Var>14</Var> </Atom> <Atom> <Rel>больше</Rel> <Var>число ребер</Var> <Var>17</Var> </Atom> </And> <body> </Implies> Не менее интересным представляется анализ песен по распределению объектов и связей на группы. Оказалось, что чаще всего в текстах встречаются объекты группы «люди» (35,15%), затем «части человеческого тела» (8,75%), «земля и воды» (8,58%), «конструкции» (7,59%), «одежда, украшения» (7,1%), «разные предметы» (6,44%), «жилище» (6,44%), «пища, питье» (5,12%), «животный мир» (4,62%), «явления природы» (2,81%), «обычаи, традиции» (2,64%), «растительный мир» (2,15%) и т. д. Наиболее ярко видны закономерности присутствия объектов определенной группы при разбиении песен на основные «темы». В любовных песнях, чаще чем в остальных, встречаются объекты групп «части человеческого тела», «проявление качеств человека» и «земля и воды». Для семейных песен характерны группы «разные предметы» и «конструкции», почти не встречаются объекты группы «проявление качеств человека». В свадебных песнях ярко выраженных групп не выделяется (при этом практически не встречаются объекты группы «обычаи, традиции»). Объекты из других групп встречаются в текстах в приблизительно одинаковой пропорции. На основе полученной информации определим знание следующего вида: 2) Если в песне часто встречаются объекты групп «разные предметы» и «конструкции», а объекты группы «проявление качеств человека» встречаются редко, то эта песня с большой вероятностью имеет семейную тему. На языке RuleML данная закономерность может быть записана следующим образом: <Implies> <head> <Atom> <Rel>имеет тему</Rel> <Var>песня</Var> <Var>семейная</Var> <Var>с большой вероятностью</Var> </Atom> <head> <body> <And> <Atom> <rel>часто встречаются</rel> <var>песня</var> <var>вершины группы «разные предметы»</var> </Atom> <Atom> <rel>часто встречаются</rel> <var>песня</var> <var>вершины группы «конструкции»</var> </Atom> <Atom> <rel>редко встречаются</rel> <var>песня</var> <var>вершины группы «проявление качеств человека»</var> </Atom> </And> <body> </Implies> После того, как наряду с текстом статьи, в системе будут храниться в формализованном виде и правила, описывающие полученные закономерности, перед исследователями откроются новые возможности для автоматизированного анализа этих правил и получения новых знаний. Предположим, один специалист получил закономерность: «Если песня имеет любовную тему, то она не исполнялась «медленно» или «протяжно»». Другой исследователь сделал вывод, что «Если в песне часто встречаются объекты групп «части человеческого тела», «проявление качеств человека» и «земля и воды», то эта песня с большой вероятностью имеет любовную тему». Тогда программа может вывести на основе этих двух правил новое правило: «Если в песне часто встречаются объекты групп «части человеческого тела», «проявление качеств человека» и «земля и воды», то эта песня с большой вероятностью не исполнялась «медленно» или «протяжно»». 7. Интеграция в семантический веб. Интернет сообщество предложило множество форматов и способов задания структуры и семантики объектов, зависимостей объектов и правил вывода. В рамках парадигмы семантического веба в основном рассматриваются стандарты, предложенные или одобренные консорциумом W3. Вот так примерно выглядит стек понятий Semantic web. Рисунок 2. Стек понятий Semantic web Машинная обработка информации в рамках семантического веба основывается на двух основных принципах: повсеместное использование универсальных идентификаторов ресурсов (URI), а также использование онтологий и языков описания метаданных. Однако это только нижние уровни в указанном стеке (стандарты снизу вверх): URI, XML, XML Schema, RDF, RDF Schema, OWL, SPARQL. Сам логический вывод и описание правил вывода пока еще не стандартизованы. Текущим кандидатом W3 на стандарт описания и обмена правилами является Rule Interchange Format (RIF) [9]. В то же время, уже этого базиса признанных стандартов хватает для того, чтобы строить интеллектуальные сервисы и программные системы нового поколения. Такие сервисы используют семантические знания об объектах, выделенные через разметку. Например, так работает система True Knowledge [13] – «прямые ответы на человеческие и машинные вопросы». Система добывает знания из разных источников (википедия, странички в интернете, внесение людьми напрямую) и приводит их в форму, похожую на RDF (тройкам объект-предикат-субъект). При вводе запроса пользователем на естественном языке система приводит этот запрос к подобному виду и находит соответствия в базе знаний, которой является весь Интернет. Если результатов получается несколько, то система задает уточняющие вопросы или предлагает варианты для сужения семантического класса запроса. В нашей работе предлагается оформлять правила с помощью языка RuleML, хотя можно было использовать другой язык, например RIF. Все эти языки можно считать диа- лектами некоторой общей логики, основанной на предикатах первого порядка. Инициатива (часть стандарта ISO) Common Logic [8] как раз является основой для обобщения таких диалектов. Заявленная как описание некоторой абстрактной логики, она позволяет обмениваться правилами из одного диалекта в другой через трансляцию в общую нотацию Common Logic. Если выразительные средства одного из диалектов ограничены, то тогда перенос будет производиться с некоторыми потерями. На наш взгляд, использование подобных средств трансляции правил позволит перейти к любому из принятых стандартов. Сейчас же необходимо плотно заниматься извлечением зависимостей и фиксированием найденных закономерностей в одном из форматов, в RuleML. Литература [1] Артеменко Е. Б. Принципы народно-песенного текстообразования. – Воронеж: Издательство Воронежского университета, 1988. – 173 с. [2] Москин Н. Д. Теоретико-графовые модели структуры фольклорных текстов, алгоритмы поиска закономерностей и их программная реализация. Автореф. дисс. на соиск. уч. степени к.т.н. Петрозаводск, 2006. [3] Народные песни Вологодской и Олонецкой губерний, собранные Ф. Студитским. – Санкт-Петербург, 1841. [4] Новиков, А. И. Семантика текста и ее формализация. – М.: Наука, 1983. – 215 с. [5] Скороходько, Э. Ф. Семантические сети и автоматическая обработка текста. – Киев: Наукова думка, 1983. – 218 с. [6] Хроленко А. Т. Поэтическая фразеология русской народной лирической песни. – Воронеж: Издательство Воронежского университета, 1981. – 163 с. [7] Bunke H. Graph matching: theoretical foundations, algorithms, and applications // Proc. Vision Interface. – Montreal, 2000. – P. 82-88. [8] Common Logic Standard (http://common-logic.org/) [9] Rule Interchange Format Working Group (http://www.w3.org/2005/rules/wiki/RIF_Working_Group) [10] Predictive Model Markup Language (PMML) (http://www.dmg.org/pmml-v3-2.html) [11] The MKM Interest Group (Mathematical (http://www.mkm-ig.org/) [12] The Rule Markup Initiative (http://www.ruleml.org/) [13] True Knowledge (http://www.trueknowledge.com/) Knowledge Management)