Дипломная работа: Моделирование сети кластеризации данных в MATLAB NEURAL NETWORK TOOL
В качестве критерия остановки обычно выбирают один из двух: отсутствие перехода объектов из кластера в кластер на шаге 2 или минимальное изменение среднеквадратической ошибки.
Алгоритм чувствителен к начальному выбору «центр масс».
Рисунок 1.8 – Пример k-Means алгоритма
1.3.3 Минимальное покрывающее дерево
Данный метод производит иерархическую кластеризацию «сверху вниз». Сначала все объекты помещаются в один кластер, затем на каждом шаге один из кластеров разбивается на два, так чтобы расстояние между ними было максимальным.
Рисунок 1.9 – Пример алгоритма минимального покрывающего дерева
1.3.4 Метод ближайшего соседа
Этот метод является одним из старейших методов кластеризации. Он был создан в 1978 году. Он прост и наименее оптимален из всех представленных.
Для каждого объекта вне кластера делаем следующее:
1. Находим его ближайшего соседа, кластер которого определен.
2. Если расстояние до этого соседа меньше порога, то относим его в тот же кластер. Иначе из рассматриваемого объекта создается еще один кластер.
Далее рассматривается результат и при необходимости увеличивается порог, например, если много кластеров из одного объекта.
1.3.5 Алгоритм нечеткой кластеризации
Четкая (непересекающаяся) кластеризация – кластеризация, которая каждый из относит только к одному кластеру.
Нечеткая кластеризация – кластеризация, при которой для каждого из определяется . – вещественное значение, показывающее степень принадлежности к кластеру j.
Алгоритм нечеткой кластеризации таков:
1. Выбрать начальное нечеткое разбиение объектов на n кластеров путем выбора матрицы принадлежности размера . Обычно .
2. Используя матрицу U, найти значение критерия нечеткой ошибки. Например,
, (1.2)
где - «центр масс» нечеткого кластера k,
. (1.3)
3. Перегруппировать объекты с целью уменьшения этого значения критерия нечеткой ошибки.
4. Возвращаться в пункт 2 до тех пор, пока изменения матрицы не станут значительными.
Рисунок 1.10 – Пример алгоритма нечеткой кластеризации
1.3.6 Применение нейронных сетей
Порой для решения задач кластеризации целесообразно использовать нейронные сети. У данного подхода есть ряд особенностей: