Читать практическое задание по Отсутствует: "Решение задач с использованием нейронных сетей в Matlab" Страница 1
Министерство образование и науки РФ
ГОУ ВПО «Ивановский государственный химико-технологический университет»
Кафедра Информатики и вычислительной техники
Лабораторная работа № 7
Тема Решение задач с использованием нейронных сетей в Matlab
Выполнили:
Романычева, Стрельников Цель работы Освоение технологии решения задач с использованием нейронных сетей в пакетах расширения Neural Networks Toolbox и Simulink. Задание №1 Создать нейронную сеть, реализующую функциональную зависимость Y =
между входом (x) и выходом (Y). Значения коэффициентов в этом случае заданы. Последовательность решения должна включать все 5 этапов, приведённые в примере.
-этап: «Подготовка данных для обучения сети»:
В первую очередь необходимо определиться с размерностью входного массива. Выберем количество значений функции равным N = 21, т.е. в качестве входных векторов массива используем значения функции y в точках х = 0;0.05; …1.0. Для обучения сети необходимо сформировать массив входных векторов для различных наборов параметров c, a и s. Каждый набор этих параметров является вектором-эталоном для соответствующего входного вектора.
Для подготовки входного и эталонного массивов воспользуемся следующим алгоритмом. Выбираем случайным образом значения компонент вектора - эталона С, A, B и вычисляем компоненты соответствующего входного вектора. Повторяем эту процедуру М раз и получаем массив входных векторов в виде матрицы размерностью N x M и массив векторов - эталонов в виде матрицы размерностью в нашем случае 3 х М. Полученные массивы мы можем использовать для обучения сети. Прежде чем приступать к формированию обучающих массивов, необходимо определиться с некоторыми свойствами массивов. Диапазон изменения параметров С, A, B. Выберем диапазоны изменения параметров C, A, B равными (0.1, 1). Значения, близкие к 0 и сам 0 исключим в связи с тем, что функция не определена при C = 0. Второе ограничение связано с тем, что при использовании типичных передаточных функций желательно, чтобы компоненты входных и выходных векторов не выходили за пределы диапазона (-1,1). В противном случае можно использовать методы нормировки, которые позволяют обойти это ограничение. Количество входных и эталонных векторов выберем равным М = 100.
Этого достаточно для обучения, а процесс обучения не займет много времени.
Сценарий формирования массива
% формирование массивов (входной массив P и эталоны T)
P=zeros(100,21);=zeros(3,100);=0:5.e-2:1;i=1:100=0.9*rand+0.1;=0.9*rand+0.1;=0.9*rand+0.1; =0.9*rand+0.1; (1,i)=c;(2,i)=a;(3,i)=b;(4,i)=x;(i,:)=a./(b+x.^c);
end; =P';
этап - Создание сети
Создадим следующую нейроную сеть: net=newff(minmax(P),[10,15,3],{'logsig','logsig','purelin'},'trainlm'); Где 25-это кол-во нейронов в 1-ом слое, 35-во втором, 40-в 3-ем, а 3 соответствует кол-во выходных параметров, мы применяем 1 функцию - logsig(экспонинцеальная), 2 - pureline (линейная), и 1- tansig.
Первый аргумент - матрица 21 ´ 2 минимальных и максимальных значений сигнала на каждом из входов - вычисляется с помощью процедуры minmax. Результатом выполнения процедуры newff является объект - нейронная сеть net заданной конфигурации. В данном случае мы выбираем обучение по методу: связанных градиентов Пауэлла-Била.
этап - Обучение сети.
Следующий шаг - обучение созданной сети. Перед обучением необходимо задать
Похожие работы
Интересная статья: Основы написания курсовой работы

(Назад)
(Cкачать работу)