Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Поисковые системы сети Internet. Курс лекций

.pdf
Скачиваний:
0
Добавлен:
09.08.2026
Размер:
429 Кб
Скачать

Поисковые системы умеют анализировать текст. Графику, аудио- и видеофайлы поисковые роботы не распознают. Эти программные средства извлекают и индексируют различные виды информации. Некоторые, например, индексируют каждое отдельное слово во встречающемся документе, в то время как другие индексируют только наиболее важные 100 слов в каждом, индексируют размер документа и число слов в нем, название, заголовки и подзаголовки и т. д. Вид построенного индекса определяет, какой поиск может быть сделан поисковым механизмом и как полученная информация будет интерпретирована.

Работу поискового робота можно сравнить с ходом часовой стрелки: индексация сайтов осуществляется по кругу. Поисковые программные средства могут перемещаться по Интернету и находить информацию. Результаты, полученные разными поисковыми роботами, объединяются в единую базу данных. В целях увеличения скорости выдаваемых посетителям результатов база данных разбивается на несколько. Администраторы поисковых систем могут определить, какие сайты или типы сайтов агенты должны посетить и проиндексировать. Проиндексированная информация отсылается базе данных поискового механизма. Поисковые роботы могут определить количество, размер, дату создания и тип файла. Проще — наблюдать за файлами таких типов. Некоторые поисковые системы через некоторое время перепроверяют, доступен или нет сайт. Как только сайт начинает отвечать, он автоматически появляется в результатах поиска. Другие поисковые системы при недоступности сайта исключают его. Существует целый ряд роботов, основная задача которых — периодическая автоматическая проверка определенных сайтов с последующим сбором информации. Задачей роботов может быть поиск вредоносных сайтов. Например, Microsoft создала робота-паука, который перемещается по Интернету и выявляет сайты, с которых производится автоматическое заражение компьютеров под управлением операционной системы Windows XP.

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

Рассмотрим принцип действия поисковых систем. Все поисковые системы имеют общую структуру, которая приведена на рис. 1.

Сточки зрения внутренней организации поисковая система состоит из двух частей, как правило, работающих параллельно. Первая часть — это индексирующее средство поиска: агент (agent), паук (spider), робот (robot), ответственное за индексирование веб-документов, а вторая — поисковая машина осуществляющая поиск документов по индексу в соответствии с запросами пользователей.

9

ИПС

ИНТЕРНЕТ

Поисковая

Индексатор

машина

Индекс

 

Оптимизатор

Интерфейс

Поиск релевантной

пользователя

информации

Рис. 1. Общая структура поисковой системы

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

3. Статистический анализ текстов

Работа современных статистических поисковых систем основана на анали-

 

зе текста, поэтому при разработке алгоритма поисковых

 

систем и при поисковой оптимизации сайта используется

 

статистический анализ текстов. Важную роль в статисти-

 

ческом анализе текстов играют законы Зипфа. Изучением

 

закономерностей составления текстовых документов за-

Дж. Кингсли Зипф

нимался американский лингвист и философ Джордж Зипф

(1902-1950)

(George Kingsley Zipf), профессор Гарвардского универси-

тета. К эмпирическим2 законам Джорджа Зипфа обычно обращаются для иллюстрации частоты повторения тех или иных явлений. Эти законы выведены на основе исследования частоты использования слов в тексте. Наблюдения показали, что слова с большим количеством букв встречаются в тексте реже коротких слов. В каждом языке есть слова, которые встречаются чаще, чем остальные, но не имеют значения. Есть слова, которые встречаются реже, чем другие, но имеют намного большее смысловое значение. В то время когда Зипф сформулировал подмеченные им закономерности распределения частоты слов, законом они

2 Получены не на основе математических выводов, а на основе анализа статистики частоты слов в текстах на многих языках.

10

не считались. Тогда еще не было компьютеров и нельзя было провести точные расчеты, подтверждающие выявленные закономерности.

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

3.1. Первый закон Зипфа «ранг — частота»

Первый закон Зипфа представляет эмпирическую закономерность распределения частоты слов естественного языка: если все слова некоторого языка (или просто достаточно длинного текста) упорядочить по убыванию частоты их использования, то частота f r-го слова в таком списке окажется приблизительно обратно пропорциональной его порядковому номеру r (так называемому рангу этого слова).

