Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Скидка до 20% на услуги дата-центра. Аренда серверной стойки. Colocation от 1U!

Миграция в облако #SotelCloud. Виртуальный сервер в облаке. Выбрать конфигурацию на сайте!

Виртуальная АТС для вашего бизнеса. Приветственные бонусы для новых клиентов!

Виртуальные VPS серверы в РФ и ЕС

Dedicated серверы в РФ и ЕС

По промокоду CITFORUM скидка 30% на заказ VPS\VDS

VPS/VDS серверы. 30 локаций на выбор

Серверы VPS/VDS с большим диском

Хорошие условия для реселлеров

4VPS.SU - VPS в 17-ти странах

2Gbit/s безлимит

Современное железо!

2008 г.

Методы бикластеризации для анализа интернет-данных

Дмитрий Игнатов,
кафедра анализа данных и искусственного интеллекта ГУ-ВШЭ

Назад Содержание Вперёд

3. Программные средства бикластеризации

Разработано довольно большое количество программных систем, которые можно отнести к программам бикластеризации. Как правило, такие системы служат нуждам какой-либо конкретной области, и методы бикластеризации являются одним из инструментов, доступных аналитику наряду с традиционными методами анализа данных (например, кластеризацией). В этой части работы мы не будем детально описывать каждую из рассматриваемых систем, и приведенный их перечень будет далеко не полным.

Суть в том, что для каждой области применения мы укажем хотя бы одно из такое средство и кратко опишем его возможности. Основными областями применения в нашем рассмотрении являются биоинформатика (генетические данные), Data Mining, Формальный Анализ Понятий, социальные сети, графовая и спектральная кластеризация.

3.1. Система бикластеризации генетических данных BicAT

Опишем систему BicAT, разработанную швейцарскими учеными, которые специализируются в области биоинформатики и анализа генетических данных. Отметим также, что данное программное обеспечение свободно распространяется.

В системе BicAT реализованы следующие методы бикластеризации:

  • алгоритм Ченга и Черча (CC), в котором используется величина среднеквадратичного остатка [25];
  • алгоритм итеративной сигнатуры (the Iterative Signature Algorithm, ISA), в котором ищутся подматрицы, представляющие собой неподвижные точки [43];
  • алгоритм, сохраняющий порядок на подматрицах (the Order-Preserving Submatrix Algorithm, OPSM) и обнаруживающий большие подматрицы, для которых линейный порядок, заданный на столбцах, выполняется на всех строках [16];
  • алгоритм xMotifs — итеративный метод, отыскивающий бикластеры с квази-постоянными значениями выражений [58];
  • Bimax — точный алгоритм бикластеризации, основанный на стратегии "разделяй и властвуй", которая приспособлена для нахождения всех максимальных биклик в соответствующем графовом представлении матрицы [60].

Дополнительно реализованы две стандартных процедуры кластеризации, а именно, иерархическая кластеризация и метод K-средних.

Кратко опишем основные функции и возможности системы бикластеризации BicAT.

Матрица исходных данных отображается в главном окне системы в виде так называемой тепловой карты (меньшим значениям степени проявления генов соответствует зеленый цвет, большим — красный). К средствам предобработки данных, реализованным в системе, можно отнести нормализацию, дискретизацию и логарифмирование входных значений. Подобные процедуры необходимы для адекватной работы методов; например, метод Bimax принимает в качестве входных данных только двоичные матрицы, а следовательно, бинарная дискретизация значений необходима.

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

В системе реализованы средства поиска бикластеров по имени гена и/или признака, а также механизм фильтрации результатов бикластеризации по размеру бикластеров (сверху и снизу) и степени их перекрытия. Помимо таких, очевидно, необходимых средств постобработки, в системе реализован метод парного анализа генов (Gene Pair Analysis), позволяющий исследовать совстречаемость пар генов.

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

3.2. Программные средства сообщества ФАП

