9.Создаем трехслойную нейронную сеть Элмана для чего введем следующую строку в рабочее окно Matlab:
net1 = newelm([0 1],[20 4 1],{'compet', 'softmax', 'purelin'},'traingda','learnsom','mse');
и нажимаем клавишу Enter.
Это позволяет решить задачу нахождения среднего значения максимальной скорости самолетов-истребителей вертикального взлета и посадки,
Вданном учебном примере освоения практических расчетов с помощью рекуррентных нейронных сетей нейронная сеть Элмана (она задана командой newelm) в первом слое содержит 20 нейронов и имеет функцию активации compet, второй слой – 4 нейрона и имеет функцию активации softmax и третий слой (выходной слой) – 1 нейрон с функцией активации purelin.
10.Далее задаем количество циклов обучения нейронной сети Элмана (в нашем примере – 100), для этого вводим в рабочее окно следующую строку:
net1.trainParam.epochs = 100;
и нажимаем клавишу Enter.
11. Вывод результатов обучения нейронной сети Элмана осуществляем в данном учебном примере через каждые 100 циклов, для этого введем в окно Matlab (рис.8) следующую строку:
net1.trainParam.show = 100;
и нажимаем клавишу Enter.
12. Далее нейронная сеть Элмана переобучается с помощью функции train (рис. 12). Запишем это действие в командном окне строчкой:
net1 = train(net1, a, m);
и нажимаем клавишу Enter.
После этого нейронная сеть Элмана автоматически строит график результатов обучения нейронной сети, показанный на рис. 12. Из приведенного рисунка видно, что нейронная сеть обучилась в нашем случае за 66 циклов (66 Epochs).