Учебное пособие по курсу «Нейроинформатика»
Шрифт:
Персептроном будем называть устройство, вычисляющее следующую функцию:
где αi — веса персептрона, θ — порог, φi — значения входных сигналов, скобки [] означают переход от булевых (логических) значений к числовым значениям по правилам описанным выше. В качестве входных сигналов персептрона могут выступать как входные сигналы всей сети (переменные x), так и выходные значения других персептронов. Добавив постоянный единичный входной сигнал φ0≡1 и положив α0=–θ,
Очевидно, что выражение (1) вычисляется одним нейроном с пороговым нелинейным преобразователем (см. главу «Описание нейронных сетей»). Каскад из нескольких слоев таких нейронов называют многослойным персептроном. Далее в этой главе будут рассмотрены некоторые свойства персептронов. Детальное исследование персептронов приведено в работе [146].
Обучение персептрона. Правило Хебба
Персептрон обучают по правилу Хебба. Предъявляем на вход персептрона один пример. Если выходной сигнал персептрона совпадает с правильным ответом, то никаких действий предпринимать не надо. В случае ошибки необходимо обучить персептрон правильно решать данный пример. Ошибки могут быть двух типов. Рассмотрим каждый из них.
Первый тип ошибки — на выходе персептрона 0, а правильный ответ — 1. Для того, чтобы персептрон (1) выдавал правильный ответ необходимо, чтобы сумма в правой части (1) стала больше. Поскольку переменные φi принимают значения 0 или 1, увеличение суммы может быть достигнуто за счет увеличения весов αi. Однако нет смысла увеличивать веса при переменных φi, которые равны нулю. Таким образом, следует увеличить веса αi при тех переменных , которые равны 1. Для закрепления единичных сигналов с φi, следует провести ту же процедуру и на всех остальных слоях.
Первое правило Хебба. Если на выходе персептрона получен 0, а правильный ответ равен 1, то необходимо увеличить веса связей между одновременно активными нейронами. При этом выходной персептрон считается активным. Входные сигналы считаются нейронами.
Второй тип ошибки — на выходе персептрона 1, а правильный ответ равен нулю. Для обучения правильному решению данного примера следует уменьшить сумму в правой части (1). Для этого необходимо уменьшить веса связей αi при тех переменных φi, которые равны 1 (поскольку нет смысла уменьшать веса связей при равных нулю переменных φi). Необходимо также провести эту процедуру для всех активных нейронов предыдущих слоев. В результате получаем второе правило Хебба.
Второе правило Хебба. Если на выходе персептрона получена 1, а правильный ответ равен 0, то необходимо уменьшить веса связей между одновременно активными нейронами.
Таким образом, процедура обучения сводится к последовательному перебору всех примеров обучающего множества с применением правил Хебба для обучения ошибочно решенных примеров. Если после очередного цикла предъявления всех примеров окажется, что все они решены правильно, то процедура обучения завершается.
Нерассмотренными осталось два вопроса. Первый — насколько надо увеличивать (уменьшать) веса связей при применении правила Хебба. Второй — о сходимости процедуры обучения. Ответы на первый из этих вопросов дан в следующем разделе. В работе [146] приведено доказательство следующих теорем:
Теорема о сходимости персептрона. Если существует вектор параметров α, при котором персептрон правильно решает все примеры обучающей выборки, то при обучении персептрона по правилу Хебба решение будет найдено за конечное число шагов.
Теорема о «зацикливании» персептрона. Если не существует вектора параметров α,
при котором персептрон правильно решает все примеры обучающей выборки, то при обучении персептрона по правилу Хебба через конечное число шагов вектор весов начнет повторяться.Доказательства этих теорем в данное учебное пособие не включены.
Целочисленность весов персептронов
В данном разделе будет доказана следующая теорема.
Теорема. Любой персептрон (1) можно заменить другим персептроном того же вида с целыми весами связей.
Доказательство. Обозначим множество примеров одного класса (правильный ответ равен 0) через X0, а другого (правильный ответ равен 1) через X1. Вычислим максимальное и минимальное значения суммы в правой части (1):
Определим допуск ε как минимум из s0 и s1. Положим δ=s/(m+1) , где m — число слагаемых в (1). Поскольку персептрон (1) решает поставленную задачу классификации и множество примеров в обучающей выборке конечно, то δ>0. Из теории чисел известна теорема о том, что любое действительное число можно сколь угодно точно приблизить рациональными числами. Заменим веса αi на рациональные числа так, чтобы выполнялись следующие неравенства |αi– αi'|<δ.
Из этих неравенств следует, что при использовании весов αi' персептрон будет работать с теми же результатами что и первоначальный персептрон. Действительно, если правильным ответом примера является 0, имеем
Подставив новые веса, получим:
Откуда следует необходимое неравенство
Аналогично, в случае правильного ответа равного 1, имеем
, откуда, подставив новые веса и порог получим:
Откуда следует выполнение неравенства
Неравенства (2) и (3) доказывают возможность замены всех весов и порога любого персептрона рациональными числами. Очевидно так же, что при умножении всех весов и порога на одно и тоже ненулевое число персептрон не изменится. Поскольку любое рациональное число можно представить в виде отношения целого числа к натуральному числу, получим
где αi″ — целые числа. Обозначим через r произведение всех знаменателей
что и завершает доказательство теоремы.