Методика работы с
полнотекстовыми базами данных ИРБИС64
Документами
полнотекстовых баз данных могут быть тексты в форматах TXT, DOC, RTF, PDF, HTM,
HTML. Никакой дополнительной обработки для включения полных текстов в базу
данных не требуется. Тексты могут сохраняться в базе данных в специальном
архивном файле или в виде ссылок. Последний режим позволяет публиковать Интернет-сайты в виде Электронных коллекций на CD-ROM.
Подсистема полнотекстовых баз данных ИРБИС64 включает
в себя:
1. Расширенный
АРМ "Администратор", который помимо стандартных функций включает в
себя дополнительные режимы для работы с полнотекстовыми базами данных:
· Создание
(пополнение) полнотекстовых БД.
· Естественно-тематическая
классификация текстов (на основе которой реализуется «поиск похожих текстов»).
· Смысловой
анализ текстов.
2. АРМ
конечного пользователя (читателя) для поиска и просмотра в полнотекстовых баз
данных. В АРМе реализованы специальные поисковые алгоритмы:
· Поиск по
запросу на естественном языке с ранжированием найденных текстов.
· Поиск
текстов по сходству («поиск похожих текстов»).
Работа иллюстрируется на примере тестовых текстов по социологии и экологии, входящих в состав дистрибутива системы (Irbis64\Visual HCA\HELP\TEXTS).
1.
Создание полнотекстовой базы данных.

Рис 1.

Рис 2.
Сначала
в режиме главного меню “База данных – Новая – Полнотекстовая БД” создается
новая полнотекстовая база данных TEST (см. Рис 1.).
Далее
в режиме главного меню “Полнотекстовый сервис” вызывается форма “ Добавить
(удалить) тексты в БД ”, в которой по нажатию кнопки “Добавить” производится
добавление текстов (см. Рис 2.). Верхняя
часть формы – это панель описания шаблона
записи.
Добавляемому
набору текстов может быть назначен общий групповой комментарий (например,
“Статьи конференции 2004 г.”) и дата
ввода.
В средней части формы расположена
опция выбора режима добавления текстов “Добавлять текст в виде ссылки”. При
выборе данной опции для каждого добавляемого текста создается новая запись, в
которой сохраняется путь на файл
(относительно БД или полный) в технологическом поле 952^B. В противном случае имя текста сохраняется как новое
повторение поля 952^A, если
опция “При добавлении создавать новые записи” отключена или как первое
повторение поля 952^A созданной
новой записи.
В средней части формы ниже расположена опция выбора способа
добавления текстов “Добавлять директорию с текстами целиком вместе с
поддиректориями”, которая дает возможность добавить в БД все файлы с принятыми
расширениями из выбранной директории вместе с файлами поддиректорий. Еще ниже
расположена опция выбора способа хранения текстов в
записи – “Добавлять тексты как один документ”. При отмечании этой опции тексты
сохраняются в одной записи как повторения поля 952 и рассматриваются при
индексации слов как единый документ.
В нижней части формы расположен список
текстов БД. Выделив один или более текстов (Shift) пользователь может их удалить. В этом случае
соответствующие записи будут логически удалены.
После добавления или удаления текстов
необходимо выполнить режим “Создать словарь заново – полностью”.

Рис 3.
2.
Далее в режиме главного меню “Создать словарь заново –
полностью” производится индексация базы данных – извлечение слов из текстов и
создание словаря.

Рис 4.
В случае, когда режим создания словаря
заново выполняется впервые и файл основного тематического словаря отсутствует в
директории БД (имя БД + ‘0.dct’) следующие режимы 3
и 4 включаются друг за другом автоматически и требуют участия администратора
только для ручной окончательной корректуры основного тематического словаря.
Этих режимов достаточно для работы алгоритмов нахождения схожих текстов в АРМ
Читатель. Если же требуется создание набора тематических словарей, определяющих
различные контексты при поиске похожих текстов, выполняются нижеследующие
режимы.
3.
В режиме главного меню “Полнотекстовый сервис -
Естественно-тематический рубрикатор”

Рис 5.
создается базовый словарь – это набор слов из исходного
массива текстов, частота встречаемости которых превышает общеупотребительную
частоту. Общеупотребительная частота данного слова берется из заранее
заготовленного словаря общеупотребительной лексики (СОЛ), созданного на основе
представительного массива газетных текстов. Базовый словарь будет включать
слова из всех тематических подъязыков, использованных авторами текстов.

Рис 6.
Далее приведем описание режимов работы под кнопками
управляющей панели слева направо.
·
Первая группа из 3 кнопок служит для работы с деревом
классификатора. “Добавить индекс”, “Удалить индекс” и “Назначить индекс группе
текстов”. Каждому тексту в БД в соответствующей записи сохраняется тематический
индекс. Каждому индексу соответствует предметно-ориентированный словарь (список
слов) БД – это файл с расширением DCT. Первые
две кнопки меняет только структуру дерева классификатора. Третья кнопка
позволяет связать с группой текстов выбранный (selected) тематический индекс. Для выполнения этого режима нужен
файл-список имен файлов текстов. Как получить такой файл, будет рассказано
ниже.
·
Следующим идет ниспадающее меню выбора основного языка
текстов. Считается, что тексты представлены на одном из 3-х языков – русском,
английском, испанском. Поскольку классификация текстов основана на выборе
терминов предметной области, прежде чем выполнять любые операции по созданию
тематических словарей требуется выбрать язык.
·
Следующая направо от языка – кнопка режима создания
базового словаря или списка слов-кандидатов на возможный отбор в тематические
словари БД. Этот режим выполняется сразу после создания словаря полностью.
·
Следующая кнопка – создать предметно-ориентированный
(возможен также термин естественно-тематический) словарь.
·
Следующая кнопка позволяет корректировать вручную
предметно-ориентированный словарь в редакторе WINDOWS.
·
Следующая кнопка запускает программу визуального
эвристического анализа числовых данных. Эта программа используется
администратором (наряду с дополнительными режимами доступными при нажатии
последней в ряду кнопки на главной панели) для более тонкой настройки
классификатора полнотекстовой БД.
4.
Следующий этап работы – создать основной
предметно-ориентированный словарь (ПОС) с индексом 0.
Для этого необходимо нажать соответствующую кнопку на панели управления или
выделить левой кнопкой мыши верхний индекс – он для всех текстов равен 0. В
меню под правой кнопкой мыши выбрать режим создать предметно-ориентированный
словарь.
5.
Появиться окно для выбора критериев отбора слов из
базового словаря в словарь ПОС – под правой кнопкой
мыши на графике – выбор какой график показать. Движки устанавливают различные
критерии отбора сразу рассчитывается число слов удовлетворяющих этим критериям
и число слов в ПОС – удовлетворяющим всем критериям.