Среди программных средств в области ФАП отметим только три наиболее часто используемые исследователями программы, находящиеся в свободном доступе: Concept Explorer [2], ToscanaJ [39] и Galicia [80]. Кратко опишем их назначение и возможности.

Все они пригодны для построения решеток понятий и отображения их диаграмм. Отличительными особенностями ConceptExplorer являются удобный интерфейс, наличие нескольких способов рисования диаграммы решетки, а также поиск базиса импликаций и ассоциативных правил. Помимо этого, ConExp поддерживает исследование признаков — интерактивную процедуру приобретения знаний.

Программа ToscanaJ позволяет строить вложенные диаграммы решеток понятий, шкалировать признаки в смысле ФАП, устанавливать связь с базами данных и предоставляет некоторые возможности, учитывающие динамику решеток.

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

3.3. Система Coron для Data Mining

Система анализа данных Coron [74] предназначена для поиска частых множеств признаков и ассоциативных правил. Следует особо отметить, что данный продукт является результатом диссертационной работы Ласло Затмари.

Программа обладает неплохим графическим интерфейсом, собственным форматом данных, возможностью работы с базами данных. Для поиска частых множеств признаков используются наиболее эффективные алгоритмы сообщества FIM, а также алгоритмы, разработанные самим автором [75]. Поиск ассоциативных правил также использует эффективные алгоритмы, опирающиеся на достижения ФАП и оказавшиеся полезными для компактного представления правил и построения их базисов. Еще одним достоинством продукта является свободный доступ и кроссплатформенность (в смысле технологии Java).

3.4. Другие системы бикластеризации

Стоит отдельно упомянуть системы бикластеризации на графах и спектральной кластеризации. Система CLUTO [71,87] — библиотека алгоритмов для кластеризации как данных небольшой размерности, так и многомерных, а также анализа свойств различных кластеров. Авторы рекомендуют использовать CLUTO для кластеризации данных во многих областях, таких как информационный поиск, базы данных транзакций, Интернет и биология. В программе реализована кластеризация на графах, различные меры сходства, поддерживается поиск клик графа и частых множеств признаков, реализованы удобные средства визуализации gCluto [62].Отличительная особенность программы заключается в возможности анализа больших массивов, содержащих сотни тысяч объектов и десятки тысяч признаков.

Две других системы предназначенные для графовой кластеризации — это Chaco [41] и METIS [11]. Укажем, что Metis отличается высокой скоростью вычислений для больших массивов данных, а в Chaco реализована спектральная кластеризация на графах. Не будем подробно их описывать, но укажем на то, что поиск клик и их различных ослаблений в двудольном графе (в том числе и взвешенном) сводится к постановкам задач бикластерзации. А это означает, что такие системы можно рассматривать как системы бикластеризации.

4. Прикладные задачи

4.1. Приложения в биологии: анализ генетических данных

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

Приведем несколько примеров. Ченг и Черч в работе [25] применяют бикластеризацию к двум матрицам генной экспрессии, а именно, к данным, описывающим клетки дрожжей (Yeast Saccharomyces Cerevisiae) для 2884 генов и 17 условий, и к данным о B-клетках человека (B-cells) для 4026 генов и 96 условий. Танг и др. [78] применяют алгоритм ITWC к данным генной экспрессии с 4132 генами и 48 примерами пациентов множественного склероза, а Бен-Дор и др. [16] используют данные о раке груди для 3226 генов при 22 различных экспериментальных условиях.

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

Помимо данных генной экспрессии, в качестве приложений в биологии можно привести пример из работы Лиу и Ванга [53], которые анализировали активность лекарственных препаратов на матрице из 10000 строк и 30 столбцов, в которой каждой строке соответствовало химическое вещество, а столбцы представляли его признаки.

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

4.2. Информационный поиск (Information Retrieval): бикластеризация документов