Выберем любое слово и посчитаем, сколько раз оно встречается в тексте. Эта величина называется частотой вхождения слова в текст. Обозначим ее f. Подсчитаем частоту f каждого слова текста. Некоторые слова будут иметь одинаковую частоту, то есть входить в текст равное количество раз. Сгруппируем слова по частотам. Расположим частоты f по мере их убывания и пронумеруем. Порядковый номер частоты называется рангом частоты r. Так, наиболее часто встречающиеся слова будут иметь ранг r = 1, следующие за ними — r = 2 и т. д. В выбранной странице текста определим вероятность p встретить определенное слово. Вероятность будет равна отношению частоты вхождения этого слова к общему числу слов в тексте.

p =

f

,

(1)

n

 

 

 

где n — количество слов в выбранном тексте.

Первый закон Зипфа состоит в том, что произведение вероятности p обнаружения слова в тексте на его ранг частоты r (ранг частоты наиболее частого слова равен 1) является константой для определенной языковой группы. Обозначим ее С.

C = p r =

f r

.

(2)

 

 

n

 

В честь ученого С назвали «константой Зипфа». Значение константы C в разных языках различно, но внутри одной языковой группы остается неизменным, какой бы текст мы ни взяли. Так, например, для английских текстов константа Зипфа равна приблизительно 0,1. Интересно, как выглядят с точки зрения законов Зипфа русские тексты? Они не исключение. Анализ русских текстов по-

11

казал, что закон действует и тут. Для русского языка константа Зипфа получилась равной 0,06–0,07.

Приведем примеры подсчета частот некоторых русских слов, для которых вычислены следующие значения коэффициентов Зипфа

 

 

 

Таблица 2. Для естественного текста

Ранг

Слово

Частота

Коэффициент Зипфа

1

года

3

0,053571429

2

в

2

0,071428571

2

не

2

0,071428571

3

2005

1

0,053571429

3

без

1

0,053571429

3

бы

1

0,053571429

3

была

1

0,053571429

3

важными

1

0,053571429

3

весь

1

0,053571429

3

во

1

0,053571429

3

всяком

1

0,053571429

Таблица 3. Для текста с избыточным употреблением слова «новости»

Ранг

Слово

Частота

Коэффициент Зипфа

1

новости

12

0,176470588

2

года

3

0,088235294

3

в

2

0,088235294

3

не

2

0,088235294

4

2005

1

0,058823529

4

без

1

0,058823529

4

бы

1

0,058823529

4

была

1

0,058823529

4

важными

1

0,058823529

4

весь

1

0,058823529

4

во

1

0,058823529

Как видим, даже на таком малом объеме текста неестественность может быть определена алгоритмически — значение коэффициента Зипфа для слова «новости» (табл. 3) почти в три раза выше, чем ожидаемое для естественных текстов (табл. 2). Алгоритмы ранжирования реальных поисковых машин намного сложнее, но все факторы, которые поисковики используют в качестве значимых параметров для ранжирования, взяты именно из представлений о том, какими

12

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

3.2. Второй закон Зипфа «количество — частота»

Выразим из (2) зависимость частоты f встречаемости слова в тексте от его ранга r :

f ( r ) =

C n

.

(3)

 

 

r

 

Второй закон Зипфа состоит в том, что форма кривой зависимости частоты и количества слов, входящих в текст с этой частотой, одинакова для всех текстов.

Функция f (r) для текста достаточно большого фиксированного объема n (например в 5000 слов) в графическом представлении является равносторонней гиперболой (рис. 2).

(r)f

f(k) f1Частота(k)

500

3 10

400

300

200

для русского языка

(С = 0,06-0,07)

для английского языка (С = 0,1)

100

0 3 6 9 12 15 18 21 24 27 30

рангk (r)

Рис. 2. Второй закон Зипфа.

Как мы уже говорили, в каждом языке есть слова, которые встречаются чаще, чем остальные, но не имеют значения. Есть слова, которые встречаются реже, но имеют намного большее смысловое значение. Исследования показывают, что наиболее значимые слова лежат в средней части диаграммы (см. рис. 2). Зависимость частоты от ранга для английских текстов на рис. 2 отражает тот общепо-

