суббота, 26 марта 2016 г.

Листая старую тетрадь...

Еще одно бойцовское воспоминание. Как бы за истечением срока давности снят гриф секретности. ☺
Недавно, разбирая старые бумаги, наткнулся на основательно поюзанный блокнот из раздатки ашмановской конфы 2006-го года:
А в нем обнаружилась формула ранжирования Яндекса образца конца 2006-го - начала 2007-го года. Последняя формула до эпохи машинного обучения. Которая была практически полностью восстановлена мною в аналитическом виде благодаря методу «ступенек Миныча». Миныч – пользователь Серча тех времен, привнесший немалый вклад в тему реверс-инжиниринга поисковых систем.
Не лишним будем подчеркнуть, что для получения формулы не было использовано никаких инсайдов, на которые сейчас так любят намекать некоторые популяризаторы платных сервисов для сеошников. Только органическая выдача и язык запросов Яндекса (в то время сказочно богатый). И немножко мозгов в сочетании с волшебным пендалем в правильном направлении от Миныча.
Вот, собственно и сама формула текстового ранжирования:
Можно заметить некоторые любопытные детали – вхождение в тег title было в два раза весомей вхождения в текст (коэффициент k=4 под квадратным корнем), а вхождение на морде было в корень из полтора раза весомей вхождения на внутренней странице (коэффициент l=3/2 тоже под квадратным корнем).
А вот ссылочное ранжирование отличалось от текстового в корне. Всего лишь в том же квадратном ☺ :
Ну, и среди прочего обнаружилось любопытное соседство рассуждений о характере ВИЦ с записанным карандашом домашним заданием по математике для сына-первоклассника:
В общем, математика – царица всех наук! ☺


четверг, 24 марта 2016 г.

Метод модификации базового запроса

Продолжение наблюдений за любопытным примером, который начал рассматривать пару недель назад.
В своей статье «Примеси к органической выдаче Яндекса» я упоминал об одном способе идентификации «спектральной» примеси, заключающейся в некоторой модификации исходного запроса, которая не должна влиять на расчет органической релевантности. Идея метода идентификации заключается в том, что подмешивание примеси осуществляется к конкретному ограниченному набору запросов, и из-за того, что запрос формально изменен, у модифированного запроса примесь исчезает. В частности, в той статье предлагался вариант с добавлением символа @ в конец запроса. Однако, в данном случае подобная модификация не оказывает влияния на положение в выдаче исследуемого сайта.
Тем не менее, экспериментируя с различными модификациями исходного запроса, удалось получить интересные результаты с использованием оператора << (неранжирующее И).
Так, например, выставив по правую сторону от оператора << заведомо выполняемое для всех документов запроса ограничение по дате (все документы должны иметь дату переиндексации меньшую, чем еще не наступившая дата 01.01.2017), мы получаем выдачу, в которой исследуемый документ перемещается на 80 позиций вниз (скриншот сделан 17.03.16):


А ограничив выдачу сайтами на русском и английском языке (английский язык добавляем потому, что исследуемый документ, судя по сниппету, содержит англоязычный текст, состоящий из служебных сообщений об ошибке добавления контента), обнаруживаем перемещение исследуемого сайта на 70-е место в выдаче, причем со сменой релевантной страницы (скриншот сделан 17.03.16):
Поиск внутри сайта по этому запросу подтверждает, что смена релевантной страницы действительно имеет место (скриншот сделан 17.03.16):
Таким образом, мы видим, что в определенных случаях поведение исследуемого документа действительно очень напоминает искусственную примесь к органической выдаче. Обращает на себя внимание тот факт, что попарное сравнение с использованием того же оператора << подобного эффекта не дает, как мы убедились ранее. Не исключено, что модификация исходного запроса с помощью операторов url: и site: уже по какой-то причине не приводит к отключению «бандитской примеси».
После очередного апдейта 18.03.2016 исследуемый сайт уже имеет другой сниппет, свидетельствующий о том, что контент главной страницы на этот раз успешно проиндексирован. Сайт занимает всё ту же 7-ю позицию, что и 11.03.2016, т.е. обретение главной страницей ненулевой текстовой релевантности не очень-то ему и помогло в позиционировании (скриншот сделан 24.03.2016):
Но, что интересно, по модифицированным запросам сайт существенно поднялся, хоть все равно находится существенно ниже, чем по базовому (скриншоты сделаны 24.03.2016):

То есть по модифицированным запросам обретение исследуемой страницей текстовой релевантности в позиционировании ей заметно помогло. Что опять-таки наводит на мысли, что данный сайт таки подмешан в топ-10 по базовому запросу или же получает по какой-то иной причине неслабый буст. Возможно, это всё-таки проделки «многорукого бандита»? В любом случае, метод модификации запроса представляется весьма интересным в плане возможной идентификации «бандитской» примеси. Ну, или идентификации еще какого-нибудь интересного артефакта, если «многорукий бандит» тут все-таки не при чем.


воскресенье, 20 марта 2016 г.

Говорящая фамилия

Стартую еще одну рубрику: «Бойцы вспоминают…». Ну, как там у Пушкина:
«Бойцы вспоминают минувшие дни
И битвы, где вместе рубились они…»
Случилась как-то в моей жизни в далеком 2003-м году замечательная поездка в славный город Екатеринбург с, пожалуй, одним из самых первых SEO-семинаров в отечественной истории, семинар этот проводила компания «Текарт». Был среди слушателей один паренек с фамилией Забанных. Фамилия запоминаемая, и я еще тогда пошутил, что с такой фамилией сложно стать хорошим оптимизатором (термина «сеошник» еще тогда не было), но можно стать хорошим яндексоидом. Не знаю, прислушался ли Антон тогда ко мне, но в итоге он стал руководителем направления персональных сервисов Яндекса. И осталась старая фотка, где Антон слушает семинар по SEO (где-то за моим плечом):
Кстати, поднимавшиеся на том семинаре темы темы нисколько не постарели:


пятница, 18 марта 2016 г.

Пятничное. Демотиваторы

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



Ну и дальше демотиваторы чуть потривиальней:



Кто еще чего найдет, покорнейше прошу прислать мне на ludkiewicz@ya.ru. Помню, точно был еще один прикольный, на тему Беовульфа, обыгрывающий мой ник wolf на Сёрче. Но, увы, так и не смог пока его отыскать.


P.S. И да, всё заявленное в демотиваторах чистейшая правда :)

четверг, 17 марта 2016 г.

Нюансы региональности в Яндексе

Хочу поделиться одним нетривиальным моментом в работе региональной привязки в Яндексе, актуальным для больших мультирегиональных сайтов.
Зачастую ситуация складывается так, что основной домен получает большое число региональных привязок к конкретным регионам. В некоторый момент логика представления информации на сайте может потребовать выделение отдельного поддомена для размещения на нем каких-то специфических предложений, сохраняя мультирегиональность целевой аудитории. По умолчанию поддомен унаследует все региональные привязки от родительского домена.
Но есть одно «но». Если вдруг вам по каким-то причинам захочется привязать к поддомену какой-то дополнительный регион (исключая автоматическую привязку, неважно, каким способом – через Яндекс.Вебмастер, Яндекс.Справочник или тем более Яндекс.Каталог, разместив там поддомен, как отдельный сайт), имейте в виду, что после такой привязки все унаследованные от родительского домена регионы могут запросто отвязаться. И стоит крепко подумать, стоит ли оно того – терять для поддомена кучу «родительских» регионов ради одного нового.
В общем, привязывайте новый регион именно к «родительскому» домену. Пусть наследуют наследники. :)

P.S. Важное уточнение. На данный момент поддоменом не наследуются регионы, привязанные к родительскому домену через Яндекс.Справочник.

пятница, 11 марта 2016 г.

Идентифицируем "многорукого бандита"