В задачах информационного поиска и анализа текстов (text mining) бикластеризация применяется для обнаружения кластеров документов, обладающих сходными свойствами только по нескольким признакам, таким как слова и изображения. Такая информация очень важна для запросов и индексации поисковых интернет-систем. Диллон в своей работе [29] использует бикластеризацию для одновременного группирования документов и слов. Исходные данные представляют собой матрицу F, в которой строки отвечают словам, а столбцы — документам, а ненулевой элемент показывает присутствие слова в документе : , где показывает число вхождений слова в документ , — общее число документов, а — число документов, содержащих слово . Такую матрицу принято называть матрицей инциденций, а вместо термина бикластеризация использовать кокластеризация (co-clustering).

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

В этой работе Диллон пытается выявить подмножества слов и документов, сильно связанных друг с другом. В его модели, как и в работе Танай и др.[76], матрице исходных данных сопоставляется двудольный граф, и автор использует спектральный подход, похожий на предложенный Клугер и др. [45]. Эксперименты проводятся на трех коллекциях документов: Medline (1033 медицинских статьи), Cranfield (1400 статей про системы аэронавтики) и Cisi (1460 статьи по информационному поиску). Другие примеры бикластеризации для этого типа матриц можно найти в работе Диллона [30].

Для задачи выявления документов-дубликатов было предпринято две относительно успешные попытки использования ФАП и частых замкнутых множеств признаков (см. работы Кузнецова и Игнатова [6,3] и более позднюю статью другого исследователя [38]). Подробное описание постановки задачи, вычислительной модели см. в разделе 4.1.

4.3. Социальные сети: выявление сообществ

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

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

Решетки понятий, которые мы рассматриваем как способ бикластерзации, успешно применялись для анализа эпистемических сообществ [65,63] (т.е. агентов, имеющих дело с одинаковыми темами, например, научные сообщества или пользователи блогов) или филиальных сетей (акторы принадлежат одной и той же организации). Успех этого подхода обусловлен наличием таксономий бикластеров, что оказывается полезным при иерархическом описании групп акторов в терминах сходства интересов.

Отметим ключевые работы, которые способствовали росту интереса к исследованиям в этой области. В начале 90-х известный американский социолог Линтон Фриман стал применять решетки понятий в контексте социальных исследований [32], другой важной фигурой является французский исследователь Винсент Дюкен [82]. Часть работ, в которых используется ФАП, связана с исследованием веб-сообществ, например, статья [64]. С применением ФАП проводились также исследования посещаемости сайтов, а именно, выполнялось построение таксономий групп посетителей, см. работы Кузнецова и Игнатова [50] и Кедрова и Кузнецова [4]. Более подробно постановка задачи исследования посещаемости сайтов и пути ее решения обсуждаются в разделе 4.2.

4.4. Интернет-приложения: e-commerce, recommendation systems, collaborative filtering, target marketing

Методы бикластеризации могут быть использованы для так называемой коллаборативной фильтрации (collaborative filtering) при обнаружении групп покупателей со сходными предпочтениями в виде некого подмножества товаров (задача целевого маркетинга). Похожая ситуация имеет место в рекомендательных системах, где бикластеры предоставляют информацию о сходных интересах групп посетителей.

Необходимо отметить, что рекомендательные системы и целевой маркетинг — важные приложения в области электронной коммерции (см., например, [12]). В таких приложениях основной целью является обнаружение групп покупателей, ведущих себя похожим образом, чтобы предсказать их интересы и предложить адекватные рекомендации. Отметим несколько работ, освещающих вопросы применения методов бикластеризации к таким данным.

Джионг Янг и др. [84,85] использовали для проведения экспериментов массив данных MovieLens, собранный исследовательской группой GroupLens университета Миннесоты. Массив данных представляет собой матрицу, строки которой описывают 943 покупателя, а столбцы — 1682 фильма. Значения матрицы — целые числа от 1 до 10, они представляют рейтинг, который покупатель присвоил фильму. Матрица довольно разреженная, т.к. покупатель оценивает в среднем менее 10% фильмов. Хайксун Янг и др. [81] также провели эксперименты на этих данных.

