ВОПРОСЫ АВТОМАТИЗИРОВАННОЙ МЕДИКО-ТЕХНИЧЕСКОЙ ДИАГНОСТИКИ (1050259), страница 3
Текст из файла (страница 3)
Шаг 3. На основе результатов шага 2 определяются новые центры кластеров zj(k+1), j= 1, 2 ..... К, исходя из условия, что сумма квадратов расстояний между всеми образами, принадлежащими множеству Sj (k), и новым центром кластера должна быть минимальной.
Другими словами, новые центры кластеров zj(k+1) выбираются таким образом, чтобы минимизировать показатель качества
Центр zj(k+1), обеспечивающий минимизацию показателя качества, является, в сущности, выборочным средним, определенным по множеству Sj(k). Следовательно, новые центры кластеров определяются как
где Nj - число выборочных образов, входящих в множество Sj (k).
Очевидно, что название алгоритма «К внутригрупповых средних» определяется способом, принятым для последовательной коррекции назначения центров кластеров.
Шаг 4. Равенство zj(k+1) = zj(k), при j=1, 2 ..... К является условием сходимости алгоритма, и при его достижении выполнение алгоритма заканчивается. В противном случае алгоритм повторяется от шага 2.
Качество работы алгоритмов, основанных на вычислении К внутригрупповых средних, зависит от числа выбираемых центров кластеров, от выбора исходных центров кластеров, от последовательности осмотра образов и, естественно, от геометрических особенностей данных. Хотя для этого алгоритма общее доказательство сходимости не известно, приемлемые результаты можно ожидать в тех случаях, когда данные образуют характерные гроздья, отстоящие друг от друга достаточно далеко. В большинстве случаев практическое применение этого алгоритма потребует проведения экспериментов, связанных с выбором различных значений параметра К и исходного расположения центров кластеров.
Алгоритм ИСОМАД. Алгоритм ИСОМАД (Итеративный Самоорганизующийся Метод Анализа Данных, английское название Isodata — Iterative Self-Organizing Data Analysis Techniques) в принципе аналогичен процедуре, предусматривающей вычисление К внутригрупповых средних, поскольку и в этом алгоритме центрами кластеров служат выборочные средние определяемые итеративно. Однако в отличие от предыдущего алгоритма ИСОМАД обладает обширным набором вспомогательных эвристических процедур, встроенных в схему итерации. Это определение «эвристические» следует постоянно иметь в виду, поскольку целый ряд описываемых ниже этапов вошел в алгоритм в результате осмысления эмпирического опыта его использования.
До выполнения алгоритма следует задать набор Nc исходных центров кластеров z1, z2 ..... zNc . Этот набор, число элементов должно быть равно предписанному количеству кластеров, может быть получен выборкой образов из заданного множества данных.
При работе с набором {x1, х2, …, xN}, составленным из N элементов, алгоритм ИСОМАД выполняет следующие основные шаги.
Шаг 1. Задаются параметры, определяющие процесс кластеризации:
К - необходимое число кластеров;
N - параметр, с которым сравнивается количество выборочных образов, вошедших в кластер;
S - параметр, характеризующий среднеквадратичное отклонение;
C - параметр, характеризующий компактность;
L - максимальное количество пар центров кластеров, которые можно объединить; I - допустимое число циклов итерации.
Шаг 2. Заданные N образов распределяются по кластерам, соответствующим выбранным исходным центрам, по правилу ,
применяемому ко всем образам х, вошедшим в выборку; через Sj обозначено подмножество образов выборки, включенных в кластер с центром zj.
Шаг 3. Ликвидируются подмножества образов, в состав которых входит менее N элементов, т. е. если для некоторого j выполняется условие Nj < N, то подмножество Sj исключается из рассмотрения и значение Nc уменьшается на 1.
Шаг 4. Каждый центр кластера zj, j=1, 2 … Nc, локализуется и корректируется посредством приравнивания его выборочному среднему, найденному по соответствующему подмножеству Sj , т. е.
где Nj - число объектов, вошедших в подмножество Sj.
Шаг 5. Вычисляется среднее расстояние Dj между объектами, входящими в подмножество Sj, и соответствующим центром кластера по формуле
Шаг 6. Вычисляется обобщенное среднее расстояние между объектами, находящимися в отдельных кластерах, и соответствующими центрами кластеров по формуле
Шаг 7. а) Если текущий цикл итерации — последний, то задается C = 0, переход к шагу 11. б) Если условие Nc K/2 выполняется, то переход к шагу 8. в) Если текущий цикл итерации имеет четный порядковый номер или выполняется условие Nc 2K, то переход к шагу 11; в противном случае процесс итерации продолжается.
Шаг 8. Для каждого подмножества выборочных образов с помощью соотношения
вычисляется вектор среднеквадратичного отклонения , где n есть размерность образа, xik есть i-я компонента k-ro объекта в подмножестве Sj, zij есть i-я компонента вектора, представляющего центр кластера zj, и Nj - количество выборочных образов, включенных в подмножество Sj. Каждая компонента вектора среднеквадратичного отклонения j характеризует среднеквадратичное отклонение образа, входящего в подмножество Sj, по одной из главных осей координат.
Шаг 9. В каждом векторе среднеквадратичного отклонения sj, j=1, 2 ..... Nc отыскивается максимальная компонента sj max.
Шаг 10. Если для любого sj max , j=1, 2, …, Nc выполняются условия sj max > QC и
или
б) Nc K/2,
то кластер с центром zj расщепляется на два новых кластера с центрами zj+ и zj- соответственно, кластер с центром zj ликвидируется, а значение Nc увеличивается на 1. Для определения центра кластера zj+ к компоненте вектора zj, соответствующей максимальной компоненте вектора sj, прибавляется заданная величина j; центр кластера zj- определяется вычитанием этой же величины gj из той же самой компоненты вектора zj. В качестве величины gj можно выбрать некоторую долю значения максимальной среднеквадратичной компоненты sj max, т. е. положить gj = ksj max, где 0 < k 1. При выборе gj следует руководствоваться в основном тем, чтобы ее величина была достаточно большой для различения разницы в расстояниях от произвольного образа до новых двух центров кластеров, но достаточно малой, чтобы общая структура кластеризации существенно не изменилась.
Если расщепление происходит на этом шаге, надо перейти к шагу 2, в противном случае продолжать выполнение алгоритма.
Шаг 11. Вычисляются расстояния Dij между всеми парами центров кластеров:
Шаг 12. Расстояния Dij сравниваются с параметром QC. Те L расстояний, которые оказались меньше QC , ранжируются в порядке возрастания:
причем , a L - максимальное число пар центров кластеров, которые можно объединить. Следующий шаг осуществляет процесс слияния кластеров.
Шаг 13. Каждое расстояние вычислено для определенной пары кластеров с центрами
и
. К этим парам в последовательности, соответствующей увеличению расстояния между центрами, применяется процедура слияния, осуществляемая на основе следующего правила. Кластеры с центрами
и
i=1, 2...L, объединяются (при условии, что в текущем цикле итерации процедура слияния не применялась ни к тому, ни к другому кластеру), причем новый центр кластера определяется по формуле
Центры кластеров и
ликвидируются и значение Nc уменьшается на 1.
Следует отметить, что допускается только попарное слияние кластеров. Центр полученного в результате кластера рассчитывается, исходя из позиций, занимаемых центрами объединяемых кластеров и взятых с весами, определяемыми количеством выборочных образов в соответствующем кластере.
Опыт свидетельствует, что использование более сложных процедур объединения кластеров может привести к получению неудовлетворительных результатов. Описанная процедура обеспечивает выбор в качестве центра объединенного кластера точки, представляющей истинное среднее сливаемых подмножеств образов. Важно также иметь в виду, что, поскольку к каждому центру кластера процедуру слияния можно применить только один раз, реализация данного шага ни при каких обстоятельствах не может привести к получению L объединенных кластеров.
Шаг 14. Если текущий цикл итерации — последний, то выполнение алгоритма прекращается. В противном случае следует возвратиться либо к шагу 1, если по предписанию пользователя меняется какой-либо из параметров, определяющих процесс кластеризации, либо к шагу 2, если в очередном цикле итерации параметры процесса должны остаться неизменными. Завершением цикла итерации считается каждый переход к шагам 1 или 2.
Ниже приведены графики (рис. 10, 11), полученные в результате обработки одних и тех же данных с помощью алгоритма К внутригрупповых средних и алгоритма ИСОМАД соответственно.