5.4. КЛАССИФИКАЦИЯ ДЛЯ СЛУЧАЯ НЕСКОЛЬКИХ КЛАССОВ
В § 2.2 были рассмотрены три случая разделения на несколько классов. В первом случае каждый из М классов отделялся ото всех остальных единственной разделяющей поверхностью. Очевидно, все М решающих функций, необходимых для решения этой задачи, можно найти с помощью любого из рассмотренных в данной главе алгоритмов обучения. Так, например, чтобы построить решающую функцию для класса, достаточно рассмотреть задачу о разделении на два класса о; и где со; обозначает совокупность всех классов, за исключением класса
Во втором случае каждый класс отделим от любого другого класса. Задача при этом заключается в построении решающих функций. Эти функции можно найти, применяя любой из описанных алгоритмов ко всем парам заданных классов.
В третьем случае допускается существование М решающих функций, обладающих тем свойством, что при для всех
В настоящем параграфе представлен алгоритм, который можно применить для непосредственного определения решающих функций в случае 3. Этот алгоритм, обобщающий алгоритм перцептрона, можно описать следующим образом.
Рассмотрим М классов Пусть на шаге итерации процедуры обучения системе предъявляется образ принадлежащий классу . Вычисляются значения М решающих функций . Затем если выполняются условия
то векторы весов не изменяются, т. е.
Допустим, с другой стороны, что для некоторого
В этом случае производятся следующие коррекции весов:
где с — положительная константа. Если при рассмотрении случая 3 классы разделимы, то можно показать, что этот алгоритм сходится за конечное число итераций при произвольных начальных векторах веса . Проиллюстрируем эту процедуру на примере.
Пример. Рассмотрим следующие классы, причем каждый из них содержит один образ: . Прежде чем применить обобщенный алгоритм перцептрона к этим классам, образы следует пополнить: (0, 0,1), (1,1,1) и (-1,1,1). Отметим, что ни один из образов не умножается на —1. Выберем в качестве начальных векторов весов , положим , предъявляя образы в указанном порядке, придем к следующей последовательности шагов:
Так как первый весовой вектор увеличивается, а два других уменьшаются в соответствии с соотношениями (5.4.5), т. е.
(кликните для просмотра скана)
(кликните для просмотра скана)
(кликните для просмотра скана)
Легко проверить, что в следующем полном цикле итерации никакие коррекции не производятся. Итак, искомые решающие функции имеют следующий вид: