Page 23 - 4721
P. 23
5. Ваги та зсуви кожного нейрона у вихідному шарі
визначають позицію та ширину радіальної базисної функції.
Кожен лінійний вихідний нейрон формує зважену суму цих
радіальних базисних функцій. З коректними вагами та зсувами
кожного шару та достатньою кількістю вхідних нейронів,
радіальна базисна мережа може відтворити форму будь-якої
функції з бажаною точністю. Розглянемо приклад з трьох
радіальних базисних функцій які масштабуються та
сумуються для видачі цільової функції:
a2 = radbas(x-1.5);
a3 = radbas(x+2);
a4 = a + a2*1 + a3*0.5;
plot(x,a,'b-',x,a2,'b--',x,a3,'b--',x,a4,'m-')
title('Weighted Sum of Radial Basis Transfer Functions');
xlabel('Input p');
ylabel('Output a');
6. Створимо нову радіальну базисну мережу:
eg = 0.02; % sum-squared error goal
sc = 1; % spread constant
net = newrb(X,T,eg,sc); %створення нової мережі
7. Розглянемо результат апроксимації:
plot(X,T,'+');
xlabel('Input');
X = -1:.01:1;
Y = net(X);
hold on;
plot(X,Y);
hold off;
22