Современные методы кластеризации в контексте задачи идентификации рассылок почтового спама

УДК 004.94

С.С. Ковалёв, М.Г. Шишаев

Институт информатики и математического моделирования Кольского НЦ РАН,

Кольский филиал ПетрГУ

СОВРЕМЕННЫЕ МЕТОДЫ КЛАСТЕРИЗАЦИИ В КОНТЕКСТЕ ЗАДАЧИ ИДЕНТИФИКАЦИИ РАССЫЛОК ПОЧТОВОГО СПАМА*

Аннотация

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

Ключевые слова:

кластеризация, e-mail, спам, стратегии рассылки.

S.S. Kovalev, M.G. Shishaev MODERN CLUSTER ANALYSIS METHODS IN CONTEXT OF E-MAIL SPAM CAMPAIGNS IDENTIFICATION

Abstract

In this paper modern clustering methods are reviewed and analyzed with respect to specific of the clustering problem in application to e-mail spam campaigns identification.

Keywords:

dustering, e-mail, spam, distribution strategies.

Введение

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

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

Работа выполнена в рамках проекта № 2.8 программы фундаментальных исследований ОНИТ РАН «Интеллектуальные информационные технологии, системный анализ и автоматизация».

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

Общий принцип выявления используемых распространителями спама стратегий рассылки можно сформулировать следующим образом:

1. Накапливается обучающая выборка наблюдений, описывающих как статистику действий, предпринимаемых конкретным отправителем, так и параметры передаваемого им сообщения. Можно сказать, что эти наблюдения являются описаниями поведения отправителей. Используемый для описания поведения отправителей набор атрибутов определяется эвристически и может включать в себя любое конечное число атрибутов и их комбинаций. Такими атрибутами могут быть, например:

• факт нарушения отправителем требований протокола 8МТР;

• количество инициированных отправителем соединений в единицу времени;

• факт совпадения доменов в почтовых адресах отправителя и получателей;

• факт принадлежности 1Р-адреса отправителя к сегменту сети, из которой были замечены рассылки спама;

• факт наличия МХ-записи для домена, из которого производится отправка;

• количество ошибочных или не существующих адресов получателей;

• факт соответствия содержания сообщения некоторому шаблону;

• размер сообщения.

2. Наблюдения из обучающей выборки классифицируются и маркируются как «спам» или «не спам». Классификация производится вручную, так как, во-первых, мы не рассматриваем методы автоматической классификации спама как 100% надёжные, а во-вторых, требуется учесть субъективные представления пользователей о спаме, поскольку то, что для одного человека - спам, для другого может быть нужной информацией.

3. Производится кластеризация исходного множества наблюдений таким образом, чтобы получить кластеры, содержащие в себе только объекты, промаркированные как «спам».

4. Конфигурации полученных кластеров анализируются с целью выявления наборов идентифицирующих атрибутов стратегий спам-рассылок.

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

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

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

Специфика задачи кластеризации в применении к идентификации стратегий спам-рассылок

Требования, которым должен удовлетворять используемый метод кластеризации, определяются следующими особенностями задачи идентификации спам-рассылок:

1. Высокая размерность пространства данных. Объекты пространства данных в данном случае описываются большим количеством атрибутов. Вследствие этого алгоритм должен быть приспособлен к работе в пространствах данных высокой размерности. В частности, это означает, что используемый алгоритм должен:

a) решать проблему «проклятия размерности» [3, 4];

b) находить кластеры в подпространствах исходного пространства данных.

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

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

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

Далее рассмотрены наиболее известные в настоящее время группы методов и алгоритмов кластеризации.

Методы разбиения

Наиболее известные представители этого семейства методов - алгоритмы k-means [1] и k-medoids [2]. Они принимают входной параметр к и разбивают пространство данных на к кластеров таких, что между объектами одного кластера сходство максимально, а между объектами разных кластеров минимально. Сходство измеряется по отношению к некоторому центру кластера

как дистанция от рассматриваемого объекта до центра. Основное различие между этими методами заключается в способе определения центра кластера.

В алгоритме k-means сходство рассматривается по отношению к центру масс кластера - среднему значению координат объектов кластера в пространстве данных. Сначала произвольно выбираются к объектов, каждый их которых является прототипом кластера и представляет его центр масс. Затем для каждого из оставшихся объектов выполняется присоединение к тому кластеру, с которым сходство больше. После этого центр масс каждого кластера вычисляется заново. Для каждого полученного разбиения рассчитывается некоторая оценочная функция, значения которой на каждом шаге образуют сходящейся ряд. Процесс продолжается до тех пор, пока указанный ряд не сойдётся к своему предельному значению. Иными словами, перемещение объектов из кластера в кластер заканчивается тогда, когда с каждой итерацией кластеры будут оставаться неизменными. Алгоритм ^ means эффективен для обработки больших объёмов данных, однако в силу необходимости вычисления средних значений координат объектов, сфера его применения ограничивается пространствами данных только с числовыми измерениями. На его основе построены алгоритмы кластеризации многомерных пространств со смешанными измерениями: k-prototypes [5], использующий гетерогенную функцию для вычисления метрики в пространстве, и k-modes [6], преобразующий числовые измерения пространства в номинальные и работающий в пространстве с номинальными измерениями. Однако оба эти алгоритма сильно подвержены влиянию «проклятия размерности», что существенно снижает качество получаемых кластеров.