13

нятный факт, что некоторые немногие английские слова (в первую очередь —

THE, OF, TO, A, AND, IN, THAT, FOR, WAS, WITH, HIS, IS, назовем их «ряд 1»)

встречаются очень часто (левая часть графика, ранг 1–3), подавляющее большинство слов встречается со средней частотой (средняя часть графика, ранг 3–10), и есть небольшое количество слов (очень длинных, например, «эксгибиционизм», ранг более 10), которые встречаются очень редко. Русские исследователи подтвердили применимость закона к «великому и могучему», который оказался таким же несвободным от закономерностей, как и иностранные языки. В русском языке первую по рангу шеренгу образуют слова: И, В, НЕ, НА, ЧТО, Я, С, МЫ, У, ОН, ПО, БЫЛО, назовем их «ряд 2» (ранг 1–2), — и из всего этого следует, что при встрече с каким-то закодированным текстом простейший способ выяснить, осмысленный это текст или просто набор случайно используемых значков, — это проверить частотность знаков этого текста на закон Зипфа. Еще одно следствие: наиболее часто употребляемые слова языка, существующего длительное время, короче остальных. Частое употребление «истерло» их... На рис. 2 хорошо видны языковые различия в объеме часто повторяющейся группы слов. Для диапазона частот f ( r ) =300 ÷500 в английском языке группа слов несколько больше (объ-

единяет слова с рангом r =1 ÷3 ), а в русском языке — это группа слов с рангом

1 r < 2 .

Воспользовавшись законами Зипфа, можно извлечь из текста слова, отражающие его смысл (ключевые слова). Это слова с рангом r =3 ÷10 (рис. 2).

От того, как будет выставлен диапазон значимых слов, зависит многое. Если поставить широко — то в ключевые слова будут попадать вспомогательные слова; если установить узкий диапазон — то можно потерять смысловые термины. Каждая поисковая система решает проблему по-своему, руководствуясь общим объемом текста, специальными словарями и т. п.

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

Словарь стоп-слов называют стоп-листом. Например, для английского текста стоп-словами станет «ряд 1», составленный из артиклей, предлогов и местоимений, приведенный выше. А для русского — слова из приведенного выше «ряда 2». Есть и другие способы повысить точность оценки значимости терминов. Однако и межъязыковые различия невелики. На каком бы языке текст ни был написан, форма кривой Зипфа останется неизменной (рис. 2). Различия связаны со значением константы Зипфа для каждого языка.

14

3.3. Весовые коэффициенты

До сих пор рассматривался лишь отдельно взятый документ, не принималось во внимание, что он входит в базу данных наряду с множеством других документов. Если представить всю базу данных как единый документ, к ней можно будет применить те же законы, что и к единичному документу. Чтобы избавиться от случайных слов и в то же время поднять рейтинг значимых слов, вводят понятие инверсной частоты термина. Инверсная частота i определяется как логарифм отношения общего количества рассматриваемых документов n к числу документов, содержащих данный термин m (под термином может пониматься не только отдельное слово, но и единое по смыслу словосочетание).

i=log2 ( n m ).

Сучетом инверсной частоты вес или значимость термина в каждом документе определится как произведение

z = f ×i ,

где z — вес или значимость термина в издании; f — частота повторения термина в этом издании; i — инверсная частота этого термина в группе документов базы данных.

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

Современные способы индексирования не ограничиваются анализом перечисленных параметров текста. Поисковая машина может строить весовые коэффициенты с учетом местоположения термина внутри документа, взаимного расположения терминов, частей речи, морфологических особенностей и т. п. В качестве терминов могут выступать не только отдельные слова, но и словосочетания. Джорж Зипф опубликовал свои законы в 1949 году. Пять лет спустя знаменитый математик Беноит Мандлеброт (Benoit Mandlebrot) внес небольшие изменения в формулы Зипфа, добившись более точного соответствия теории практике. Без этих законов сегодня не обходится ни одна система автоматического поиска ин-

15

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

4. Модели индексирования и поиска документов

Главная задача информационно-поисковой системы — поиск информации, релевантной информационным потребностям пользователя. Под релевантностью понимают соответствие между желаемой и получаемой информацией.