Хоффман и Пузича [42] применяли бикластеризацию для коллаборативной фильтрации на массиве EachMovie, который состоит из данных, собранных в Интернете для почти трех миллионов предпочтений с оценками от 0 до 5. Унгар и Фостер [79] также используют данные о фильмах, в которых учитывается лишь факт просмотра фильма, поэтому анализируемая матрица — бинарная.

Другим примером является рынок Интернет-рекламы, для которого актуален поиск бикластеров, представляющих отдельные рынки, т.е. множества покупателей и приобретаемых ими рекламных словосочетаний (см. [88]). Решение аналогичной задачи описывается и в данной работе (см. раздел 5.3).

4.5. Бикластеризация электоральных данных

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

Хартиган [37] применял бикластеризацию для двух массивов данных. Первый массив — данные о голосовании на президентских выборах США, отражающие процент голосов, которые были отданы за республиканцев в южных штатах в период с 1900 г. по 1968 г. Второй массив данных о голосовании в ООН в 1969 г. и 1970 г. В первом случае матрица состоит из множества строк, представляющих штаты, и множества столбцов, соответствующих годам. Каждое значение представляет процент голосов штата в году .

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

5. Эксперименты на массивах Интернет-данных

5.1. Поиск сходства Интернет-документов с помощью частых замкнутых множеств признаков.

У множества документов в Интернете имеются дубликаты, в связи с чем необходимы средства эффективного вычисления кластеров документов-дубликатов [20, 21, 22, 26, 27, 40, 44, 46, 70, 61]. В этом разделе описываются исследования, посвященные применению алгоритмов Data Mining для поиска кластеров дубликатов с использованием синтаксических и лексических методов составления образов документов. На основе экспериментов делаются некоторые выводы о способе выбора параметров методов.

Постановка задачи

У огромного числа документов (по некоторым источникам до 30%) в Интернете имеются дубликаты, и поисковые машины должны обладать эффективными средствами вычисления кластеров дубликатов. Происхождение дубликатов может быть разным — от дублирования компаниями собственной информации на разных серверах (создание зеркал) до злонамеренных — обмана программ индексаторов веб-сайтов, незаконного копирования и спамерских рассылок.

Обычно дубликаты документов определяются на основе отношения сходства на парах документах: два документа сходны, если некоторая числовая мера их сходства превышает некоторый порог [20]. По отношению сходства вычисляются кластеры сходных документов, например, по транзитивному замыканию отношения сходства [20]. Вначале, после снятия HTML-разметки документы, как линейные последовательности слов (символов), преобразуются во множества. Здесь двумя основными схемами (определяющими весь возможный спектр смешанных методов) являются синтаксические и лексические методы. К синтаксическим относится метод шинглирования [22], в котором документ в итоге представляется набором хеш-кодов; этот метод испоьзовался в поисковых системах Google и AltaVista. В лексических методах [44] большое внимание уделяется построению словаря — набора дескриптивных слов; известны его разновидности, такие I-match и метод ключевых слов Ильинского [44].

На втором этапе из документа, представленного множеством синтаксических или лексических признаков, выбирается подмножество признаков, образующее краткое описание (образ) документа. На третьем этапе определяется отношение сходства на документах с помощью некоторой метрики сходства, сопоставляющей двум документам число в интервале [0, 1], и некоторого параметра — порога, выше которого находятся документы-дубликаты.

На основе отношения сходства документы объединяются в кластеры (полу-)дубликатов. Определение кластера также может варьироваться. Одно из возможных определений, часто используемых на практике (например, в компании AltaVista), но наиболее слабых, упоминается в обзоре [20]: если документам Интернета сопоставить граф, вершины которого соответствуют самим документам, а ребра — отношению «быть (почти) дубликатом», то кластером объявляется компонента связности такого графа. Достоинством такого определения является эффективность вычислений. Недостаток такого подхода очевиден: отношение «быть (почти) дубликатом» не является транзитивным, поэтому в кластер сходных документов могут попасть абсолютно разные документы.

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

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

