<%@ Language=JavaScript %> Гиперсловари на базе системы "Абриаль"

packin.ru

Публикации

Гиперсловари на базе системы "Абриаль"

ДИАЛОГ'2002, Труды межд. семинара. М., 2002.

А.И. Пацкин

РосНИИ Искусственного интеллекта, Москва

aleksandr@tochka.ru

В статье рассматриваются два лингвистических приложения системы представления знаний (СПЗ) "Абриаль", реализованные автором в 2001 году в РосНИИ ИИ. Цель этой работы - проверить применимость технологий "Абриаля" для больших лексикографических баз данных, что в случае успеха могло бы послужить основой как для создания удобного инструментария лингвиста вообще, так и для систем распознавания естественных текстов в частности.

Работа состояла в программной конвертации содержания двух словарей - английского Тезауруса Роже и Русского Грамматического словаря Зализняка, из формата исходных (опубликованных в интернете) файлов в формат текстовых баз данных Абриаля, после чего полученные базы данных загружались в память и просматривались через броузер Абриаля. Таким образом, словари приобретали форму сетевой базы знаний с удобным навигационным интерфейсом, что позволило говорить о появлении нового понятия "гиперсловарь" по аналогии с гипертекстом, ставшим основой современного Веба (WWW).

Введение.

Печатные словари имеют иерархическую (древовидную) структуру. Такова природа всех бумажных текстов: связи между объектами обычно отражаются вложением одного объекта в другой. Ссылки, являющиеся листьями в этих древовидных структурах не могут рассматриваться как полноценные связи. Даже если ссылка не "висячая" и даже если эффективный переход по ссылке возможен, то это всего лишь "полусвязь", т.к. обратная ссылка отсутствует и обратный переход невозможен. Указатели, прилагаемые к некоторым словарям, добавляют к основной иерархии вспомогательные, что, однако, не избавляет их от принципиальных недостатков: иерархические связи а) неполны, б) неэффективны (особенно на больших массивах данных), и, главное, в) принудительной ориентацией искажают "естественную" сетевую природу любых знаний.

Ограничения иерархической структуры могут происходить из двух источников: либо из ущербности носителя информации - бумаги (в том числе виртуальной бумаги, т.е. экрана монитора), либо из инструментальной ориентации на решение узко специальной задачи. Но разработка электронных словарей имеет научный и коммерческий смысл, прежде всего, если ставится цель создания универсальной базы для решения широкого спектра задач. А что появление компьютеров сняло проблему ограниченности носителя , вопервых  количественно: нет нужды более держать книгу в руках - она может иметь необъятное содержание, разбросанное по интернету; и, во-вторых, качественно: книгу теперь не "листают" ни в прямом, ни в переносном смысле, её не читают подряд, а просматривают, перемещаясь по связям некой виртуальной сети.

