Научная статья на тему 'Применение методов декларативного программирования в задачах Constrained Clustering'

Применение методов декларативного программирования в задачах Constrained Clustering Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
91
11
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
КЛАСТЕРНЫЙ АНАЛИЗ / КЛАСТЕРИЗАЦИЯ С ЧАСТИЧНЫМ ПРИМЕНЕНИЕМ УЧИТЕЛЯ / ДЕКЛАРАТИВНОЕ ПРОГРАММИРОВАНИЕ / ПРОГРАММИРОВАНИЕ В ОГРАНИЧЕНИЯХ / CLUSTER ANALYSIS / SEMI SUPERVISED CLUSTERING / DECLARATIVE PROGRAMMING / CONSTRAINT PROGRAMMING

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Зуенко Александр Анатольевич, Зуенко Ольга Николаевна

Анализ методов решения задач кластеризации с частичным привлечением учителя (Constrained Clustering или Semi Supervised Clustering) показал, что большинство из них являются приближенными. Точные методы технологии программирования в ограничениях позволяют решать задачи комбинаторного поиска, характеризующиеся большой размерностью. Однако, данные средства всё ещё редко применяются в задачах Constrained Clustering. Сделан вывод о перспективности разработки новых методов удовлетворения ограничений для различных постановок задач Constrained Clustering.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Зуенко Александр Анатольевич, Зуенко Ольга Николаевна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

APPLICATION OF DECLARATIVE PROGRAMMING METHODS IN THE CONSTRAINED CLUSTERING PROBLEMS

An analysis of the methods of solving Semi Supervised Clustering(Constrained Clustering) problems showed that most of them are approximate. Exact methods of constraint programming technology allow solving combinatorial search problems of large dimension. However, these tools are still rarely used in Constrained Clustering problems. The conclusion is drawn on the prospects of developing new constraint satisfaction methods for various statements of Constrained Clustering problem.

Текст научной работы на тему «Применение методов декларативного программирования в задачах Constrained Clustering»

DOI: 10.25702/KSC.2307-5252.2019.9.116-125 УДК 004.832

А. А. Зуенко, О. Н. Зуенко

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

ПРИМЕНЕНИЕ МЕТОДОВ ДЕКЛАРАТИВНОГО ПРОГРАММИРОВАНИЯ В ЗАДАЧАХ CONSTRAINED CLUSTERING*

Аннотация

Анализ методов решения задач кластеризации с частичным привлечением учителя (Constrained Clustering или Semi Supervised Clustering) показал, что большинство из них являются приближенными. Точные методы технологии программирования в ограничениях позволяют решать задачи комбинаторного поиска, характеризующиеся большой размерностью. Однако, данные средства всё ещё редко применяются в задачах Constrained Clustering. Сделан вывод о перспективности разработки новых методов удовлетворения ограничений для различных постановок задач Constrained Clustering. Ключевые слова:

Кластерный анализ, кластеризация с частичным применением учителя, декларативное программирование, программирование в ограничениях.

A. A.Zuenko, O. N.Zuenko

APPLICATION OF DECLARATIVE PROGRAMMING METHODS IN THE CONSTRAINED CLUSTERING PROBLEMS

Abstract

An analysis of the methods of solving Semi Supervised Clustering(Constrained Clustering) problems showed that most of them are approximate. Exact methods of constraint programming technology allow solving combinatorial search problems of large dimension. However, these tools are still rarely used in Constrained Clustering problems. The conclusion is drawn on the prospects of developing new constraint satisfaction methods for various statements of Constrained Clustering problem.

Keywords:

Cluster analysis, semi supervised clustering, declarative programming, constraint programming.

Введение

Задача кластеризации относится к задачам комбинаторного поиска. Коснемся несколько более подробно задач комбинаторного поиска.

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

* Работа выполнена в рамках темы НИР «Развитие методологии построения интеллектуальных мультипредметных систем информационной поддержки регионального развития на примере территорий Арктической зоны Российской Федерации (АЗРФ)» (№ 0226-2019-0036).

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

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

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

В статье представлен обзор методов Constrained Clustering, а также необходимые сведения из классического кластерного анализа.

Задача кластеризации

Рассмотрим набор данных из n объектов О = ;...;on} . Каждый объект

описывается значениями p атрибутов, также называемых переменными.