Приводятся результаты экспериментальной проверки данного метода на основе сравнения результатов его применения (для разных значений порогов) со списком дубликатов, составленным на основе результатов применения других методов к тому же множеству документов. Исследовалось влияние на результат следующих параметров модели: использование синтаксических или лексических методов представления документов, использование методов «n минимальных элементов в перестановке» и «минимальные элементы в n перестановках» [20], параметры шинглирования, величина порога сходства образов документов. Одна из задач проекта заключалась в том, чтобы связать вычисление попарного сходства образов документов с построением кластеров документов, чтобы, с одной стороны, получаемые кластеры были бы независимы от порядка рассмотрения документов (в отличие от методов кластерного анализа), а с другой стороны гарантировали бы наличие реального попарного сходства всех образов документов в кластере.

Описание вычислительной модели

В качестве методов представления документов (создания образа документа) использовались стандартные синтаксические и лексические подходы с разными параметрами.

В рамках синтаксического подхода была реализована схема шинглирования и составление краткого образа (скетча) документов на основе методов «n минимальных элементов в перестановке» и «минимальные элементы в n перестановках», описание которых можно найти, например, в [21, 22].

Программа shingle с двумя параметрами length и offset порождает для каждого текста набор последовательностей слов (шинглов) длины length, так что отступ от начала одной последовательности до начала другой последовательности в тексте имеет размер offset. Полученное таким образом множество последовательностей хэшируется, так что каждая последовательность получает свой хэш-код.

Далее из множества хэш-кодов, соответствующему документу, выбирается подмножество фиксированного (с помощью параметра) размера с использованием случайных перестановок, описанных в работах [20, 21, 22]. При этом вероятность того, что минимальные элементы в перестановках хэш-кодов на множествах шинглов документов A и B (эти множества обозначаются через и соответственно) совпадут, равна мере сходства этих документов sim(A,B):

Основные определения, связанные с частыми замкнутыми множествами, естественно, даются в терминах анализа формальных понятий (ФАП) [33]. Мы рассматриваем формальный контекст , где D — множество документов, а F — множество хеш-кодов (fingerprins), отношение показывает, что некий объект обладает признаком в том и только том случае, когда . Для множества документов множество их общих признаков служит описанием их сходства, а замкнутое множество является кластером сходных объектов (с множеством общих признаков ). Для произвольного величина является поддержкой B и обозначается supp(B).

Нетрудно видеть, что множество замкнуто тогда и только тогда, когда для любого имеет место . Именно это свойство используется для определения замкнутости в методах Data Mining. Множество называется -частым, если (то есть множество признаков B встречается в более чем объектах), где — параметр.

Вычисление частых замкнутых множеств признаков (содержаний) приобрело важность в Data Mining благодаря тому, что по этим множествам эффективно вычисляются множества всех ассоциативных правил [59]. Фактически, мы будем вычислять частные замкнутые множества признаков для контекста, дуального к , т.е. находить такие множества документов-признаков контекста , для которых размер множества их общих шинглов превышает заданный порог сходства.

Хотя теоретически размер множества всех замкнутых множеств признаков (содержаний) может быть экспоненциальным относительно числа признаков, на практике таблицы данных сильно "разрежены" (то есть среднее число признаков на один объект весьма мало), и число замкнутых множеств невелико. Для таких случаев существуют весьма эффективные алгоритмы построения всех наиболее частых замкнутых множеств признаков (см. также обзор по алгоритмам построения всех замкнутых множеств [47]).

