УДК 004.822
© Ж.Б. Бименова, Р.А. Джумамуратов, Е.А. Сидорова
ПОДХОД К ПОСТРОЕНИЮ РУССКО-КАЗАХСКОГО ТЕЗАУРУСА ПО ИНФОРМАТИКЕ1
В работе описывается подход к построению тезауруса на русском и казахском языках. Применяются методы корпусного исследования текстов на разных уровнях языковой действительности: морфемном, морфологическом и семантическом. Предложены методы автоматического извлечения терминов и родовидовых отношений между ними. Рассмотрена архитектура системы автоматизированного построения тезауруса, ориентированного на решение задач информационного поиска.
Ключевые слова: тезаурус, разметка, выделение терминов, лексические шаблоны.
© Zh.B. Bimenova, R.A. Dzhumamuratov, E.A. Sidorova
THE APPROACH TO DEVELOPMENT OF THE RUSSIAN-KAZAKH THESAURUS ON COMPUTER SCIENCE
In the work the approach to development of the thesaurus in Russian and Kazakh languages is described. Methods of corpus research of texts at different levels of language reality are applied: morphemic, morphological and semantic. Methods of automatic extraction of terms and\generic relations between them have been proposed. An architecture of system of automated development of the thesaurus focused on solutions of problems of information search is considered.
Keywords: thesaurus, marking, term extraction, lexical patterns.
Введение
Тезаурус - многозначный термин. В современной лингвистике и информатике тезаурус представляет собой некоторое, особым образом оформленное накопление [1]. В данной работе под термином «тезаурус» будем понимать словарь, в котором слова и словосочетания с близкими по смыслу значениями сгруппированы в единицы, называемые терминами или дескрипторами, и в котором явно указываются семантические отношения между этими терминами (дескрипторами) [2].
Построения тезауруса на казахском языке - непростая задача. Несмотря на то, что существуют определенные стандарты построения тезаурусов, не всегда возможно напрямую воспроизвести существующие методики. Причинами этого являются, во-первых, специфика казахского языка (агглютинативного языка с богатой морфологией, в котором морфология языка тесно связана с его семантикой), во-вторых, отсутствие источников лексической информации (например, больших корпусов текстов), в-третьих, отсутствие доступных морфологических словарей казахского языка. Все это предполагает создание инструментов на основе подхода «чистой доски».
Высококачественные тезаурусы в большинстве своем создаются вручную. Процесс поддержания тезаурусов в актуальном состоянии довольно трудоемок, особенно в быстроразвивающихся областях. Таким образом, построение тезаурусов становится «узким местом» для практической реализации проектов, использующих их для решения своих задач (например, информационный поиск), требуются методы автоматизации их наполнения и поддержки. Одной из проблем, возникающей при автоматическом наполнении тезаурусов, является большое количество «шума», который надо эффективно отсеивать. В связи с этим наряду с автоматическими методами используют последующую ручную обработку полученного материала для получения данных большей точности (такие методы называются автоматизированными).
Методы автоматического построения тезаурусов не могут работать без разнообразных словарей. Для построения тезауруса на казахском языка, ориентированного на поддержку информационного поиска, необходимо начинать с создания морфологического словаря. Данный словарь должен поддерживать функцию морфологического анализа и извлечения из текстов на казахском языке терми-
1 Работа выполнена при финансовой поддержке РФФИ (проект № 12-07-31216)
53
нов предметной области. Для отделения общезначимых слов от терминов предметной области используется статистическая информация и создается специальный словарь предметной лексики [3].
Методы автоматического установления связей между терминами можно условно разделить на три основные группы в зависимости от области заимствования основного подхода: методы, основанные на подходах из области искусственного интеллекта, статистические методы и методы, использующие лингвистические подходы [4]. Исследования Марти Хест [5] показали, что для идентификации отношения гипонимии «достаточно адекватный» результат показывает метод лексических шаблонов.
Корпусная лингвистика - удобный инструмент для исследования языка и создания лексикографических ресурсов [6,7]. Разметка корпуса может осуществляться по разным основаниям (разным лингвистическим уровням), в частности, на морфемном, морфологическом, терминологическом, семантическом уровне и др. Использование размеченных корпусов позволяет автоматизировать наполнение необходимых словарей.
В данной работе предложен подход к автоматизированному построению тезаурусов на казахском языке, который демонстрируется в предметной области «Информатика». Реализуется полная цепочка разработки тезауруса - от этапа корпусного исследования предметной области и особенностей подъязыка, создания лексикографических ресурсов до методов автоматизированного наполнения и поддержки тезауруса.
1. Тезаурус
Тезаурус описывает терминологию предметных областей как терминосистему в виде словаря терминов и словокомплексов с фиксированными семантическими связями между ними, поддерживая возможность их редактирования в процессе функционирования.
Для построения тезауруса предметной области на казахском языке необходимо решить следующие задачи:
1) определить структуру словарной статьи тезауруса;
2) сформировать параллельный корпус текстов по тематике тезауруса;
3) определить способ выделения терминов из корпуса текстов и сформировать список терминов;
4) установить отношения между терминами.
1.1. Структура словарной статьи тезауруса
В каждой словарной статье тезауруса описывается один термин. Это знак специальной семиотической системы, обладающий номинативно-дефинитивной функцией, или другое определение: термин
- это устоявшееся понятие [8]. Все термины в тезаурусе являются дискрипторами.
Согласно ГОСТ 7.25-2001, в словарную статью включаются следующие типы лексических единиц: одиночные слова (существительные, прилагательные, глаголы, наречия), именные словосочетания, лексически значимые компоненты сложных слов и сокращения слов и словосочетаний [9].
Структуру словарной статьи тезауруса можно представить в виде тройки:
T = ^, B, ^, где
А - символьное имя термина, соответствующее названию представляемого им понятия предметной области,
B - множество бинарных связей термина, включая иерархичные, ассоциативные отношения, отношения синонимии и перевода,
С - множество идентификаторов термина (язык, морфологический класс, тип словосочетания и т.п.).
Между терминами устанавливается два вида иерархических отношений: «Класс-Подкласс» и «Часть -Целое».
Отношение «Класс-Подкласс» в зависимости от терминологических традиций в области использования ресурса может носить разное название: таксономическое отношение, родовидовое отношение, отношение, отношение гипонимии и гиперонимии. Оно устанавливается, если объем одного понятия входит в объем другого понятия.
Отношение «Часть-Целое» устанавливается в тех случаях, когда одно понятие включено в другое понятие независимо от контекста [2].
Отношение «Ассоциируется с» устанавливается между понятиями, которые находятся в связях, отличных от синонимии и иерархических отношений.
Отношение «Перевод» устанавливается между эквивалентными терминами на разных языках. Если термин не может быть выражен на другом языке одним дескриптором, тогда для него в соответствии с ГОСТом 7.24-2007 указывается в качестве эквивалента комбинация нескольких дескрипторов [10].
1.2. Архитектура системы построения тезауруса
На рис. 1 представлена общая архитектура системы разработки тезаурусов.
Система включает два основных модуля автоматизации наполнения тезауруса:
• подсистема извлечения терминов,
• подсистема извлечения отношений.
Пользователь имеет доступ к тезаурусу через редактор, который позволяет просматривать и редактировать содержание тезауруса, запускать модули автоматического пополнения тезауруса на новых корпусах текстов, а также осуществлять контроль качества работы данных методов. Обучающий корпус текстов, лексические шаблоны и словарь терминов должны подготавливаться лингвистами совместно с экспертами данной предметной области.
Пользователь
Л
У
Эксперт
Рис. 1. Архитектура системы
2. Извлечение терминов предметной области
В процессе извлечения терминов из документа исходный текст подвергается графематическому (разбиение на слова), морфологическому (определение нормальной формы и набора параметров) и поверхностно-синтаксическому (сборка словосочетаний) анализу (рис. 2).
На этапе графематического анализа, после разбиения текста на слова, происходит поиск составных слов, которые должны рассматриваться как одно (с точки зрения морфологического анализатора). Морфологический анализ работает на уровне отдельных слов (в том числе составных) и возвращает морфологическую норму и атрибуты данного слова. При этом может оказаться, что одной словоформе может быть сопоставлено несколько возможных вариантов слов. Синтаксический анализатор может осуществлять поиск словосочетаний на основе синтаксичеких шаблонов сборки именных групп аналогично [11, 12]. В результате анализа приведенные к нормальному виду слова и словосочетания помещаются в предварительный словарь терминов.
Рис. 2. Общая схема выделения терминов
На текущий момент недоступны программные инструменты, проводящие морфологический анализ текстов на казахском языке. Поэтому нами были разработаны специализированный модуль и морфологическая модель казахского языка для системы К1ап [12], предназначенной для автоматизированного создания терминологических словарей. Эта же система использовалась для морфологического синтаксического анализа текстов на русском языке.
Поиск терминов-словосочетаний осуществляется на основе правил, разработанных в рамках системы К1ап для русского языка и спроецированных на морфологическую таблицу казахского языка. Учет дополнительных особенностей языка в плане образования устойчивых словосочетаний требует привлечения казахских специалистов и является одной из ближайших целей проекта.
2.1. Корпусное исследование подъязыка предметной области
Казахский язык относится к группе агглютинативных языков, в которых концепция слова значительно шире, чем просто набор элементов лексики, и отличается относительной регулярностью, позиционной и грамматической стабильностью морфологической структуры различных словоформ. Слова в нем образуются присоединением к корню или основе слова грамматических частиц - аффиксов [13].
В целях построении модели морфологии казахского языка была проведена морфемно-морфологическая разметка (ММР) корпуса казахских текстов (рис. 3).
Рис. 3. Морфемно-морфологическая разметка казахского текста
56
Разметка была создана с помощью системы MarkSystem [14]. Помимо основного функционала, связанного с непосредственным просмотром текста и его «раскраской», в системе реализуется возможность динамического создания и пополнения системы признаков (признаками помечаются фрагменты текста) и отношений, редактирования цветовой схемы «раскраски» (посредством сопоставления признаков цветовой схемы) и управление визуализацией (фильтрация, конкорданс). Каждому фрагменту может быть сопоставлено множество признаков и связей.
Система MarkSystem ориентирована как на лингвистов, осуществляющих лингвистическое исследование корпуса текстов, так и на экспертов, отмечающих терминологию, характерную для заданной предметной области. Параллельно ММР на другом уровне создавалась семантическая разметка (СР) текстов, которая ориентирована на заданную предметную область и включает терминологическую разметку, разметку тезаурусных отношений и индикаторов.
В процессе создания ММР и СР были разработаны иерархии признаков (рис. 4).
Рис. 4. Иерархия признаков для морфемно-морфологической и семантической разметки текстов
На основе ММР была создана морфологическая таблица, описывающая модель казахского языка. Иерархия признаков ММР содержит 117 вершин, на основе которых было сформировано 17 морфологических атрибутов (в том числе и часть речи) и выделено 36 морфологических классов терминов-лексем. По типу словоизменения классы сгруппированы в 16 групп, для каждой из которых формируется свой список окончаний и функция, сопоставляющая окончанию значение одного из атрибутов. Для сравнения: русская таблица содержит 17 атрибутов, 42 класса и 15 групп. Данная таблица легла в основу создаваемого морфологического словаря казахского языка.
Иерархия признаков СР соответствует верхнему уровню иерархии терминов тезауруса по информатике и на текущий момент включает 29 вершин. В процессе СР любой термин, выделенный экспертом, либо соотносится с признаком (что означает, что эксперт считает данный термин обобщающим классом предметной области), либо связывается с одним из ранее введенных признаков. Выделенные фрагменты также могут связываться специальным отношением Род-вид (подробнее о СР будет сказано ниже). Таким образом, назначение СР - выделить основные классы терминов предметной области, которые впоследствии будут служить основой автоматизированных методов поиска новых терминов и отношений между терминами.
2.2. Морфологический анализ текста на казахском языке
На вход морфологического анализатора подается упорядоченный список словоформ (с учетом знаков), полученный в результате графематического анализа. Для каждой словоформы на первом этапе осуществляется нормализация, т.е. поиск основы - начальной формы слова. Затем, в зависимости от части речи и найденных аффиксов, вычисляются морфологические характеристики слова.
Модуль нормализации в процессе своей работы осуществляет следующую последовательность шагов:
1 шаг: Выполняется поиск слова в словаре начальных форм. Если слово в словаре найдено, то шаг
5.
2 шаг: Слово считывается посимвольно в обратном порядке (начиная с конца слова). Если слово закончилось, то работа алгоритма завершается. На основе текущего списка аффиксов формируется список гипотетических аффиксов.
3 шаг: Выполняется поиск всех гипотетический аффиксов в словаре аффиксов. Все найденные аффиксы добавляются в список аффиксов. Если ни один новый аффикс не найден, то переходим к шагу 2.
4 шаг: Выполняется поиск начальной части слова в словаре начальных форм. Если слово не найдено, то переходим к шагу 2.
5 шаг: В результат добавляется найденная основа и сопутствующий набор аффиксов. Переход к шагу 2.
После нормализации для каждого найденного слова осуществляется вычисление его морфологических характеристик на основе его аффиксов и морфологического класса основы.
Продемонстрируем результат морфологического анализа на следующем примере (рис. 5).
А " Word+a+ab ■[пет нолагня(+|лар|+!ліе н| t t
<Word> _ ■[тем «ггагняларліен| Могт=<тгежнояогия> * МІГГЇ=<КЖ> МІГГЇ=<СЖ>
СЯОВЗрЬ ОСНОВ СГЭЕЭрЬ окончаний
Рис. 5. Пример морфологического анализа слова На вход анализатору подается словоформа технологиялармен, происходит поиск в словарях аффиксов мен, лар и основы технология. На основе морфологического класса основы (зат есім) и аффиксов вычисляем морфологическую информацию: лар <мн.число>, мен <род.падеж>.
Казахский язык характеризуется строгой последовательностью присоединения аффиксов к корню: вначале присоединяется словообразовательный аффикс, потом словоизменяющие аффиксы: принадлежности, падежей, лица и числа. Для имен существительных к основе слова вначале добавляется окончание множественного числа, затем притяжательное окончание, далее следует падежное окончание и последним - окончание формы спряжения [13]. Окончания прибавляются по правилу, которое можно представить следующим образом:
С=ОС+КЖ+ТЖ+СЖ+ЖЖ, (1)
где С - словоформа; ОС - основа слова; КЖ - окончание множественного числа; ТЖ - притяжательное окончание; СЖ - падежное окончание; ЖЖ - окончание формы спряжения [15].
К особенностям казахского языка относится необходимость определения некоторых морфологических характеристик слова по контексту, т.е. словам, находящимся до или после данного слова. Например, время глагола или деепричастия может быть определено по слову, стоящему соответственно до или после, а превосходную степень прилагательного определяют по специальным словам, таким как ец, ете, аса, тым и т.д.
Нормальная форма слова - это одна из форм слова (строка), принятая для обозначения понятия, связанного с данным словом. Словоформа - это форма слова, связанная с нормальной формой слова и указывающая на особенности употребления данного слова.
Формально словоформа характеризуется пятеркой вида:
Wform = <form, PS, norm, PSN, Minf>, где form - написание словоформы (строка),
PS - часть речи,
norm - нормальная форма, от которой была образована данная словоформа,
PSN - часть речи нормальной формы,
Minf - набор морфологических параметров, приписываемых к данной словоформе.
Результат работы морфоанализатора казахского текста представлен множеством таких пятерок с дополнительным параметром позиции в тексте.
3. Установление семантических отношений между терминами
В работах, направленных на автоматический поиск отношений между терминами, можно выделить два основных подхода. Первый подход основан на распределительной гипотезе [16], где утверждается, что семантически близкие термины встречаются в схожих контекстах. Например, можно предполагать, что контексты слов жолдас (друг) и дос (друг) содержат много общих слов.
При втором подходе используются лексические шаблоны [5, 17], которые сигнализируют о возможных семантических отношениях между терминами. Лексические шаблоны представляют собой характерные выражения (словосочетания и обороты), конструкции из определенных элементов языка. Такие шаблоны позволяют построить семантическую модель, соответствующую фрагменту текста, к которому они применяются [18].
Рассмотрим отношение гипонимии. Традиционно установление этого отношения базируется на известном критерии Лайонза [17]: для пары терминов X и Y (в предположении, что Y является гиперонимом для X) строятся предложения вида «Это есть X» и «Это есть Y», в которых данные термины являются логическими предикатами и проверяется, что из истинности первого следует истинность второго. Анализируя корпус текстов, можно выявить в нем пары терминов-кандидатов, подозреваемых на гипонимическую связанность. Для этого необходимо «отловить» в текстах некоторые гипо-нимические конструкции, например, такие как:
1) "X и другие/прочие/остальные Y -и"
2) "Все Y -и, кроме/помимо/за исключением X-а"
3) "Все Y-и, включая/в том числе X"
4) "Некоторые Y-и, например/в частности, X"
5) "Одни Y-и, например/в частности, X" и т.п.
Но набор понятий и терминов и соответственно их иерархия зависят от языка и культуры. Например, в русском языке отсутствует однозначный аналог «индикатора» гиперонима «is a».
Для разработки лексических шаблонов было просмотрено и размечено несколько десятков научно-технических текстов, в которых выделялись фразы, использующиеся для определения или пояснения термина. После предварительного анализа полученные фразы были формализованы в виде лексических шаблонов. Для разработки шаблонов использовался язык Diglex DSL [11], который позволяет определять произвольные символьные выражения, указывать альтернативные выражения, образуемые при использовании сокращений, аббревиатур, синонимов, пропусков и перестановок в лексическом составе конструкции, задавать условия, опциональные подвыражения, дистантный контекст и т.д.
Разработка шаблонов состоит из следующих этапов.
Этап 1. В тексте ищутся предложения, содержащие термины, связанные семантическими отношениями. Найденные термины размечаются (рис. 6).
Рис. 6. Разметка пар иерархически-связанных терминов
Этап 2: Фиксируется окружение пар связанных терминов. Найденные контексты анализируются и наиболее часто встречающиеся фразы из контекстов помечаются как «индикаторы» связи (рис. 7).
Рис. 7. Разметка пар терминов, индикаторов связи и окружения терминов
Были обнаружены такие «индикаторы», как бас^а (другие), бас^адай (прочие), белек (кроме), бетен (помимо), ^оспаганда (за исключением), ^оса есептегенде (включая), соньщ rni^^ (в том числе), мысалы (например), атап айщанда (в частности).
Этап 3: На основе найденных индикаторов формируются лексические шаблоны специального вида (рис. 8), предназначенные для извлечения родовидовых связей между терминами. Сформированные шаблонные конструкции записываются на языке Diglex DSL.
[жалпы] < - [сонынД [ішінде] - > [белгі] ([Для всех] <- [в том числе]-> [знак])
Рис. S. Пример шаблона на языке DSL Diglex
Таким образом, проблема разработки лексических шаблонов связана с поиском индикаторов и формализацией шаблонных конструкций, а их применение - с проблемой шума на выходе.
На рис. 9 представлена общая схема извлечения отношений между терминами.
Рис. 9. Схема извлечения отношений между терминами
Ядерным компонентом в схеме является система Diglex. Лексические шаблоны, разработанные на основе размеченного корпуса текстов, записываются на языке Diglex DSL и образуют словарь гипо-нимических конструкций. Процессор Diglex принимает на вход словарь и на выходе формирует множество вхождений шаблонов, которые сигнализируют о возможной связи между терминами, покрытыми данным вхождением. Далее полученные на выходе системы Diglex фрагменты текстов подаются на вход системы Klan для разбиения текста на лексические единицы и поиска в терминологическом словаре. На основе найденной информации делаются выводы об установлении отношений между терминами.
Заключение
В работе предложен подход, позволяющий автоматизировать процесс построения двуязычного тезауруса предметной области. Для апробации подхода был создан параллельный корпус текстов из предметной области «Информатика». Интересным направлением дальнейшего исследования является автоматизация поиска слов-индикаторов для разработки лексических шаблонов, а также сравнение результативности применения лексических шаблонов для русского и казахского языков.
Литература
1. Луков Вал.А., Луков Вл.А. Концепция курса «Мировая культура»: тезаурологический подход // Педагогическое образование. - 1992, № 5. - С. 8-14.
2. Лукашевич Н.В. Тезаурусы в задачах информационного поиска. - М.: Изд-во МГУ, 2011. -495 с.
3. Сидорова Е.А. Многоцелевая словарная подсистема извлечения предметной лексики // Компьютерная лингвистика и интеллектуальные технологии: материалы ежегодной междунар. конф. «Диалог - 2008». - 2008. - Вып. 7 (14). - С. 475-481.
4. Мозжерина Е. С. Автоматическое построение онтологии по коллекции текстовых документов // Электронные библиотеки: перспективные методы и технологии, электронные коллекции: тр. XIII Всерос. науч. конф. - Воронеж, 2011.
5. Marti A. Hearst. Automatic acquisition of hyponyms from large text corpora. In In Proceedings of the 14th International Conference on Computational Linguistics. - 1992. - P. 539-545.
6. Захаров В.П. Корпусная лингвистика: учеб.-метод. пособие. - СПб., 2005. - 48 с.
7. Крижановский А.А. Автоматизированное построение списков семантически близких слов на основе рейтинга текстов в корпусе с гиперссылками и категориями // Компьютерная лингвистика и интеллектуальные технологии: тр. междунар. конф. «Компьютерная лингвистика и интеллектуальные технологии». - М.: Изд-во РГГУ, 2006. - C. 297-302.
8. Никитина С.Е. Семантический анализ языка науки. - М.: Наука, 1987. - 141 с.
9. ГОСТ 7.24-2007. Система стандартов по информации, библиотечному и издательскому делу. Тезаурус информационно-поисковый многоязычный. Состав, структура и основные требования к построению (введен в действие с 1 июля 2008 г.)
10. Загорулько Ю.А., Боровикова О.И., Кононенко И.С., Соколова Е.Г. Подход к разработке русско-английского тезауруса по компьютерной лингвистике // Электронные библиотеки: перспектив-
ные методы и технологии, электронные коллекции: тр. XIII Всерос. науч. конф. - Воронеж: Изд-во Воронеж. гос. ун-та, 2011. - C.27-34.
11. Большаков И.А. Какие словосочетания следует хранить в словарях? // Труды международного семинара «Диалог - 2002» по компьютерной лингвистике и ее приложениям. - Протвино, 2002. - Т.2.
- С.61-69.
12. Загорулько Ю.А., Сидорова.Е.А. Система извлечения предметной терминологии из текста на основе лексико-синтаксических шаблонов // Проблемы управления и моделирования в сложных системах: тр. XIII Междунар. конф. / под ред. Е.А. Федосова, Н.А. Кузнецова, В.А. Виттиха. - Самара: Изд-во Самар. науч. центра РАН, 2011. - С.506-511.
13. Сопоставительная грамматика русского и казахского языков. Морфология. - Алма-Ата: Наука, 1966. - 459 с.
14. Сидорова Е.А., Загорулько М.Ю. Программный инструментарий разработки лингвистических ресурсов // Открытые семантические технологии проектирования интеллектуальных систем: тр. III Междунар. науч.-техн. конф. - Минск: Изд-во БГУИР, 2013. -С.159-164.
15. Шарипбаев А.А., Беманова Г.Т. Построение логической семантики слов казахского языка // Знания-Онтологии-Теории: материалы всерос. конф. с междунар. участием, 3-5 октября 2011 г. - Новосибирск, 2011.
16. Harris Z.S. Mathematical Structures of Language. - Wiley, New York, 1968.
17. Лайонз Дж. Введение в теоретическую лингвистику. - М.: Прогресс, 1978.
18. Рабчевский Е.А. Автоматическое построение онтологий на основе лексико-синтаксических шаблонов для информационного поиска // Электронные библиотеки: перспективные методы и технологии, электронные коллекции: тр. XI Всерос. науч. конф. - Петрозаводск, 2009. - С. 69-77.
Бименова Жанат Батырбековна, магистрант Новосибирского государственного университета, тел. 8(965) 8297533. E-mail: [email protected]
Джумамуратов Руслан Азатович, магистрант Новосибирского государственного университета, тел. 8(903) 0764191. E-mail: [email protected]
Сидорова Елена Анатольевна, кандидат физико-математичсеких наук, научный сотрудник Института систем информатики им. А.П. Ершова СО РАН, Новосибирск, тел. 8-(383)- 3307991.
E-mail: [email protected]
Bimenova Zhanat Batyrbekovna, graduate student, Novosibirsk State University.
E-mail: [email protected]
Dzhumamuratov Ruslan Azatovich, graduate student, Novosibirsk State University.
E-mail: [email protected]
Sidorova Elena Anatolievna, candidate of physical and mathematical sciences, research associate, A.P.Ershov Institute of Informatics Systems SB RAS, Novosibirsk. E-mail: [email protected]