Обозначим o значение j -го атрибута объекта oi. Большинство алгоритмов

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

Пусть C1; C2;...; Ck - подмножества множества О . Тогда {C1; C2;...; Ck }

является разбиением О на k кластеров, если для всех c е{1;2;...;k} выполняется:

1. Се*0;

2. (JСс = 0;

С

С

3. сфс',СсС\Сс,=0.

Предположим, что имеется мера различия между любыми двумя

объектами oi; о . е О, которую обозначим ^ . Мера различия й^ обычно

рассчитывается с использованием метрики расстояния, определенной в пространстве атрибутов.

В кластерном анализе наиболее популярной метрикой расстояния является Евклидово расстояние и квадрат Евклидова расстояния [1]. Пусть дано

два объекта о; О , тогда евклидово расстояние между ними определяется как:

=7Ол -ол)2 + (о{2 -о]2У +... + О -Ор)2. Квадрат Евклидова расстояния определяется как:

¿у = К -оп)2 + {о12 -о.2)2 +... + (Ор -Ор)2.

Другой популярной мерой расстояния является Манхэттенское расстояние [1], определяемое как:

=|о., - о , | +1 о.. - о.. | +...+1 о - о |.

у II 1 I I 12 ]2 I I р р I

Аналогично, обозначим меру сходства между двумя объектами о и о как

5..

У

1. Мера сходства широко используется в спектральной кластеризации. Как правило, рассчитывается Гауссова функция различия [2]:

s ^ = exp

f j л

где c — параметр.

Существуют и другие меры сходства, например нормализованная корреляция Пирсона (normalized Pearson correlation), мера Жакара (Jaccard measure), мера коэффициента игральной кости (dice coefficient measure) и др. [1].

Задача кластеризации состоит в разбиении совокупности объектов на классы (группы, кластеры) таким образом, чтобы выполнялось некоторое условие/критерий оптимизации.

При кластеризации формируемые классы должны удовлетворять двум свойствам:

1. Однородность (homogeneity).

2. Хорошая разделимость/различимость (well separated).

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

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

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

Классификация методов кластеризации

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

1. Вероятностные методы. К ним относятся методы k-средних (k-means, k-median, k-medoid).

2. Методы на основе искусственного интеллекта. В частности, методы в рамках нейросетевого подхода.

3. Теоретико-графовые методы. Например, метод k-средних с критерием диаметра.

4. Логические методы. В частности, деревья решений на основе представления задачи в виде КНФ (BooleanSATisfability).

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

6. Все другие методы, не вошедшие в классификацию.

Чаще методы кластеризации делят на иерархические и неиерархические. Неиерархические (упорядоченные - partitioning) отличаются тем, что заранее известно количество кластеров. В иерархических (hierarchical) количество кластеров заранее неизвестно и является частью решения. Часто иерархическая кластеризация предшествует неиерархической. Результатом иерархической кластеризации является дендрограмма - древовидная диаграмма.

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

Иерархические методы делятся на дивизимные (сверху вниз по дереву) и агломеративные (снизу вверх по дереву). Примеры: метод ближайшего соседа, метод наиболее удаленного соседа.

Также методы кластеризации делят на точные и приближенные.

Точные и приближенные методы кластеризации

В искусственном интеллекте задачи комбинаторного поиска решаются двумя группами методов.

1. Методы систематического (конструктивного) поиска — позволяет найти глобальный экстремум.

2. Методы локального поиска.

Локальный поиск не обладает свойством полноты. Систематический поиск обладает свойством полноты, но позволяет исследовать существенно меньшие пространства поиска.

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

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

К неиерархическим эвристическим алгоритмам можно отнести методы k-means [3], k-median, k-medoid, метод спектральной кластеризации, метод FTP (Furthest Point First) [4].

Далее перечислим наиболее популярные точные методы решения задач неиерархической кластеризации. Это, прежде всего, теоретико-графовые методы и метод ветвей и границ. Теоретико-графовые методы сводят задачу кластеризации к задаче раскраски графа. Наиболее известный алгоритм, относящийся к данному классу, разработан для критерия минимального диаметра [5]

Bench&bound - метод ветвей и границ. Это целый класс методов, которые отличаются критерием кластеризации. В зависимости от этого критерия, выстраивается процедура обхода дерева поиска, а именно, строится своя функция оценки (стоимостная функция), позволяющая отсекать заранее неперспективные ветви дерева поиска [6, 7].