В последние годы проводился ряд соревнований по быстродействию таких алгоритмов на серии международных семинаров под общим названием FIMI (Frequent Itemset Mining Implementations). Пока лидером по быстродействию считается алгоритм FPmax* [35], показавший наилучшие результаты по быстродействию в соревновании 2003 года. Мы использовали этот алгоритм для построения сходства документов и кластеров сходных документов. При этом в роли объектов выступали элементы описания (шинглы или слова), а в роли признаков — документы. Для такого представления «частыми замкнутыми множествами» являются замкнутые множества документов, для которых число общих единиц описания в образах документов превышает заданный порог.

Программная реализация и компьютерные эксперименты

Программные средства для проведения экспериментов в случае синтаксических методов включали следующие блоки:

  1. парсер формата XML для коллекции ROMIP;
  2. снятие html-разметки;
  3. нарезка шинглов с заданными параметрами;
  4. хэширование шинглов;
  5. составление образа документов путем выбора подмножества (хэш-кодов) шинглов с помощью методов «n минимальных элементов в перестановке» и «минимальные элементы n n перестановках»;
  6. cоставление по результатам методов 4-5 инвертированной таблицы «список идентификаторов документов—шингл» — подготовка данных к формату программ вычисления замкнутых множеств;
  7. вычисление частых замкнутых множеств с заданным порогом общего числа документов, в которое входит данное множество шинглов: программа MyFim (реализующая алгоритм FPmax*);
  8. сравнение со списком дубликатов РОМИП – программа Comparator.

В качестве экспериментального материала нами использовалась URL-коллекция РОМИП, состоящая из 52 файлов общего размера 4,04 Гб. Для проведения экспериментов коллекция разбивалась на несколько частей, включающих от трех до двадцати четырех файлов (приблизительно от 5% до 50% от размера всей коллекции).

В экспериментах использовались следующие пПараметры шинглирования: число слов в шингле 10 и 20, отступ между началом соседних шинглов 1. Данное значение отступа означает, что начальное множество шинглов включало все возможные последовательности цепочек слов.

Эксперименты проводились на персональном компьютере P-IV HT с тактовой частотой 3.0 ГГц, оперативной памятью объемом в 1024 Мб и операционной системой Windows XP Professional. Результаты экспериментов и время, затраченное на их проведение, частично приводятся в следующих таблицах и рисунках.

(1) Результаты работы метода минимальных элементов в перестановке”

FPmax All Pairs of Duplicates Unique pairs of duplicates Common pairs
Input Threshold ROMIP Test ROMIP Test
b_1_20_s_100_n1-6.txt 100 33267 7829 28897 3459 4370
b_1_20_s_100_n1-6.txt 95 33267 11452 26729 4914 6538
b_1_20_s_100_n1-6.txt 90 33267 17553 22717 7003 10550
b_1_20_s_100_n1-6.txt 85 33267 22052 21087 9872 12180
b_1_20_s_100_n1-12.txt 100 105570 15072 97055 6557 8515
b_1_20_s_100_n1-12.txt 95 105570 20434 93982 8846 11588
b_1_20_s_100_n1-12.txt 90 105570 30858 87863 13151 17707
b_1_20_s_100_n1-12.txt 85 105570 41158 83150 18738 22420
b_1_20_s_100_n1-24.txt 100 191834 41938 175876 25980 15958
b_1_20_s_100_n1-24.txt 95 191834 55643 169024 32833 22810
b_1_20_s_100_n1-24.txt 90 191834 84012 155138 47316 36696
b_1_20_s_100_n1-24.txt 85 191834 113100 136534 57800 55300
b_1_10_s_120_n1-6.txt 120 33267 7725 29065 523 4202
b_1_10_s_120_n1-6.txt 115 33267 11763 26586 5082 6681
b_1_10_s_120_n1-6.txt 110 33267 11352 26547 4632 6720
b_1_10_s_150_n1-6.txt 150 33267 6905 28813 2451 4454
b_1_10_s_150_n1-6.txt 145 33267 9543 27153 3429 6114
b_1_10_s_150_n1-6.txt 140 33267 13827 24579 5139 8688
b_1_10_s_150_n1-6.txt 135 33267 17958 21744 6435 11523
b_1_10_s_150_n1-6.txt 130 33267 21384 19927 8044 13340
b_1_10_s_150_n1-6.txt 125 33267 24490 19236 10459 14031
b_1_10_s_180_n1-6.txt 170 33267 9834 27457 4024 5810
b_1_10_s_180_n1-6.txt 130 33267 38402 20142 25277 13125
b_1_10_s_180_n1-6.txt 120 33267 55779 19966 42478 13301
b_1_10_s_200_n1-6.txt 200 33267 5083 29798 1614 3469
b_1_10_s_200_n1-6.txt 195 33267 6700 28661 2094 4606
b_1_10_s_200_n1-6.txt 190 33267 8827 27516 3076 5751
b_1_10_s_200_n1-6.txt 170 33267 12593 25866 5192 7401
b_1_10_s_200_n1-6.txt 135 33267 48787 19987 35507 13280
b_1_10_s_200_n1-6.txt 130 33267 57787 19994 44514 13273

