Исследование алгоритмов нечеткой кластеризации

Лабораторная работа №2.

Введение

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

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

Цель работы:

Задачи работы:

Основные теоретические сведения о нечеткой кластеризации

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

Применение кластерного анализа в общем виде сводится к следующим этапам:
  1. Отбор выборки объектов для кластеризации.
  2. Определение множества переменных, по которым будут оцениваться объекты в выборке.
  3. Вычисление значений меры сходства между объектами.
  4. Применение метода кластерного анализа для создания групп сходных объектов (кластеров).
  5. Представление результатов анализа.
Существует множество методов (алгоритмов) кластеризации, которые разделяются на следующие типы:
  • Четкие, или непересекающиеся, алгоритмы. Исходное множество объектов разбивается на несколько непересекающихся кластеров, при этом каждый объект принадлежит только одному кластеру. При четкой кластеризации каждому объекту исходного множества ставится в соответствие кластер, к которому он принадлежит.
  • Нечеткие, или пересекающиеся, алгоритмы. Исходное множество объектов разбивается на несколько пересекающихся кластеров, при этом каждый объект может принадлежать нескольким или всем кластерам с различной степенью принадлежности. При нечеткой кластеризации каждому объекту исходного множества ставится в соответствие набор вещественных значений, показывающих степень принадлежности объекта к кластерам.

Например, если при нечеткой кластеризации объект A относится к кластеру K1 со степенью принадлежности 0.9, к кластеру K2 – со степенью 0.04 и к кластеру К3 – со степенью 0.06, то при четкой кластеризации объект А будет отнесен к кластеру K1.

Для применения некоторых алгоритмов кластеризации требуется знать количество кластеров, на которое следует разбить исходное множество объектов, а для применения других этого знания не требуется:
  • Если известно количество кластеров, на которые следует разбить множество объектов, то для поиска центров кластеров используется алгоритм нечетких С-средних. При этом найденные центры кластеров могут не совпадать ни с одним объектом исходного множества.
  • При отсутствии информации о количестве кластеров возможно оценить количество кластеров визуально по диаграмме рассеяния – графическому отображению пар (x, y) исходных данных в виде множества точек на координатной плоскости. Если количество кластеров априорно неизвестно и произвести визуальную оценку затруднительно, то для определения количества кластеров и нахождения центров этих кластеров используется субтрактивная кластеризация. При этом поиск центров кластеров осуществляется среди точек исходного множества, то есть найденные центры кластеров совпадают с какими-либо объектами исходного множества, как следствие такие центры не соответствуют точным расположениям центров кластеров, а только обозначают их примерное расположение. После определения количества кластеров и их примерного расположения возможно уточнение значений координат центров кластеров с помощью алгоритма нечетких С-средних.

Подробное описание алгоритма нечетких С-средних и субтрактивной кластеризации представлено на странице справочной информации для блока «Нечеткая кластеризация» библиотеки «Нечеткая логика».

Описание метода генерации входных данных для кластеризации

В данной лабораторной работе исходные данные для кластеризации – пары значений координат точек (x, y) – будут генерироваться с помощью генератора случайных чисел в соответствии со следующей методикой:
  1. Для кластеризации необходимы пары чисел, поэтому будут сгенерированы пары случайных выборок одинаковой размерности, одна выборка из пары будет содержать значения координат точек по оси абсцисс, вторая – по оси ординат.
  2. Исследование алгоритмов кластеризации необходимо провести на множествах точек, для одного из которых известно количество кластеров, или его можно оценить визуально, а для второго – количество кластеров неизвестно и невозможно оценить визуально, поэтому выборки будут сгенерированы таким образом, чтобы по отображению полученного множества точек на диаграмме рассеяния в первом случае можно было определить количество кластеров, а во втором – нет. Для задания точек, рядом с которыми будут концентрироваться другие точки множества, то есть для предопределения центров кластеров, необходима возможность задания математического ожидания (МО) в функции генерации случайных чисел. Для управления разбросом точек относительно заданного МО необходима возможность задания среднеквадратического отклонения (СКО) в функции генерации случайных чисел, что необходимо для генерации выборок двух типов:
    1. выборки, в которой разброс точек мал (СКО мало) и визуально легко определить количество кластеров, например, по первому рисунку (Рисунок 1, а) очевидно, что множество точек разбивается на три кластера;
    2. выборки, разброс точек в которой велик (СКО велико) и визуально определить количество кластеров невозможно (Рисунок 1, б).

