Определение дублированного контента |
||
08:48 31 мая 2013 — Терехов Алексей |
Происхождение дублированного контента в интернете может быть различным. Один и тот же документ физически на одних и тех же серверах может отличаться технически — разные форматы, кодировки, разбавлен картинками.
Большое количество документов в сети активно копируется и редактируется — ленты новостей, различного рода документация, прайсы, FAQ. Публикации ( в блогосфере посты) могут быть скопированы с нарушением авторских прав и отсинонимизорованы с целью сделать их уникальными для поисковиков. Для чего это надо манимейкерам, вы прекрасно знаете.
Кроме того, индексация поисковиками страниц, генерируемых при помощи баз данных и различных движков порождает еще один распространенный класс малоотличающихся документов: форумы, страницы с описаниями товаров…
С полными повторами (с тупым копипастом) особых проблем нет: поисковикам достаточно сохранять в индексе контрольную сумму текста (что это такое, спросите в комментариях) и игнорировать все остальные тексты с такой же контрольной суммой. Уточню, что для каждого уникального текста существует свое уникальное значение контрольной суммы. Но этот метод не срабатывает для выявления легкого рерайта. Я бы даже сказал очень легкого рерайта — замена синонимами, вставка междометий, наречий и т.д.
Для решения этой задачи Андрей Бродер в 1997 году придумал название и довел до ума алгоритм «шинглов» (от латинского shingles, что в переводе означает черепица или чешуйки»). Вот его примерное описание.
Для каждого десятисловия (количество слов можно варьировать) рассчитывается контрольная сумма (шингл). Десятисловия идут «внахлест», с перекрыванием друг друга, чтобы ничего не потерять. А затем из всего множества контрольных сумм отбираются только те, которые делятся на одно и то же число, для примера 25. Ясно, что повтор даже одного десятисловия — весомый признак дублирования контента. Если же повторов больше половины, то с определенной вероятностью, близкой к единице, можно утверждать, что найдена копия (в манимейкерстве копипаст) со всеми вытекающими. Ведь один совпавший шингл в выборке соответствует примерно 25 совпашим десятисловиям в полном тексте.
Развитие этого алгоритма позволяет определять процент перекрытия текстов и выявлять его источники. Это особенно актуально для блоггеров, посты которых вывешиваются на сплогах.
На вопрос, почему Yandex не всегда адекватно находит первоисточник, я могу ответить лишь одной фразой — нет ничего абсолютно совершенного. То что я описал выше — это идеал, к которому надо стремиться. На практике все сложнее.
Большое количество документов в сети активно копируется и редактируется — ленты новостей, различного рода документация, прайсы, FAQ. Публикации ( в блогосфере посты) могут быть скопированы с нарушением авторских прав и отсинонимизорованы с целью сделать их уникальными для поисковиков. Для чего это надо манимейкерам, вы прекрасно знаете.
Кроме того, индексация поисковиками страниц, генерируемых при помощи баз данных и различных движков порождает еще один распространенный класс малоотличающихся документов: форумы, страницы с описаниями товаров…
С полными повторами (с тупым копипастом) особых проблем нет: поисковикам достаточно сохранять в индексе контрольную сумму текста (что это такое, спросите в комментариях) и игнорировать все остальные тексты с такой же контрольной суммой. Уточню, что для каждого уникального текста существует свое уникальное значение контрольной суммы. Но этот метод не срабатывает для выявления легкого рерайта. Я бы даже сказал очень легкого рерайта — замена синонимами, вставка междометий, наречий и т.д.
Для решения этой задачи Андрей Бродер в 1997 году придумал название и довел до ума алгоритм «шинглов» (от латинского shingles, что в переводе означает черепица или чешуйки»). Вот его примерное описание.
Для каждого десятисловия (количество слов можно варьировать) рассчитывается контрольная сумма (шингл). Десятисловия идут «внахлест», с перекрыванием друг друга, чтобы ничего не потерять. А затем из всего множества контрольных сумм отбираются только те, которые делятся на одно и то же число, для примера 25. Ясно, что повтор даже одного десятисловия — весомый признак дублирования контента. Если же повторов больше половины, то с определенной вероятностью, близкой к единице, можно утверждать, что найдена копия (в манимейкерстве копипаст) со всеми вытекающими. Ведь один совпавший шингл в выборке соответствует примерно 25 совпашим десятисловиям в полном тексте.
Развитие этого алгоритма позволяет определять процент перекрытия текстов и выявлять его источники. Это особенно актуально для блоггеров, посты которых вывешиваются на сплогах.
На вопрос, почему Yandex не всегда адекватно находит первоисточник, я могу ответить лишь одной фразой — нет ничего абсолютно совершенного. То что я описал выше — это идеал, к которому надо стремиться. На практике все сложнее.
Понравился пост?Да НетПонравилось 4, не понравилось 2 |
Расскажите о нас... |
1 комментарий
+ Добавить комментарий