Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
mmotor5.doc
Скачиваний:
61
Добавлен:
07.02.2016
Размер:
2.5 Mб
Скачать

5.3 Многослойный персептрон

5.3.1 Модель сети

Основным вычислительным элементом многослойного персептрона или многослойной нейронной сети (МНС) прямого распространения является формальный нейрон. Он выполняет параметрическое нелинейное преобразование входного вектора x в скалярную величину y. Нейроны образуют сеть, которая характеризуется следующими параметрами и свойствами: M - число слоев сети, Nμ- число нейронов μ-го слоя, связи между нейронами в слое отсутствуют.

Выходы нейронов μ-го слоя, μ = 1,2,...,М-1 поступают на входы нейронов только следующего μ+1-го слоя. Внешний векторный сигнал x поступает на входы нейронов только первого слоя, выходы нейронов последнего М-го слоя образуют вектор выходов сети y(M).

Структура сети показана на рис. 5.3. Каждый i-й нейрон μ-го слоя (μi-й нейрон) преобразует входной вектор x(μ,i)в выходную скалярную величину y(μ,i). Это преобразование состоит из двух этапов: вначале вычисляется дискриминантная функции net(μ,i), которая далее преобразуется в выходную величину y(μ,i).

Рис. 5.3 - Структура многослойной нейронной сети

Дискриминантная функция представляет собойотрезок многомерного ряда Тейлора. Коэффи­циенты разложения отрезка многомерного ряда Тейлора образуют вектор весовых коэффициентов w(μ,i), или память нейрона. Дискриминантная функция нейрона имеет вид:

,

где w(μ,i)=(w0(μ,i), w1(μ,i), ... , wN(μ,i))Т- вектор весовых коэффициентов нейрона; xj(μ,i)- j-я компонента N-мерного входного вектора x(μ,i).

Нелинейное преобразование y(μ,i)= ψ(net(μ,i)) задается функцией активации, которая является монотонной и ограниченной. В частности, при неотрицательных выходах нейрона такой функцией может быть сигмоидная функция ψ(x) = 1/(1+e-x).

Обозначим через y(μ) = ( y(μ,1), y(μ,2), ... , y(μ,Nμ))Т вектор выхода нейронов μ-го слоя.

5.3.2 Обучение многослойного персептрона

Процесс обучения МНС осуществляется в результате минимизации целевой функции - некото­рого критерия качества F(w), который характеризует интегральную меру близости выходов сети y(M)(k) и указаний учителя y*(k):

,

где k– номер текущего цикла обучения НС;m=1, 2,..., k– номера предыдущих циклов обучения НС; w - составной вектор-столбец весовых коэффициентов сети, составляющи­ми которого являются вектор-столбцы w(μ)=( w(μ,1)T, w(μ,2)T, ... , wN(Nμ)T)Т, μ=M,M-1,...,1 каждого слоя. Мгновенный критерий качества Q(ε(w,k)), входящий в интегральный критерий качестваF(w), зависит от вектора ошибки сети Q(ε(w,m)): ε(w,m) = y(M)(m)-y*(m).

Для каждого входного вектора х из обучающего множества дол­жен быть определен вектор желаемых выходов сети y*. Если обучаемая МНС используется в качест­ве классификатора, то обычно желаемые выходы имеют низкий уровень (0 или меньше 0,1), кроме выхода узла, соответствующего классу, к которому относится х; этот выход в данном случае имеет вы­сокий уровень (1 или больше 0,9).

Градиентные методы обучения МНС основаны на использовании градиента целевой функции F(w). Эти методы носят итеративный характер, так как компоненты градиента оказываются нелинейными функциями. Все далее рассмотренные методы основаны на итерационной процедуре, реализуемой в соответствии с формулой:

wk+1 = wk + αks(wk),

где wk , wk+1 – текущее и новое приближения значений весов и порогов НС к оптимальному решению, соответственно, αk – шаг сходимости, s(wk)-направление поиска в N-мерном пространстве весов. Способ определенияs(wk) и αk на каждой итерации зависит от особенностей конкретного метода.

Обобщенный градиентный алгоритм применительно к задаче обучения МНС имеет следующийвид.

Шаг 1. Инициализация: Задаются параметры МНС: N-число входов,M – число слоев, начальные веса и пороги w. Задаются параметры алгоритма обучения: максимальное допустимое число циклов обучения Epochs, параметр сходимости алгоритма ε1 - цель обучения (в качестве нее обычно выступает максимальная допустимая среднеквадратическая ошибка),ε2 –параметр сходимости вдоль прямой (для простоты можно полагатьε2 = ε1).

Шаг 2. Положить счетчик итераций k=0.

Шаг 3. Вычислить компоненты .

Шаг 4. Выполняется ли равенство ?

Да: Сходимость достигнута. Перейти на шаг 13.

Нет: перейти на шаг 5.

Шаг 5. Выполняется ли неравенство k>Epochs?

Да: Достигнуто максимальное число циклов обучения, сходимость не достигнута. Перейти на шаг 13.

Нет: перейти на шаг 6.

Шаг 6. Вычислить s(wk).

Шаг 7. Выполняется ли неравенство ?

Да: перейти на шаг 9.

Нет: положить: . Перейти на шаг 9.

Шаг 8. Найти такое значение αk, при которомF(wkks(wk))min,

используя параметр ε2.

Шаг 9. Положить wk+1 = wk+ αks(wk).

Шаг 10. Выполняется ли неравенство F(wk+1) < F(wk) ?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]