Примером такого нового подхода является разработанный в Принстонском Университете электронный словарь/тезаурус WordNet (http://www.cogsci.princeton.edu/~wn/), а точнее - броузеры, построенные на основе этой базы данных (например, WordWeb, см. http://www.x-word.com/). Здесь существенно то, что связи частное/общее, часть/целое, антонимии и т.д. проходимы качественно одинаковым образом в обоих направлениях.

Наиболее радикально эти идеи воплощены в системе представления знаний "Абриаль", разработанной в РосНИИ ИИ [7] (http://www.artint.ru/packin/abrial/index.htm).

СПЗ Абриаль.

Принципиальным отличием модели данных СПЗ "Абриаль" является полный отказ от любых односторонних ссылок с заменой их на двусторонние и многосторонние связи. На пользовательском уровне это позволило создать оригинальный интерфейс "гипертаблиц", позволяющий осуществлять свободную навигацию по виртуальной объектной сети, параллельно модифицируя данные и перестраивая сеть.

Абриаль предназначался для любых, не только для лексикографических баз знаний. Но применение системы для словарных баз данных представляется особенно привлекательным, поскольку на новой модели данных выстраивается не только новая навигационная модель пользовательского интерфейса, но и принципиально новая продукционная вычислительная модель, позволяющая эффективно решать задачи анализа естественного текста на полном общеупотребительном словаре, т.е. без ограничения рамками какой-то одной проблемной области.

Английский гиперсловарь на базе Тезауруса Роже.

Питер Марк Роже создал специальный словаря для философов [1], который он назвал словом Тезаурус от латинского thesaurus - "сокровищница". В этом словаре слова и понятия были разбиты  на 1000 смысловых категорий. В последствии этим Тезаурусом и его потомками стали пользоваться в основном писатели для поиска синонимов. Сегодня для задач Искусственного Интеллекта, в частности связанных с построением логической модели мира, первоначальный философский Тезауруса вновь вышел на первый план [5]. Тезаурус Роже можно считать онтологической сетевой базой знаний, содержащей лексическую основу для всеобщей модели мироздания. Для активной созидательной работы с этой моделью старая методология доступа, основанная на иерархических (вложенных) структурах и односторонних ссылках, по-видимому, недостаточна. Применение гипертабличной навигации Абриаля к большим онтологическим сетям, каковой является Тезаурус, даёт основание надеяться на прорыв в этом направлении.

За основу была взята электронная версия Тезауруса 1911 года издания [1], находящаяся в свободном доступе в интернете (http://www.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/areas/nlp/corpora/roget/0.htm). Как по содержанию (устаревшая лексика), так и по форме (очень много опечаток) он явно не дотягивает до самодостаточного ресурса и предмета исследования. Поэтому в первую очередь, данная работа нацелена не на сам Тезаурус, а на исследование возможностей гипертабличного метода доступа к онтологическим сетям.

Устройство Тезауруса, терминология, и обозначения.

Элементами тезауруса являются отдельные слова и словосочетания или коллокации (collocations), такие как put down. Однако далее для простоты изложения мы примем формальный подход, и будем считать элементами тезауруса только коллокации, а отдельные слова - одиночными коллокациями. Отметим что элементы словаря, т.е. коллокации разбиты по частям речи. Например, есть две разные одинарные коллокации fly - существительное (муха) и fly - глагол (летать), но обе они состоят из одного слова fly. Т.е. fly - существительное, fly - глагол и слово fly - это три разных объекта в рамках данной работы.

Основа структуры тезауруса - разбиение на 1022 Темы (Heads). Коллокация может входить в состав нескольких тем. Темы имеют название, например Will, и номер от 1 до 1000, например 600 (есть номера с буквой а).  Темы обозначаются как Will.600.

Тезаурус состоит из шести классов. Внутри классов имеются еще разделы и подразделы до 8-ми уровней вложенности. Все разделы, подразделы, а также классы и весь тезаурус целиком мы будем формально считать разделами (Partitions) разных уровней.

Одна тема состоит из параграфов (числом от одного до пяти) по частям речи. Части речи обозначаются N, V, Adv, Adj, Int. Соответственно все коллокации являются той или иной частью речи. Отметим, что объекты-слова могут входить в состав разных коллокаций (частей речи), но сами по себе частями речи формально не являются. Т.е. слово put входит в состав коллокаций put, put in, put down, put up,... являющихся частями речи.

Внутри параграфов (частей речи по одной теме) мы будем выделять группы (Groups) слов, разделенные точкой. Изредка группы имеют название в тексте словаря, но чаще всего они обозначаются своими порядковыми номерами. Поэтому полные обозначения групп выглядят как Will.600\N\2 – это вторая группа существительных в теме Will.600. Внутри группы коллокации разбиваются на сегменты знаком точка с запятой. Сегмент именуется по первой коллокации, входящей в него. Например, в сегмент Will.600\N\2\pleasure входят три коллокации: pleasure, wish, и mind. Некоторые темы сопровождаются текстовыми описаниями (пояснениями) Desc. Некоторые коллокации имеют также примечания, как правило, авторство или другие источники.  (U.S., Latin, Hamlet…). Их будем обозначать Source.

Итак, получилась такая иерархия:

Тезаурус<-Класс<-Раздел<-...<-Тема<-Параграф<-Группа<-Сегмент<->Коллокация<->Слово

При этом элементы двух последних уровней могут подчиняться нескольким элементам предыдущего по старшинству уровня. Таким образом, иерархическая структура превратилась в структуру сетевую.

И как раз возможность свободной навигации по этой сети нас и интересовала в данной работе.

Русский гиперсловарь на базе словаря Зализняка.

Работа по созданию гиперсловаря русской лексики фактически состояла в следующем.

Исходный текст Русского грамматического словаря Зализняка [2] был получен с сервера Старостина http://starling.rinet.ru/morphoru.htm.

Была написана специальная программа, анализирующая словарь, и генерирующая (по правилам из предисловия словаря) все формы (склонения и спряжения) для существительных, прилагательных, местоимений, глаголов.

Профили словоизменения

По результатам генерации форм, слова были разбиты на группы, названные профилями. Каждый профиль описывает группу слов с идентичным словоизменением. Например, для существительных профиль содержит 6*2=12 хвостов-окончаний в 12-ти возможных падежах. Все слова словаря ассоциировались со своим профилем с указанием основы, к которой добавляются хвосты. Например: ладья (лад)-->бадья. Слово "ладья" склоняется по профилю "бадья" с основой "лад". К этой основе добавляются все окончания профиля "бадья". (Как основа, так и хвосты могут быть пустыми, например слово "ребенок" имеет нулевую основу, т.к. его множественное число - "дети"). Сам профиль именуется по первому по порядку слову, использующему этот профиль. Соответственно, такие слова как ребенок, имеют уникальные (одноименные) профили. Теперь, если мы будем добавлять в словарь новые слова, очень легко задавать для них форму изменения без специальных грамматических знаний. Например, мы добавляем хакерский термин фича. Достаточно указать, что он склоняется как туча. А туча, в свою очередь, имеет профиль (склоняется как) аванложа. Т.е. приписываем фиче нужный профиль (или аналог) - и можем быть спокойны за словоизменения: отныне слово фича будет пониматься в русском тексте.

Все слова, связанные со своими профилями, профили, связанные со своими окончаниями (хвостами), а также привязка/разбиение слов по частям речи, и по другим грамматическим категориям, (т.е. по роду, одушевленности, совершенности глаголов, и т.д.) совместно образовали сетевую базу данных системы Абриаль.

Таким образом, стала возможна удобная всесторонняя навигация по всему массиву русской лексики, содержащемуся в словаре Зализняка.

Динамическая генерация словоформ

Средствами внутренней вычислительной модели Абриаля была обеспечена динамическая генерация всех словоформ с использованием  профилей. Для этого в среду была помещена короткая, всего из нескольких строк - ассоциация (это понятие Абриаля соответствует обобщению понятия функции). Т.е. благодаря этому в процессе навигации из любого слова видны все его словоформы. И 160 страниц грамматических правил из словаря Зализняка практически заменили всего несколько строчек "кода" в данной базе данных. Причем, не только для старой, но и для всей вновь добавляемой лексики.

Интересным результатом описанной части работы явилось построение уникальной сетевой среды, содержащей достаточно полный массив русской лексики, с возможностью удобной навигации пользователя в данной среде.

Морфологическая сегментация

На этом этапе было обнаружено, что технические параметры навигации в базе данных заметно хуже, чем те, что были достигнуты для английского гиперсловаря (Роже). Это объяснялось большими объемами и иной структурой базы данных. В связи с этим (и из чисто научного интереса), уже в рамках решенной формальной программистской задачи, была сделана попытка произвести морфологическую сегментацию слов в полученном словаре, т.е. сделать содержательную лингвистическую работу в основном программными методами.

Вышеуказанная программа была дополнена средствами морфологической сегментации. В качестве исходных данных для этой задачи использовались правильные списки префиксных и суффиксных сегментов, а также законных русских корней, взятых из Словаря морфем Кузнецовой и Ефремовой [3]. На выходе производилось разбиение слов на максимум семь морфологических сегментов по образцу не/благ/о/по/луч/н/ый (т.е. с охватом двухсложных, но не трех- и более сложных слов). Кроме того, исходные списки правильных морфов и морфемных блоков, дополнялись правильными и ошибочными выведенными блоками. Алгоритмы сегментации основывались на здравом смысле и на визуальном анализе состава словаря, с целью максимизировать долю правильных разбиений при минимальном ручной работе по созданию исходных списков. В основном сегментация состояла в постепенном отсечении от начала или от конца слова известных правильных или рассчитанных морфемных блоков. Для определения таких корней, как вет в словах ответ, завет, привет применялось правило: если два слова начинаются на законные приставки, после которых в точности совпадают, то в начале совпадающей части следует искать корень.

В результате структура связей слов с составляющими их сегментами дополнила базу данных, полученную на предыдущих этапах. Теперь стала возможной навигация как от слов к сегментам, например от слов к корням, так и в обратном направлении, например от корня ко всем (обычно родственным) словам, использующим данный корень. Так же легко может производиться навигация от префиксных, суффиксных блоков, от окончаний, (как грамматических окончаний, так и от хвостов профилей, не всегда идентичных окончаниям).

Эта часть работы, т.е. морфологическая сегментация, добавила к полученной среде новое качество, сделав основным элементом среды не только слова, но и морфемы, что чрезвычайно важно в перспективе для эффективного анализа русского текста. Чтобы оценить прибыль в эффективности, достаточно сказать, что в словаре Зализняка без малого 100000 слов, а корневых морфем в словаре Кузнецовой и Ефремовой [3] менее 5000.

Количественные результаты и технические параметры.

  • Размер словаря - 97379 слов.

  • Глаголов - 27823

  • Субстантивное склонение  -  45535

  • Адъективное склонение - 21441

  • Число профилей в субстантивном склонении (существительные) - 325.

  • Число профилей в адъективном склонении (прилагательные) - 43.

  • Число профилей для глаголов - 674.

  • Число префиксных блоков - исходное/результирующее: 64/529

  • Число суффиксных блоков - исходное/результирующее: 165/8132

  • Число корневых сегментов - исходное/результирующее: 4771/12838

  • Полное время работы программы генерации на Athlon 1.1Ггц: около 45 минут.

  • Размер базы данных в текстовом виде 25М. (загружается в память около 4 часов).

  • Размер сохраненной двоичной базы данных  75М (загружается 4-8 секунд).

Заключение

Опыт построения гиперсловарей на базе СПЗ Абриаль показал, что даже при относительно небольших затратах сил на этом направлении могут быть получены результаты, интересные в научном смысле и перспективные для практических приложений. По-видимому, даже небольшая группа программистов и лингвистов за вполне ограниченные и ясные сроки могла бы довести данную работу до коммерческого уровня, как в содержательном, так и во внешне потребительском смысле. Эти и другие подобные гиперсловари, например, на основе того же WordNet или русского толкового словаря Ожегова [6], или двуязычные словари, например, Мюллера [4], по отдельности каждый, либо совместно - в виде комбинированного гиперсловаря, могли бы, во-первых, стать чрезвычайно полезными продуктами широкого пользования, для всех, изучающих языки. Во-вторых, такие словари могли бы стать удобными инструментальными средами для работы лингвистов и научных работников смежных профессий. И, в-третьих, (а точнее - в частности к "во-вторых") гиперсловари, могут стать фундаментом для универсальных семантических (онтологических) сетей, без опоры на которые немыслимо серьёзное продвижение в области NLP.

Автор заинтересован в контактах с желающими совместно продолжить эту работу.

Все материалы по данной работе, в том числе установочные пакеты системы Абриаль и других программ, доступны на сайте проекта http://www.artint.ru/packin/abrial/.

Литература:

1.       Roget's Thesaurus,  Crowell company - 1911 (Electronic version by MICRA, Inc. - 1991).

2.       Зализняк А.А. , Грамматический словарь русского языка,  М., Русский язык - 1977

3.       Кузнецова  А.И., Ефремова Т.Ф. Словарь морфем русского языка. М., Русский язык – 1986

4.       Мюллер В.К. Англо-русский словарь. М.,Русский язык - 1981

5.       Нариньяни А.С. Кентавр по имени ТЕОН: Тезаурус + Онтология. Диалог 2001 Т 1,Аксаково 2001,стр.184-188

6.       Ожегов С.И. Словарь русского  языка. М.,Русский язык - 1990

7.       Пацкин А.И. Программа ABRIAL - конструктор баз знаний в системе ИНФО-Т. Труды 7-й национально конференции по искусственному интеллекту КИИ-2000. Переславль-Залесский 2000.