Научная статья на тему 'ПОНЯТИЕ, ХАРАКТЕРИСТИКИ И УСТРОЙСТВО ПОИСКОВОЙ СИСТЕМЫ'

ПОНЯТИЕ, ХАРАКТЕРИСТИКИ И УСТРОЙСТВО ПОИСКОВОЙ СИСТЕМЫ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
1172
68
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПОИСКОВАЯ СИСТЕМА / ХАРАКТЕРИСТИКИ ПОИСКОВЫХ СИСТЕМ / РАНЖИРОВАНИЕ / РЕЛЕВАНТНОСТЬ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Марина М. С.

С развитием глобальной сети Интернет и ростом количества документов, размещенных в ней, возникла проблема поиска информации. На сегодняшний день в большинстве случаев ее решают поисковые системы [1], которые определяют список документов, соответствующих (релевантных) запросу пользователя. Таких документов могут быть миллионы, и задача поисковой системы - расположить найденные документы в порядке убывания релевантности.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «ПОНЯТИЕ, ХАРАКТЕРИСТИКИ И УСТРОЙСТВО ПОИСКОВОЙ СИСТЕМЫ»

УДК 004

М.С. Марина

ПОНЯТИЕ, ХАРАКТЕРИСТИКИ И УСТРОЙСТВО ПОИСКОВОЙ СИСТЕМЫ

С развитием глобальной сети Интернет и ростом количества документов, размещенных в ней, возникла проблема поиска информации. На сегодняшний день в большинстве случаев ее решают поисковые системы [1], которые определяют список документов, соответствующих (релевантных) запросу пользователя. Таких документов могут быть миллионы, и задача поисковой системы - расположить найденные документы в порядке убывания релевантности.

Ключевые слова: поисковая система, характеристики поисковых систем, ранжирование, релевантность.

Поисковая система [2] - это программно-аппаратный комплекс, который осуществляет поиск в сети Интернет, реагирует на запрос пользователя, задаваемый в виде текстовой фразы (поискового запроса) и выдает упорядоченный по релевантности список ссылок на документы. Первоочередная задача любой поисковой системы - предоставить пользователю именно ту информацию, которую он ищет, и максимально быстро.

Основные характеристики поисковых систем:

• Полнота

• Точность

• Актуальность

• Скорость поиска

• Наглядность

Полнота - одна из основных характеристик, представляющая собой отношение найденных поисковой системой документов к общему числу документов в Интернет, релевантных запросу. Допустим, фраза «российское образование» встречается 1000 раз в различных документах сети Интернет, а при запросе этой фразы в поисковой системе найдено 700 документов -тогда полнота поиска составляет 0.7. Чем больше полнота, тем больше шансов у пользователя найти искомую информацию, при условии, что такой документ вообще существует в сети [3].

Точность - еще одна из важнейших характеристик поисковой системы, которая определяет степень соответствия найденных документов запросу пользователя [4]. Допустим, если при запросе пользователя «российское образование» найдено 1000 результатов, 500 из которых содержат фразу «российское образование», а остальные 500 содержат фразу «российская наука и дошкольное образование», то точность составит 0.5. Чем точнее поиск, тем быстрее пользователь найдет нужные ему документы, и тем меньше «мусора» будет в результатах поиска.

Актуальность - еще одна важная составляющая поисковой системы. Характеризуется временем между публикацией документа в сети Интернет и попаданием его в базу поисковой системы. Поисковые системы помимо основной базы документов имеют т.н. «быструю» базу, которая обновляется постоянно. Например, новость о каком-либо законопроекте разместили на множестве веб-сайтов в сети Интернет, а через несколько часов пользователи обратились к поисковым системам с соответствующими запросами. Т.к. документы, содержащие новость, были сохранены в «быстрой» базе, поисковая система смогла предоставить пользователю релевантную информацию. Размер «быстрой» базы на порядки меньше, и данные, содержащиеся в ней, периодически (1-2 раза) в неделю переносятся в основную базу.

© Марина М.С., 2014.

Скорость поиска - связана с устойчивостью поисковой системы к нагрузкам. Ежедневно поисковой системе Яндекс задают 100 млн. запросов. Такая загруженность требует снижения обработки отдельного запроса. Пользователь хочет получить ответ как можно быстрее, а поисковая система - дать ему ответ, чтобы затем обрабатывать следующие запросы.

Наглядность представления результатов поиска - важный компонент удобного поиска. Как правило, поисковые системы предлагают возможность сохранения индивидуальных настроек для пользователя. За последнее десятилетие результаты поиска дополнились рекламой, новостями, различными сервисами, что не может не отвлекать пользователя.

Устройство поисковой системы