Задача Constrained Clustering

Задача классического кластерного анализа — это задача разбиения множества объектов на классы, когда какая-либо априорная информация о принадлежности объектов этим классам отсутствует. Классификация — это задача отнесения предъявляемых объектов к заранее указанным классам, сопровождаемая этапом предварительного обучения. На этапе обучения для некоторых объектов (объектов обучающей выборки) указывается, каким классам они принадлежат. Выводится правило классификации. Задача Constrained Clustering использует некоторые фоновые знания из предметной области. Количество классов и сами классы неизвестны, но для некоторых пар объектов известно, например, что они попадают или не попадают в один кластер. Поэтому задача Constrained Clustering также называется задачей кластеризации с частичным привлечением учителя (semi-supervised clustering).

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

1. Ограничения на кластеры (cluster-level constraints), указывающие требования к кластерам.

2. Ограничения на объекты кластеров (instance-level constraints), уточняющие требования к парам конкретных объектов.

Примерами ограничений на кластеры является

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

Наиболее интересны ограничения на объекты кластеров. Выделяют два вида таких ограничений [8]: must-link и cannot-link. Данные ограничения также называются попарными. Ограничение must-link означает, что два объекта должны быть в одном кластере. А cannot-link означает, что два объекта должны быть в разных кластерах.

Ограничение must-link между двумя объектами о и о ■, обозначаемое как ML(oi;о. ), предписывает, что оба объекта о и о- должны быть в одном кластере. Напротив, ограничение cannot-link между объектами о и о ■ , обозначаемое как CL(o; o-), предписывает, что эти два объекта не должны находиться в одном кластере.

Согласно [9], ограничения на объекты кластеров имеют следующие свойства:

1. Ограничения must-link транзитивны: Пусть CCa и CCb являются связанными компонентами (подграфами, полностью связанными посредством ограничений must-link), пусть о и о будут объектами в CCa и CCb

соответственно, тогда:

ML(о;Oj);о е CCa;ojе CCb ^ML(о;о); Vo;oy: ое CCa;ое CCb•

2. Для ограничений cannot-link справедливо следующее: пусть CCa и CC являются связанными компонентами (подграфами, полностью связанными посредством ограничений must-link), пусть о и о - будут объектами в CCa и CCb соответственно, тогда:

CL (о; о); ое CCa; ое CCb ^ CL (о; о); Vo; oy: ое CCa; oy eCCb •

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

Ограничения must-link и cannot-link также могут использоваться для выражения других пользовательских ограничений.

В работе [10] введены ограничения 8 -constraint и s -constraint, которые могут быть обработаны совместно с ограничениями на пары объектов:

• Ограничение 8 -constraint (также называемое minimum split constraint) выражает, что расстояние между любой парой точек, которые находятся в двух разных кластерах, должно быть не меньше, чем значение 8 . Это ограничение может быть представлено в виде конъюнкции ограничений must-link для всех пар объектов с расстоянием меньше, чем 8 .

• Ограничение s -constraint для любого кластера Cc, содержащего более одного объекта, для каждого объекта о е C должен существовать другой объект о■ еQ , такой, что расстояние между о и о- не превышает d^. :d^. <s . В работе показано, что это ограничение эквивалентно дизъюнкции ограничений must-link. Для каждой точки о вычисляется множество % объектов о. таких, что: d^ < s .

Ограничение s-constraint может быть представлено как дизъюнкция ограничений must-link между объектом oi и точками множества % .

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Другим ограничением, которое относится к ограничениям на объекты кластеров, является ограничение на максимальный диаметр (максимально возможное расстояние между объектами одного кластера). Это ограничение

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

Методы решения задач Constrained Clustering

За последнее десятилетие было выполнено много работ, направленных на расширение классических алгоритмов для обработки ограничений must-link и cannot-link, например, расширение для COBWEB [11], k-means [12, 13], иерархической кластеризации [14] и т.д.

Методы решения задач Constrained Clustering получаются при помощи модификации базовых методов кластеризации. Можно выделить три вида таких модификаций.

1. Модификация формул расстояния.

2. Модификация целевой функции, которая должна учитывать штрафы за нарушение ограничений must-link и cannot-link.