Рисунок 1. Диаграмма рассеяния: а – малое СКО, визуальная оценка количества кластеров равна трем; б – большое СКО, невозможно визуально оценить количество кластеров.

Для генерации множеств, качественно похожих на представленные на рисунке (Рисунок 1), для каждого случая будет сгенерировано по три пары выборок, для каждой пары будет задан свой центр, определяемый МО. Выборки для первого и второго случая будут иметь разные СКО для задания необходимого разброса точек на плоскости. Выборки будут генерироваться с помощью функции языка программирования – функции генерации Гауссовского шума с возможностью задания математического ожидания и среднеквадратического отклонения.

Выполнение лабораторной работы

Содержание лабораторной работы

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

Генерация входных данных для кластеризации

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

Для создания нового проекта необходимо выполнить следующие действия:
  1. В главном окне SimInTech нажать левой кнопкой мыши на кнопку «Файл» и выбрать пункт «Новый проект».
  2. В выпадающем меню выбрать пункт «Схема модели общего вида».
Для генерации выборок и построения диаграммы рассеяния для проверки корректности сгенерированной выборки, необходимо в рабочую область окна проекта добавить следующие блоки:
  • 1 блок «Язык программирования» из вкладки «Динамические» – с помощью данного блока будут сгенерированы случайные выборки;
  • 1 блок «График Y от X» из вкладки «Вывод данных» – с помощью данного блока будет производиться графическое отображение диаграммы рассеяния.
Разместить блоки на схеме согласно рисунку (Рисунок 2).

Рисунок 2. Окно проекта с установленными блоками.

Сохранить проект под именем «Генерация выборок.prt».

Необходимо реализовать скрипт, в котором будет осуществляться генерация трех пар выборок с различными МО и СКО, их объединение и сохранение этих выборок в файл. Для этого требуется двойным нажатием левой кнопкой мыши по блоку «Язык программирования» открыть окно редактора и записать текст скрипта согласно рисунку (Рисунок 3). После ввода всего текста скрипта нажать на кнопку «Закрыть и применить» для принятия изменений в блоке «Язык программирования» и закрытия окна редактора.

Рисунок 3. Окно редактора блока «Язык программирования».

С помощью функции «randg» генерируются шесть выборок, содержащих по 100 случайных чисел, принадлежащих распределению Гаусса с указанными в аргументах функции МО и СКО, полученные выборки объединяются с помощью оператора «&» для формирования выходных массивов «x» и «y» с координатами точек полученного множества. С помощью функции «savetab» координаты точек этого множества сохраняются в файл «data_1.dat» в виде таблицы: в первый столбец записываются координаты по оси абсцисс, во второй – по оси ординат.

Прим.: скрипт генерации случайных чисел записан в секцию инициализации «initialization … end», чтобы генерация выборок производилась только один раз при инициализации и только один раз они были записаны в файл «data_1.dat», иначе массивы будут заполняться случайными числами на каждом расчетном шаге и перезаписываться в файл.
После закрытия окна текстового редактора блока «Язык программирования» вид блока в окне проекта изменится: входного порта не будет, увеличится количество портов выхода и изменятся подписи к портам согласно заданным в начале скрипта переменным. Соединить блоки линиями связи согласно рисунку (Рисунок 4).

Рисунок 4. Окно проекта с блоками, соединенными линиями связи.

Далее необходимо подготовить оформление окна, в котором будет отображаться диаграмма рассеяния. Для этого:
  1. Открыть окно «Свойства графика» блока «График Y от X» и на вкладке «Графики и оси» отключить отображение линии графика и задать вид отображения точек на графике согласно рисунку (Рисунок 5).

    Рисунок 5. Окно «Свойства графика» блока «График Y от X» с выделенными свойствами, которые необходимо изменить.

  2. На вкладке «Общие» в поле «Заголовок» изменить название графика на «Диаграмма рассеяния» и отключить свойство «Показывать легенду» (Рисунок 6).

    Рисунок 6. Окно «Свойства графика» блока «График Y от X», вкладка «Общие», с выделенным свойством, которое необходимо изменить.

  3. На вкладке «Дополнительно» увеличить значение свойства «Максимальное количество меток графика» в соответствии с заданной в скрипте блока «Язык программирования» размерностью выходных массивов (Рисунок 7).

    Рисунок 7. Окно «Свойства графика» блока «График Y от X», вкладка «Дополнительно», с выделенным свойством, которое необходимо изменить.

Сохранить изменения и закрыть окно нажатием кнопки «Ok».

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