Релевантность можно представить также как меру близости между реально полученными документами и тем, что следовало бы получить из системы. Возникают две взаимосвязанные задачи: представление информации в системе и ее поиск в соответствии с информационными потребностями пользователя.

Рассмотрим, как решаются эти задачи в современных поисковых системах. Подавляющее большинство поисковых алгоритмов основано на так называемой векторной модели текста, предложенной Дж. Солтоном (Salton G.) в 1975 году. Разные авторы называют эту модель индексирования и поиска по-разному: векторной, линейной, или алгебраической. Следуя этой логике, векторной будем называть модель описания информационного массива, а линейной — модель поиска информации в массиве. Такое разделение обусловлено тем, что документы записываются в виде двоичных векторов, в то время как поисковые запросы — это линейные преобразования над этими векторами.

В векторной модели информационного потока можно выделить несколько основных понятий: словарь, документ, поток и процедуры поиска и коррекции запросов.

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

Документ — это двоичный вектор размерности D. Если термин входит в документ, то в соответствующем разряде этого двоичного вектора проставляется 1, в противном же случае — 0. Обычно все операции в линейной модели индексирования и поиска документов выполняются над поисковыми образами документов, но при этом их, как правило, называют просто документами. Информационный поток или массив L представляют в виде матрицы размерности N × D , где в качестве строк выступают поисковые образы N документов.

 

 

 

 

 

 

0,t

 

l

 

L = i =

1,N

; j =

1,D

: b

=

 

j

i

,

 

 

 

 

i , j

 

 

 

l

 

 

 

 

 

 

1,t

j

 

 

 

 

 

 

 

i

 

где tj — термин; li — документ.

16

При таком рассмотрении можно сформулировать процедуру обращения к информационной системе следующим образом:

L ×q = r ,

где q — вектор запроса; r — вектор отклика системы на запрос.

Таково традиционное определение процедуры поиска документов в поисковой системе, которое сформулировано Солтоном в 1977 году. Оно было введено для решения проблемы автоматического индексирования документов, но оказалось чрезвычайно полезным и для описания процедуры поиска.

5. Cемантические поисковые системы

Cемантические поисковые системы — это поисковики, реализующие интеллектуальный поиск, который позволяет найти документ по смыслу содержащейся в нем информации, то есть документы по заданной теме. Семантические поисковики обрабатывают вопрос на естственном языке, представляя его в форме «понятной» стандартным средствам поиска. Техническая реализация семантического поиска состоит в следующем. Из заданной пользователем фразы, автоматически:

выделяются ключевые понятия,

определяются их взаимоотношения,

отфильтровывается информационный шум, то есть слова, не несущие смысловой нагрузки,

осуществляется поиск полученного образа средствами стандартного алгоритма по базе проиндексированных документов.

Подобные поисковики обладают некоторыми особенностями и в демонстра-

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

Ниже приводится несколько поисковых систем, которые можно использовать в мире семантического поиска.

Русскоязычные семантические поисковые системы.

Система Dialogus (http://www.dialogus.ru/) создана людьми, уже отметившимися разработкой замечательного переключателя раскладок Punto Switcher и за- гадочно-дзэновского поисковика Punto Search. В настоящее время Dialogus находится в стадии тестирования.

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

17

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

Результаты Dialogus представляют собой краткие текстовые выдержки, в которых, «по мнению системы», находится ответ на заданный вопрос. Каждый фрагмент сопровождается кнопками, позволяющими просмотреть текст более подробно, а также увидеть графическую миниатюру исходной веб-страницы.

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

Система интернет-поиска Stocona Global Search

(www.stocona.ru/services/globalsearch.aspx) является одним из продуктов фирмы

«Стокона», существующей с 2001 года и занимающейся разработками в области искусственного интеллекта. При поиске использует семантические технологии разбора запроса.

Данная поисковая машина предлагает три режима поиска: «Новостной поиск», «Метапоиск» и «Синтаксический анализ». Если первый ничего особенного собой не представляет, то два оставшихся режима весьма любопытны. «Метапоиск» использует в работе ведущие русскоязычные поисковики Yandex, Google и Rambler. В данном режиме работает алгоритм семантического разбора запроса на естественном языке.

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

18

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]