3. Модификация стратегии поиска.

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

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

Методы декларативного программирования в задачах Constrained Clustering

Существующие к данному моменту методы Constrained Clustering являются развитием методов классической кластеризации и наследуют их недостатки. Большинство данных методов это методы локального поиска, т.е. они позволяют часто найти лишь локальный экстремум. Дело в том, что пространство поиска в задачах кластеризации достаточно большое, и до недавнего времени не существовало технологий систематического обхода пространства поиска такой размерности. В 90-х годах появились мощные SAT solvers, а затем и технология программирования в ограничениях. Эта технология позволяем систематически исследовать куда большие пространства поиска, чем ранее.

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

В [16] предлагается подход в рамках программирования в ограничениях для извлечения набора k-паттернов. В [17] представлен язык, основанный на

ограничениях, для выражения запросов, чтобы обнаруживать паттерны в Data Mining. Подход на основе сведения задачи Constrained Clustering к задаче выполнимости булевой функции (SAT) предложен в [18] для кластерного анализа с 2 кластерами. Данный подход объединяет различные виды пользовательских ограничений: must-link, cannot-link, а также ограничения диаметра и разбиения. В статье [19] рассматривается подход к Constrained Clustering, основанный на целочисленном линейном программировании. В работе [20] разрабатывается точный подход для задачи Constrained Clustering с критерием минимизации внутрикластерной суммы квадратов, основанный на целочисленном линейном программировании.

Среди средств оптимизации общего назначения, программирование в ограничениях является мощной парадигмой для решения задач комбинаторного поиска, которая основывается на широком спектре методов из искусственного интеллекта, информационных технологий и исследования операций. Основная идея программирования в ограничениях состоит в том, чтобы решать задачи путем наложения ограничений, которые должны быть удовлетворены при помощи решения. Главные принципы программирования в ограничениях это: 1) пользователи формулируют задачу декларативно, как задачу удовлетворения ограничений; 2) solver ищет решение путем удовлетворения ограничений и поиска.

Программирование в ограничениях также реализует идею декларативного программирования.

С точки зрения теории методы программирования в ограничениях можно разделить на три основные группы:

1. Методы распространения ограничений - суть этих методов состоит в уменьшении пространства поиска за полиномиальное время.

Когда алгоритмы распространения ограничений останавливаются, достигнув некоторой неподвижной точки, то в дело вступают алгоритмы второй группы:

2. Алгоритмы поиска - прежде всего, это алгоритмы поиска «в глубину с возвратами», которые используют эвристики при разборе случаев.

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

Программирование в ограничениях могло бы стать полезным инструментом для задач кластерного анализа с ограничениями, поскольку данный подход обладает такими преимуществами как: декларативность, которая дает возможность добавлять новые ограничения, и возможность находить оптимальное решение, удовлетворяющее всем ограничениям (если оно существует). Однако, по мнению авторов, данный подход не получил пока должного развития в области разработки высокоэффективных конструктивных методов решения задач Constrained Clustering.

Заключение

Анализ методов решения задач Constrained Clustering показал, что, как и в случае задачи классического кластерного анализа, большинство из них являются приближенными, а не точными. Данные методы не предназначены для систематического исследования пространства поиска и, в общем случае, не позволяют найти глобальный оптимум при рассмотрении задачи Constrained Clustering как задачи комбинаторной оптимизации. Появление мощных SATsolvers и технологии программирования в ограничениях позволило решать многие интересные практически значимые задачи комбинаторного поиска, характеризующиеся большой размерностью, с помощью точных методов (методов систематического поиска). Однако, проведенный анализ показал, что данные средства декларативного программирования всё ещё редко применяются в задачах Data Mining, в целом, и в задачах Constrained Clustering, в частности. В связи с изложенным, представляется перспективной разработка новых методов удовлетворения ограничений для различных постановок задач Constrained Clustering.

Литература

1. Han J. Data Mining: Concepts and Techniques. 3rd Edition / J. Han, M. Kamber, J. Pei; Morgan Kaufmann Publishers Inc. - San Francisco, CA, USA, 2011. 703 p.

2. Luxburg U. A Tutorial on Spectral Clustering // Statistics and Computing. 2007. Vol. 17, № 4. pp. 395-416.

