Скорость накопления информации в Интернете все более опережает прогресс в технологиях ее поиска. Даже обладатели мощных настольных систем и широкополосных каналов страдают от избытка зачастую бесполезных данных, которые они получают в ответ на запросы. А что говорить о тех, кто выходит в Сеть, используя разнообразные технологии и устройства беспроводного доступа? Для них возможность получения краткого и релевантного ответа является решающим фактором при посылке запроса в Интернет или при выборе той или иной поисковой машины.
В статье представлена разработанная авторами технология создания универсальной интеллектуальной информационно-поисковой системы, которая может давать краткие, но исчерпывающие ответы на запросы как мобильных, так и стационарных пользователей Интернета и intranet.
Функции и структура
Описываемая интеллектуальная информационно-поисковая система (ИИПС) основана на принципиально новой стохастической интеллектуальной технологии выделения знаний и данных из текстовой информации [3, 4]. Главным ее достоинством является возможность синтеза на основе текстовых документов коротких, в одно предложение, ответов, релевантных запросам пользователей, заданным на естественном языке. Ответ может быть выдан с нужной степенью детализации и сопровожден списком или даже содержанием документов, в которых гарантированно присутствуют ответы на поставленные вопросы. В результате ИИПС снижает «поисковый шум» (и бесполезный трафик) и уменьшает рутинную загрузку пользователей.
Разработанные методические и алгоритмические основы ИИПС первого этапа реализованы в системе STOCONA SEARCH. В таблице приведен сравнительный анализ возможностей этой системы и зарубежных информационно-поисковых систем.
Из таблицы видно, что в первом варианте ИИПС STOCONA SEARCH в отличие от зарубежных аналогов, реализованы все виды грамматического анализа текстов (морфологический, синтаксический), а также лексический и семантический. Для его эффективного проведения в ИИПС применяют интеллектуальные подсистемы нового поколения.
Основу каждой такой подсистемы составляют база знаний и подсистема логического вывода, которые и обеспечивают новые поисковые возможности (рис. 1). Но для этого интеллектуальные подсистемы должны обрабатывать большие объемы знаний с использованием логического вывода в реальном масштабе времени. Встречающиеся аналоги, например широко распространенные экспертные системы, такими возможностями не обладают. Только применение в ИИПС стохастической интеллектуальной информационной технологии позволило решить эту проблему.
В основу данной технологии положена идея адаптации процесса обработки символьной информации к среде имеющихся компьютеров. Адаптация выполняется путем стохастического преобразования и кодирования этой информации. В результате символьные элементы, выражения, конструкции и другие символьные объекты преобразуются («сжимаются») в уникальные стохастические индексы — двоичные комбинации заданной длины. Формирование индексов непосредственно на основе самих символьных объектов делает в предложенной системе индексации возможными ввод новых или исключение старых объектов и изменение порядка их следования. Это позволяет автоматически синтезировать легко модифицируемые индексные таблицы, описывающие структурные связи между объектами.
Таблицы ИИПС содержат индексы структурно связанных слов или их основ, лексических, морфологических и синтаксических характеристик, а также предложений, абзацев, наименований текстовых документов. Кроме этого с помощью индексных таблиц описаны структурные связи, символьные объекты баз знаний: предикаты, определяющие отношения между символьными объектами, элементы семантических сетей и правила продукций. Преобразование символьных элементов, выражений и конструкций в стохастические индексы и автоматический синтез таблиц позволяют оптимизировать обработку больших объемов текстовой информации, данных и знаний при поступлении запросов.
В результате происходит быстрое построение логических цепочек и поиск семантически связанной информации. Эта процедура реализуется с помощью подсистемы логического вывода, которая вместе с соответствующей базой знаний входит в каждую из интеллектуальных подсистем (рис. 1), используемых как для индексирования текстов, так и для получения ответов на запросы. Благодаря линейной зависимости времени логического вывода от объема обрабатываемых данных и высокой (более 100 Мбит/с) скорости преобразования символьной информации в индексы ответы на вопросы удается получать в режиме реального времени.
Индексирование текстов в ИИПС
Формирование словаря
Информационной базой при реализации функций индексирования текстовых документов является индексная таблица словаря общего пользования (исходного словаря). Его таблицы для различных частей речи содержат строки, поименованные стохастическими индексами основ слов, и столбцы, соответствующие индексам характеристик данной части речи (род, лицо, число, падеж, время и др.).
В ячейках таблицы словаря общего пользования находятся индексы окончаний слов, полученных при склонении или спряжении слова, которому соответствует данная строка. Кроме этого в строке содержатся стохастические индексы основ слов, являющихся синонимами или близкими по смыслу данному. Заполнение таблиц словаря общего пользования производится в результате обработки его текста интеллектуальной подсистемой морфологического анализа. С помощью входящих в нее системы логического вывода и базы знаний производится логическая обработка правил продукций, фреймов и других форм представления знаний, а также текстовой информации в индексированном виде. Технология реализации указанных функций подробно описана в [5]. Проведение лексического анализа для выделения многозначных слов при этом реализуется автоматически в соответствии с разработанной методикой, которая за недостатком места здесь не приводится.
Подсистема морфологического анализа выделяет основу каждого слова, формирует все его варианты как части речи и варианты его окончаний при склонении или спряжении. Она также обеспечивает поиск синонимов и близких по смыслу слов. При необходимости таблицы словаря общего пользования могут быть дополнены таблицами словарей по различным темам, формируемых аналогично описанному выше на основе соответствующих тематических словарей.
Это обеспечивает автоматическое заполнение всех таблиц словаря общего пользования и его готовность к применению при анализе текстовых документов из различных предметных областей. Они могут находиться в корпоративных (локальных) базах или поступать в интеллектуальную поисковую систему с использованием формализованных запросов к обычным поисковикам Интернета. При этом используется лингвистический процессор, который переводит вопросы с естественного языка на формализованный язык запросов.
Заполнение фрейма предложения
Для обработки новых текстовых документов и формирования таблиц стохастических индексов применяются интеллектуальные подсистемы морфологического, синтаксического и семантического анализа. Анализ текста начинается с грамматического разбора предложений. Для каждого из них заполняется так называемый фрейм предложения (рис. 2), состоящий из десяти уровней (строк) слотов (ячеек).
Этой цели, исходя из содержания, служат подсистемы морфологического и синтаксического анализа. Подсистема морфологического анализа кратко описана выше. Вторая подсистема содержит базу знаний с правилами продукций, записанными в стохастически индексированном виде, применяемую для определения членов предложения на основе характеристик частей речи и вопросов к ним. Кроме этого в базу знаний включены фреймы с различными частями речи (например, с глаголами-связками, местоименными прилагательными, союзами, союзными словами и др.), которые вместе с правилами продукций применяются в процессе логического вывода при определении членов предложения.
Если точное определение какого-либо члена предложения не обеспечивается (чаще всего это подлежащее, прямое дополнение, обстоятельство и составное сказуемое), то подключается интеллектуальная подсистема семантического анализа. Для уточнения наименований членов предложения используется декларативная часть базы знаний этой подсистемы, содержащая подробное концептуальное описание предметных областей. Она включает обобщенные, агрегатные (сложные, составные) и конкретные объекты, в том числе те, которые относятся к категориям времени, пространства, цели и др. Сюда же входят фундаментальные виды связей между объектами, выраженные глаголами: родо-видовая, агрегативная, причинно-следственная. Указанное концептуальное описание формируется автоматически на основе различных лингвистических текстов (толковых словарей, научных, научно-методических изданий и др.)
В базе знаний для каждого объекта предметной области (терминологического целого) также приведены все виды его возможных связей с другими объектами. На концептуальном уровне они представлены предложениями в виде предикатов, содержащих подлежащее и дополнение (обстоятельство) со связанными с ними определениями (терминологическое целое или объекты) и сказуемыми, которые описывают связи между объектами. Кроме этого в базу знаний входят правила продукций, описывающие порядок проведения семантического анализа текстов. При необходимости подсистема синтаксического анализа может обращаться к указанной базе знаний для определения возможных видов связи между объектами, входящими в состав предложения. Как показано в [3], это обеспечивает эффективность поиска необходимых знаний и их логической обработки для точного определения наименований членов предложений.
Таким образом, в результате совместной работы указанных подсистем будут заполнены фреймы всех предложений каждого абзаца. Подчеркнем важную роль сформированных вопросов к членам предложений (группам членов предложений), содержащихся во фреймах (рис. 2). Именно они, как будет показано ниже, являются определяющими при поиске ответов, релевантных запросам пользователей.
Построение таблицы индекса текста
На основе получаемых в ходе анализа фреймов предложений каждого абзаца производится формирование таблицы индекса текста. Она содержит строки, поименованные стохастическими индексами основ слов, которые входят в состав данного текста. При этом столбцы таблицы индекса текста идентифицируются индексами его абзацев. Основы слов и индексы выделяются из полученных фреймов предложений. Заполнение ячеек строк таблицы индекса осуществляется с использованием содержимого фреймов предложений каждого абзаца. Отметим, что на основании указанной таблицы индекса можно восстановить текст любого абзаца и весь текстовый документ.
Таким же образом формируются таблицы индексов для баз знаний интеллектуальных подсистем, которые на начальном этапе также представлены в символьном виде. В настоящее время наполнение баз знаний производится экспертами в ручном режиме с использованием лингвистической литературы. После этого происходит автоматическое формирование таблиц индексов базы знаний для каждой интеллектуальной подсистемы. В перспективе в соответствии со способом, описанным в [5], заполнение баз знаний правилами грамматического анализа может осуществляться с использованием автоматизированного или автоматических режимов самообучения.
По существу таблицы индексов текстов и баз знаний являются новым «трехмерным», экономичным представлением информации: первое «измерение» включает содержание текста или знаний, второе описывает все структурные связи между символьными объектами, третье обеспечивает проведение логической обработки стохастически индексированных текстов или знаний и формирование ее результата. Это дает возможность в один этап производить предварительный выбор абзацев, обработку и анализ релевантности полученных ответов.
Указанные функции выбора и анализа текстовых фрагментов выполняются интеллектуальной подсистемой семантического анализа текстовой информации. С помощью данной подсистемы определяется также, к какой теме относится проиндексированный текст.
Формирование таблиц индексов тем
Для этого используется методика, основанная на применении в качестве критерия принадлежности к определенной предметной области наборов упомянутых выше предикатов базы знаний. Их поиск может производиться с помощью специальных запросов. После этого индекс названия данного текста вносится в таблицы индексов тем, которые также формируются в подсистеме семантического анализа. При этом каждой теме соответствует определенная таблица, а ее строки включают все неповторяющиеся индексы основ слов, входящие в проиндексированные тексты по конкретной теме. Столбцы содержат индексы наименований документов, содержащих указанные слова и относящихся к соответствующей теме. Ячейки таблицы включают индексы тех абзацев каждого текста, куда непосредственно входят слова, индексами основ которых поименованы строки. Таблицы индексов тем существенно ускоряют поиск документов, нужных для формирования ответа.
Обработка запросов
Запрос к ИИПС формируется на естественном языке и после стохастического индексирования представляется в форме вопросительного предложения, включающего вопросительное словосочетание и словосочетания, определяющие его семантику. Затем он преобразуется во множество новых запросов, эквивалентных исходному. Эти преобразования осуществляются с использованием синонимов, близких по смыслу слов, а также замены частей речи, членов предложения и их перестановки с сохранением смыслового содержания. Это реализуется на основе стохастически индексированных правил морфологического, синтаксического и семантического анализа путем получения эквивалентных структур словосочетаний вопросительного предложения запроса и сохранения семантической связи между ними.
Затем осуществляется предварительный выбор индексированных фрагментов текстовых документов, содержащих стохастические индексы всех словосочетаний преобразованного запроса. Для уточнения области поиска документов вначале применяются таблицы индексов тем. При этом таблица (или несколько таблиц), содержащая все словосочетания запроса, определяет индексы названий текстовых документов по данной теме (темам), подлежащих дальнейшей обработке, причем только те, ячейки таблицы которых содержат индексы абзацев, включающих хотя бы одно словосочетание запроса.
Далее из таблиц индексов тем выбираются индексы абзацев текстов, включающих в совокупности все словосочетания запроса. Затем для доступа к текстам таких абзацев по индексам основ слов словосочетаний запроса обращаются к таблице индекса каждого из предварительно выбранных текстов. По этим таблицам осуществляют логический вывод и эквивалентные преобразования текстов для создания стохастически индексированной семантической структуры. Она должна связывать индексы группы слов ответа, соответствующей вопросительному словосочетанию запроса, а также включать все другие словосочетания запроса, определяющие его семантику и входящие в предварительно выбранные абзацы.
На основе сформированной индексированной семантической структуры с помощью логического вывода, обеспечивающего связь стохастически индексированных элементов различных текстов, и эквивалентного преобразования текста генерируют краткий ответ системы. Он должен содержать словосочетания в стохастически индексированном виде, которые определяют семантику запроса, а также группу слов ответа, соответствующую вопросительному словосочетанию. Затем проверяют релевантность полученного краткого ответа системы запросу пользователя. Это осуществляется путем замены группы слов ответа на соответствующее вопросительное словосочетание для получения стохастически индексированного вопросительного предложения и его сравнения с запросом. При идентичности полученного вопросительного предложения и запроса принимают решение о релевантности краткого ответа, преобразуют его в текстовый формат и представляют пользователю.
Рассмотрим на примере алгоритм формирования краткого ответа. Допустим, что после эквивалентных преобразований поступившего запроса он принял следующий вид: «Какая программа используется при некорректном завершении работы с компьютером в результате пропадания напряжения в сети?» Предварительно были выбраны два логически связанных абзаца из разных текстовых документов, содержащих в совокупности все словосочетания преобразованного запроса (см. ниже, подчеркнуто). Самое главное, на что обращается внимание в начале обработки, — это наличие в выбранных абзацах словосочетания программа «Проверка диска», которое соответствует вопросительному словосочетанию запроса «Какая программа?».
Первый абзац:
«На жестком диске могут возникать логические ошибки. Логические ошибки — это нарушения в файловой структуре. Для выявления логических ошибок используется программа «Проверка диска». Логические ошибки возникают при некорректном завершении работы с компьютером».
Второй абзац: «В результате пропадания напряжения в сети на жестком диске возникают нарушения в файловой структуре. В этом случае используется программа «Проверка диска».
В результате применения описанного выше алгоритма будет сформирована стохастически индексированная семантическая структура краткого ответа, которая в текстовом представлении будет иметь следующий вид:»Программа «Проверка диска» используется при некорректном завершении работы с компьютером в результате пропадания напряжения в сети».
Полученный краткий ответ после замены группы слов ответа «Программа «Проверка диска» на соответствующее вопросительное словосочетание «Какая программа» будет идентичен запросу: «Какая программа используется при некорректном завершении работы с компьютером в результате пропадания напряжения в сети?» Это является критерием релевантности полученного краткого ответа запросу. Поэтому данный ответ выдается пользователю в виде: «Программа «Проверка диска» используется при некорректном завершении работы с компьютером в результате пропадания напряжения в сети».
Система дала краткий ответ и ссылку на список абзацев, содержащих искомую информацию |
Корректность краткого ответа может быть обеспечена путем формирования нескольких идентичных стохастически индексированных семантических структур упомянутого ответа на основе различных предварительно выбранных индексированных фрагментов текстовых документов.
Для формирования по требованию пользователя более подробного ответа, который содержит релевантные его запросу знания, применяется краткий ответ и логический вывод по таблицам индексов, использованных для получения фрагментов текстов. Затем с помощью эквивалентных преобразований предложений получают единый связный текст подробного ответа, который далее, после преобразования в текстовый формат, выдают пользователю.
Владельцу настольного компьютера ИИПС может выдать весь текстовый документ (набор таких документов), гарантированно содержащий релевантный ответ. При работе же с портативными устройствами объем ответа определяется их возможностями по отображению информации. В перспективе взаимодействие с ними можно сделать более комфортным, используя голосовой интерфейс.
В дальнейшем возможно создание интегрированной системы, использующей все описанные выше функции ИИПС по индексированию текстовых документов, обработке запросов. Это позволит иметь полноценный доступ к информации в любое время из любого места. Определяющим организационно-техническим фактором интеграции является прогресс в создании миниатюрных высокопроизводительных вычислительных средств и универсальных операционных систем для мобильных устройств, унификация протоколов информационного взаимодействия и сервисов пользователя.
Быстродействие интеллектуальных подсистем позволяет гибко перераспределять функции морфологического, синтаксического и семантического анализа между индексированием текстов и обработкой запросов. При этом анализ предложений будет ограничен рамками абзацев, предварительно выбранных по таблицам индексов тем. В результате существенно сократятся время индексирования и объем таблиц индексов при сохранении режима реального времени обработки запросов.
* * *
Уже разработан способ синтеза в режиме самообучения на основе русскоязычной ИИПС поисковых машин, работающих с текстами и запросами на любом из заданных иностранных языков [5]. Это означает, что вскоре может быть создано множество разноязычных или многоязычных ИИПС, использующих документы заданных национальных подсистем Интернета.
Познакомиться на практике с работой первого варианта ИИПС можно, обратившись к демоверсии системы STOCONA SEARCH (http://www.stocona.ru). На рис. 3 показан ее интерфейс после формирования краткого ответа на запрос пользователя.
ЛИТЕРАТУРА
- Искусственный интеллект: Справочник. Кн. 2: Модели и методы / Под ред. Д.А. Поспелова. М.: Радио и связь, 1990. 303 с.
- Современный русский язык: Учеб. для вузов. Ч. 2: Синтаксис / Под ред. Д.Э. Розенталя. М.: Высшая школа, 1979. - 256 с.
- Насыпный В.В. Развитие теории построения открытых систем на основе информационной технологии искусственного интеллекта. М.: Воениздат, 1994. 248 с.
- Насыпный В.В., Насыпная Г.А. Построение интеллектуальной информационно-поисковой системы. М.: Прометей, 2001. 27 с.
- Насыпный В.В., Насыпная Г.А. Способ синтеза самообучающейся системы извлечения знаний из текстовых документов для поисковых систем. Международная заявка на изобретение № РСТ/RU 02/00258 от 28.05.2002.
- Крол Э. Все об Internet. Пер. с англ. К.: Торг.-издат. бюро BHV, 1995. 592 с.
- Виноградов В.В. Русский язык (Грамматическое учение о слове).4-е изд. М.: Рус. яз., 2001. 720 с.
ОБ АВТОРАХ
Владимир Владимирович Насыпный — научный директор НПФ «Стокона», докт. техн. наук, профессор, Галина Анатольевна Насыпная — ведущий научный сотрудник НПФ «Стокона», канд. пед. наук, доцент, e-mail: nasypny@stocona.ru