Просчитать одну итерацию цикла обучения методом обратного распространения ошибки многослойной бинарной неоднородной нейронной сети, состоящей из 2 слоев, причем в первом слое находится 2 нейрона и используется функция активации - гиперболический тангенс (α=2), а во втором - 1, функция - жесткая ступенька (θ=0.6). В качестве обучающей выборки использовать таблицу истинности для операции «штрих Шеффера» (не использовать первую строчку таблицы). Синапсические веса задать случайным образом.
Решение
По заданию нейронная сеть состоит из трех нейронов: два входных, один выходной, следовательно, синоптических весов - 6. Первый слой нейронов имеет функцию активации - гиперболический тангенс, а второй - жесткая ступенька.
По заданию нейронная сеть бинарная, поэтому на ее входы могут подаваться только нули и единицы, так как входа 2, то возможных комбинаций входных значений будет 4 (обучающая выборка будет состоять из 4 векторов). Выход нейронной сети, согласно заданию, соответствует оператору «штрих Шеффера». Поэтому таблица с обучающей выборкой будет выглядеть следующим образом
x1
x2
d1
0 0 1
0 1 1
1 0 1
1 1 0
Пусть в качестве вектора обучения будет рассматриваться вторая строка таблицы.
4) Следуя алгоритму обучения методом обратного распространения ошибки, необходимо выполнить 5 шагов
1шаг: зададим матрицу весов случайным образом из интервала [0,1]
wij(1)
1 2
1 0,4 0,7
2 0,5 0,8
wg(1)
1 2
1 0,4 0,5
2шаг: вектор X = {0,1}, D = {1}.
3шаг (прямой проход): вычисление в циклах выходов всех слоев и получение выходных значений нейронной сети (вектор Y)
α=2;
S1=x1∙w11+x2∙w21=0∙0.4+1∙0.5=0.5
Y1=th S1α=th 0.52=th 0.25=0.245
S2=x1∙w12+x2∙w22=0∙0.7+1∙0.8=0.8
Y2=th S2α=th 0.82=th 0.4=0.3799
θ=0.6;
S3=Y1∙w1+Y2∙w2=0.245∙0.4+0.3799∙0.5=0.288
Y3=1, при S1≥θ0, при S1<θ=1, при 0.288≥0.60, при 0.288<0.6=0
4шаг (обратный проход): изменение весов
Примем скорость обучения η=0.5;
δ2=d-Y∙Y∙1-Y=1-0∙0.288∙1-0.288=0.205
Во втором и третьем сомножителе используем вместо Y3 значение S3, в противном случае для жёсткой ступеньки всегда δ2=0.
w12=w11+η∙δ2∙Y1=0.4+0.5∙0.245∙0.336=0.425
w22=w21+η∙δ2∙Y2=0.5+0.5∙0.3799∙0.422=0.539
δ11=Y1∙1-Y1∙i=1Nk+1δik+1∙wik+1=Y1∙1-Y1∙δ2∙w1=
=0.245∙1-0.245∙0.205∙0.4=0.015
δ21=Y2∙1-Y2∙i=1Nk+1δik+1∙wik+1=Y2∙1-Y2∙δ2∙w2=
=0.3799∙1-0.3799∙0.205∙0.5=0.024
w112=w111+η∙δ11∙x1=0.4+0.5∙0.015∙0=0.4
w122=w121+η∙δ21∙x1=0.7+0.5∙0.024∙0=0.7
w212=w211+η∙δ11∙x2=0.5+0.5∙0.015∙1=0.508
w222=w221+η∙δ21∙x2=0.8+0.5∙0.024∙1=0.812
wij(2)
1 2
1 0,4 0,7
2 0,508 0,812
wg(2)
1 2
1 0,425 0,539
5шаг
ε=i=1Ndi-Yi2=1-02=1
Так как необходимо было рассмотреть одну итерацию цикла обучения, то завершаем обучение