Логотип Автор24реферат
Задать вопрос
%
уникальность
не проверялась
Контрольная работа на тему:

Просчитать одну итерацию цикла обучения методом обратного распространения ошибки многослойной бинарной неоднородной нейронной сети

уникальность
не проверялась
Аа
2608 символов
Категория
Программирование
Контрольная работа
Просчитать одну итерацию цикла обучения методом обратного распространения ошибки многослойной бинарной неоднородной нейронной сети .pdf

Зарегистрируйся в 2 клика в Кампус и получи неограниченный доступ к материалам с подпиской Кампус+ 🔥

Условие

Просчитать одну итерацию цикла обучения методом обратного распространения ошибки многослойной бинарной неоднородной нейронной сети, состоящей из 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
Так как необходимо было рассмотреть одну итерацию цикла обучения, то завершаем обучение
50% задачи недоступно для прочтения
Переходи в Кампус, регистрируйся и получай полное решение
Получить задачу
Больше контрольных работ по программированию:
Все Контрольные работы по программированию
Закажи контрольную работу

Наш проект является банком работ по всем школьным и студенческим предметам. Если вы не хотите тратить время на написание работ по ненужным предметам или ищете шаблон для своей работы — он есть у нас.