Выполним исследование нейронной сети для аппроксимации выбранной функции, используя функции пакета NeUral Networks Toolbox. В состав пакета входит более 160 различных функций, дающих возможность создавать, обучать и исследовать нейронные сети.
Для выполнения работы необходимо запустить MATLAB и перейти в командное окно.
Создадим обобщенно-регрессионную НС (сеть типа GRNN) с именем а, реализующую функциональную зависимость между входом и выходом вида y = x^3 на отрезке [-1, 1], используя следующие экспериментальные данные:
x = -1:0.1:1;
N = length(x)
y = x.^3+rand(1,N)*0.5;
Проверку качества восстановления приведенной зависимости осуществим, ис
пользуя данные контрольной выборки
x1 = min(x):0.001:max(x)
значения y1 для контрольной выборки будут рассчитаны с помощью нейронной сети
y1 = sim(a,x1)
Листинг 1 — пример использования нейронной сети для аппроксимации экспериментальных данных.
clear
clc
%% исходные данные для обучения нейронной сети
x = -1:0.1:1;
N = length(x)
y = x.^3+rand(1,N)*0.5;
%% погрешность работы нейронной сети
delta = 0.2
a=newgrnn(x,y,delta);
%% данные для проверки нейронной сети
x1 = min(x):0.001:1
%% показать карту нейронной сети
view(a)
%% расчет точек с помощью нейронной сети
y1 = sim(a,x1)
%% построение графика
figure
plot(x,y)
hold on
plot(x1,y1)
legend(‘исходные данные’,’данные рассчитанные НС’)
grid on