|
На этой странице описано приложение Абриаля: построение сетевой базы данных на основе Тезауруса Роже. Онлайновая демонстрация навигации по Тезаурусу в находится здесь. Установочный файл Тезауруса в виде БД Абриаля находится здесь. Внимание! Новую версию базы знаний Тезауруса вместе с гипертекстовой оболочкой можно скачать здесь. 23.09.2003 Сделана новая удобная оболочка в среде Абриаля 2. И исправлены некоторые недоработки в программе генерации. Но содержание Тезауруса осталось прежним. Если Вас не устраивает устаревшее содержание данного Тезауруса, и Вы хотели бы получить обновленную версию или создать свой тезаурус на любом языке, использующем латиницу - сделать это очень просто с помощью данной программы генерации: нужно только приготовить исходный текстовый файл со своей лексикой в том же формате, что и файл THES1911.ASC и подменить этот файл своим файлом. Полученные на выходе данные можно добавить в эту версию базы знаний или поместить в новую базу знаний. Файл THES1911.ASC взят в интернете, и используется в точности каков есть. В нем даже не исправлены многочисленные ошибки ввода. Вместо этого программа генерации научена понимать и исправлять эти ошибки на лету. Тезаурус Роже.Питер Марк Роже, англичанин швейцарского происхождения, поставил целью своей жизни создание специального словаря для философов, который он назвал словом Тезаурус от латинского thesaurus - "сокровищница". В этом словаре все слова и понятия, описывающие наш мир, были разбиты на 1000 смысловых категорий. В последствии этим Тезаурусом и другими подобными словарями стали пользоваться в основном писатели для поиска синонимов и близких по значению слов. И само слово тезаурус стало нарицательным, означающим "словарь синонимов". В наше время, для задач Искусственного Интеллекта, связанных с построением логической модели мира, первоначальный философский смысл тезаурусов вообще и самого первого Тезауруса в частности, вновь выходит на первый план. Первоисточник.За основу была взята электронная версия Тезауруса издания 1911 году. Как по содержанию (устаревшая лексика), так и по форме (очень много опечаток) он явно не дотягивает до самодостаточного ресурса интернета. Тем более, что сайты с современной выправленной версией Тезауруса имеются в интернете в изобилии. (Набрать THESAURUS или ROGET в Internet Explorer). Цель работы.Поэтому в первую очередь данная работа нацелена не на сам Тезаурус, а на исследование возможностей гипертабличного метода доступа к онтологическим сетям. Тезаурус Роже можно считать онтологической сетевой базой знаний, содержащей лексическую основу для всеобщей модели мироздания. Для активной созидательно работы с этой моделью старая методология доступа, основанная на иерархических (вложенных) структурах и односторонних ссылках, по-видимому недостаточна. Применение гипертабличной навигации Абриаля к большим онтологическим сетям, каковой является Тезаурус, даёт основание надеяться на прорыв в этом направлении. Устройство тезауруса и терминология.Как устроен сам тезаурус Роже? Я вынужден ввести тут некоторую свою терминологию, т.к. не знаю правильную. Прежде всего, что содержит тезаурус? Я буду называть это коллокациями (collocations). Почему не словами? Потому что слова входят в состав коллокаций, и со словами нужно работать отдельно, как с таковыми. Поэтому мы будем считать, что даже односложные коллокации - сами по себе, а слова – сами по себе. Т.е. будем считать, что есть слово bar и есть коллокация-существительное bar, состоящая из одного слова. Тезаурус состоит из шести классов. Внутри классов имеются еще разделы и подразделы до 8-ми уровней вложенности. Все они, и в том числе классы и сам тезаурус мы будем называть разделами (Partitions). Внутри разделов находятся Темы (Heads). Этих тем примерно 1022. Темы имеют название, например Will и номер от 1 до 1000, например 600 (есть еще как номера домов - с буквой а). Темы обозначаются как Will.600. Одна тема состоит из параграфов по частям речи. Части речи обозначаются N, . Соответственно все коллокации являются той или иной частью речи. А слова – нет. Например, есть две разные односложные коллокации fly:Nf и fly:Vf, одна существительное, другая глагол. Обе они состоят из одного слова fly:Wf. Итак, тема (Head) состоит из параграфов. Их может быть от одного до пяти. Внутри параграфов группы (Groups) слов, разделенные точкой. Изредка группы имеют название, но чаще всего они обозначаются своими порядковыми номерами. Поэтому полные обозначения групп выглядят как Will.600\N\2 – это вторая группа существительных в теме Will.600. Внутри группы коллокации разбиваются на сегменты ( знаком точка с запятой. Сегмент именуется по первой коллокации, входящей в него. Например, в сегмент Will.600\N\2\pleasure входят три коллокации: pleasure, wish, и mind. Некоторые темы сопровождаются текстовыми описаниями (пояснениями) Desc. Некоторые коллокации имеют также примечания, как правило, авторство или др. источники. (U.S., Latin, Hamlet…). Их будем обозначать Source. Итак мы получили следующую иерархию: Тезаурус--Класс--Раздел--...--Тема--Параграф--Группа--Сегмент--Коллокация--Слово При этом элементы двух последних уровней могут подчиняться нескольким элементам предыдущего по старшинству уровня. Таким образом иерархическая структура превращается в сетевую структуру. И как раз возможность свободной навигации по этой сети нас и интересует в данной работе. Теперь о тезаурусе в базе данных.Для эффективности работы слова (W) и коллокации внутри своих частей речи разбиты на подклассы по первой букве. Поэтому на самом деле слова выглядят как fly: а коллокации как fly: и fly:Vf. Итак – на подклассы по первой букве разбиты классы W(words), а также N, V, Adv, Adj, Int. Если не учитывать этого разделения, у нас имеются следующие классы объектов:
И суперклассы (объединения классов):
Используется также встроенный класс для строчных значений: STR. Parag:CLASS(HeaPar\Head,ParGro\Groups,GENLK=HeaPar) Group:CLASS(ParGro\Parag,GroSeg\Segments,GENLK=ParGro) Segm:CLASS(GroSeg\Group,GENLK=GroSeg)
Классы связаны между собой следующими отношениями: Pof:LINK(Part of:&Partition,Partitions:(&Partition)) Ndx:LINK(Content:(&Partition),Chiefs:{&Part}) Heads:LINK(Heads:(&Partition),Partition:&Head) Ref:LINK(Numeric Reference:{&Head},Head:{&Ref}) In:LINK(Words:(&List),Head:{&W}) Desc:LINK(Description:{&Head},desc_of:STR) Rel:LINK(relate to:{&Head},uses:{&Reltype},rel-from:{&Ref}) Source:LINK(Source:{&List},Source of:{&Source}) HeaPar:LINK(Part of speach:{&Head},Name:STR,Head:Parag) ParGro:LINK(Groups:{&Parag},Name:STR,Parag:Group) GroSeg:LINK(Segments:{&Group},Name:STR,Group:Segm) N:LINK(Nouns:{&Segm},Segm:{&N}) V:LINK(Verbs:{&Segm},Segm:{&V}) Adj:LINK(Adjectives:{&Segm},Segm:{&Adj}) Adv:LINK(Adverbs:{&Segm},Segm:{&Adv}) Int:LINK(Inton-s:{&Segm},Segm:{&Int})
Каждая строчка определяет отношение. Имя отношения идет перед :Внутри определения отношения находятся определения аспектов. Скобки {} обозначают множественный аспект. Скобки () обозначают списочный аспект. Если скобок нет, значит, аспект – одиночный. Знак & (почти везде) означает, что аспект ссылочный, т.е. удаление связи не удаляет объект. Выделенные отношения являются служебными, т.е. организуют именование параграфов внутри тем, групп внутри параграфов, сегментов внутри групп. Порядок работыТезаурус поставляется в виде файла THES1911.ASC который валяется в разных местах интернета и содержит страшно много ошибок, и программы ROG2AB.EXE, которая преобразует этот файл в формат текстовой БД Абриаля, исправляя на лету большую часть ошибок. Для удобства запуска к этому прилагаются «батники»
Что следует делать по порядку:
Несколько практических советов
Ну вот, собственно и всё. Если будут вопросы – пишите. |