Каждая крупная поисковая система имеет свою собственную архитектуру, но для всех них можно выделить общие компоненты.

Паук - программа, предназначенная для поиска новых документов в Интернете. Паук передает запрос на сервер, где расположен веб-сайт для получения документа, а в ответ получает непосредственно сам документ и служебную информацию. Из документа извлекаются все гиперссылки, по которым отправляются аналогичные запросы. Таким образом, переходя по гиперссылкам, паук собирает информацию обо всех документах, расположенных в сети. Существуют также альтернативные способы «приглашения» паука на веб-сайт - каждая поисковая система имеет форму для добавления нового документа или целого веб-сайта. Помимо задачи перехода по гиперссылкам для нахождения всех документов сети Интернет, в обязанности паука входит составление расписания обхода найденных ранее документов на предмет изменений. Для каждого веб-сайта расписание составляется индивидуально, и, в общих чертах, скорейшее возвращения паука тем вероятнее, чем чаще на веб-сайте появляются новые, уникальные документы, а также чем чаще цитируют данный веб-сайт в сети Интернет (появляются гиперссылки на его документы).

Робот-индексатор отвечает за сохранение документов, найденных пауком. Перед отправкой запроса на сервер для получения документа робот-индексатор запрашивает содержимое файла robots.txt, если таковой существует в корневой директории веб-сайта. Robots.txt -файл ограничения доступа роботам к содержимому веб-сайта. Существует стандарт исключений для роботов [5], использование которого добровольно, но большинство современных поисковых систем ему следуют. В случае, если документ разрешен для скачивания, робот-индексатор составляет обратный (инвертированный) файл и сохраняет его в базе данных. Инвертированный файл в самом простом случае представляет собой структуру, состоящую из двух частей:

-списка, содержащего все слова, которые были найдены во всех документах;

-указатели на все документы, а точнее - места в этих документах, в которых содержится каждое слово.

По этой структуре в дальнейшем и происходит поиск при запросе пользователя к поисковой системе, а сама структура называется ее индексом. Аналогичной структурой обладает «быстрая» база, документы для которой индексирует т.н. «быстроробот». В нее, как правило, попадают документы новостных сайтов, блогов, а также документы многих ежедневно пополняемых веб-сайтов. Стоит отметить, что документы, сохраненные роботом-индексатором в основной базе, не сразу участвуют в результатах поиска, в отличие от документов в быстрой базе, которые могут появляться в результатах поиска сразу после индексации «быстророботом». Обновление поисковой базы происходит 1-2 раза в неделю.

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

Модуль поиска отвечает за анализ запроса пользователя, поиска по инвертированной базе, ранжирование и представление документов пользователю. При поиске первым делом анализируется запрос, введенный пользователем. Часто пользователи вводят «длинные» запросы, со-

стоящие из 3 и более слов, и возникает ситуация, когда точного совпадения с запросом в индексе поисковой системы нет. В этом случае на помощь приходит переформулировка запроса. В Яндекс за это отвечает т.н. «колдунщик» [6].

Переформулировка - это перепроцессинг, в результате которого различные запросы преобразуются по-разному, и поиск в индексе осуществляется по-новому, уточненному запросу. В результате вместо «ничего не найдено» пользователь получает в достаточной степени релевантный ответ. До конца 2007 года в Яндекс можно было увидеть переформулированный запрос. К примеру, в то время отбрасывались частицы, предлоги, изменялись словоформы, редко употребляемым словам в многословных запросах отдавалось меньшее предпочтение, а затем осуществлялся поиск. В настоящее время точных данных о том, как именно работает «колдун-щик», нет. После переформулировки запроса осуществляется поиск по индексной базе, и находятся все документы, удовлетворяющие уже новому запросу.

После того, как наиболее схожие документы [7] были отобраны, их необходимо упорядочить по релевантности (выполнить ранжирование) [8]. За этот процесс отвечает формула ранжирования, которую обычно и называют алгоритмом поисковой системы. Формула ранжирования содержит множество факторов, которые влияют на релевантность документа запросу; для разных поисковых систем эти множества различны.

Формулы ранжирования учитывают множество факторов при определении релевантности документа запросу пользователя. В первых версиях Яндекс и Google факторы ранжирования можно было разделить на две группы:

• внутренние

• внешние

К внутренним факторам относились свойства самого документа [9] - наличие в нем слов запроса, их точное вхождение в ключевые HTML-теги документа (<title>, <hl>), плотность в документе (отношение вхождений слов запроса в документ к общему числу слов в документе, выраженное в процентах), и т.д. Для каждого запроса вычисляется значение Score документа -показатель релевантности документа запросу, на основании которого и производится ранжирование [10]. Для расчета Score была выбрана аддитивная модель. Интерес представляет вопрос, какие слагаемые надо добавить в формулу расчета Score? В результате экспериментов были отобраны слагаемые за встречаемость слов [11] из запроса в документе, за встречаемость пар слов из запроса в документе и за встречаемость текста запроса целиком [12].