Алгоритм k-medoids, в отличие от k-means, использует для представления центра кластера на центр масс, а представительный объект -один из объектов кластера. Как и в методе к-теа^, сначала произвольным образом выбирается к представительных объектов. Каждый из оставшихся объектов объединяется в кластер с ближайшим представительным объектом. Затем итеративно для каждого представительного объекта производится его замена произвольным непредставительным объектом пространства данных. Процесс замены продолжается до тех пор, пока улучшается качество результирующих кластеров. Качество кластеризации определяется суммой отклонений между каждым объектом и представительным объектом соответствующего кластера, которую метод стремится минимизировать. То есть, итерации продолжаются до тех пор, пока в каждом кластере его представительный объект не станет медоидом - наиболее близким к центру кластера объектом. Алгоритм плохо масштабируем для обработки больших объёмов данных, эту проблему решает дополняющий метод k-medoids алгоритм CLARANS [7]. Для кластеризации многомерных пространств на основе CLARANS построен алгоритм PROCLUS [8], однако, он не применим для кластеризации пространств со смешанными типами измерений.

Иерархические методы

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

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

Агломеративный алгоритм ROCK [9] использует для кластеризации пространств со смешанными типами измерений понятие степени связи между объектами - количества их общих соседей. Два объекта считаются соседями, если значение меры их сходства превышает некоторое пороговое значение. Качество кластеризации определяется оценочной функцией, зависящей от степени связи между парами объектов из одного кластера. Максимизация этой функции определяет наилучшее разбиение пространства на кластеры. Алгоритму ROCK свойственны все проблемы иерархических методов. Кроме того, он не масштабируем для обработки большого числа объектов.

В алгоритме O-Cluster [10] используется дивизимный подход для кластеризации числовых многомерных пространств с большим объёмом данных. Этот алгоритм находит в ортогональных проекциях пространства данных, хорошо разделённые регионы плотности, и на их основе итеративно строит бинарное дерево разбиения этого пространства на кластеры. Разработано расширение этого алгоритма для кластеризации пространств со смешанными типами измерений [11]. Преимуществом этого алгоритма является хорошая масштабируемость при обработке пространств со смешанными типами измерений.

Плотностные методы

Кластеры рассматриваются как регионы пространства данных с высокой плотностью объектов, которые разделены регионами с низкой плотностью объектов.

Алгоритм DBSCAN [12] - один из первых алгоритмов кластеризации плотностным методом. В основе этого алгоритма лежит несколько определений:

• Е-окрестностью объекта называется окрестность радиуса s некоторого объекта.

• Корневым объектом называется объект, s-окрестность которого содержит не менее некоторого минимального числаMinPts объектов.

• Объект p непосредственно плотно-достижим из объекта q если p находится в s-окрестности q и q является корневым объектом.

• Объект p плотно-достижим из объекта q при заданных £ и MinPts, если существует последовательность объектов pi, ..., pn, где pi = q и pn = p, такая ЧТО Pi+1 непосредственно ПЛОТНО ДОСТИЖИМ ИЗ Pi, 1 <7 <п.

• Объект p плотно-соединён с объектом q при заданных £ и MinPts, если существует объект о такой, что p и q плотно-достижимы из о.

Для поиска кластеров алгоритм DBSCAN проверяет s-окрестность каждого объекта. Если s-окрестность объекта p содержит больше точек чем MinPts, то создаётся новый кластер с корневым объектом p. Затем DBSCAN итеративно собирает объекты непосредственно плотно-достижимые из корневых объектов, которые могут привести к объединению нескольких плотнодостижимых кластеров. Процесс завершается, когда ни к одному кластеру не может быть добавлено ни одного нового объекта.

Хотя, в отличие от методов разбиения, DBSCAN не требует заранее указывать число получаемых кластеров, требуется указание значений параметров £ и MinPts, которые непосредственно влияют на результат кластеризации. Оптимальные значения этих параметров сложно определить, особенно для многомерных пространств данных. Кроме того, распределение данных в таких пространствах часто несимметрично, что не позволяет использовать для их кластеризации глобальные параметры плотности. Для кластеризации многомерных пространств данных на базе DBSCAN был создан алгоритм SUBCLU [13]. Ключевой проблемой рассмотренных алгоритмов в контексте задачи идентификации спам-рассылок является использование меры близости, основанной на дистанции между объектами, что делает их не применимыми к пространствам со смешанными типами измерений.