Полученная диаграмма рассеяния должна выглядеть аналогично рисунку (Рисунок 8). Так как входные данные являются случайными выборками с заданными МО и СКО, то диаграмма рассеяния будет отличаться, но должна качественно совпадать с приведенным рисунком (Рисунок 8): точки должны концентрироваться рядом с указанными математическими ожиданиями, то есть рядом с точками с координатами «(0.2, 0.6)», «(0.6, 0.15)» и «(0.75, 0.8)», с небольшим отклонением от них.

Рисунок 8. Диаграмма рассеяния при малом значении среднеквадратического отклонения.

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

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

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

Необходимо открыть окно редактора блока «Язык программирования» и в функциях генерации изменить значения аргументов, задающих СКО, а также изменить название файла, в который будет записана таблица координат точек нового множества, согласно рисунку (Рисунок 9). После ввода всего текста скрипта нажать на кнопку «Закрыть и применить» для принятия изменений в блоке «Язык программирования» и закрытия окна редактора.

Рисунок 9. Окно редактора блока «Язык программирования» с выделенными строками, которые необходимо изменить.

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

Полученная диаграмма рассеяния должна выглядеть аналогично рисунку (Рисунок 10). Так как входные данные являются случайными выборками с заданными МО и СКО, то диаграмма рассеяния будет отличаться, но должна качественно совпадать с приведенным рисунком (Рисунок 10): точки должны образовать одно распределенное по плоскости множество, без явных границ между подмножествами – кластерами.

Рисунок 10. Диаграмма рассеяния при большом значении среднеквадратического отклонения.

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

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

Разработка модели для проведения кластерного анализа при наличии информации о количестве кластеров

После подготовки данных для проведения кластерного анализа необходимо создать новый проект «Схема модели общего вида» и сохранить под именем «Нечеткая кластеризация.prt».

Необходимо добавить в рабочую область окна проекта один блок «Нечеткая кластеризация» из вкладки «Нечеткая логика» (Рисунок 11).

Рисунок 11. Окно проекта с добавленным блоком «НЛ – Нечеткая кластеризация».

Для обозначения типа кластеризации (при наличии/отсутствии информации о количестве кластеров) следует добавить на схему подпись. Для этого необходимо нажать на кнопку «Панель примитивов» в главном окне программы (Рисунок 12), в открывшемся меню выбрать и разместить на схеме один примитив «Текст» (Рисунок 13).

Рисунок 12. Главное окно SimInTech с выделенной кнопкой «Панель примитивов».

Рисунок 13. Окно проекта с добавленным примитивом «Текст».

Двойным нажатием левой кнопкой мыши на примитив «Текст», добавленный на схему, необходимо открыть окно редактирования текста подписи. В открывшемся окне необходимо задать текст «Кластеризация при наличии информации о количестве кластеров» согласно рисунку, после чего сохранить изменения нажатием на кнопку «Применить и закрыть» (Рисунок 14).

Рисунок 14. Окно «Редактирование текста» с выделенной кнопкой «Применить и закрыть».

После закрытия окна редактора текстовое поле изменится. Расположить подпись согласно рисунку (Рисунок 15).

Рисунок 15. Окно проекта с измененным текстом и измененным расположением примитива «Текст».

Далее требуется задать параметры кластеризации. На первом этапе будет использоваться алгоритм «Алгоритм нечетких С-средних», так как по диаграмме рассеяния было определено, что сгенерированное множество точек возможно разбить на три кластера. Необходимо нажатием правой кнопки мыши по блоку «НЛ – Нечеткая кластеризация» вызвать контекстное меню и выбрать пункт «Свойства объекта» (Рисунок 16).

Рисунок 16. Окно проекта с контекстным меню блока с выделенным пунктом «Свойства объекта».

В открывшемся окне «Свойства» в поле «Значение» свойства «Способ задания входных данных» раскрыть список и выбрать «Считать из текстового файла». Для задания имени файла со сгенерированным множеством точек необходимо выбрать поле «Значение» свойства «Имя файла с матрицей входных данных», нажать на кнопку доступа к проводнику для выбора файла, которая обозначена на рисунке (Рисунок 17).

Рисунок 17. Окно «Свойства» блока «НЛ – Нечеткая кластеризация» с выделенной кнопкой доступа к проводнику для выбора файла.

В открывшемся окне «Открытие» необходимо перейти в директорию, в которой был сохранен файл «data_1.dat» (директория совпадает с директорией сохранения файла «Генерация выборок.prt»), выбрать файл и нажать кнопку «Открыть» (Рисунок 18).