Для улучшения результатов поиска также используется подход «Pseudo-relevance feedback» [13]. Суть подхода заключается в том, что поиск проводится в два этапа. На первом этапе используется простой метод, описанный выше. После этого документы, найденные на первых позициях, объявляются релевантными, и ищутся «похожие». Можно использовать любую меру похожести, но в данном случае используется 2 разные меры, которые можно реализовать с достаточной для реальных применений производительностью [14].

К внешним факторам относились ссылки и все, что с ними связано: их количество, вес, анкор (от англ. anchor - «якорь», текст, при нажатии на который происходит переход в другой документ). При прочих равных анкор ссылки имеет решающее значение. Считается, что если на документ стоит ссылка с анкором «образование», то с некоторой долей вероятностьи он содержит информацию об образовании. Документ, в котором стоит ссылка, называется донором; документ, на который ведет ссылка, - акцептором [15]. В случае, если акцептор не содержит слов из запроса пользователя в поисковой системе, он все равно может показываться в результатах, т.к. анкоры указывающих на этот документ ссылок содержат слова запроса. В таком случае рядом со ссылкой стоит подпись «найден по ссылке» (Яндекс) или «слова присутствуют только в ссылках на эту страницу» (Google) [16].

Со временем веб-мастера стали проставлять множество ссылок для манипулирования результатами поиска, появились биржи по покупке и продаже ссылок, которые существуют до сих пор. Ссылочное ранжирование усложнялось, модифицировалось, но до сих пор остается одним из главных факторов ранжирования в поисковых системах [17].

В последние 2-3 года добавились запросные факторы - геозависимость, т.е. для хорошего ответа, поисковой системе необходимо учитывать регион, из которого был задан запрос.

Библиографический список

1. Ландэ Дм. Поисковые системы: Поле - семантика // InfoStream. - 2004.

2. Солтон Дж. Динамические библиотечно-поисковые системы. - М.: Мир, 1979. - 558 с.

3. Маслак A.A. Критерии оценки качества текстов / Труды межд. симпозиума Формирование контингента инж.-тех. вуза: мировой опыт и основные тенденции развития. - М.: 2004. - с. 58 - 60.

4. Arampatzis A., Weide T., Koster C., Bommel P. Linguistically motivated information retrieval. - 2000.

5. http://download.yandex.ru/company/iworld-3.pdf.

6. http://www.codeisart.ru/part-l-shingles-algorithm-for-web-documents/.

7. Crivellari M. Web document retrieval using passage retrieval, connectivity information, and automatic link weighting // In The Tenth Text Retrieval Conference (TREC 2001). - 2001. - p. 624 - 633.

8. Jin H., Wong K. A Chinese dictionary construction algorithm for information retrieval // ACM Transactions on Asian Language Information Processing (TALIP). - 2002. - p. 281 - 296.

9. Henzinger M. Link analysis in web information retrieval. IEEE Data Engineering. Bulletin, 23(3). -2000. - 3 - 8.

10. Huang Ch., Pan H., Zhang L., Ming Z. Automatic detecting/correcting errors in Chinese text by an approximate wordmatching algorithm // In 38th Annual Meeting of the Association for Computational Linguistics. - 2000.-p. 315-340.

11. Smeaton A.F., O'Donnell R., Kelledy F. Indexing structures derived from syntax in TREC-3: System description. - 1994, p. 100 - 110.

12. Voorhees E.M. Natural language processing and information retrieval // Information Extraction: Towards Scalable, Adaptable Systems. - 1999. - p. 32-48.

13. http://devaka.ru/articles/trust-and-authority.

14. Scholer F., Williams H., Yiannis J., Zobel J. Compression of inverted indexes for fast query evaluation. - 2002.

15. Mittendorfer M., Winiwarter W. Exploiting syntactic analysis of queries for information retrieval // Data Knowl. Eng., 42(3). - 2002. - p. 315 - 325.

16. Клифтон Бр. Google Analytics. Профессиональный анализ посещаемости веб-сайтов. = Advanced Web Metrics with Google Analytics. - M.: Вильяме, 2009. - 400 с.

17. Porter M.F. An algorithm for suffix stripping / Program, (14). - 1980. - p. 130-137.

МАРИНА Максим Сергеевич - магистрант Инженерно-технологической академии, Южный федеральный университет.

i Надоели баннеры? Вы всегда можете отключить рекламу.