Сетевые методы

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

Алгоритм CLIQUE [14], адаптированный под кластеризацию данных высокой размерности, является одним из классических сетевых алгоритмов.

Метод основан на том предположении, что если в многомерном пространстве данных распределение объектов не равномерно - встречаются регионы плотности и разрежения, то проекция региона плотности в подпространство с меньшей размерностью будет частью региона плотности в этом подпространстве. Алгоритм CLIQUE производит кластеризацию многомерного пространства данных следующим образом: пространство данных разбивается на не пересекающиеся ячейки фиксированного размера, среди них идентифицируются плотные ячейки - такие, плотность объектов данных в которых превышает заданное пороговое значение. Далее из найденных ячеек формируется пространство, в котором могут существовать плотные ячейки большей размерности. Процесс начинается с одномерных пространств (описанная процедура выполняется для каждого измерения) с последующим переходом к подпространствам более высокой размерности.

Этот алгоритм масштабируем для обработки большого количества данных, однако при большом количестве измерений число рассматриваемых комбинаций растёт нелинейно, следовательно, требуется использовать эвристики для сокращения количества рассматриваемых комбинаций. Кроме того, получаемый результат очень сильно зависит от выбора размера ячейки и порогового значения плотности объектов в ячейке. Это является большой проблемой, поскольку одни и те же значения этих параметров используются при рассмотрении всех комбинаций измерений. Эту проблему решает алгоритм MAFIA [15], работающий по схожему принципу, но использующий адаптивный размер ячеек при разбиении подпространств. Однако он применим только для пространств с числовыми измерениями, поскольку в измерениях номинального типа отсутствует отношения порядка между элементами, что не даёт осуществить однозначное разбиение пространства на ячейки.

Модельные методы

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

Алгоритм EM [16] основан на предположении, что исследуемое множество данных может быть смоделировано с помощью линейной комбинации многомерных нормальных распределений. Его целью является оценка параметров распределения, которые максимизируют функцию правдоподобия, используемую в качестве меры качества модели. Иными словами, предполагается, что данные в каждом кластере подчиняются определенному закону распределения, а именно, нормальному распределению. С учетом этого предположения можно определить оптимальные параметры закона распределения - математическое ожидание и дисперсию, при которых функция правдоподобия максимальна. Таким образом, мы предполагаем, что любой объект принадлежит ко всем кластерам, но с разной вероятностью. Тогда задача будет заключаться в "подгонке" совокупности распределений к данным, а затем в определении вероятностей принадлежности объекта к каждому кластеру. Очевидно, что объект должен быть отнесен к тому кластеру, для которого данная вероятность выше.

Алгоритм EM прост и лёгок в реализации, не чувствителен к изолированным объектам и быстро сходится при удачной инициализации. Однако он требует для инициализации указания количества кластеров k, что подразумевает наличие априорных знаний о данных. Кроме того, при неудачной инициализации сходимость алгоритма может оказаться медленной или может быть получен некачественный результат.

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

Концептуальная кластеризация

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

Алгоритм COBWEB [17] - классический метод инкрементальной концептуальной кластеризации. Он создаёт иерархическую кластеризацию в виде дерева классификации: каждый узел этого дерева ссылается на концепт и содержит вероятностное описание этого концепта, которое включает в себя вероятность принадлежности концепта к данному узлу и условные вероятности вида:

Р(Лг = Vij\Ck),

где Ai = vij - пара атрибут-значение, Ck - класс концепта.

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

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

Алгоритмы на графах

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

Алгоритм CLICK [18] сводит задачу кластеризации категориального пространства к задаче поиска максимальных k-дольных клик в k-дольном графе. Для этого пространство данных преобразуется в неориентированный k-дольный граф, в котором каждое возможное значение каждого атрибута представлено вершиной, а присутствие значений атрибутов в одном объекте - рёбрами. Алгоритм масштабируем для пространств с большим количеством измерений и для обработки большого количества объектов. Очевидно, что он применим только для пространств, в которых отсутствуют числовые измерения. В противном случае потребуется приведение числовых измерений к номинальному типу, что может привести к потере качества кластеризации или чрезмерно большой размерности пространства данных.

Заключение

Из проведённого обзора видно, что кластеризация многомерного пространства данных со смешанными типами измерений и большим количеством объектов при абсолютном отсутствии априорных знаний о данных - задача сложная и нетривиальная. На сегодняшний день существует немного алгоритмов, способных решить эту задачу. Из рассмотренных в обзоре алгоритмов к таковым можно отнести только расширенный алгоритм O-Cluster.

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

