оказывается, что "шел" - это прошедшее время глагола "идти"! Тут впору забросить учебник в дальний угол и воскликнуть вслед за персонажем знаменитого фильма Марка Захарова: "Мой голова не мочь это запоминать!"

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

Возьмем меню какой-нибудь справочной системы, произведенной, скажем, компанией "Аудит минус". Пользователю доступен поиск по ключевым словам - выбрав ключевое слово, через короткое время получишь список документов, в которых это слово встречается. Очень полезно? Да, безусловно. Очень удобно? Да нет, не особенно. Не говоря уже об "идти"-"шел", такие программы рассматривают слова "идет", "идут" и "идти" как разные. То есть ответственность за перечисление всех форм разыскиваемого слова (или как говорят, словоформ) лежит на пользователе. Справедливости ради надо заметить, что имеется возможность задать шаблон из части слова. (Например, я был слегка удивлен, обнаружив в меню ключевое слово ОКОНЧАН*. Вскоре, правда, выяснилось, что оно соответствует разным формам слова ОКОНЧАНИЕ.)

Логичным шагом на пути создания гибкой русскоязычной поисковой системы стала бы программа, отыскивающая по одной заданной словоформе все остальные. Скажем, задаешь слово "падать" и получаешь все фрагменты текста, где встречаются его словоформы "падал", "падаю", "падаешь" и даже "упал", "упаду" (желательно, чтобы программа могла сама переводить глагол из несовершенной формы в совершенную, не меняя при этом смысла). Логично, но не особенно просто. И дело здесь именно в той самой изменяемости слов в русском языке. Например, у "среднего" русского глагола имеется 250 словоформ. Если уж даже человек "не мочь это запоминать", то где уж тут успеть компьютеру с его железной логикой.

Но недавно появился как раз такой продукт. Фирма Аркадия, программистское подразделение компании CompTek International, выпустила в свет "Библейский компьютерный справочник", позволяющий производить поиск именно в этом режиме. Это первый в России законченный коммерческий продукт, реализующий систему лексического поиска. Слово "лексический" означает, что поиск ведется не по ограниченному набору ключевых слов, а по любому слову из текста, отталкиваясь от разных его форм. Библейский компьютерный справочник - плод многолетнего труда фирмы Аркадия. Разработанная технология позволяет работать фактически с любым текстом. Конечно, это только принципиальная возможность - на самом деле, для настройки приложения на определенный текстовый массив требуется очень большой объем работы.

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

В принципе эта технология может быть применена к любому большому тексту на русском языке. Почему разработчики решили начать именно с Библии? К этой Книге обращаются сейчас все больше людей и, соответственно, растет число тех, кому в повседневной жизни приходится грамотно, аккуратно и уважительно цитировать Священное писание. Это не только священники, но и журналисты, преподаватели, историки и многие другие.

Главное, для чего нужен "Справочник" - это быстрый, полный и точный поиск нужных стихов Библии. В результате поиска вы получается список всех стихов, содержащих заданное выражение. Отметим, что лексический запрос может включать именно выражение, то есть не одно слово, а несколько, причем пользователь может задавать расстояние между этими словами в тексте Библии. Поиск можно ограничить определенным набором книг Библии; можно также по-разному связывать результаты нового поиска со списком ранее найденных стихов.

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

Помимо этих средств, составляющих ядро программы, в нее включен ряд вспомогательных функций, облегчающих работу с текстом. Во-первых, это своеобразный "навигатор", позволяющий мгновенно переходить к нужной книге, главе и стиху Писания. Кроме того, в программе имеется тематический указатель, содержащий около 200 часто интересующих пользователей тем. По стихам, которые включают эти темы, тоже можно проводить лексический поиск. Любую тему можно редактировать, внося в нее дополнительные стихи и удаляя ненужные. Кроме того, пользователь сам может формировать подборки стихов и объявлять их темами. Эти темы можно потом записывать на диск; таким образом, через некоторое время у пользователя появляется свой собственный тематический указатель.