Рисунок 18. Окно «Открытие» с выбранным файлом «data_1.dat».

Значение свойства изменится и будет содержать путь к выбранному файлу (Рисунок 19).

Рисунок 19. Окно «Свойства» блока «НЛ – Нечеткая кластеризация» с измененным значением свойства «Имя файла с матрицей входных данных».

Если файл сохранен в директории с текущим проектом, то есть возможность указывать не полный путь к файлу, а только имя файла, аналогично рисунку (Рисунок 20).

Рисунок 20. Окно «Свойства» блока «НЛ – Нечеткая кластеризация» с кратким вариантом задания свойства «Имя файла с матрицей входных данных».

Перед началом моделирования необходимо подготовить оформление окна, в котором будет отображаться диаграмма рассеяния. Для этого:
  1. Двойным нажатием левой кнопки мыши по блоку «НЛ – Нечеткая кластеризация» вызвать окно «График Y от X», после чего необходимо открыть окно «Свойства графика» и на вкладке «Графики и оси» в колонках «Ось X» и «Ось Y» задать значения свойств «Шаг сетки» равными «0.1» согласно рисунку (Рисунок 21).

    Рисунок 21. Окно «Свойства графика» блока «НЛ – Нечеткая кластеризация» с выделенными свойствами, которое необходимо изменить.

  2. На вкладке «Общие» задать название графика как «Кластеризация при наличии информации о количестве кластеров».

Сохранить изменения и закрыть окно нажатием кнопки «Ok».

Запуск моделирования и построение графиков

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

Диаграмма рассеяния должна выглядеть аналогично рисунку (Рисунок 22), и диаграмма рассеяния входных данных должна соответствовать ранее полученному рисунку (Рисунок 8).

Рисунок 22. Диаграмма рассеяния при наличии информации о количестве кластеров.

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

Для просмотра точных значений координат найденных центров необходимо воспользоваться инструментом «Табличный просмотр». Для этого требуется вызвать контекстное меню графика и в пункте «Анализ данных» выбрать подпункт «Табличный просмотр» (Рисунок 23).

Рисунок 23. Окно графика с контекстным меню с выделенным пунктом «Анализ данных» подпунктом «Табличный просмотр».

В появившемся окне в колонках «Центры кластеров:X» и «Центры кластеров:Y» отображаются координаты найденных центров кластеров (Рисунок 24).

Рисунок 24. Окно «Табличный просмотр данных» с выделенными колонками, содержащими найденные координаты центров кластеров.

В результате сравнения полученных значений координат центров кластеров с заданным математическими ожиданиями координат центров, равными «(0.2, 0.6)», «(0.6, 0.15)» и «(0.75, 0.8)», установлено, что полученные значения практически совпадают с заданными.

Прим.: полученные значения координат центров кластеров могут незначительно отличаться от заданных МО и от представленных на рисунке значений (Рисунок 24), и это отклонение от заданных МО является случайной величиной, имеющей вероятностный характер: множество точек состоит из случайных чисел, принадлежащих распределению Гаусса, и в алгоритме нечетких С-средних используются случайные величины, принадлежащие стандартному равномерному распределению, для инициализации матрицы степеней принадлежности.

Разработка модели для проведения кластерного анализа при отсутствии информации о количестве кластеров

Далее необходимо дополнить модель для проведения кластерного анализа на втором сгенерированном множестве данных (для которого определить количество кластеров визуально не представилось возможным). Для этого добавить в рабочую область окна проекта один блок «Нечеткая кластеризация» из вкладки «Нечеткая логика» и добавить текстовое поле с подписью «Кластеризация при отсутствии информации о количестве кластеров» (Рисунок 25).

Рисунок 25. Окно проекта с добавленным блоком и подписью.

Далее необходимо задать параметры кластеризации. Для этого требуется открыть окно «Свойства» блока «НЛ – Нечеткая кластеризация» с подписью «Кластеризация при отсутствии информации о количестве кластеров» с помощью контекстного меню и задать значения свойств согласно рисунку (Рисунок 26). На данном этапе будет использоваться алгоритм «Субтрактивная кластеризация», так как по диаграмме рассеяния определить количество кластеров не представилось возможным.

Рисунок 26. Окно «Свойства» блока «НЛ – Нечеткая кластеризация» с подписью «Кластеризация при отсутствии информации о количестве кластеров».

