
Обучение нейронной сети.
Существуют три парадигмы обучения сети:
Обучение с учителем. Сеть располагает правильными ответами или выходами сети. При подаче на входы обучающих примеров подстраивает свои связи так, чтобы получить ответы, соответствующие выходам.
Обучение без учителя, когда ответы неизвестны, а обучение выполняется за счёт внутренней структуры данных.
Смешанное обучение, когда часть весов определяется с учителем, а часть без.
При обучении по примерам необходимо определить ёмкость сети, то есть максимальное количество примеров, которые может запомнить сеть и вычислительную сложность образов, то есть количество обучающих примеров, которое необходимо для достижения сетью способности к обобщению. Если примеров мало, то есть плохо реагирует на новые примеры. Если примеров много, то возникает “переобученность” сети, то есть начинает моделировать шум, находящийся в исходных данных.
Целью обучения сети является минимизация ошибки на всём множестве обучающих примеров. Нахождение минимума функции ошибки является сходимостью процесса обучения.
Среднеквадратическая ошибка: E = 1 / k * ∑ (d1 - yi) ^ 2 (сумма по 1 до k), где
k – множество входных примеров,
d – это желаемый выход,
y – вычисленный выход сети,
E – ошибка, которую мы минимизируем.
Существует несколько правил для обучения сети:
Коррекция по ошибке (детерминированное правило). Для изменения весов используются разность между вычисленным выходом и желаемым выходом.
Правило Больцмана (вероятностное правило). Вводится понятие “температуры”. Используются термодинамические принципы физических систем, связанные с постепенным уменьшением температуры. Это приводит к стабилизации состояния системы. В процессе обучения подстраиваются веса связей таким образом, чтобы состояние нейронов удовлетворяло заданному распределению вероятности.
Правило Хебба. Основано на нейрофизиологических принципах. Вес связи нейронов (w), которые активизируются одновременно и регулярно усиливается, то есть добавляется величина (δw), в противоположном случае уменьшение и в итоге система стабилизируется.
Правило соревнования. Нейроны борются за право изменения весов. Если нейрон имеет более высокий потенциал, то связи у него изменяются.
Алгоритм обучения однослойного перцептрона.
Весам связей присваивают небольшие значения, чтобы сеть вышла из состояния равновесия.
Подают входной вектор, и вычисляется потенциал нейрона.
По функции активации (здесь она пороговая) вычисляется выходное состояние нейрона: yj = 1, при v >= bj и 0, если v < bj
Вычисление ошибки на j – м нейроне: ej = dj – yj.
Для каждой связи выполняется коррекция веса по следующей формуле:
wij (t + 1) = wij + альфа * xi * ej
альфа – коэффициент скорости обучения.
При подаче других входных примеров сеть может колебаться относительно правильного решения, то есть являться нестабильной. С уменьшением коэффициента скорости обучения сеть стремится к устойчивому состоянию, которое определяется по следующему правилу: после некоторого количества итераций входной пример не меняет свой принадлежности к определённому классу. С уменьшением коэффициента скорости обучения сеть перестаёт быть пластичной, то есть теряет способность обучения новым образам – дилемма стабильности/пластичности Гросберга.