Найденный стих, главу или набор стихов можно забрать в Буфер обмена и перенести затем в любое приложение Windows. Тем самым результат поиска может использоваться в любом текстовом редакторе: его можно вставлять в документы, редактировать, распечатывать и так далее.


Александр Крейнес - научный сотрудник Института кристаллографии РАН. С ним можно связаться по телефону: (095) 334-2931.

Описываемый продукт принадлежит к классу полнотекстовых поисковых систем (full-text retrieval system). Обычные базы данных имеют дело с хорошо структурированными данными - записями и полями. Полнотекстовые системы работают со слабоструктурированными объектами - текстами. Базовый набор поисковых возможностей полнотекстовых систем таков:

  • boolean search - операции алгебры множеств, как внутри искомого выражения, так и над уже выполненными запросами;
  • fuzzy search - поиск по неполному или неточно написанному слову.
  • Полное инвертирование текстов предполагает хранение позиции каждого слова в документе. При такой обработке текста добавляются следующие возможности:

  • proximity search - поиск с учетом диапазона допустимых расстояний между словами;
  • zone search - поиск в заданных структурных единицах текста.
  • Учет языковой специфики в полнотекстовых системах обеспечивается алгоритмом морфологического индексирования. Такой алгоритм позволяет, с одной стороны, находить все формы искомого слова, а с другой - использовать любую из форм слова при запросе (даже такую, которая не встречается в тексте). Глубина лексического анализа может быть различной:

  • объединение слов с общей основой (search-searches-searched, стол-столы-столами);
  • учет чередования основ (businessmen-businessman, go-went, идти-шел);
  • полный морфологический разбор, который для русского языка включает учет причастных и деепричастных форм глагола (делать-делаемый-делавший-делая-делав), а также объединение видовых пар глагола (делать-сделать).
  • Частотный словарь, получаемый в результате морфологического индексирования, содержит список всех начальных форм (для существительных русского языка - это именительный падеж единственного числа).


    Первый электронный Грибоедов

    Есть люди, которые полагают, что филолог и компьютер - понятия несовместимые. Они ошибаются. Молодой и крепкий филолог, под шорох чейнджера перелистывающий на экране страницы

    CD-ROM-овой базы данных - зрелище уже чуть ли не заурядное. Чтобы те, кто общается с компьютером, не забыли окончательно родной язык, отечественные производители ПО выбрасывают на рынок такие издания, как Russian Classical Literature on CD-ROM. Начало положил "Библейский справочник". Следующим стал светский Александр Сергеевич Грибоедов, чьи произведения и биографические материалы доступны теперь обладателям CD-драйвов.

    Инициативу ИМЛИ и в этот раз поддержала фирма Аркадия, разработавшая информационную систему электронного научного издания. Это пока демо-версия. В ней реализованы все возможности поиска (по атрибутам и по лексике с учетом русской морфологии), навигации, работы в многооконном режиме (для Windows 3.х и Windows 95), есть гипертекстовая система ссылок. Полная версия отличается от демонстрационной своим объемом: сюда включены полные тексты всех известных произведений, 200 наиболее значимых работ о жизни и творчестве, библиография 6000 статей о Грибоедове, указатели изданий, имен и географических названий, портреты и иллюстрации. (Жанр не позволяет разместить видеоматериалы; эта возможность будет реализована при издании менее удаленных от нас по времени авторов.) Полная версия выйдет летом 1996-го.

    Презентация диска состоялась во флигеле Чеховской библиотеки в литературном салоне Елены Пахомовой при поддержке первого частного издателя некоммерческой литературы Руслана Элинина. Не всем присутствовавшим, конечно, посчастливилось стать обладателем нового программного продукта, но и необходимое для него устройство есть пока не у каждого филолога, журналиста, обывателя. Не стоит волноваться. Рынок CD-ROM расширяется не по дням, а по часам, вышел же пока только второй том анонсированного издания. Классиков хватит надолго.

    - Игорь Левшин