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
   18   19   20   21   22   23   24   25   26   27   28