Опубликован: 06.03.2006 | Уровень: для всех | Доступ: платный
Лекция 9:

Поиск информации в Web

Поиск по индексу

Поиск по индексу заключается в том, что пользователь формирует запрос и передает его поисковой машине. В случае когда у пользователя имеется несколько ключевых слов, весьма полезно использование булевых операторов2Логические операторы, получившие имя в честь знаменитого математика Джорджа Буля (Boole) (1815 - 1864). Буль первым показал, что существует аналогия между алгебраическими и логическими действиями, так как и те и другие предполагают лишь два варианта ответов - истина или ложь, нуль или единица. Он придумал систему обозначений и правил, пользуясь которыми можно было закодировать любые высказывания, а затем манипулировать ими как обычными числами. Булева алгебра располагала тремя основными операциями - И, ИЛИ, НЕ, которые позволяли производить сложение, вычитание, умножение, деление и сравнение символов и чисел..

Наиболее часто используемые булевы операторы:

  • AND - все термины, соединенные "AND", должны присутствовать в предлагаемом документе. Большинство поисковых систем используют значок "+" вместо "AND";
  • OR - как минимум одно из ключевых слов, соединенных "OR", должно присутствовать в искомом документе;
  • NOT - ключевое слово (слова), следующее за "NOT", не должно появляться в искомом документе. Некоторые поисковые системы используют значок "-" вместо "NOT";
  • FOLLOWED BY - одно из ключевых слов должно следовать непосредственно за другим;
  • NEAR - одно из слов должно отстоять на определенное количество слов от другого;
  • Кавычки - слова внутри кавычек - это фраза, которая целиком должна быть найдена в пределах документа или файла.

Текст, в пределах которого проверяется действие логических операторов, называется единицей поиска. Это может быть предложение, абзац или весь документ. В разных поисковых системах могут использоваться различные единицы поиска. Например, можно искать документы, в которых два слова - "электрический" и "счетчик" - находятся одновременно в пределах предложения или в пределах всего документа. Соответственно поиск в пределах предложения возможен для тех систем, которые имеют в индексе подробный адрес.

Синтаксис языка запросов в разных поисковых системах может отличаться, обычно в справочных данных на поисковом сервере приводится информация о синтаксисе запросов. В качестве примера в табл. 4.2. приводится синтаксис языка запросов, принятый в поисковой машине Yandex.

Таблица 4.2. Синтаксис языка запросов при строгом поиске
Синтаксис Что означает оператор Пример запроса
Пробел или & Логическое И (в пределах предложения) Лечебная физкультура
&& Логическое И (в пределах документа) Рецепты && (плавленый сыр)
| Логическое ИЛИ Фото | фотография | снимок | фотоизображение
+ Обязательное наличие слова в найденном документе (работает также в применении к стоп- словам3Стоп-слова - это распространенные слова, которые игнорируют поисковые машины во время поиска по ключевому слову. Поисковики не обращают на них внимания, чтобы сэкономить место на своих серверах и ускорить процесс поиска. ) +Быть или +не быть
() Группирование слов (Технология | изготовление) (сыра | творога)
~ Оператор И НЕ (в пределах предложения) Банки ~ закон
~~или~ Оператор И НЕ (в пределах документа) Путеводитель по Парижу ~~ (агентство | тур)
/(n m) Расстояние в словах (~ назад +вперед) Поставщики /2 кофе музыкальное /(-2 4) образование вакансии ~/+1 студентов
<< << Поиск фразы <<Красная шапочка>> (эквивалентно красная /+1 шапочка)
&&/(n m) Расстояние в предложениях (-назад +вперед) Банк && /1 налоги

Многие поисковые системы имеют режим "расширенный поиск". Например, в наиболее популярной на сегодня поисковой системе Google (www.google.com) этот режим дает возможность искать документы на определенном языке, измененные в определенное время или представленные в определенном формате, например Word-документ или презентацию Power Point.

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

Несмотря на то что человек человеку всегда лучше объяснит, что же он ищет, нельзя сказать, что современные поисковые машины - это примитивные системы, которые, кроме как найти некоторую последовательность символов, ничего не могут. Напротив, существуют, например, поисковые системы позволяющие решать проблему различных словоформ. А это далеко не тривиальная задача. Если мы ищем документ по ключевому слову "стол", то, вероятно, документ, содержащий фразу "столы для кухни" - это то, что нам нужно. Однако "стол" и "столы" для системы, осуществляющей формальное сравнение, - это разные слова. Поиск, учитывающий словоизменения, называется морфологическим поиском.

Ольга Тимофеева
Ольга Тимофеева
Ольга Прускавцова
Ольга Прускавцова
Anna Getova
Anna Getova
Болгария
Алексей Васильев
Алексей Васильев
Россия, Сергиев Посад