Тут на Сёрче подкинули интересный пример. В топе (7 место в режиме «Инкогнито» в Хроме в отключенными персональными настройками) по достаточно конкурентному коммерческому запросу в выдаче для Москвы находится документ, найденный по ссылке, то есть с нулевой текстовой релевантностью:
Судя по сниппету, индексатор Яндекса заглянул на сайт в не очень подходящей момент, когда тот по какой-то причине «прилег», но почему-то это не сильно повлияло на его позицию. Сейчас сайт нормально функционирует и вполне релевантен запросу.
История ранжирования по данному запросу, которую любезно предоставляет сервис Megaindex, показывает, что исследуемый сайт появился в топ-10 из ниоткуда в декабре 2015 года и с тех пор находится там с периодическими «миганиями»:
Что очень сильно наводит на мысли, что появился он там в результате действий так называемого «многорукого бандита», а попросту искусственного подмешивания в топ выдачи по запросу релевантных ему сайтов, по какой-то причине получивших низкую оценку алгоритма ранжирования и находящихся за пределами видимой части органической выдачи.
В своей статье «Многорукие бандиты Яндекса», написанной по мотивам доклада на конференции «Поисковый маркетинг и продвижение бизнеса в интернете. Optimization-2015», Стас Поломарь предложил для идентификации «бандитской» примеси способ попарного сравнения анализируемого сайта с сайтами, находящимися ниже его в выдаче. «Бандитски» подмешанный сайт в попарном сравнении должен им проигрывать. Однако в данном случае мы видим, что это не так, исследуемый пациент и при попарном сравнении целенаправленно бьет тех, кто в общей выдаче находится ниже:
В сухом остатке имеем, что, либо «бандит» в данном случае не при чем, либо методика, предложенная Стасом, на данный момент не работает. В любом случае, я вижу весьма любопытный объект для дальнейших наблюдений. Будем посмотреть.


вторник, 1 марта 2016 г.

Возвращение непот-фильтра – больше вопросов, чем ответов