(2) Результаты работы метода “минимальные элементы в n перестановках”.


FPmax All Pairs of Duplicates Unique pairs of duplicates Common pairs
Input Threshold ROMIP Test ROMIP Test
m_1_20_s_100_n1-3.txt 100 16666 4409 14616 2359 2050
m_1_20_s_100_n1-3.txt 95 16666 5764 13887 2985 2779
m_1_20_s_100_n1-3.txt 90 16666 7601 12790 3725 3876
m_1_20_s_100_n1-3.txt 85 16666 9802 11763 4899 4903
m_1_20_s_100_n1-6.txt 100 33267 13266 28089 8088 5178
m_1_20_s_100_n1-6.txt 95 33267 15439 26802 8974 6465
m_1_20_s_100_n1-6.txt 90 33267 19393 24216 10342 9051
m_1_20_s_100_n1-12.txt 100 105570 21866 95223 11519 10347
m_1_20_s_100_n1-12.txt 95 105570 25457 93000 12887 12570

(3) Вычисление образов документов для методов " минимальных элементов в перестановке" и метода "минимальные элементы в перестановках".

Subcollection Number of documents Method Time elapsed, sec Shingling parameter
length of shingle image size
narod.1-3.xml 26077 n-min 312 20 100
narod.1-6.xml 53539 n-min 622 20 100
narod.1-12.xml 110997 n-min 1360 20 100
narod.1-24.xml 223804 n-min 2435 20 100
narod.1-3.xml 26077 min in n 924 20 100
narod.1-6.xml 53539 min in n 1905 20 100
narod.1-12.xml 110997 min in n 3617 20 100
narod.1-24.xml 223804 min in n 7501 20 100
narod.1-3.xml 26077 n-min 277 10 100
narod.1-6.xml 53539 n-min 563 10 100
narod.1-12.xml 110997 n-min 1118 10 100
narod.1-24.xml 223804 n-min 2348 10 100
narod.1-3.xml 110997 n-min 315 10 120
narod.1-6.xml 223804 n-min 622 10 120
narod.1-3.xml 110997 n-min 388 10 150
narod.1-6.xml 223804 n-min 745 10 150
narod.1-6.xml 223804 n-min 1312 10 180
narod.1-6.xml 223804 n-min 2585 10 200
narod.1-6.xml 223804 n-min 541 5 100
narod.1-6.xml 223804 n-min 611 15 100
narod.1-6.xml 223804 min in n 2101 10 200

(3) Время работы FPmax* для метода минимальных элементов в перестановке”.


