Локальный поиск для задачи о k-медианах и задачи о размещении объектов: различия между версиями
Irina (обсуждение | вклад) |
Irina (обсуждение | вклад) |
||
Строка 32: | Строка 32: | ||
== Основные результаты == | == Основные результаты == | ||
Основным методом решения задач k-медиан и размещения объектов является класс эвристик локального поиска, выполняющихся посредством поэтапных «локальных улучшений». На каждом этапе t эвристика поддерживает множество центров | Основным методом решения задач k-медиан и размещения объектов является класс эвристик локального поиска, выполняющихся посредством поэтапных «локальных улучшений». На каждом этапе t эвристика поддерживает множество центров <math>C_t \;</math>. В задаче о k-медианах эта совокупность удовлетворяет условию <math>|C_t| = k \;</math>. На этапе локального улучшения вначале генерируется совокупность решений <math>\mathbb{E}_{t+1}</math> из <math>C_t \;</math>. Это выполняется таким образом, что <math>|\mathbb{E}_{t+1}|</math> оказывается полиномиальным относительно размера входных данных. Кроме того, в задаче о k-медианах каждый элемент <math>C \in \mathbb{E}_{t+1}</math> удовлетворяет условию |C| = k. На этапе улучшения полагаем <math>C_{t+1} = argmin_{C \in \mathbb{E}_{t+1}} f(C)</math>. Для предварительно заданного параметра <math>\varepsilon > 0 \;</math> итерации улучшений останавливаются на первом этапе T, для которого выполняется <math>f(C_T) \ge (1 - \varepsilon) f(C_{T - 1}) \;</math>. | ||
Основными проблемами разработки являются конкретизация начального множества | Основными проблемами разработки являются конкретизация начального множества <math>C' \;</math> и построение <math>\mathbb{E}_{t+1}</math> из <math>C_t \;</math>. Основными проблемами анализа являются ограничение количества этапов T до завершения работы алгоритма и качество финального решения <math>f(C_T) \;</math> по отношению к оптимальному решению <math>f(C^*) \;</math>. Соотношение <math>(f(C_T))/( f(C^*)) \;</math> называется «разрывом локальности» эвристики. | ||
Версия от 12:21, 17 апреля 2018
Ключевые слова и синонимы
Метод k-медиан; метод k-средних; метод k-медоидов; задача о размещении объектов; локализация точки; задача о размещении складов; кластеризация
Постановка задачи
Кластеризация представляет собой разновидность обучения без учителя, при котором задача заключается в «обучении» полезным образцам на наборе данных [math]\displaystyle{ \mathcal{D} \; }[/math] размера n. Ее можно также рассматривать как схему сжатия данных, в которой большой набор данных представляется при помощи меньшего набора «представителей». Подобная схема характеризуется путем задания следующих параметров:
1. Метрика расстояния d между элементами набора данных. Эта метрика должна удовлетворять неравенству треугольника: d(i, j) [math]\displaystyle{ \le }[/math] d(j, k) + d(k, i) для любых трех элементов [math]\displaystyle{ i, j, k \in \mathcal{D} \; }[/math]. Кроме того, d(i, j) = d(j, i) для всех [math]\displaystyle{ i, j \in S \; }[/math], d(i, i) = 0. Интуитивно понятно, что если расстояние между двумя элементами меньше, то они больше похожи друг на друга. Элементами обычно являются точки в некотором евклидовом пространстве Rd высокой размерности. В качестве метрик расстояния чаще всего применяются евклидова метрика и расстояние Хэмминга, а также косинусная метрика, измеряющая угол между векторами, представляющими элементы.
2. Результатом (выходными данными) процесса кластеризации является разбиение данных. В данной главе рассматривается кластеризация на основе центров. В ней результатом является множество меньшего размера [math]\displaystyle{ C \subset \mathcal{R}^d }[/math], состоящее из центров, которые наилучшим образом представляют входное множество данных [math]\displaystyle{ S \subset \mathcal{R}^d }[/math]. Как правило, имеет место соотношение [math]\displaystyle{ |C| \ll |\mathcal{D}| }[/math]. Каждый элемент [math]\displaystyle{ j \in \mathcal{D} }[/math] отображается на ближайший центр или аппроксимируется ближайшим центром [math]\displaystyle{ i \in C \; }[/math], из чего следует d(i, j) [math]\displaystyle{ \le }[/math] d(i', j) для всех [math]\displaystyle{ i' \in C \; }[/math]. Обозначим за [math]\displaystyle{ \sigma: \mathcal{D} \to C }[/math] это отображение. Оно является интуитивно понятным, поскольку более близкие (схожие) элементы будут отображаться на один и тот же центр.
3. Мера качества кластеризации, зависящая от желаемого выходного результата. Существует несколько широко используемых мер для оценки качества кластеризации. Для каждой из мер кластеризации, описанных ниже, задача заключается в выборе такого C, что |C| = k и целевая функция f(C) минимизирована.
k-центр: [math]\displaystyle{ f(C) = max_{j \in \mathcal{D} } \; d(j, \sigma (j)) }[/math].
k-медианы: [math]\displaystyle{ f(C) = \sum_{j \in \mathcal{D}} \; d(j, \sigma (j)) }[/math].
k-средние: [math]\displaystyle{ f(C) = \sum_{j \in \mathcal{D}} \; d(j, \sigma (j))^2 }[/math].
Все вышеупомянутые цели являются NP-СЛОЖНЫМИ для оптимизации в метрических пространствах общего вида d, что вызвало необходимость изучения эвристических и приближенных алгоритмов. Далее главным образом будет рассматриваться целевая функция на основе k-медиан. Алгоритмы аппроксимации для кластеризации на основе метода k-медиан разработаны для пространства d, являющегося неевклидовым метрическим пространством наиболее общего возможного вида. Совокупность [math]\displaystyle{ \mathcal{F} }[/math] возможных местоположений центров задана в качестве начального условия, множество центров C ограничено [math]\displaystyle{ C \subset \mathcal{F} }[/math]. С точки зрения аппроксимации ограничение возможных центров конечным множеством [math]\displaystyle{ \mathcal{F} }[/math] не является чрезмерно строгим: например, для оптимального решения, ограниченного [math]\displaystyle{ \mathcal{F} = \mathcal{D} }[/math], его целевое значение не более чем в 2 раза превышает оптимальное значение, допускаемое при произвольном [math]\displaystyle{ \mathcal{F} }[/math]. Обозначим [math]\displaystyle{ |\mathcal{D}| = n }[/math] и [math]\displaystyle{ |\mathcal{F}| = m }[/math]. Время выполнения построенной эвристики будет представлено полиномом от mn с параметром [math]\displaystyle{ \varepsilon \gt 0 \; }[/math]. Метрическое пространство d теперь определяется над [math]\displaystyle{ \mathcal{D} \cup \mathcal{F} }[/math].
Родственной для задачи о k-медианах является задача лагранжевой релаксации под названием «задача о размещении объектов». В этой задаче также имеется совокупность [math]\displaystyle{ \mathcal{F} }[/math] возможных местоположений центров. Каждое местоположение [math]\displaystyle{ i \in \mathcal{F} }[/math] имеет стоимость [math]\displaystyle{ r_i \; }[/math]. Задача заключается в выборе совокупности [math]\displaystyle{ C \subseteq \mathcal{F} }[/math] центров и построении отображения [math]\displaystyle{ \sigma: S \to C }[/math] элементов на центры, при котором следующая функция достигает минимума:
[math]\displaystyle{ f(C) = \sum_{j \in \mathcal{D}} d(j, \sigma(j)) + \sum_{i \in C} r_i }[/math].
Задача о размещении объектов позволяет эффективно избавиться от жесткой границы k на количество центров в методе k-медиан, заменяя его компонентом стоимости центров [math]\displaystyle{ \sum_{i \in C} r_i }[/math] в целевой функции и тем самым превращая задачу в лагранжеву релаксацию метода k-медиан. Заметим, что стоимость центров в данном случае может быть неоднородной.
Результаты аппроксимации задачи о k-медианах и задачи о размещении объектов можно распространить на взвешенный случай, В котором каждому элементу [math]\displaystyle{ j \in \mathcal{D} }[/math] разрешается иметь неотрицательный вес [math]\displaystyle{ w_j \; }[/math]. В формулировке целевой функции [math]\displaystyle{ f(C) \; }[/math] компонент [math]\displaystyle{ \sum_{j \in \mathcal{D}} d(j, \sigma(j)) }[/math] заменяется на [math]\displaystyle{ \sum_{j \in \mathcal{D}} w_j \cdot d(j, \sigma(j)) }[/math]. Взвешенный случай особенно релевантен для задачи о размещении объектов, в которой веса элементов обозначают спрос пользователей на ресурс, а центры – местоположение ресурса. Далее термины «элементы» и пользователи» будут в равной степени использоваться для обозначения членов множества [math]\displaystyle{ \mathcal{D} }[/math].
Основные результаты
Основным методом решения задач k-медиан и размещения объектов является класс эвристик локального поиска, выполняющихся посредством поэтапных «локальных улучшений». На каждом этапе t эвристика поддерживает множество центров [math]\displaystyle{ C_t \; }[/math]. В задаче о k-медианах эта совокупность удовлетворяет условию [math]\displaystyle{ |C_t| = k \; }[/math]. На этапе локального улучшения вначале генерируется совокупность решений [math]\displaystyle{ \mathbb{E}_{t+1} }[/math] из [math]\displaystyle{ C_t \; }[/math]. Это выполняется таким образом, что [math]\displaystyle{ |\mathbb{E}_{t+1}| }[/math] оказывается полиномиальным относительно размера входных данных. Кроме того, в задаче о k-медианах каждый элемент [math]\displaystyle{ C \in \mathbb{E}_{t+1} }[/math] удовлетворяет условию |C| = k. На этапе улучшения полагаем [math]\displaystyle{ C_{t+1} = argmin_{C \in \mathbb{E}_{t+1}} f(C) }[/math]. Для предварительно заданного параметра [math]\displaystyle{ \varepsilon \gt 0 \; }[/math] итерации улучшений останавливаются на первом этапе T, для которого выполняется [math]\displaystyle{ f(C_T) \ge (1 - \varepsilon) f(C_{T - 1}) \; }[/math].
Основными проблемами разработки являются конкретизация начального множества [math]\displaystyle{ C' \; }[/math] и построение [math]\displaystyle{ \mathbb{E}_{t+1} }[/math] из [math]\displaystyle{ C_t \; }[/math]. Основными проблемами анализа являются ограничение количества этапов T до завершения работы алгоритма и качество финального решения [math]\displaystyle{ f(C_T) \; }[/math] по отношению к оптимальному решению [math]\displaystyle{ f(C^*) \; }[/math]. Соотношение [math]\displaystyle{ (f(C_T))/( f(C^*)) \; }[/math] называется «разрывом локальности» эвристики.
Поскольку каждый этап улучшения уменьшает значение решения по меньшей мере на коэффициент (1 _ "), время выполнения в пересчете на этапы улучшения задается следующим выражением (здесь D – отношение между самым большим и самым маленьким расстояниями в метрическом пространстве над D [ F).
T _ log1/(1_") _ f (C0)
являющееся полиномиальным относительно размера входных данных. На каждом этапе улучшения требуется вычисление f (C) для C 2 Et. Оно является полиномиальным относительно размера входных данных, поскольку jEt j предполагается полиномиальным.
Задача о k-медианах