Валентин
Холмогоров - alvion@peterlink.ru
Практика показывает, что при
желании утонуть можно где угодно: в
Атлантическом океане и в тарелке с
борщом, в глазах любимого человека и в
неконтролируемом потоке информации.
Последний аспект наиболее важен для
людей, так или иначе связанных с
информационными технологиями, будь то
использование домашнего компьютера или
администрирование локальной сети
крупного предприятия, а в особенности -
при эксплуатации Интернет. И если
неосторожного пловца, нахлебавшегося
соленой воды, еще можно попытаться
спасти, то пользователю, потерявшемуся в
глубинах Всемирной Сети, искусственное
дыхание не поможет. Именно поэтому в
наше время так актуален вопрос четкой
структуризации и оперативного доступа к
хранящимся в Интернет тематическим
данным. Итак, поговорим о поисковых
системах, господа.
Из школьного курса физики известно, что
материя может принимать лишь два
устойчивых состояния, то есть
представлять собой либо вещество, либо
энергию. И то, и другое поддается четкой
количественной оценке, и то, и другое
подчиняется строго определенным
физическим законам. Лишь в середине
двадцатого века человечество обратило
наконец внимание на тот непреложный
факт, что в природе имеется третья,
весьма абстрактная субстанция, которую
нельзя отнести ни к одной из ранее
изученных категорий. Имя ей - информация.
Если проследить динамику роста объемов
накопленной и обрабатываемой
человечеством информации за последние
несколько столетий, график примет вид
экспоненты. С появлением возможности
практически неограниченного накопления
данных в электронной форме в глобальной
сети Интернет эта кривая все более и
более приближается к вертикали. Изучая
общие тенденции увеличения и расширения
существующих на сегодня информационных
потоков, можно смело говорить о трех
математических закономерностях,
непосредственно связанных с развитием
Всемирной компьютерной сети.
1. Вероятность наличия в Интернет
необходимых в тот или иной момент
времени данных стремится к
бесконечности
2. Общее количество хранящихся там
данных увеличивается в геометрической
прогрессии
3. Вероятность нахождения нужной
пользователю информации обратно
пропорциональна коэффициенту роста ее
общего объема.
Иными словами, чем больше в Интернет
информации вообще, тем меньше у человека
шансов найти среди нее именно то, что ему
необходимо. Решать эту проблему и
призваны поисковые машины.
Поисковая машина представляет собой
интегрированный в web-сервер механизм,
реализованный с помощью технологии CGI -
Common Gateway Interface. Функционально подобные
системы можно разделить на две
характерные категории - интерактивные
каталоги и собственно поисковые машины.
В первом случае на сервере хранится база
данных, включающая адрес web-страницы, ее
краткое описание и перечень ключевых
слов, на которые машина должна
реагировать при получении
соответствующего запроса. База разбита
на тематические разделы, они в свою
очередь могут дробиться на категории с
более узкой тематикой, причем
пользователь имеет возможность
осуществлять поиск как по всем
имеющимся данным, так и в каком-либо
конкретном разделе. После ввода запроса
в соответствующую форму сервер передает
управление CGI-сценарию, который,
последовательно "пролистывая" базу,
выявляет соответствия введенной
пользователем фразы имеющимся в
каталоге ключевым словам, генерируя и
выводя на экран файл отчета. Недостаток
подобного алгоритма очевиден: такая
система просматривает только
собственную базу данных, и если
хранящаяся в ней ссылка по каким-то
причинам недействительна, она будет
включена в отчет наравне со всеми
остальными. Самые известные в Интернет
интерактивные каталоги - это
американский сервер Yahoo! (http://www.yahoo.com) и
русскоязычная система List.ru (http://www.list.ru).
Совершенно иначе работает поисковая
машина. В ее распоряжении также имеются
списки данных, но они содержат только
адреса стартовых страниц
зарегистрированных в системе сайтов.
При вводе запроса активизирующийся CGI-скрипт,
исследуя базу, обращается
непосредственно к самим страницам в
Интернет, анализирует содержащийся на
них текст, игнорируя тэги HTML, и, исходя из
полученных результатов, генерирует файл
отчета. Найденные в ходе поиска данные
кэшируются для ускорения обработки
последующих запросов и хранятся на
сервере определенный интервал времени.
Такой алгоритм также имеет ряд
существенных "минусов". Например,
недобросовестные web-мастеры могут
включать в код расположенных на их сайте
файлов HTML мета-тэги с описанием
содержимого страницы и ключевыми
словами, не соответствующими реальному
контенту; в некоторых случаях возможно
включение наиболее часто запрашиваемых
пользователями слов в невидимые
комментарии или скрытые текстовые блоки
-- например, белым шрифтом по белому фону.
Такого рода действия, безусловно,
способны значительно увеличить
посещаемость какой-либо конкретной
страницы, но одновременно с этим они
вносят заметную путаницу в результаты
работы поисковых систем.
Чтобы по возможности исключить
некорректность работы поисковиков, в
настоящее время используется три метода.
Первый метод - реализация так
называемого языка запросов.
Пользователю предлагается максимально
конкретизировать подаваемый запрос с
помощью специального набора команд.
Список команд варьируется от системы к
системе, но в общем виде он включает
следующие компоненты: логическое "И"
в пределах запроса и в пределах искомого
документа, заставляющее сервер
отображать только текст, содержащий все
слова заданного словосочетания;
логическое "ИЛИ", исключающее один
из элементов фразы, оператор "И НЕ",
обеспечивающий поиск предложения, в
котором присутствует слово, стоящее до
оператора, и отсутствует, расположенное
после. С помощью языка запросов можно
заставить машину искать только какую-либо
конкретную фразу, искать только в
заголовках файлов или в альтернативном
тексте к графическим изображениям.
Более детально семантика подобных
команд описана в соответствующих
разделах каждого конкретного
поискового сервера.
Второй метод заключается в ограничении
диапазона поиска. Самый простой вариант
- это попытка обнаружить какую-либо
строго заданную фразу в списке уже
найденных документов, соответствующих
менее жестким требованиям. Имеется
возможность ограничить перечень
исследуемых ресурсов какими-либо
конкретными серверами, либо исключить
из рассматриваемого диапазона ряд узлов.
Третий метод наиболее сложно реализуем
с технической точки зрения. Сводится он
к поиску документов с использованием
эвристических методов, а именно - с
учетом морфологии русского или
английского языка. То есть, реагируя на
запрос, содержащий глагол "идти",
поисковая машина будет регистрировать
документы, включающие слова "идти",
"иду", "идет", "шел", "шла",
"пойдет", "пойти", "пойду",
и.т.д. Одна из систем, работающих именно
таким образом - русскоязычная поисковая
машина "Яndex".
Тем не менее, все без исключения
поисковые службы и интерактивные
каталоги страдают одной и той же
неизлечимой "болезнью": они не
умеют полноценно анализировать текст.
Ни один поисковик не может адекватно
воспринять контекст, когда сталкивается
с многозначностью того или иного слова.
Именно поэтому пользователь, ищущий
информацию, касающуюся "закона об
авторских правах", в первую очередь
обнаружит в созданном машиной отчете
"закон всемирного тяготения", "закон
распределения энергии" и "сатирические
законы Мерфи". Ни один поисковик не
умеет обрабатывать стойкие
идиоматические обороты и чаще всего "спотыкается"
о смесь русских и английских слов. Иными
словами, несмотря на небывалый прогресс
подобных Интернет-технологий, лучше
человека с поиском информации во
Всемирной Сети на сегодня не справится
ни одна машина. В качестве иллюстрации к
предложенному описанию поисковых
серверов приведу два адреса:
американской Альтависты (http://www.altavista.com)
и российского Яндекса (http://www.yandex.ru).
Так или иначе, алгоритмы обработки
информации, применяемые поисковыми
службами, продолжают
совершенствоваться. Уже идет речь о
создании систем, способных действовать
"методом аналогий", подбирать к
заданным пользователем словам
корректные синонимы, автоматически
переводить запросы с одного языка на
другой: К сожалению, в настоящее время
поиск информации в Интернет - это
сложная "наука", требующая
определенных навыков и значительного
опыта. Но даже располагая уже имеющимися
на сегодня в распоряжении каждого из нас
возможностями и ресурсами, при
определенном желании и упорстве можно
добиться требуемого результата. Кто
ищет, тот всегда найдет.
Источник: http://www.magicpc.spb.ru/lib/
|