Лекция2
.pdf
Теория и алгоритмы распознавания образов
Алгоритмы распознавания без обучения Кластерный анализ
Кластер – множество точек n-мерного пространства, имеющих тенденцию к компактной группировке
внутри некоторой области ограниченного размера:

xi xk 
d
Обычно вместо диаметра области d рассматривается расстояние до центрального элемента группы, который называют центром кластера
В качестве расстояния чаще всего используется евклидова метрика
Пример 1: явно выражена тенденция к |
Пример 2: тенденция к группировке |
группировке |
выражена слабо |
|
Два основных типа задач:
1)выращивание кластеров – задан параметр d, число кластеров неизвестно
2)кластеризация при заданном количестве групп – задано требуемое количество кластеров и исходные центры
Теория и алгоритмы распознавания образов
Методы и алгоритмы выращивания кластеров
Метод «ближайшего соседа» (односвязывающий)
1.Выбираем параметр d
2.Выбираем крайнюю точку множества (например, с минимальными координатами) и назначаем ее центром m1
3. Относим все точки в гиперсфере радиуса d к первому кластеру
4. Первую в порядке просмотра точку, не попавшую в гиперсферу, назначаем центром m2
5. Распределяем точки между гиперсферами 1 и 2; первую точку, никуда не попавшую, назначаем центром m3
6. Продолжаем процесс до тех пор, пока все точки не попадут в одну из гиперсфер
Проблемы:
1.Как выбрать радиус d, чтобы результат выявил реальную тенденцию к группировке?
2.Результат неизбежно зависит от того, в каком
порядке мы будем просматривать точки
Использование односвязывающих методов часто приводит к образованию так называемых «цепных» кластеров
Теория и алгоритмы распознавания образов
Методы и алгоритмы выращивания кластеров
Метод «самого удаленного соседа» (полносвязывающий)
Алгоритм максминного расстояния
1.Выбираем крайнюю точку (с минимальными координатами) и назначаем ее центром m1; выбираем самую удаленную от нее точку и назначаем центром m2
2.Задаем d = ½( m1+m2); далее d выбираем как половину минимального расстояния между центрами
3.Для всех точек вычисляем минимальное расстояние до всех имеющихся центров
4.Выбираем максимум из всех минимальных расстояний D=dmax(xi,mk)
5.Если D>d, то назначаем соответствующую D точку xi центром нового кластера,
если нет, то заканчиваем формирование центров и распределяем все точки по кластерам
В данном методе можно получить очень мелкие кластеры, поэтому необходимо предусмотреть ограничение по радиусу и по числу кластеров
Теория и алгоритмы распознавания образов
Кластеризация при заданном количестве групп Алгоритмы класса ISODATA
Базовый алгоритм «k внутригрупповых средних»
1.Задаем требуемое число кластеров K
2.Выбираем схему размещения исходных центров на множестве образов и задаем центры m1,m2,…,mK
3.Распределяем все образы по кластерам по минимуму расстояния до центров
|
|
1 |
Nk |
|
4. Находим средний образ для каждого кластера: |
xk |
xi |
||
Nk |
||||
|
|
i 1 |
5.Сравниваем центры с полученными средними: если для всех mk выполняется условие
|| xk m k |
|| , то процесс заканчивается, иначе заменяем все mk на x k и переходим к |
шагу 2 |
|
Процесс может продолжаться довольно долго, поэтому обычно задают допустимое
число таких итераций
При работе с дискретными данными для избежания «осцилляций» вокруг истинного положения центра кластера задают «порог сходимости» или, иначе, «порог согласованности»: процент образов, не переместившихся из кластера в кластер
при очередной итерации
Теория и алгоритмы распознавания образов
Примеры работы алгоритма k средних при разных схемах размещения исходных центров
1. Линейная диагональная схема
Похоже, в этом случае не удастся правильно разделить наши 6 кластеров
2. Прямоугольная схема
Вывод: при задании схемы размещения исходных центров необходимо учитывать особенности диаграммы рассеяния образов в ПП
Мы видим, что кластеры начинают правильно формироваться уже на третьей итерации
Теория и алгоритмы распознавания образов
Алгоритм ISODATA
А что если попробовать оставить схему размещения исходных центров диагональной, но не выделять слишком маленьких и слишком больших кластеров?
Введем ограничение снизу на |
Убрали маленький кластер, но |
Дробить будем путем |
|
расщепления центров самых |
|||
число образов в кластере: Nk 10 |
осталось только 5, а нужно 6 |
||
«вытянутых» кластеров |
|||
Выход: дробить крупные |
|||
|
|
После расщепления кластеров |
Заменяем пару близких центров |
Вот теперь, похоже, мы получим |
|
оказалось больше 6, значит, нужно |
|||
средним и сливаем эти два кластера |
то, что нам требуется |
||
сливать близкие центры |
|||
|
|
Теория и алгоритмы распознавания образов
Алгоритм ISODATA
Рассмотренный нами пример иллюстрирует работу алгоритма ISODATA (в русском переводе ИСМАД – итеративный самоорганизующийся метод анализа данных)
Основные параметры алгоритма
N – исходное число кластеров, K – требуемое число кластеров
S – минимальное число точек в кластере
- минимальное среднеквадратическое отклонение, при котором возможно расщепление |
|||||||
C – максимальное расстояние между центрами, при котором возможно слияние |
|||||||
L – число пар, которые можно слить на одной итерации |
|
||||||
- порог согласованности (%) |
|
|
Важные моменты: |
||||
I0 – допустимое число итераций |
|
|
|||||
|
|
•в процессе работы |
|||||
|
|
|
|
|
|
|
|
|
Обобщенная блок-схема алгоритма |
поддерживается условие N>K |
|||||
|
(иногда N>2K) |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
•расщепляются только |
|
|
|
Блок аппроксимации |
|
|
||
|
|
|
|
|
вытянутые кластеры с большой |
||
|
|
|
центров (алгоритм k |
|
|
дисперсией |
|
|
|
|
средних) |
|
|
•расщепление выполняется по |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
самой «вытянутой» координате |
|
|
|
|
|
|
|
•слияние выполняется попарно |
|
|
|
|
|
|
|
|
Блок |
|
|
|
|
|
|
•для окончания работы |
|
|
Блок управления |
|
|
Блок слияния |
||
расщепления |
|
|
|
|
устанавливается C=0 и L=N-K |
||
центров |
|
|
процессом |
|
|
центров |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Теория и алгоритмы распознавания образов
Применение алгоритмов кластерного анализа при неконтролируемой классификации мультиспектральных изображений
Задачи неконтролируемой классификации
•Определение количества спектрально-однородных интерпретируемых классов
•Выбор однородных по спектральным признакам эталонных участков для контролируемой классификации
•Составление карт-гипотез путем интерпретации и группировки выделенных классов по их спектральным образам
Основным подходом, используемым при неконтролируемой классификации изображений, является кластеризация при заданном количестве групп: алгоритм k средних и алгоритм
ISODATA
Первые космические снимки с мультиспектральных сканеров имели невысокое пространственное разрешение, поэтому спектральные сигнатуры имели четко выраженную тенденцию к группировке по основным типам объектов земной поверхности
|
|
Пример изображения с |
|
|
отечественного сканера среднего |
|
|
разрешения МСУ-СК: |
1 2 |
3 4 |
Справа показана гистограмма в |
|
|
|
|
|
канале 2 (БИК): 1-вода, 2 почва, 3 – |
|
|
растительность, 4 - солончаки |
|
|
|
Теория и алгоритмы распознавания образов
Применение алгоритмов кластерного анализа при неконтролируемой классификации мультиспектральных изображений
Современная
мультиспектральная аппаратура позволяет выделять большое количество спектральных классов, поэтому тенденция к группировке сигнатур пикселей обычно выражена крайне слабо
Пример изображения с мультиспектральной аппаратуры
ETM+ (Landsat-7)
Справа показана гистограмма в 1 2 канале 4 (NIR): 1 – вода, 2 – все
остальное
Вопрос: а будет ли в этом случае работать алгоритм кластеризации?
Давайте проверим на том примере, где тенденция к образованию кластеров выражена слабо
Теория и алгоритмы распознавания образов
Применение алгоритмов кластерного анализа при неконтролируемой классификации мультиспектральных изображений
Кластеризация при слабо выраженной тенденции к группировке
Алгоритм k средних
Поскольку центры стремятся распределиться равномерно, могут образоваться нерепрезентативные кластеры
Алгоритм ISODATA
Удаляем маленький |
Расщепляем центр |
Несмотря на слабо выраженную тенденцию к группировке, |
|
кластер |
самого большого |
||
кластеры все-таки выделяются |
|||
|
|