После этого необходимо подготовить оформление окна, в котором будет отображаться график. Для этого двойным нажатием левой кнопки мыши по блоку «НЛ – Нечеткая кластеризация» с подписью «Кластеризация при отсутствии информации о количестве кластеров» вызвать окно «График Y от X». После этого необходимо открыть окно «Свойства графика» и на вкладке «Графики и оси» в колонках «Ось X» и «Ось Y» задать значения свойств «Шаг сетки» равными «0.2». На вкладке «Общие» задать название графика как «Кластеризация при отсутствии информации о количестве кластеров». Сохранить изменения и закрыть окно нажатием кнопки «Ok».

Запуск моделирования и построение графиков

После задания свойств для построения диаграммы рассеяния необходимо запустить процесс моделирования и дождаться окончания расчета. Диаграмма рассеяния должна выглядеть аналогично рисунку (Рисунок 27), и диаграмма рассеяния входных данных должна соответствовать ранее полученному рисунку (Рисунок 10).

Рисунок 27. Диаграмма рассеяния при значении свойства «Диапазон влияния» равного «0.5».

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

Для исследования влияния параметра кластеризации «Диапазон влияния» на количество центров кластеров необходимо изменить значение данного свойства.

Прим.: в ходе дальнейших исследований полученное количество кластеров может отличаться от представленных вследствие случайности выборок, но характер зависимости количества кластеров от значения диапазона влияния будет одинаковым.
В окне «Свойства» блока «НЛ – Нечеткая кластеризация» с подписью «Кластеризация при отсутствии информации о количестве кластеров» необходимо изменить значение свойства «Диапазон влияния», задав его значение равным «0.55» и повторить процесс моделирования. Диаграмма рассеяния должна выглядеть аналогично рисунку (Рисунок 28).

Рисунок 28. Диаграмма рассеяния при значении свойства «Диапазон влияния» равного «0.55».

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

Повторить процесс моделирования, изменив значение свойства «Диапазон влияния» на «0.35». Диаграмма рассеяния должна выглядеть аналогично рисунку (Рисунок 29).

Рисунок 29. Диаграмма рассеяния при значении свойства «Диапазон влияния» равного «0.35».

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

Полученные диаграммы рассеяния (Рисунок 27, Рисунок 28, Рисунок 29) показывают, что при увеличении диапазона влияния количество кластеров, на которые следует разбить данное множество точек, уменьшается, а при уменьшении диапазона – количество кластеров увеличивается.

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

После этого, для уточнения центров кластеров, необходимо в свойствах блока «НЛ – Нечеткая кластеризация» с подписью «Кластеризация при отсутствии информации о количестве кластеров» изменить значение свойства «Алгоритм кластеризации» на «Алгоритм нечетких С-средних» и задать значение свойства «Количество кластеров» равным выбранному, в представленном случае равным «3» (Рисунок 30).

Рисунок 30. Окно «Свойства» блока «НЛ – Нечеткая кластеризация» с подписью «Кластеризация при отсутствии информации о количестве кластеров» с измененным алгоритмом кластеризации.

После задания свойств для построения диаграммы рассеяния необходимо запустить процесс моделирования и дождаться окончания расчета. Диаграмма рассеяния должна выглядеть согласно рисунку (Рисунок 31).

Рисунок 31. Диаграмма рассеяния при количестве кластеров, заданным равным «3».

По полученной диаграмме рассеяния видно, что центры кластеров найдены правильно. Из сравнивая диаграмм, полученных в результате использования разных алгоритмов (Рисунок 27 и Рисунок 31), видно, что алгоритм нечетких С-средних более точно определяет центры кластеров. В свою очередь, алгоритм субтрактивной кластеризации менее точен, но для него не требуется информации о количестве кластеров.

Для просмотра точных значений координат найденных центров необходимо открыть окно «Табличный просмотр». В появившемся окне в колонках «Центры кластеров:X» и «Центры кластеров:Y» отображаются координаты найденных центров кластеров (Рисунок 32).

Рисунок 32. Окно «Табличный просмотр данных» блока «НЛ – Нечеткая кластеризация» с подписью «Кластеризация при отсутствии информации о количестве кластеров».

В результате сравнения полученных значений координат центров кластеров с заданным математическими ожиданиями координат центров, равными «(0.2, 0.6)», «(0.6, 0.15)» и «(0.75, 0.8)», установлено, что найденные значения практически совпадают с заданными, а отклонение обусловлено случайностью выборок и большим разбросом точек относительно центров кластеризации.

Заключение

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