Вступление.
В этом исследовании будут рассмотрены два фактора, предположительно оказывающих влияние на выдачу поисковых систем: плотность ключевых слов на странице (без учета вхождения пар слов, полного текста и так далее) и ТИЦ сайтов.
Статистическая база.
Для исследования была использована база, полученная следующим образом: для 40 тысяч русских поисковых запросов длиной от 1 до 5 слов был получен TOP-50 результатов в поисковой системе http://yandex.ru. Это около полутора млн. разных страниц и свыше 300 тыс. различных сайтов. Далее все страницы были проиндексированы и лематизированы, для всех сайтов был получен ТИЦ. Из анализа были исключены страницы, контент которых получить не удалось или объем в словах которых не попал в диапазон 300-3500 слов. После исключения таких страниц получили выбору: по 40 результатов для каждого поискового запроса, которые были отсортированы согласно ранжированию в поисковой системе Яндекс. В итоге получили набор пар (
,
), где i=1..N, j=1..40,
– страница находящаяся на j-ой позиции по поисковому запросу
.
Измерение степени влияния фактора, общий подход.
Степенью влияния фактора на выдачу поисковой системы будем называть условную вероятность наступления события “страница
выше в выдаче поисковой системы, чем страница
по поисковому запросу
” от события “фактор для страницы
лучше чем для страницы
по поисковому запросу
”. Иными словами, это вероятность того, что при выполнении второго условия окажется верным и первое утверждение.
Предположим, что фактор у нас имеет числовое представление, и будем считать его “лучше”, если его значение больше, обозначим его за F(
,
). Обозначим первое событие за A, второе событие за B. В этом случае степень влияния фактора Fпо нашей выборке вычисляется по следующей формуле:

Таким образом, теперь при помощи этой метрики мы сможем сказать насколько в процентном отношении фактор значим для Яндекса и сравнить степень влияния двух различных независимых факторов.
Плотность поисковых запросов ICF-TF, применение общего подхода.
Итак, в качестве демонстрации описанного выше метода, попробуем измерить степень влияния на выдачу плотности ключевых слов запроса в тексте страницы. При этом сразу же оговорюсь, что мы не будем здесь напрямую брать плотности, а предположим, что в алгоритмах Яндекса используется одна из описанных методик для оценки важности конкретного слова в контексте документа. В частности, допустим что это модификация известного классического IDF-TF, формула для которого выглядит так:
, где
, ![]()
Здесь TFD—количество попаданий леммы в тексте страницы, DocLength—длина документа в словах, D—количество документов в коллекции, DF—количество документов, содержащих эту лемму.
В нашем случае использование IDFв качестве первого множителя не подходит, потому что мы для каждого запроса имеем дело с уже сорока отобранными яндексом релевантными результатами. Поэтому, вместо IDF, попробуем воспользоваться другим показателем частотности леммы в текстах коллекции
![]()
Здесь TL– суммарная длина всех документов в коллекции, CF—количество упоминаний леммы во всей коллекции.
Тогда полная формула для фактора ICFTF(
,
) будет выглядеть следующим образом:
![]()
Теперь вычислим ICFTF(
,
) для всех пар (
,
).
И посчитаем степень влияния фактора на выдачу Яндекса.
R(ICFTF)=54.03%
“Физический смысл” R(ICFTF): если для страницы
значение ICFTFвыше чем для страницы
, то с вероятностью 54.03% эта страница находится выше в выдаче Яндекса.
Визуализация влияния фактора на ранжирование.
Чтобы визуализировать важность фактора, введем дополнительную функцию
POS(F,
,
),
которая по определению равна позиции, которую занимал бы результат
по слову
, если бы единственным фактором ранжирования был фактор F. Далее найдем ее среднее значение по всем словам и результатам находящимся на i-той позиции в поисковой системе:

В идеальной ситуации, когда фактором ранжирования выступает сама позиция в поисковой системе
. В общем случае, чем ближе график
к прямой y=x, тем выше влияние фактора на выдачу. Посмотрим на график для фактора ICFTF:

Сравнивать пока не с чем, но тенденция четко прослеживается.
Оптимизация формулы для плотности ключевых слов.
В качестве демонстрации использования описанных выше методик попробуем улучшить фактор плотности в соответствии с алгоритмом описанным в статье Яндекса на РОМИП-2006 (http://download.yandex.ru/company/experience/romip2006/algorithm_textual_ranking.pdf). Пока будем рассматривать только ту часть формулы, которая в статье обозначена как
. Иными словами, предположим, что модификация алгоритма bm25, предложенная компанией Яндекс, лучше описывает алгоритмы его ранжирования, чем ICF-TF, описанная нами ранее. Будем рассчитывать
по формуле:
![]()
Посчитаем влияние фактора:
R(
)=56.23%
Это значительно лучше, чем описанный выше ICF-TF, наглядно убедимся в этом сравнив графики для AVGPOS(ICF-TF, i) и AVGPOS(
, i):

Вывод: формула
гораздо лучше описывает алгоритм Яндекса чем ICF-TF.
ТИЦ сайта и его влияние на ранжирование.
Как уже говорилось для всех результатов в выборке нами были определен ТИЦ сайтов. Опустим подробности и сразу посчитаем степень влияния ТИЦ на выдачу, исходя из предположения “чем выше ТИЦ, тем выше позиция”:
R(CY)=55,33%
Этот показатель несколько ниже, чем Wsingle, но тем не менее тоже значим.
Сравним два фактора на графике:

Объединение двух факторов в одной формуле.
Следующим шагом мы попробуем объединить влияние двух факторов в одной общей формуле.
Будем искать общую формулу в следующем виде линейной комбинации:
![]()
, где
,
![]()
Находим коэффициент kисходя из условия:
![]()
После подбора коэффициента посчитаем влияние сводного фактора Fна выдачу Яндекса:
R(F)=57,34%
Как и ожидалось, это выше чем влияние каждого из факторов
и CY по отдельности.
На графике:

Некоторые характеристики формулы
.
1) Чем выше частотность слова в русском языке, тем ниже его вес (ICF), а значит выше должна быть его плотность в документе.
2) Чем выше плотность слова из поискового запроса в тексте, тем менее значимо его дальнейшее увеличение. То есть 1 или 2 имеет большое значение, 100 или 101 уже незначительно.
3) При фиксированной плотности ключевиков, чем объемней текст тем выше
.
4) При увеличении объема текста, плотность ключевиков должна медленно снижаться










457-592-421