Метод динамических ядер в классификации без учителя
Пусть задана выборка предобработанных векторов данных
- пространство векторов данных. Каждому классу будет соответствовать некоторое ядро
- пространство ядер.
Для любых
и
определим меру близости
, а для каждого набора из
ядер
и любого разбиения
на
классов
определим критерий качества
Требуется найти набор
и разбиение
, минимизирующие
. Шаг алгоритма разбиваем на
этапа:
1) Для фиксированного набора ядер
ищем минимизирующее
разбиение
; оно дается следующим решающим правилом:
, если
при
(когда для
минимум
достигается при нескольких значениях
, выбор между ними может быть сделан произвольно).
2) Для каждого
, полученного на первом этапе, отыскивается
, минимизирующее критерий качества
Начальные значения
,
выбираются произвольно либо по какому-нибудь эвристическому правилу. Если ядру
ставится в соответствие элемент сети, вычисляющей по входному сигналу
функцию
, то решающее правило для классификации дается интерпретатором "проигравший забирает все": элемент
принадлежит классу
, если выходной сигнал
-го элемента
меньше всех остальных. Мера близости
выбирается такой, чтобы легко можно было найти ядро
, минимизирущее
для данного
.
В определение ядра
для сетей Кохонена входят суммы
. Это позволит накапливать новые динамические ядра, обрабатывая по одному примеру и пересчитывая
после получения в
нового примера.
Если число классов заранее не определено, то полезен критерий слияния классов: классы
и
сливаются, если расстояние между их ядрами меньше, чем среднее расстояние от элемента класса до ядра в одном из них:
где
- число элементов в
. Использовать критерий слияния классов можно так: сначала принимаем гипотезу о достаточном числе классов, строим их, минимизируя
, затем некоторые
объединяем, повторяем минимизацию
с новым числом классов и т.д.
Содержание раздела