Непот-фильтр – это уже порядком позабытый термин из 2000-х годов. Строго говоря, непот-фильтр – это механизм полного неучета или частичного понижения вклада ссылки в ссылочные факторы ранжирования для акцептора. Но название это приклеилось к конкретному явлению, наблюдавшемуся в поисковой выдаче Яндекса до февраля 2008 года. Заключалось оно в том, что в ряде случаев страница-акцептор не находилась в поисковой выдаче по тексту ссылки, ведущей на неё, несмотря на то, что эта ссылка была проиндексирована на странице-доноре. То есть страница-донор по тексту ссылки находилась, а вот страница-акцептор – нет. В таких случаях и делался вывод о неучете данной ссылки в ранжировании. Исследования тех лет показывали, что накладывался данный фильтр на кластер (совокупность страниц, обладающих некими общими свойствами) сайта-донора. Например, имели место случаи, когда фильтровались ссылки только с главной страницы сайта-донора или только из каталога обменных ссылок, расположенного на нем, а со всех других страниц этого сайта – нет.
С мая 2014-го по октябрь 2015-го года в Яндексе наблюдалось явление, очень похожее на тот старый классический непот-фильтр. Назовем это новое явление «непот-фильтром-2014». О нем  я писал в статье «Отмена ссылочного: исчезновение «НПС» из органики» http://www.searchengines.ru/articles/otmena_ssylok.html и последующей серии статей о методике определения отключения ссылочного ранжирования по запросу (часть 1 http://www.searchengines.ru/articles/metodika_oprede.html , часть 2 http://www.searchengines.ru/articles/metodika_opredelenia.html, часть 3 http://www.searchengines.ru/articles/metodika_opredelenia_3.html ). Явление это обнаружилось после объявления сотрудниками Яндекса в апреле 2014 года о полном отключении ссылочных факторов в ряде тематик московской выдачи Яндекса и обладало аналогичными непот-фильтру основными свойствами – страница-акцептор не находилась по тексту проиндексированной ссылки. Только вот явление это было довольно ограниченным. Во-первых, запросозависимым (наблюдалось только для некоторых коммерческих запросов). Во-вторых, регионозависимым (наблюдалось только в выдаче для Москвы). А, в-третьих, имела место и зависимость от наличия сохраненной ссылки – для документов без сохраненной копии данное явление не наблюдалось ни при каких условиях.
3 ноября 2015 года во время своего доклада «Плохие методы продвижения сайтов», читаемого в рамках Школы вебмастеров Яндекса, аналитик отдела безопасного поиска Яндекса Екатерина Гладких объявила о возвращении учета ссылочных факторов, тех самых, отключенных для ряда коммерческих тематик в московской выдаче в апреле 2014 года. Индустрия ссылкоторговли поспешила водрузить этот факт на свой рекламный щит, пропагандируя мысль, что Яндекс «включил заднюю скорость» и все ссылки опять заработали. Скромно умалчивая о том, что на эти «возвращенные» ссылки также распространяется новая, «минусинская» ссылочная концепция Яндекса, заключающаяся в полном неучете так называемых SEO-ссылок.
Тем временем, явления, присущие «непот-фильтру 2014», в поисковой выдаче прекратились, но им на смену пришли новые, уже гораздо больше напоминающие старый классический непот-фильтр 2000-х годов. А именно: отсутствие страницы-акцептора в поисковой выдаче по тексту проиндексированной ссылки, ведущей на него, уже не зависящее от запроса, региона и наличия сохраненной копии. Именно это явление некоторые SEO-специалисты и окрестили «возвращением непот-фильтра». Мы же назовем его «непот-фильтром-2015».
На данный момент существует достаточно простой способ определения непот-фильтра-2015, однако, ограниченный в использовании только лишь для страниц-акцепторов, не содержащих проверяемую фразу в тексте, т.е. имеющих для нее нулевую текстовую релевантность. Данная методика заключается в проверке наличия разных результатов при разном построении запроса с использованием оператора << («неранжирующее И») для поиска на странице по анкору проверяемой ссылки. Вот так акцептор находится:
А вот так (поменяв местами правую и левую части запроса относительно оператора <<) – нет:
С помощью недокументированных операторов inlink: и intext: (о них я рассказывал в своих статьях «Сеанс поисковой магии. Недокументированные операторы языка запросов Яндекса.»  http://www.searchengines.ru/articles/seans_poiskovoy.html и «Сеанс поисковой магии. Поиск по-анкор-файлу.» http://www.searchengines.ru/articles/seans_poiskovoy_magii.html) удостоверимся, что искомая фраза действительно находится в тексте ссылок на документ:
Небольшая справка. Оператор inlink: осуществляет поиск только по анкор-файлу. Обнуляет значения текстовых динамических (т.е. зависящих от запроса) факторов. К сожалению, он работает только справа от оператора << («неранжирующее И»). Оператор intext: осуществляет поиск только по тексту. Он обнуляет значения ссылочных динамических факторов. Работает полноценно.
Интересная особенность непот-фильтра 2015 заключается в том, что он накладывается на конкретную ссылку. Так, например, наблюдаются случаи, когда из разных ссылок на внешний сайт, расположенных на одной странице-доноре одни попадают под фильтр, а другие – нет. Также пока не обнаружено случаев попадания под этот фильтр внутренних ссылок.
Наблюдая свойства нового непот-фильтра, во многом аналогичные старому классическому, возникает соблазн интерпретировать его действие также по аналогии как полное обнуление ссылочных факторов. В случае, когда текстовая релевантность страницы-акцептора поисковой фразе нулевая, это, в общем-то не вызывает сомнения – ведь акцептор просто не находится по ссылке. Но хотелось бы проверить эту гипотезу и для случая, когда текстовая релевантность акцептора не равна нулю. К сожалению, вышеупомянутая простая методика тут уже не может помочь. В этой задаче мог бы помочь оператор inlink:, если б он работал и слева от оператора <<, но, увы, его использование имеет неприятные ограничения. Однако существует возможность специальным образом сконструировать альтернативный запрос для поиска по анкор-файлу. Причем, используя только документированные операторы языка запросов Яндекса, что не накладывает никаких ограничений на его использование. К сожалению, я пока не могу опубликовать этот запрос из-за опасений за его дальнейшую работоспособность, поэтому назову его «секретным запросом» и попрошу читателя поверить мне на слово в том, что он действительно существует.
В пользу того, что этот запрос действительно является аналогом оператора inlink:, свидетельствуют следующие факты:
  1. Логика построения запроса, учитывающая специфические особенности организации анкор-файла.
  2. Аналогичные результаты поисковой выдачи при использовании справа его от оператора << («неранжирующее И»).
  3. Корректность получаемых с его помощью результатов при определении непот-фильтра-2015 для документов с нулевой текстовой релевантностью запросу.
На основании этих фактов логично предположить, что «секретный запрос» также корректно определяет наличие непот-фильтра-2015 и для документов с ненулевой текстовой релевантностью запросу.   
Для проверки гипотезы о полном обнулении непот-фильтром-2015 динамических ссылочных факторов для документов с ненулевой текстовой релевантностью я буду использовать метод «ортогональных запросов», о котором я писал в своей статье «Как работали ссылки в «доминусинскую» эпоху» (http://www.searchengines.ru/articles/kak_rabotali_ss.html). Суть его заключается в том, чтобы сконструировать запрос, состоящий из двух частей, разделяемых оператором | («логическое ИЛИ»). По одну сторону от оператора будем использовать выдачу, состоящую из одного результата для «контрольного документа», по другую сторону будет формироваться своеобразная «линейка» из многих результатов. Таким образом, измеряя позицию контрольного документа в общей выдаче по «линейке», мы сможем делать определенные выводы об изменении численного значения его релевантности запросу из первой части.
Итак, гипотеза следующая. Если динамические ссылочные факторы в случае срабатывания непот-фильтра-2015 для документов с ненулевой текстовой релевантностью действительно полностью обнуляются, то позиции в «ортогональной» выдаче для контрольного документа по базовому запросу и по запросу с использованием оператора intext: будут совпадать. Убедимся, что именно так и происходит для документа с нулевой ссылочной релевантностью запросу (т.е. не имеющего входящих ссылок с анкорами, содержащими текст запроса). Найдем подходящий документ c ненулевой текстовой релевантностью и нулевой ссылочной (контрольный документ #1):
«Взвесим» по ортогональной сетке варианты с базовым запросом и оператором intext: (отдельно подчеркиваю важность построения стабильной сетки, в которой не меняются позиции документов при изменении второй части запроса). Для данного случая получаем одинаковые результаты:
Теперь найдем документ (контрольный документ #2) с ненулевой текстовой релевантностью, имеющий вхождение запроса в анкор-лист, но попадающий под непот-фильтр-2015 согласно выдаче по «секретному запросу»:
И таким же образом пробиваем варианты выдачи для базового запроса и примененного к нему оператора intext: по ортогональной сетке. Обнаруживаем, что контрольный документ #2 по запросу с оператором intext: находится ниже, чем по базовому:
Таким образом, гипотеза о полном обнулении ссылочных динамических факторов для случая ненулевой текстовой релевантности запросу не подтверждается.
То есть, к сожалению, мы не можем с уверенностью утверждать о том, что попадающие под непот-фильтр-2015 ссылки не учитываются полностью. Вариантов здесь может быть масса:
  1. Учитывается пусть не ноль, но практически не значащая величина, мизер.
  2. Наблюдаемое явление – какой-то странный артефакт, по наличию которого нельзя сделать никаких практических выводов о природе учета оцениваемых ссылок. Тогда, естественно, возникает следующий вопрос – почему этот артефакт возник и есть ли в его существовании хоть какая-то логика?
  3. Используемая методика определения наличия нулевого ссылочного веса на самом деле некорректна и дает ничего не значащий результат. Надо искать более совершенную методику.
  4. И т.д. и т.п.
В общем, пока что вопросов сильно больше, чем ответов. Что ж, будем их искать. Ведь надежда на возвращение столь простой возможности оценки работоспособности ссылок, как старый классический непот-фильтр, ну, очень соблазнительна.


Технологии Blogger.