Рис 7.
Предметно-ориентированные
словари (ПОС)
служат основным инструментом классификации текстов. Слова из базового словаря
проходят через ряд критериев отбора. Таким образом, ПОС
– это часть слов из БС, которые прошли через заданные экспертом критерии
отбора. По порядку применения критерии
отбора слов располагаются в следующей последовательности:
· максимальное число значимых текстов – максимально
допустимое число текстов, в которых встретилось слово. Этот
критерий позволяет выделить слова, специфичные только для части текстов;
· минимальное число значимых текстов
– минимальное число текстов, в которых
встретилось испытуемое слово из кандидатов в ПОС. Этот критерий фактически
совпадает с нижней статистической границей встречаемости слова, позволяя отбрасывать, кроме того, слова, специфичные
для малого (по сравнению с исходным) количества текстов.
· превышение заданной относительной частоты.
Далее
рассчитывается числовая матрица текст/слово – TW(text/word), элементами которой являются число встречаемости
данного слова из общего ПОС в данном тексте. На основе
TW рассчитываются
квадратные симметричные матрицы слово/слово – WW и текст/текст – TT. Элементом TT является число употреблений слов из общего ПОС в паре данных
текстов. Элементом WW является
число текстов, в которых встретилась данная пара слов из общего ПОС. На основе WW определяются частные ПОС,
на основе TT определяются тематические
группы текстов и тексты-представители(тематические ядра) для данной группы.
После
нажатия кнопки “Выполнить” создается ПОС и
рассчитываются матрицы (те что отмечены).
Чтобы работал режим “Показать ПОС” необходимо
указать WINDOWS что для
открытия файлов с расширением dct необходимо использовать программу notepad.exe. Режим
“Анализировать ПОС” служит специально для расчета
матриц без изменения самого ПОС.
6.
Для создания классификатора необходимо получить набор
тематических словарей определяющих контекст, в котором оценивается похожесть
текстов. Это можно сделать путем разбиения основного тематического словаря на
более мелкие (используя матрицу слово\слово)
или путем разбиения текстов БД на группы и создания для каждой группы
отдельного тематического словаря. Второй путь возможен, если текстов в БД менее
1000, так как работа с матрицами большего размера в программе Эвристика не
предусмотрена.
В нашем случае далее анализируется матрица текст\текст с помощью программы
эвристического анализа. Запуск программы осуществляется нажатием
соответствующей кнопки на управляющей панели формы естественно-тематический
классификатор БД.

Рис 8.
После
открытия файла показывается окно редактора и после
установки чека “Цветовая шкала”,
создается цветовой образ матрицы. Различные амплитуды показаны разным цветом.

Рис 9.
По нажатию кнопки “Выполнить” происходит расчет расстояний между объектами - в данном случае это тексты - и строится граф, рисуются только дуги, соответствующие расстояниям не больше указанного на цветовой шкале. При перемещении движка вверх количество нарисованных дуг увеличивается.

Рис 10.

Рис 11.
Нажав самую левую кнопку управляющей панели под цветовой шкалой, мы включаем режим автоматической кластеризации, при этом объекты объединяются в устойчивые кластеры и рисуются в виде розеток при перемещении движка.
Две самые правые кнопки на управляющей панели под цветовой шкалой позволяют изменять ее масштаб. Таким образом, получаем 2 кластера.

Рис 12.

Рис 13.
Нажатие самой левой кнопки на
верхней управляющей панели переводит программу в режим отображения дерева
кластеров. Необходимо привести в соответствие дерево кластеров и граф - для этого нажимаем кнопку ‘объединить
кластеры’ на верхней управляющей панели (рядом с кнопкой дерево кластеров).
Отметив режим ‘Связные объекты в кластер’ мы получим 2 кластера, которые
отображались на графе. Теперь окрасим объекты из 2 –х
кластеров в разные цвета, нажав кнопку с кисточкой.

Рис 14.

Рис 15.
В главном меню выберем Редактор.

Рис 16.
Цветовой образ матрицы уже другой –
четко видны 2 тематические группы текстов. В режиме сохранить объекты с
различными цветами получим 2 файла списка имен текстов из разных тематических
групп. Просмотрев несколько файлов можно определить названия будущих
тематических индексов.

Рис 17.
7.
Далее создается естественно-тематический классификатор

Рис 18.
Выполняется режим назначения
индекса группе файлов, имена которых были прежде сохранены в Эвристике.

Рис 19.
8.
После этого выполняется создание базового словаря
заново, так как частоты словоупотреблений изменились.
9.
Для каждого
тематического индекса создаем ПОС выполняя уже знакомые
действия. Критерии отбора слов другие – выбираем слова максимально
представляющие тексты с данным индексом.
10. В заключении проверяем что тексты правильно
идентифицируются по словарям ПОС Для этого используем
режим создать матрицу текст\ПОС. Матрица текст\ПОС это процент слов из ПОС в данном тексте.

Рис 20.
Или другими словами это поисковый
образ текста в контексте данного тематического индекса, который его задает
предметно-ориентированный словарь.

Рис 21.

Рис 22.

Рис 23.

Рис 24.