<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Комментарии: Часть 1. Алгоритм шинглов для веб-документов</title>
	<atom:link href="http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/</link>
	<description>Статьи по SEO, дизайну и программированию. Переводы на веб-тематику. Исследования и наработки в области интернет-технологий.</description>
	<lastBuildDate>Fri, 03 Feb 2012 14:59:03 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>Автор: Игорь</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-115149</link>
		<dc:creator>Игорь</dc:creator>
		<pubDate>Thu, 13 Oct 2011 19:52:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-115149</guid>
		<description>Поддерживаю вопрос о выборе функций - всегда ли они должны быть типичными хешевыми?</description>
		<content:encoded><![CDATA[<p>Поддерживаю вопрос о выборе функций &#8212; всегда ли они должны быть типичными хешевыми?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Алексей</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-71750</link>
		<dc:creator>Алексей</dc:creator>
		<pubDate>Sun, 30 Jan 2011 12:23:44 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-71750</guid>
		<description>Добрый день. А Вы не могли бы рассказать про то, какие 84 функции можно использовать в качестве хешей или отослать туда где об этом рассказывается? спасибо.</description>
		<content:encoded><![CDATA[<p>Добрый день. А Вы не могли бы рассказать про то, какие 84 функции можно использовать в качестве хешей или отослать туда где об этом рассказывается? спасибо.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Skaizer</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-18841</link>
		<dc:creator>Skaizer</dc:creator>
		<pubDate>Thu, 08 Apr 2010 18:58:58 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-18841</guid>
		<description>Нет, это не я писал шингл эксперт :)
Реализацию врядли буду заниматься, т.к. к сожалению времени катастрофически не хватает, что пришлось на N-ое количество времени забросить блог.
Сам я пользуюсь упрощенной версией данного алгоритма, которая так же есть у меня в блоге.</description>
		<content:encoded><![CDATA[<p>Нет, это не я писал шингл эксперт <img src='http://www.codeisart.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
Реализацию врядли буду заниматься, т.к. к сожалению времени катастрофически не хватает, что пришлось на N-ое количество времени забросить блог.<br />
Сам я пользуюсь упрощенной версией данного алгоритма, которая так же есть у меня в блоге.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Аватар</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-18238</link>
		<dc:creator>Аватар</dc:creator>
		<pubDate>Mon, 15 Mar 2010 00:41:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-18238</guid>
		<description>Хочу задать вопрос автору, Это не вы случайно написали программу шингл эксперт?
Если нет, то хочется знать, вы реализуете вышеописанный алгоритм в виде программы?</description>
		<content:encoded><![CDATA[<p>Хочу задать вопрос автору, Это не вы случайно написали программу шингл эксперт?<br />
Если нет, то хочется знать, вы реализуете вышеописанный алгоритм в виде программы?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Ukrbox</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-17687</link>
		<dc:creator>Ukrbox</dc:creator>
		<pubDate>Sat, 20 Feb 2010 07:31:06 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-17687</guid>
		<description>Как по мне, так основная проблема это канонизация текста. Это требует понимания лингвистических особенностей рассматриваемого текста и такое каноническое преобразование может быть неоднозначным. Имхо кончено.</description>
		<content:encoded><![CDATA[<p>Как по мне, так основная проблема это канонизация текста. Это требует понимания лингвистических особенностей рассматриваемого текста и такое каноническое преобразование может быть неоднозначным. Имхо кончено.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Виктор</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-16215</link>
		<dc:creator>Виктор</dc:creator>
		<pubDate>Sun, 27 Dec 2009 20:41:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-16215</guid>
		<description>С наступающим Новым годом! Процветания и творческих успехов. Отличная компания, отличные люди! Так держать!</description>
		<content:encoded><![CDATA[<p>С наступающим Новым годом! Процветания и творческих успехов. Отличная компания, отличные люди! Так держать!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: TepKuH</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-14960</link>
		<dc:creator>TepKuH</dc:creator>
		<pubDate>Tue, 24 Nov 2009 13:08:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-14960</guid>
		<description>&gt;в принципе изменение любой последовательности слов путем добавления нового слова ее разрушит
Это я согласен. Но добавление какого либо слова-фразы к тексту это довольно таки не простая задача(если слово-фраза в тему, а не с балды). Речь то как раз именно о перестановке слов. Вы просто выше сказали что определить перестановку можно на этапе канонизации. Вот я не очень понимаю по какому алгоритму. 
Есть еще одна слабость алгоритма, но она на конечной фазе(вычисление процента схожести) и правда относится к Вашей тема про &quot;...поиск нечетких дубликатов текста&quot;
Она(слабость) заключается в том что процент вычисляется как мне кажется не правильно. Объясню на примере: есть у нас контент 10кбайт. Мы берем от туда скажем первый абзац объемом ~1кбайт. Т.е. ничего не меняли, ничего не правили, берем просто какой то небольшой(по сравнению с общим объемом) кусок и в данном случаи процент похожести документов будет крайне низкий. Хотя маленький кусок взят из большого.</description>
		<content:encoded><![CDATA[<p>&gt;в принципе изменение любой последовательности слов путем добавления нового слова ее разрушит<br />
Это я согласен. Но добавление какого либо слова-фразы к тексту это довольно таки не простая задача(если слово-фраза в тему, а не с балды). Речь то как раз именно о перестановке слов. Вы просто выше сказали что определить перестановку можно на этапе канонизации. Вот я не очень понимаю по какому алгоритму.<br />
Есть еще одна слабость алгоритма, но она на конечной фазе(вычисление процента схожести) и правда относится к Вашей тема про &#171;&#8230;поиск нечетких дубликатов текста&#187;<br />
Она(слабость) заключается в том что процент вычисляется как мне кажется не правильно. Объясню на примере: есть у нас контент 10кбайт. Мы берем от туда скажем первый абзац объемом ~1кбайт. Т.е. ничего не меняли, ничего не правили, берем просто какой то небольшой(по сравнению с общим объемом) кусок и в данном случаи процент похожести документов будет крайне низкий. Хотя маленький кусок взят из большого.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Skaizer</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-14940</link>
		<dc:creator>Skaizer</dc:creator>
		<pubDate>Mon, 23 Nov 2009 19:14:58 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-14940</guid>
		<description>&lt;b&gt;TepKuH &lt;/b&gt;, в принципе изменение любой последовательности слов путем добавления нового слова ее разрушит, точнее разрушит столько последовательностей, какова длина шингла. ущерб качеству, который это может нанести будет различен на различных объемах текста.</description>
		<content:encoded><![CDATA[<p><b>TepKuH </b>, в принципе изменение любой последовательности слов путем добавления нового слова ее разрушит, точнее разрушит столько последовательностей, какова длина шингла. ущерб качеству, который это может нанести будет различен на различных объемах текста.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: TepKuH</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-14849</link>
		<dc:creator>TepKuH</dc:creator>
		<pubDate>Fri, 20 Nov 2009 21:45:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-14849</guid>
		<description>&gt;&quot;Но определить последовательности слов можно на этапе канонизации, тогда слова для двух текстов будут выстроены порядок по одинаковому алгоритму&quot;
Не понятно что имелось ввиду. По какому алгоритму Вы предлагаете выстраивать слова? по алфавиту? Но тогда добавление в текст хотя бы 1 слова уже сломает все построение. 
PS. Спасибо за алгоритм. Очень интересный.</description>
		<content:encoded><![CDATA[<p>&gt;&#187;Но определить последовательности слов можно на этапе канонизации, тогда слова для двух текстов будут выстроены порядок по одинаковому алгоритму&#187;<br />
Не понятно что имелось ввиду. По какому алгоритму Вы предлагаете выстраивать слова? по алфавиту? Но тогда добавление в текст хотя бы 1 слова уже сломает все построение.<br />
PS. Спасибо за алгоритм. Очень интересный.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Skaizer</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-13633</link>
		<dc:creator>Skaizer</dc:creator>
		<pubDate>Wed, 21 Oct 2009 19:48:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-13633</guid>
		<description>Если поменять соседние слова местами, то алгоритм определит текст уникальным. Но определить последовательности слов можно на этапе канонизации, тогда слова для двух текстов будут выстроены порядок по одинаковому алгоритму.</description>
		<content:encoded><![CDATA[<p>Если поменять соседние слова местами, то алгоритм определит текст уникальным. Но определить последовательности слов можно на этапе канонизации, тогда слова для двух текстов будут выстроены порядок по одинаковому алгоритму.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: булат</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-13342</link>
		<dc:creator>булат</dc:creator>
		<pubDate>Sun, 11 Oct 2009 19:25:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-13342</guid>
		<description>А если в тексте поменять местами соседние слова то какой результат даст этот алгоритм при сравнение получившегося текста и исходного?</description>
		<content:encoded><![CDATA[<p>А если в тексте поменять местами соседние слова то какой результат даст этот алгоритм при сравнение получившегося текста и исходного?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Skaizer</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-12034</link>
		<dc:creator>Skaizer</dc:creator>
		<pubDate>Sun, 06 Sep 2009 19:48:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-12034</guid>
		<description>&lt;p&gt;Извиняюсь, что так не&#160;сразу отвечаю, был в&#160;другом городе на&#160;конференции, времени почитать комменты в&#160;блоге не&#160;было. Итак:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Размножать тексты смысл имеет. Я&#160;в&#160;практике активно использую размноженные статьи, хотя для жирных площадок статьи использую уникальные. Для площадок &lt;=8$ - размноженные. Generating The Web можно использовать, но из обще распространенного софта я предпочитаю Allsubmitter.&lt;/li&gt;
&lt;li&gt;Длина шингла полностью зависит от&#160;длины текста. И&#160;не&#160;всегда чем меньше длина, тем лучше отбор, порой короткий шингл может отбросить большое количество уникальных статей. На&#160;практике для текстов в&#160;2000-3500&#160;символов я&#160;использую длину шингла в&#160;8&#160;слов, и&#160;отбираю статьи с&#160;уникальностью от&#160;96%. Для большего текста можно использовать длину шингла в&#160;9&#160;или 10&#160;слов.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;См. статью &lt;a href=&quot;http://www.codeisart.ru/articles-generating-via-allsubmitter/&quot;&gt;размножение статей в Allsubmitter&lt;/a&gt;. В&#160;статье я&#160;как раз описал отличие принципа размножения Allsubmitter-ом от&#160;Generating The Web (в&#160;статье, где упоминается другой софт). Generating The Web уж&#160;слишком долго генерирует достаточное количество статей, ввиду заложенного алгоритма перебора синонимов.&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Извиняюсь, что так не&nbsp;сразу отвечаю, был в&nbsp;другом городе на&nbsp;конференции, времени почитать комменты в&nbsp;блоге не&nbsp;было. Итак:</p>
<ol>
<li>Размножать тексты смысл имеет. Я&nbsp;в&nbsp;практике активно использую размноженные статьи, хотя для жирных площадок статьи использую уникальные. Для площадок < =8$ - размноженные. Generating The Web можно использовать, но из обще распространенного софта я предпочитаю Allsubmitter.</li>
</li>
<li>Длина шингла полностью зависит от&nbsp;длины текста. И&nbsp;не&nbsp;всегда чем меньше длина, тем лучше отбор, порой короткий шингл может отбросить большое количество уникальных статей. На&nbsp;практике для текстов в&nbsp;2000-3500&nbsp;символов я&nbsp;использую длину шингла в&nbsp;8&nbsp;слов, и&nbsp;отбираю статьи с&nbsp;уникальностью от&nbsp;96%. Для большего текста можно использовать длину шингла в&nbsp;9&nbsp;или 10&nbsp;слов.</li>
</ol>
<p>См. статью <a href="http://www.codeisart.ru/articles-generating-via-allsubmitter/">размножение статей в Allsubmitter</a>. В&nbsp;статье я&nbsp;как раз описал отличие принципа размножения Allsubmitter-ом от&nbsp;Generating The Web (в&nbsp;статье, где упоминается другой софт). Generating The Web уж&nbsp;слишком долго генерирует достаточное количество статей, ввиду заложенного алгоритма перебора синонимов.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Алексей</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-11765</link>
		<dc:creator>Алексей</dc:creator>
		<pubDate>Tue, 01 Sep 2009 11:07:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-11765</guid>
		<description>Огромное спасибо за доходчивое объяснение!
Тогда у меня к вам вопросы несколько практического плана :) 
1. Есть ли смысл размножать тексты на автомате? Скажем, Generating The Web, например. Тем более, если предположить, что ПС использует семантику (обычная замена слов на синонимы в этом случае не должна сработать)
2. Второй вопрос, вытекает из первого :) Какую, по мнению автора, длину шингла использовать при проверке на уникальность (понимаю, что чем длина шингла меньше - тем выше вероятность получить уникальный контент, но все же интересно послушать Ваше мнение)</description>
		<content:encoded><![CDATA[<p>Огромное спасибо за доходчивое объяснение!<br />
Тогда у меня к вам вопросы несколько практического плана <img src='http://www.codeisart.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
1. Есть ли смысл размножать тексты на автомате? Скажем, Generating The Web, например. Тем более, если предположить, что ПС использует семантику (обычная замена слов на синонимы в этом случае не должна сработать)<br />
2. Второй вопрос, вытекает из первого <img src='http://www.codeisart.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Какую, по мнению автора, длину шингла использовать при проверке на уникальность (понимаю, что чем длина шингла меньше &#8212; тем выше вероятность получить уникальный контент, но все же интересно послушать Ваше мнение)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Skaizer</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-11761</link>
		<dc:creator>Skaizer</dc:creator>
		<pubDate>Tue, 01 Sep 2009 07:47:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-11761</guid>
		<description>&lt;p&gt;Здравствуйте, Алексей.&lt;/p&gt;
&lt;p&gt;На два вопроса дам один обобщающий ответ. Вы все верно поняли, двумерный массив состоит из 84 строки и N’го числа столбцов. Использование 84х различных статических функций необходимо для осуществления выборки 84х случайных шинглов для каждого из текстов (одномерный массив получится в итоге). То есть из одной строки выбирается один элемент.&lt;/p&gt;
&lt;p&gt;В нашем случае из каждой строки матрицы выбирается минимальное значение контрольной суммы шингла. Эта процедура выполняется для каждого из текстов.&lt;/p&gt;
&lt;p&gt;Далее 84 элемента массива случайных значений для первого текста ставятся в соответствие 84м элементам массива случайных значений второго текста. То есть сравниваем следующим образом (пример на яыке Python):&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;python&quot;&gt;# A =&gt; список из 84 элементов случайной выборки из матрицы контрольных сумм для ТЕКСТА_1 (содержит минимальные значения каждой из строк)
# B =&gt; список из 84 элементов случайной выборки из матрицы контрольных сумм для ТЕКСТА_2 (содержит минимальные значения каждой из строк)
for i in range(84):
    if A[i] == B[i]:
        #Прибавляем +1 к количеству совпавших шинглов&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;То есть &lt;b&gt;элементы одномерных массивов для двух текстов сравниваются попарно, в соответствии алгоритму контрольной суммы&lt;/b&gt;, по которому они были вычислены. Контрольная сумма одного текста, вычисленная, например через MD5 сравнивается с контрольной суммой другого текста, так же вычисленной через MD5, а не SHA1 и прочие.&lt;/p&gt;
&lt;p&gt;Для почти одинаковых текстов, вероятность выборки одинаковых минимальных значений контрольных сумм шинглов достаточно велика.&lt;/p&gt;
&lt;p&gt;Надеюсь, смог доступно объяснить :)&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Здравствуйте, Алексей.</p>
<p>На два вопроса дам один обобщающий ответ. Вы все верно поняли, двумерный массив состоит из 84 строки и N’го числа столбцов. Использование 84х различных статических функций необходимо для осуществления выборки 84х случайных шинглов для каждого из текстов (одномерный массив получится в итоге). То есть из одной строки выбирается один элемент.</p>
<p>В нашем случае из каждой строки матрицы выбирается минимальное значение контрольной суммы шингла. Эта процедура выполняется для каждого из текстов.</p>
<p>Далее 84 элемента массива случайных значений для первого текста ставятся в соответствие 84м элементам массива случайных значений второго текста. То есть сравниваем следующим образом (пример на яыке Python):</p>
<pre><code class="python"># A => список из 84 элементов случайной выборки из матрицы контрольных сумм для ТЕКСТА_1 (содержит минимальные значения каждой из строк)
# B => список из 84 элементов случайной выборки из матрицы контрольных сумм для ТЕКСТА_2 (содержит минимальные значения каждой из строк)
for i in range(84):
    if A[i] == B[i]:
        #Прибавляем +1 к количеству совпавших шинглов</code></pre>
<p>То есть <b>элементы одномерных массивов для двух текстов сравниваются попарно, в соответствии алгоритму контрольной суммы</b>, по которому они были вычислены. Контрольная сумма одного текста, вычисленная, например через MD5 сравнивается с контрольной суммой другого текста, так же вычисленной через MD5, а не SHA1 и прочие.</p>
<p>Для почти одинаковых текстов, вероятность выборки одинаковых минимальных значений контрольных сумм шинглов достаточно велика.</p>
<p>Надеюсь, смог доступно объяснить <img src='http://www.codeisart.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Алексей</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-11753</link>
		<dc:creator>Алексей</dc:creator>
		<pubDate>Mon, 31 Aug 2009 20:59:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-11753</guid>
		<description>Во-первых, огромное спасибо за проделанный труд автору! 
Тема щекотливая, интересная и в тоже время сложная. Есть пару вопросов.
(1 вопрос) Почему используют РАЗНЫЕ статические функции? 

Насколько я понял, двумерный массив состоит: 84 строки (стат. функции) и N&#039;го числа столбцов (зависит от численного количества шинглов). 
(2 вопрос) Если одномерный массив формируется случайным образом для каждого текста, то в чем смысл проверки? Поясню. Скажем для первого текста случайно выбрались только такие то функции, а для второго текста - другие, т.е. их контрольные суммы не сравнить. Или я не правильно понял?</description>
		<content:encoded><![CDATA[<p>Во-первых, огромное спасибо за проделанный труд автору!<br />
Тема щекотливая, интересная и в тоже время сложная. Есть пару вопросов.<br />
(1 вопрос) Почему используют РАЗНЫЕ статические функции? </p>
<p>Насколько я понял, двумерный массив состоит: 84 строки (стат. функции) и N&#8217;го числа столбцов (зависит от численного количества шинглов).<br />
(2 вопрос) Если одномерный массив формируется случайным образом для каждого текста, то в чем смысл проверки? Поясню. Скажем для первого текста случайно выбрались только такие то функции, а для второго текста &#8212; другие, т.е. их контрольные суммы не сравнить. Или я не правильно понял?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Александр</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-11600</link>
		<dc:creator>Александр</dc:creator>
		<pubDate>Mon, 24 Aug 2009 19:07:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-11600</guid>
		<description>Серьезная и понятная статья (правда, в области с хэшами не совсем понятно, но это МНЕ и, видимо, потому, что я не программист). Нечасто хочется сказать &quot;браво&quot; блоггеру, но в данный момент хочется. Приятно видеть &quot;Ученого о СЕО&quot;, который зрит в корень ПС. Еще раз &quot;браво&quot; - настоящий &quot;хакерский подход&quot; (я сейчас совсем не про киберпреступников говорю, а именно про подход к решению задач).</description>
		<content:encoded><![CDATA[<p>Серьезная и понятная статья (правда, в области с хэшами не совсем понятно, но это МНЕ и, видимо, потому, что я не программист). Нечасто хочется сказать &#171;браво&#187; блоггеру, но в данный момент хочется. Приятно видеть &#171;Ученого о СЕО&#187;, который зрит в корень ПС. Еще раз &#171;браво&#187; &#8212; настоящий &#171;хакерский подход&#187; (я сейчас совсем не про киберпреступников говорю, а именно про подход к решению задач).</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Skaizer</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-11107</link>
		<dc:creator>Skaizer</dc:creator>
		<pubDate>Thu, 06 Aug 2009 08:21:46 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-11107</guid>
		<description>&lt;b&gt;Jack&lt;/b&gt;, правильнее было бы сказать, что оптимальный способ чистки зависит от типа сравниваемых документов, если сравниваются статьи, то выкидывать предлоги, союзы, знаки препинания например, если это HTML документы, то чистить текст от тегов. Использовать морфологический анализ - по желанию, как вы правильно выразились - это не слишком простая задача, но существуют готовые библиотеки, которые можно использовать.
Реализовывать я врядли буду данный алгоритм, времени нет абсолютно, к сожалению, да и смысла пока нету, т.к. обрабатывать миллионы страниц мне не надо. А для фильтрации уникальных статей, предназначенных для продвижения сайтов мне хватает &lt;a href=&quot;http://www.codeisart.ru/python-shingles-algorithm/&quot; rel=&quot;nofollow&quot;&gt;своей реализации&lt;/a&gt;.</description>
		<content:encoded><![CDATA[<p><b>Jack</b>, правильнее было бы сказать, что оптимальный способ чистки зависит от типа сравниваемых документов, если сравниваются статьи, то выкидывать предлоги, союзы, знаки препинания например, если это HTML документы, то чистить текст от тегов. Использовать морфологический анализ &#8212; по желанию, как вы правильно выразились &#8212; это не слишком простая задача, но существуют готовые библиотеки, которые можно использовать.<br />
Реализовывать я врядли буду данный алгоритм, времени нет абсолютно, к сожалению, да и смысла пока нету, т.к. обрабатывать миллионы страниц мне не надо. А для фильтрации уникальных статей, предназначенных для продвижения сайтов мне хватает <a href="http://www.codeisart.ru/python-shingles-algorithm/" rel="nofollow">своей реализации</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Jack</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-11037</link>
		<dc:creator>Jack</dc:creator>
		<pubDate>Tue, 04 Aug 2009 09:58:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-11037</guid>
		<description>Отличная и понятная статья.
Правильно ли я понял, что на этапе канонизации - множество вариантов, и оптимальный способ &quot;чистки&quot; зависит от набора сравниваемых документов? Если да, то есть ли какие-нибудь рекомендации по выбору варианта канонизации. Использование морфологического и лексического анализа - это не слишком простая задача..

P.S. Ожидается ли реализация на том же Python?</description>
		<content:encoded><![CDATA[<p>Отличная и понятная статья.<br />
Правильно ли я понял, что на этапе канонизации &#8212; множество вариантов, и оптимальный способ &#171;чистки&#187; зависит от набора сравниваемых документов? Если да, то есть ли какие-нибудь рекомендации по выбору варианта канонизации. Использование морфологического и лексического анализа &#8212; это не слишком простая задача..</p>
<p>P.S. Ожидается ли реализация на том же Python?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: CakePHP. Как создать модуль без привязки к таблице в базе данных</title>
		<link>http://www.codeisart.ru/part-1-shingles-algorithm-for-web-documents/comment-page-1/#comment-11002</link>
		<dc:creator>CakePHP. Как создать модуль без привязки к таблице в базе данных</dc:creator>
		<pubDate>Sun, 02 Aug 2009 10:26:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.codeisart.ru/?p=1585#comment-11002</guid>
		<description>[...] Алгоритм шинглов для веб-документов&#160;New [...]</description>
		<content:encoded><![CDATA[<p>[...] Алгоритм шинглов для веб-документов&nbsp;New [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Served from: www.codeisart.ru @ 2012-02-04 11:16:33 -->
