Изречение Уинстона Черчилля «кто владеет информацией, тот владеет миром» сегодня звучит совсем не парадоксально: успешный бизнес невозможно представить без доступа к полной, точной, актуальной и достоверной информации. Однако огромное количество данных хранится фрагментарно, а их превращение в полезные для бизнеса сведения становится все более проблематичным.
Около четверти века назад мне довелось участвовать в проекте, связанном с обработкой неструктурированных данных, и пришлось столкнуться с лингвистическими проблемами типа «объект-субъект», «часть-целое», родовидовые отношения, синонимия и т.п. Уже тогда стало ясно, что семантика текстовых сообщений доступна только человеку или искусственному интеллекту, создать который тогда было не по силам. Нет его и поныне, но на смену академическому интересу пришел интерес материальный — бизнес больше не может ждать.
Аналитики компании Enterprise Strategy Group считают, что циркулирующая в сетях информация на 80% не структурирована. Исследование хранилищ данных североамериканских предприятий, проведенное AIM Statistics, показывает, что 7,5% всех документов безвозвратно теряются, 3% ошибочно «подшиваются» не в те папки, средний тираж копий документов составляет 19 экземпляров, а профессиональные аналитики тратят 5-15% рабочего времени на чтение новой информации и до 50% — на ее поиск. В соответствии с результатами исследований, выполненных еще в 2002 году сотрудниками Data Warehousing Institute, устаревшие данные о клиентах обуславливают ежегодную потерю американским бизнесом 611 млрд. долл. Сегодня этот показатель еще выше. Однако около половины респондентов сообщают, что не планируют повышать качество своих данных, хотя, например, сведения о клиентах устаревают со скоростью 2% в месяц (люди женятся, разводятся, умирают).
Раздел ИТ, отвечающий за чистоту и актуальность данных, называют управлением жизненным циклом информации (Information Lifecycle Management, ILM). Этот раздел является составной частью управления контентом предприятия (Enterprise Content Management, ECM). Именно ILM-решения позволяют существенно изменить ситуацию, избежать информационного коллапса, а в повседневной жизни компаний — существенно снизить затраты на хранение данных, повысить полноту и точность выборки из корпоративных хранилищ информации (см. рис.).
Подходы к построению ILM-систем
Принципы разработки приложений, которым на протяжении десятилетий следовали проектировщики, приводили к тому, что практически для каждого приложения определялся свой формат представления данных, а разные платформы использовали еще и разные кодировки. Стремление разработчиков интегрировать разрозненные данные предприятия наталкивается на труднопреодолимую преграду: унаследованная от этих приложений информация непригодна для совместного использования в новых приложениях без предварительной унификации протоколов представления и нормализации данных. Общую картину дополняют разнообразие языков написания документов, использование нескольких языков, таблиц и графики в одном документе, а также неупорядоченность метаданных, сопровождающих такие документы. Решение данных проблем возможно по двум направлениям: виртуализация систем хранения данных и виртуализация приложений.
Под виртуализацией систем хранения понимают создание программной среды, обеспечивающей независимость приложений от физических устройств хранения данных. Этот подход позволяет снизить расходы на хранение и предоставляет возможность отслеживания редко применяемых данных. Виртуализация приложений предполагает сбор данных из созданных ранее источников, их нормализацию, снабжение внешними описаниями (метаданными) и приведение к виду, необходимому для работы специально созданных приложений.
По мере роста Сети и упрощения доступа к внутренним корпоративным ресурсам возрастает потребность в хороших поисковых механизмах. Вот соответствующие проблемы и потребности:
- сайт большого размера, содержащий массу ценного, — требуется эффективный поиск в больших массивах исходных данных;
- часто посещаемый сайт с большим количеством ссылок — проблематично найти точку входа, поскольку соответствующая страница часто расположена глубоко в иерархии;
- динамические сайты — необходима поддержка доступной простой навигационной иерархии;
- сайты электронной торговли — поисковая система должна быть виртуальным «товароведом», имеющим прямой доступ к товарам для поставок клиентам и получающим информацию до и после продажи.
А на корпоративных порталах задачи иные:
- большая коллекция документов, содержащих критичные для бизнеса компании знания, — эффективный поиск делает их доступными для сотрудников фирмы;
- хранилища коллективного пользования, содержащие ценный контент, — реализация действительно хорошего поиска по всему хранилищу избавляет пользователей от блуждания по индивидуальным хранилищам в поисках нужной информации.
Составляющие хорошего поиска
Булева логика
Поиск по ключевым словам с применением булевой алгебры — самое нижнее звено поисковой цепочки. Практически все поисковые механизмы созданы на основе булевой алгебры, и, в зависимости от ваших задач, такого поиска может оказаться достаточно, но сегодня это — скорее исключение. Кроме того, большинство пользователей без особого энтузиазма воспринимают необходимость освоения булевой алгебры, и все больше организаций требуют более совершенных возможностей поиска, полноты (показатель того, насколько хорошо система может находить релевантные документы в базе данных) и точности (способность системы извлекать в процессе поиска только релевантные документы) его результатов.
Поисковые системы повышенной полноты и точности дают лучшие результаты, если в поисковом предписании присутствуют два или более слов. Запрос, составленный на естественном языке (скажем, «по показателю NASDAQ лучше продается на бирже по результатам истекшего года»), содержит дополнительные термины. Они повышают качество запроса.
Концептуальный поиск
Концептуальный поиск позволяет заранее определить «правильные» ключевые слова, которые считаются релевантным результатом поиска по вашему запросу. Запрос погружается в контекст, в котором рассматривается правильное значение поисковых слов. Это означает, что при запросе army tanks во время концептуального поиска будет рассматриваться окружение слова tanks. Когда будут обнаружены признаки «военный» или «машина», этим ответам будет придан больший вес, и они разместятся в верхней части итогового списка. Ответы с признаком «топливный контейнер» также будут признаны релевантными запросу, но они займут нижнюю часть списка. Концептуальный поиск предусматривает использование и встроенных словарей синонимов поисковых слов.
Поиск информации на портале электронного бизнеса должен напоминать работу с его предшественником — библиотекарем или архивариусом. Критически важной функцией этих специалистов является способность «переводить» значения терминов на «язык», наиболее отвечающий нуждам пользователя. Если вы спросите библиотекаря «где у вас хранится информация об управлении запасами», он, скорее всего, переспросит — «запасами кормов для скота или продуктов питания?» Интеллектуальный концептуальный поиск поддерживает эти возможности в интерактивном режиме.
Запросы на естественном языке
Простота использования — критически важный признак успеха любой поисковой системы. Так, на сайте электронной торговли сложный в применении механизм поиска может отпугнуть покупателя, и он больше никогда сюда не вернется. Усовершенствованный поисковый механизм, использующий естественный язык, облегчает поиск, разрешает формулировать поисковый запрос на языке повседневного общения. Соответствующие поисковые системы «понимают», к чему относятся слова-омонимы; распознают идиомы, другие стилистические фигуры.
В отличие от обычного поиска, результатом которого становится текст, содержащий заданные слова независимо от контекста, при интеллектуальном поиске анализируется семантика искомых слов, что улучшает результаты. Естественный поисковый язык не принуждает пользователя строить структурированные поисковые предписания. Напротив, он позволяет применять в запросе всю необходимую экспрессию, все многообразие естественного языка.
Ранжирование
Если результатом запроса становится многостраничный отчет, то требуется поисковый механизм с тонкой настройкой ранжирования. Нужно присваивать каждому найденному документу ранг релевантности и размещать документы с наивысшим рангом в начале списка. Ключевые элементы, необходимые для ранжирования документов, таковы.
- Полнота. Чем больше слов в запросе (заданных непосредственно или с помощью ссылок), тем больше вес, или релевантность, найденного документа.
- Свидетельство контекста. Чем больше соотнесенных терминов, тем больше вес. Если документ содержит некое слово и соотнесенные с ним термины, этому слову присваивается больший вес, поскольку оно окружено подкрепляющими «показаниями».
- Семантическое расстояние. Документам, содержащим большое число близких значений термина (синонимов), присваивается больший вес. Чем термины ближе по смыслу к поисковым словам, тем больший вес они имеют.
- Близость. Чем ближе в документе располагаются поисковые слова и их синонимы, тем больше вес найденного документа (например, документ считается более релевантным, если близкие значения расположены в том же предложении или параграфе).
- Плотность попадания. Чем больше значение, показывающее соотношение поисковых слов и их близких значений к общему количеству слов в документе, тем больше вес найденного документа.
Совместно все эти факторы определяют релевантность документа. Специальные средства размещают самые релевантные документы в начале списка результатов поиска и дают возможность пользователю начать просмотр с наиболее точных ответов. Кроме того, лучшие поисковые системы выделяют слова и их близкие значения в найденных документах, показывая наиболее релевантные части документов. Это делает ненужным трудоемкое просматривание длинных документов в поисках релевантных частей.
Распознавание шаблонов
Не важно, насколько просты или сложны ваши требования, но неправильное написание или опечатки не должны мешать поиску. Это относится и к многовариантному написанию одного и того же слова. Например, существуют 39 признанных способов написания имени «Мухаммед», самого популярного на Земле. Сегодня имеются решения этой проблемы. С помощью создания двоичных «шаблонов» для представления таких слов поисковые системы компенсируют ошибки в написании (включая написание первой буквы в слове), различие в допустимых вариантах написания, сложные торговые наименования продуктов и даже ошибки при оптическом распознавании текстов. Без применения средств распознавания шаблона в поисковой системе результаты поиска будут неполными. В качестве альтернативы придется вручную выправлять все документы или заново создавать хранимые знания.
Поддержка нескольких языков
Если ваш сайт содержит многоязычный контент, очень важно наделить каждый из этих языков интеллектуальными средствами поиска. Многоязычный поиск может быть особо важным в научных и технических организациях, которые должны находиться на переднем крае исследований, проводимых во всем мире. Вам также необходимо продумать широту языкового охвата. Английский, немецкий и французский — это обычный набор. Но в мире нарастающих глобальных возможностей число поддерживаемых языков может исчисляться уже десятками.
Поддержка многих типов документов
Сегодня используются сотни форматов данных и ощущается нарастающая потребность в поиске по всем типам данных, в том числе по документам текстовых процессоров, электронным таблицам, презентациям, графическим форматам, документам HTML, XML и т.д. Хорошая поисковая система должна предоставлять простой доступ к необходимой информации с единой платформы и позволять получать результаты в персонализированном формате. При этом сам поиск должен осуществляться по множеству форматов и типов запоминающих устройств, разбросанных по всему миру.
Масштабируемость
Рост числа обращений к сайту, увеличение количества репозиториев и объемов хранимой в них информации делают критически важной задачу масштабируемости. Надо сказать, ее способны решить далеко не все поисковые системы. Например, если ранжирование осуществляется на основе статистики, то ранг документа может изменять свое значение в зависимости от того, в каком из репозиториев он хранится и пополнялся ли данный репозиторий новыми поступлениями. Сужение области ранжирования одним репозиторием ухудшает точность, а результат теряет целостность. Наиболее точные поисковые системы используют метод целостного ранжирования, который позволяет объединять результаты поиска по множеству индексов без потери точности. Поисковые решения, обеспечивающие высокие скорость и надежность при обработке больших массивов данных и с тысячами параллельно действующих пользователей, должны распределять процессы по множеству серверов и процессоров.
Безопасность
Безопасность является важным условием совместного использования информации. Открытие доступа к информационным ресурсам, даже под прикрытием межсетевого экрана, требует средств, ограничивающих доступ пользователей и библиотекарей к административным полномочиям и некоторым документам. Хорошее поисковое средство должно предлагать разграничение полномочий на уровне документа и не только обеспечивать возможность доступа к различным репозиториям, но и учитывать их внутренние правила защиты. Более того, после однократной идентификации пользователи должны получать доступ к множеству репозиториев.
Готовность к новым задачам
С учетом темпов развития ИТ важно, чтобы решения для поисковых систем были гибкими и обеспечивали их развитие. Во-первых, разработчики приложений должны иметь программный интерфейс для создания быстродействующих интерактивных приложений, которые будут иметь доступ к любым данным по новым интерфейсам и делать работу пользователей более плодотворной. Во-вторых, требуется удовлетворять потребности в интеллектуальном мультимедийном поиске (чертежная графика, аудио- и видеоданные): необходима возможность интеграции мультимедийного поиска в существующую текстовую поисковую систему. Следует учитывать и такие тенденции, как поддержка XML; поддержка средств управления знаниями, помогающих пользователям «видеть» расположение искомых объектов, механизма поиска специалистов в определенной области, средств пополнения хранилищ или файлов; поддержка профиля интересов, т.е. запросов, исследующих динамически изменяющийся контент.
От слов к делу
Бесполезно сравнивать поисковые машины разных производителей в отрыве от их конкретной области применения и назначения. Например, при создании систем корпоративного поиска и реализации модели, ориентированной на данные, стоит, в частности, обратить внимание на линейку продуктов корпорации IBM.
В рамках проектов StorageTank и Unstructured Information Management Architecture (UIMA) в IBM занимались проработкой вопросов виртуализации систем хранения данных TotalStorage SAN File System и TotalStorage SAN Volume Controller и UIM-приложений для поиска корпоративного контента. Система SAN Volume Controller разрабатывалась с целью снижения сложности управления ресурсами сети хранения данных, а также стоимости хранения данных. По сути, она обеспечивает независимость логического и физического представления памяти, что позволяет без изменения приложений работать с виртуальной памятью.
UIM-приложения — это программные системы, способные анализировать неструктурированную информацию с целью выявления и доставки релевантных знаний пользователю. В процессе анализа неструктурированной информации UIM-приложения используют статистические методы обработки данных, правила естественного языка, машинное обучение и онтологии (набор определений формализованного словаря для совместного использования знаний). В проекте UIMA определяются архитектурные и программные решения для поиска, создания, композиции и реализации широкого спектра средств аналитической обработки, связывая их в сервисы обработки неструктурированной информации. В рамках UIMA организуется среда, в которой разработчики могут создавать и испытывать собственные UIM-компоненты. Эта среда не зависит ни от интегрированной среды разработки, ни от платформы; для обработки текстовой информации в IBM предлагают систему WebSphere Information Integrator OmniFind Edition.
Помимо решений IBM на рынке систем управления контентом предприятий свои продукты предлагают такие компании, как Documentum, Hummingbird, FileNet и OpenText. Говоря о решениях отечественных производителей, стоит отметить программные продукты таких компаний, как «Город Инфо», Cognitive, «Терн», «Одеон», NeurOK, «Информбюро», «Галактика».
Вадим Ефремов (VEfremov@hetnet.ru) — советник генерального директора компании «Гетнет консалтинг» (Москва).
Проблемы поиска
Полнота и точность. Под полнотой и точностью понимают релевантность результатов поиска поисковому предписанию и наличие в этих результатах информационного шума. Так, стопроцентная полнота достигается, когда в выборке присутствуют все имеющиеся документы, релевантные поисковому предписанию. Стопроцентная точность — это отсутствие в выборке документов, нерелевантных поисковому предписанию.
Cтопроцентных полноты и точности удается достигнуть только в рамках одной базы данных, а поиск по разрозненным источникам информации неминуемо приводит к снижению этих показателей. Наличие информационного шума обуславливает необходимость вторичной идентификации выбранных по запросу документов: нужно вручную отобрать только релевантные документы и уже потом продолжить их обработку, в полной мере используя естественный интеллект. На показатели полноты и точности можно влиять с помощью алгоритмов идентификации и индексирования (синтаксический и морфологический анализ русскоязычных текстов, синонимия, служба ведения словарей имен собственных и т.д.).
Исторически наибольшую потребность в поиске документов, поступивших из разных источников, испытывали спецслужбы. Для них, в первую очередь, и создавались системы, способные обрабатывать и находить документы на разных языках. Сегодня эти разработки становятся доступными и на ИТ-рынке.
Актуальность и достоверность. Свое?временное обновление быстро изменяющихся данных — требование бизнеса, а удаление неактуальной информации позволяет защитить его от риска случайного использования таких данных. Современные программы сканирования Сети в поисках нужной информации (crawler) отслеживают обновление источников данных с заранее заданной периодичностью. Важно, чтобы при вводе в корпоративное хранилище новых (обновленных) данных происходила автоматическая идентификация подобных, но уже устаревших данных, и в этом случае вновь требуется вторичная идентификация.
Проблема достоверности данных напрямую связана с источником их происхождения. Распыление информации по Сети привело к изменению отношения к проблеме доверия и в дальнейшем существенно повлияет на разработку новых поколений информационных систем. Сегодня достоверными принято считать источники, доступные в пределах корпоративной сети, а также сайты крупнейших компаний. Для остальных данных, как и прежде, существует процедура проверки с использованием нескольких независимых источников.
Фрагментарность. Пополнение традиционной базы данных новым документом обычно сопровождается контролем над заполнением минимально необходимого состава реквизитов. Это продиктовано желанием однозначно идентифицировать реальные объекты в конкретной информационной системе и стремлением к устранению информационного шума. Если в традиционной базе данных выполняется операция пополнения/изменения какого-либо документа, то изменяемый фрагмент может быть сколь угодно малым (например, всего один реквизит). В информационных хранилищах индексируются все документы первоисточников, независимо от состава данных и полноты реквизитов, описывающих тот или иной объект.
Как правило, документы содержат только фрагменты этих описаний. То, что считается «мусором» в традиционных базах данных, в информационных хранилищах является «сырьем» для сведения в единое целое фрагментов описания объектов, поступивших из различных источников. Процесс сведения фрагментов — это интеллектуальный процесс выявления тождеств, связанный с сопоставлением подобий. Поиск подобных фрагментов осуществляется поисковой машиной, а их сведение, отождествление описания реального объекта, как правило, выполняется человеком в процессе вторичной идентификации.
Безопасность. Теоретически, информационные хранилища могут сохранять схему разграничения прав доступа как совокупность (суперпозицию) схем разграничения, заимствованных из первоисточников. Так, некоторые документы не будут участвовать в поиске при выполнении запроса не допущенного к ним пользователя. На практике выявление устаревших и дезинформирующих документов может потребовать наделения некоторого количества специалистов полномочием чтения всех документов для выполнения вторичной идентификации. Эти специалисты могут не иметь полномочий удаления устаревших, на их взгляд, документов. Однако эту особенность информационных хранилищ неформатированной информации, поступившей из разрозненных источников, следует учитывать при работе с заказчиками.