Input Threshold Time elapsed,
sec
b_1_20_s_100_n1-6.txt 100 1,2
b_1_20_s_100_n1-6.txt 95 2,0
b_1_20_s_100_n1-6.txt 90 3,1
b_1_20_s_100_n1-6.txt 85 5,3
b_1_20_s_100_n1-12.txt 100 3,0
b_1_20_s_100_n1-12.txt 95 9,0
b_1_20_s_100_n1-12.txt 90 14,2
b_1_20_s_100_n1-12.txt 85 25,7
b_1_20_s_100_n1-24.txt 100 16,1
b_1_20_s_100_n1-24.txt 95 120,0
b_1_20_s_100_n1-24.txt 90 590,4
b_1_20_s_100_n1-24.txt 85 1710,6
b_1_10_s_150_n1-6.txt 150 1,75
b_1_10_s_150_n1-6.txt 145 3,265
b_1_10_s_150_n1-6.txt 140 19,609
b_1_10_s_150_n1-6.txt 135 97,046
b_1_10_s_150_n1-6.txt 130 36,609
b_1_10_s_150_n1-6.txt 125 11,75

(4) Время работы FPmax* для метода “минимальные элементы в перестановках”.


Input Threshold Time elapsed,
sec
m_1_20_s_n1-3.txt 100 3,4
m_1_20_s_n1-3.txt 95 3,9
m_1_20_s_n1-3.txt 90 7,0
m_1_20_s_n1-6.txt 100 16,4
m_1_20_s_n1-6.txt 95 4479,6
m_1_20_s_n1-6.txt 90 7439,4
m_1_20_s_n1-12.txt 100 291,36
m_1_20_s_n1-12.txt 95 40418,796

Наклон верхней линии при учете логарифмического масштаба диаграмм напоминает о том, что теоретическая временная сложность (в худшем случае) работы алгоритма экспоненциальна.

(5) Сравнение эффективности алгоритмов поиска максимальных замкнутых множеств.

По диаграмме видно, что наилучшие результаты показали алгоритмы Fpmax* и Afopt. А алгоритм AddIntent* из сообщества FCA-алгоритмов даже превзошел Mafia из FIMI, что является неплохим результатом для, как правило, более ресурсоемких алгоритмов первой группы.

Выводы и направление дальнейшей работы

По результатам наших экспериментов по использованию методов порождения частых замкнутых множеств в сочетании с традиционными синтаксическими и лексическими средствами можно сделать следующие выводы.

  • Методы порождения частых замкнутых множеств представляют эффективный способ определения сходства документов одновременно с порождением кластеров сходных документов.
  • На результаты синтаксических методов определения дубликатов значительное влияние оказывает параметр «длина шингла». Так, в наших экспериментах результаты для длины шингла, равной 10, были существенно ближе к списку дублей РОМИП, чем для длины шингла, равной 20, 15 и 5.
  • В экспериментах для всех значений параметров не было обнаружено существенного влияния использования метода «минимальные элементы в n перестановках» на качество результатов. По-видимому, на практике достаточно случайности, задаваемой отбором шинглов с помощью метода «n минимальных элементов в перестановке».

    Необходимы дальнейшие эксперименты с использованием различных значений параметров синтаксических методов и сравнение результатов с результатами применения лексических методов, в которых используются инвертированные индексы коллекций. Необходимо сравнение методов кластеризации, в которых применяются замкнутые множества признаков, с алгоритмами, основанными на поиске минимальных разрезов вершин (cut) в двудольных графах, в которых множества вершин соответствуют множествам документов и множествам признаков [29, 87]. Эти методы родственны, поскольку замкнутые множества документов естественным образом выражаются через минимальные разрезы такого рода двудольных графов.

Назад Содержание Вперёд

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

✅ Дешевый VPS-хостинг на AMD EPYC: 1vCore, 3GB DDR4, 15GB NVMe всего за €3,50!

🔥 Anti-DDoS защита 12 Тбит/с!

VPS в 21 локации

От 104 рублей в месяц

Безлимитный трафик. Защита от ДДоС.

🔥 VPS до 5.7 ГГц под любые задачи с AntiDDoS в 7 локациях

💸 Гифткод CITFORUM (250р на баланс) и попробуйте уже сейчас!

🛒 Скидка 15% на первый платеж (в течение 24ч)

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 7861149
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...