
3.3.2. Персептронная функция критерия
Пусть функция критерия будет:
(3.31)
где суммирование осуществляется по неправильно классифицированным векторам образов. Геометрически Jp(w) пропорционально сумме расстояний неправильно классифицированных образов от гиперплоскости.
Возьмем производную от Jp(w) по w(k) :
(3.32)
где w(k) означает величину w на k-ой итерации. Персептронный обучающий алгоритм может быть сформулирован как
w(k+1)
= w(k) -
(3.33)
w(k+1)
= w(k) +
(3.34)
где Р - последовательность неправильно классифицированных образов при данном w(k) . Уравнение (3.34) может быть затем интерпретировано в том смысле, что (k+1) весовой вектор может быть получен добавлением умноженной на некоторый множитель сумму неправильно классифицированных образов для
k-ого весового вектора.
Это процедура, называемая "many-at-time" ("большое время"), т.к. мы определяем wTz для всех zР, только после того как все образы были классифицированы.
Если мы делаем настройку после каждого неправильно классифицированного образа (мы называем это "one-at-a-time") процедура функция критерия становится
J(w) = -wTz (3.35)
и
J(w) = -z
Алгоритм обучения будет иметь вид
w(k+1) = w(k) +kz (3.37)
Это правило с фиксированным инкрементом, если k = с (константа).
3.3.3. Релаксационная функция критерия
Функкция критерия, используемая в этом алгоритме, имеет вид
(3.38)
Р - здесь снова последовательность неправильно классифицированных образов при заданном w. То есть Р состоит из тех z , для которых -wTz +b0
или: wTz b. Градиент Jr(w) по w(k) дает
(3.39)
Базовый релаксационный обучающий алгоритм формулируется как
(3.40)
Э
то
также
"many-at-time" алгоритм.
Соответствующий
"one-at-a-time"
алгоритм будет:
(3.41)
который становится алгоритмом частичной коррекции с = k .
3.4. Обучение кусочно-линейных машин
В общем случае не существует теорем сходимости для для обучающих процедур коммитет или других кусочно-линейных машин. Одна процедура, которая часто бывает удовлетворительной приводится ниже. Пусть М=2 и имеется R дискриминантных функций, где R - нечетное. Тогда
(3.42)
Классификация в коммитет-машине будет затем выполняться согласно
(3.43)
т
ак
что
(3.44)
г
де:
(3.45)
Отметим, что так как R - нечетное, d(z) не может быть равно 0 и будет всегда нечетным. Так как d(z) равно разнице между числом di(z) 0 и di(z) 0 для весового вектора wi (k) для k-ой итерации. В нашем случае мы всегда желаем иметь di(z) 0 . Другими словами мы желаем иметь больше весовых векторов, которые дают di(z) 0 .
Когда di(z) 0, имеет место неправильная классификация. Будет очевидным, что в этом случае будет [ R+d(z) ] / 2 весовых векторов среди wi (k), i=1,2,...,R, которые дают отрицательные ответы [di(z) 0] и [ R-d(z) ] / 2 весовых векторов , которые дают положительные ответы [di(z) 0]. Для получения правильной классификации нам необходимо изменить, по крайней мере n ответов wi (k) от -1 к +1, где n может быть найдено из уравнения:
(3.46)
В первых скобках представлено число di , которое сейчас больше нуля, выражение в скобках после минуса представляет число di , которое меньше нуля. Минимальная величина n тогда будет
nmin = [d(z) + 1] / 2 , (3.47)
которое дает минимальное число векторов, необходимых для настройки.
Процедура для настройки весового вектора:
1) убираем наименьший отрицательный di(z) среди отрицательных di(z) ;
2) настраиваем [d(z) + 1] / 2 весовых векторов по следующему правилу:
wi (k+1) = wi (k) + сz, (3.48)
таким образом, что из результирующие di(z) становятся положительными. Все другие весовые векторы остаются неизменными на этой стадии;
3) если на k-ой стадии машина неправильно классифицирует образ, принадлежащий w2 , делаем классифицирующие коэффициенты с отрицательной величиной, так что
wi (k+1) = wi (k) - сz.
3.5. Практические соображения, касающиеся метода обучения