ЛИТЕРАТУРА

1. MacQueen, J. Some methods for classification and analysis of multivariate observations/ J. MacQueen // In Proc. 5th Berkeley Symp. Оп Math. Statistics and Probability, 1967. -С.281-297.

2. Kaufman, L. Clustering by means of Medoids, in Statistical Data Analysis Based on the l-Norm and Related Methods / L. Kaufman, P.J. Rousseeuw, Y. Dodge, 1987.-С.405-416.

3. Steinbach, M. The Challenges of Clustering High Dimensional Data / M. Steinbach, L. Ertoz, V. Kumar, 2003. -С.11-14.

4. Hinneburg, A. What Is the Nearest Neighbor in High Dimensional Spaces? / A. Hinneburg, C.C. Aggarwal, D.A. Keim // In Proc. 26th Int. Conf. on Very Large Data Bases (VLDB’00), 2000. -С.506-515.

5. Huang, Z. A Fast Clustering Algorithm to Cluster Very Large Categorical Data Sets in Data Mining / Z. Huang // Research Issues on Data Mining and Knowledge Discovery, 1997. -8 с.

6. Huang, Z. Clustering Large Data Sets with Mixed Numeric and Categorical Values / Z. Huang // In Proc. First Pacific-Asia Conference on Knowledge Discovery and Data Mining, 1997. -14 с.

7. Ng, R.T. Efficient and Effective Clustering Methods for Spatial Data Mining / R.T. Ng, J. Han // Proc. 20th Int. Conf. on Very Large Data Bases. Morgan Kaufmann Publishers, San Francisco, CA, 1994. -С.144-155.

8. Aggarwal, C.C. Fast Algorithms for Projected Clustering / C.C. Aggarwal, C. Procopiuc // In Proc. ACM SIGMOD Int. Conf. on Management of Data, Philadelphia, PA, 1999. -12 с.

9. Guha, S. Rock: A Robust Clustering Algorithm for Categorical Attributes /

S. Guha, R. Rastogi, K. Shim // In Proc. IEEE Int. Conf. on Data Engineering, 1999. -С.512-521.

10. Milenova, B.L. O-Cluster: Scalable Clustering of Large High Dimensional Data Sets / B.L. Milenova, M.M. Campos // In Proc. 2002 IEEE Int. Conf. on Data Mining (ICDM’02), 2002. -С.290-297.

11. Milenova, B.L. Clustering Large Databases with Numeric and Nominal Values Using Orthogonal Projections / B.L. Milenova, M.M. Campos // International conference on Information Fusion, 2005. -10 с.

12. Ester, M. A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise / M. Ester, H.-P. Kriegel, J. Sander, X. Xu // In Proc. ACM SIGMOD Int. Conf. on Management of Data, Portland, OR, 1996. -рр.226-231.

13. Kailing, K. Density-Connected Subspace Clustering for High-Dimensional Data / K. Kailing, H.P. Kriegel, P. Kroger // In Proceedings of the 4th SIAM International Conference on Data Mining (SDM), 2004. -С.246-257.

14. Agrawal, R. Automatic Subspace Clustering of High Dimensional Data for Data Mining Applications / R. Agrawal, J. Gehrke, D. Gunopulos, P. Raghavan // In Proc. ACM SIGMOD Int. Conf. on Management of Data, Seattle, Washington, 1998.-С.94-105.

15. Nagesh, H. MAFIA: Efficient and Scalable Subspace Clustering for Very Large Data Sets / H. Nagesh, S. Goil, A. Choudhary // Technical Report Number CPDC-TR-9906-019, Center for Parallel and Distributed Computing, Northwestern University, 1999. -20 с.

16. Demster, A. Maximum Likelihood from Incomplete Data via the EM Algorithm /A.P. Demster, N.M. Laird, D.B. Rubin //Journal of the Royal Statistical Society, Series B, Vol. 39, No. 1, 1977. -С.1-38.

17. Fisher, D.H. Knowledge acquisition via incremental conceptual clustering / D.H. Fisher // Machine Learning 2, 1987. -С.139-172.

18. Peters, M. Click: Clustering Categorical Data using K-partite Maximal Cliques / M. Peters, M.J. Zaki // Computer Science Department Rensselaer Polytechnic Institute Troy NY 12180, 2004. -31 с.

Сведения об авторах

Ковалёв Сергей Сергеевич - стажер-исследователь, е-mail: srg.kylv@gmail.com

Sergey S. Kovalev - post-graduate

Шишаев Максим Геннадьевич - д.т.н., заведующей лабораторией,

е-mail: shishaev@iimm.kolasc.net.ra

Maxim G. Shishaev - Dr. of Sci (Tech), head of laboratory