3. MacQueen J.B. Some Methods for Classification and Analysis of Multivariate Observations // In: L. M. Le Cam and J. Neyman, editeurs. Proceedings of the fifth Berkeley Symposium on Mathematical Statistics and Probability, University of California Press. 1967. V. 1. pp. 281-297.

4. Gonzalez T. Clustering to Minimize the Maximum Intercluster Distance // Theoretical Computer Science. 1985. V. 38. pp. 293-306.

5. Hansen P. Complete-Link Cluster Analysis by Graph Coloring. / P. Hansen, M. Delattre // Journal of the American Statistical Association. 1978. V. 73, № 362. pp. 397-403.

6. Brusco M. J. An Enhanced Branch-and-Bound Algorithm for a Partitioning Problem // British Journal of Mathematical and Statistical Psychology. 2010. Vol. 56, № 1. pp. 83-92.

7. Brusco M. J. A Repetitive Branch-and-Bound Procedure for Minimum Withincluster Sum of Squares Partitioning // Psychometrika. 2006. Vol. 71, № 2. pp. 347-363.

8. Wagstaff K. Clustering with Instance-Level Constraints / K. Wagstaff, C. Cardie // In Proceedings of the 17th International Conference on Machine Learning, pages. 2000.pp.1103-1110.

9. Davidson I. A Survey of Clustering with Instance Level Constraints / I. Davidson, S. Basu // ACM Transactions on Knowledge Discovery from Data. 2007. V. 1. pp. 1-41.

10. Davidson I. Clustering with Constraints: Feasibility Issues and the k-Means Algorithm / I. Davidson, S.S. Ravi // In Proceedings of the 5th SIAM International Conference on Data Mining. 2005. pp. 138-149.

11. Wagstaff K. Clustering with Instance-Level Constraints / K. Wagstaff, C. Cardie // In Proceedings of the 17th International Conference on Machine Learning. 2000. pp.1103-1110.

12. Wagstaff K. Constrained K-means Clustering with Background Knowledge / K. Wagstaff, et al. // In Proceedings of the 18th International Conference on Machine Learning. 2001. pp. 577-584.

13. Bilenko M. Integrating Constraints and Metric Learning in Semi-Supervised Clustering. / M. Bilenko, S. Basu, R.J. Mooney // In Proceedings of the 21st International Conference on Machine Learning. 2004. pp. 11-18.

14. Davidson I. Agglomerative Hierarchical Clustering with Constraints: Theoretical and Empirical Results. / I. Davidson, S. S. Ravi // In Proceedings of the 9th European Conference on Principles and Practice of Knowledge Discovery in Databases. 2005. pp. 59-70.

15. Raedt L. D. Constraint Programming Meets Machine Learning and Data Mining / L. D. Raedt, et al. // Dagstuhl Seminar 11201, Dagstuhl Reports. 2001. V. 1, № 5. pp.61-83.

16. Guns T. k-Pattern set mining under constraints / T. Guns, S. Nijssen, L.D. Raedt // IEEE Transactions on Knowledge and Data Engineering. 2013. V. 25, № 2. P.402-418

17. Metivier J.-P. Constrained Clustering Using SAT. / J.-P. Metivier, et al. // In Proceedings of the 11th International Symposium on Advances in Intelligent Data Analysis. 2012. pp. 207-218.

18. Davidson I. A SAT-based Framework for Efficient Constrained Clustering. / I. Davidson, S. S. Ravi, L. Shamis // In: Proceedings ofthe 10th SIAM International Conference on Data Mining. 2010. pp. 94-105.

19. Mueller M., Kramer S. Integer Linear Programming Models for Constrained Clustering // In Proceedings of the 13th International Conference on Discovery Science. 2010. pp. 159-173.

20. Babaki B. Constrained Clustering using Column Generation. / B. Babaki, T. Guns, S. Nijssen // In: Proceedings of the 11th International Conference on Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems. 2014. pp. 438-454.

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

Зуенко Александр Анатольевич к.т.н., в.н.с.

е-mail: zuenko@iimm. ru Alexander A. Zouenko

Ph.D. (Tech. Sci.), leading researcher

Зуенко Ольга Николаевна

аспирант, стажер-исследователь е-mail: ozuenko@iimm. ru Olga N. Zouenko postgraduate, trainee researcher

i Надоели баннеры? Вы всегда можете отключить рекламу.