- •Глава 5 линейные разделяющие функции
- •5.1. Введение
- •5.2. Линейные разделяющие функции и поверхности решений
- •5.2.1. Случай двух классов
- •5.2.2. Случай многих классов
- •5.3. Обобщенные линейные разделяющие функции
- •5.4. Случай двух линейно разделимых классов
- •5.4.1. Геометрия и принятая терминология
- •5.4.2. Процедуры основанные на методе градиентного спуска
- •5.5. Минимизация персептронной функции критерия
- •5.5.1. Персептронная функция критерия
- •5.5.2. Доказательство сходимости для случая коррекции по одной выборке
- •5.5.3. Некоторые непосредственные обобщения
- •5.6. Процедуры релаксаций
- •5.6.1. Алгоритм спуска
- •5.6.2. Доказательство сходимости
- •5.7. Поведение процедур в случае неразделяемых множеств
- •5.8. Процедуры минимизации квадратичной ошибки
- •5.8.1. Минимальная квадратичная ошибка и псевдообращение
- •5.8.2. Связь с линейным дискриминантом Фишера
- •5.8.3. Асимптотическое приближение к оптимальному дискриминанту
- •5.8.4. Процедура Видроу - Хоффа
- •5.8.5. Методы стохастической аппроксимации
- •5.9. Процедуры Хо — Кашьяпа
- •5.9.1. Процедура спуска
- •5.9.2. Доказательство сходимости
- •5.9.3. Поведение в случае неразделяемых множеств
- •5.9.4. Некоторые связанные процедуры
- •5.10. Процедуры линейного программирования
- •5.10.1. Линейное программирование
- •5.10.2. Случай линейно разделяемых множеств
- •5.10.3. Минимизация персептронной функции критерия
- •5.10.4. Замечания
- •5.11. Метод потенциальных функций
- •5.12. Обобщения для случая многих классов
- •5.12.1. Метод Кеслера
- •5.12.2. Правило постоянных приращений
- •5.12.3. Обобщение метода наименьших квадратов
- •5.13. Библиографические и исторические сведения
5.9.2. Доказательство сходимости
Покажем теперь, что если выборки линейно разделяемы н 0<ρ<1, то процедура Хо — Кашьяпа будет давать вектор решения за конечное число шагов. Чтобы сделать алгоритм конечным, следовало бы добавить правило остановки, по которому процесс коррекций прекратится сразу же, как будет найден вектор решения. Однако более удобно считать процесс коррекций непрерывным и показать, что вектор ошибки е, либо становится нулевым при некотором конечном k, либо сходится к нулевому при k→∞.
Очевидно, что либо еk=0 при некотором k, скажем при k0, либо в последовательности е1, е2, ... не содержится нулевых векторов. В первом случае, как только нулевой вектор получен, ни один из векторов ak, bk или ek больше не изменяется и Yak= bk >0для всех k>k0. Таким образом, при получении нулевого вектора ошибки алгоритм автоматически останавливается, и мы имеем вектор решения.
Предположим теперь, что ek никогда не станет нулевым при конечном k. Чтобы показать, что ek тем не менее должно сходиться к нулю, сначала поставим вопрос, возможно ли получение ek с неположительными компонентами. Указанное обстоятельство должно быть наиболее нежелательным, поскольку требуется, чтобы выполнялось условие Yak< bk и поскольку e†k должно быть нулевым, чтобы прекратилось дальнейшее изменение ak, bk или ek, bk или ek. К счастью, данная ситуация может никогда не возникнуть, если выборки линейно разделяемы. Доказательство просто и основано на том факте, что если YtYak = Ytbk Однако в случае линейно разделяемых выборок существуют такие и>0, что справедливо соотношение
Таким образом,
и поскольку все компоненты вектора положительны, то либоеk = 0, либо по крайней мере одна из компонент еk должна быть положительна. Поскольку случай еk=0 исключен, из этого следует, что еk+ может не быть нулем при конечном k.
Для доказательства того, что вектор ошибки всегда сходится к нулю, используется тот факт, что матрица YY† симметрична, положительно полуопределена и удовлетворяет соотношению
Хотя эти результаты справедливы и в общем случае, для простоты рассмотрим их только для невырожденной матрицыY†Y В этом случае YY†=Y(Y†Y)-1Yt и симметричность очевидна. Поскольку матрица YtY является положительно определенной, то существует матрица (YtY)-1; таким образом, btY(YtY)-1Ytb≥0 при любом b, и матрица YY† является по крайней мере положительно полуопределенной. Итак, соотношение (66) вытекает из следующего:
Чтобы показать, чтоеk должно сходиться к нулю, исключим аk из (63)-(65) и получим следующее выражение:
Затем, используя (62), получим рекуррентную формулу
Как второй, так и третий члены значительно упрощаются. ПосколькуektY=0, второй член представляется в виде
ненулевые компоненты вектора ek+являются положительными компонентами вектора ek. Поскольку матрица YY† симметрична и равна произведению (YY†)t(YY†) третий член упростится до следующего выражения:
Поскольку предполагается, что вектор ek+ ненулевой и матрица YY† является положительной полуопределенной, то ||ek||2>||ek+1||2 , если 0<ρ<1. Таким образом, последовательность ||e1||2, ||e2||2 ... будет монотонно убывающей и должна сходиться к некоторому предельному значению ||e||2. Однако в случае рассматриваемой сходимости ek+ должно сходиться к нулю, так что все положительные компоненты ek должны сходиться к нулю. И поскольку ektb = 0 для всех k, отсюда следует, что все компоненты вектора ek должны сходиться к нулю. Таким образом, при условии, что 0< ρ <1 и выборки линейно разделяемы, аk будет сходиться к вектору решения при k, стремящемся к бесконечности.
Если на каждом шаге проверяются знаки компонент вектора Yak и алгоритм останавливается при условии, что они положительны,то фактически получаем разделяющий вектор в случае конечного числа шагов. Это следует из того факта, что Yаk=bk+ ek; и что компоненты вектора bk никогда не убывают. Таким образом, если bmin является наименьшей компонентой вектора b1 и если ek сходится к нулю, то вектор еk должен попасть в гиперсферу || еk ||= bmin после конечного числа шагов, при котором Yak >0. Хотя в целях упрощения доказательства условия остановки были исключены, указанное условие должно всегда применяться на практике.