日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

python rbf神经网络_原创,基于径向基函数(RBF)神经网络RBF网络的举例应用!

發(fā)布時間:2025/6/17 60 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python rbf神经网络_原创,基于径向基函数(RBF)神经网络RBF网络的举例应用! 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

function RBF_NN_Example()

clc

clear all

%??創(chuàng)建訓(xùn)練樣本

%??線性函數(shù)的訓(xùn)練

Mn_Train=100*[rand(1,5) rand(1,5)+0.5 rand(1,5)+1 rand(1,5)+1.5;...

rand(1,5) rand(1,5)+0.5 rand(1,5)+1 rand(1,5)+1.5];

n=size(Mn_Train,2);

%??Mn_Train 為2*20的矩陣

Nn_Train=[2*Mn_Train;3*Mn_Train(1,:)];

%??Nn_Train 為3*20的矩陣

%??將訓(xùn)練樣本進(jìn)行聚類分析,分為4類

H=4;

%??將樣本歸一化

[SampleX,pmin,pmax,SampleY,tmin,tmax]=premnmx(Mn_Train,Nn_Train);

%??將訓(xùn)練樣本進(jìn)行聚類并形成聚類中心

options=statset('Display','final');

[index,center]=kmeans(SampleX',H,'Distance','city',...

'Replicates',10,'Options',options);

figure(1)

X=SampleX';

set(figure(1),'color','w')

hold on

plot(X(index==1,1),X(index==1,2),'ro','markersize',9,'markeredgecolor',...

'k','markerfacecolor','r')

plot(X(index==2,1),X(index==2,2),'go','markersize',9,'markeredgecolor',...

'k','markerfacecolor','g')

plot(X(index==3,1),X(index==3,2),'mo','markersize',9,'markeredgecolor',...

'k','markerfacecolor','m')

plot(X(index==4,1),X(index==4,2),'bo','markersize',9,'markeredgecolor',...

'k','markerfacecolor','b')

plot(center(:,1),center(:,2),'ko','markersize',15,'markeredgecolor',...

'k','markerfacecolor','k')

title('樣本聚類','fontsize',16)

grid on

hold off

%??spread徑函數(shù)的擴(kuò)展速度設(shè)置

spread=0.3;

%??基于高斯函數(shù)的隱藏層神經(jīng)元的輸出

%??形成4*20的矩陣

%??閾值

b=ones(1,H)*0.8326/spread;

center=center';

Hidden_Out=zeros(H,size(SampleX,2));

for i=1:H

for j=1:size(SampleX,2)

Hidden_Out(i,j)=exp(-b(i)*(norm(SampleX(:,j)-center(:,i)).^2));

end

end

%??對輸出層權(quán)重的訓(xùn)練,最速下降法

MaxIteration=1000;

Iteration=0;

tol=1e-3;

lemda=0.001;

%??初始化參數(shù)和閾值

N=size(SampleY,1);

W=0.5*rand(N,H)-0.1;

B=0.5*rand(N,1)-0.1;

%??網(wǎng)絡(luò)輸出值

NetOut=W*Hidden_Out+repmat(B,1,n);

Resid=SampleY-NetOut;

%??均方誤

MSE_error=sumsqr(Resid)./(N*n);

%??訓(xùn)練權(quán)重開始

while Iteration

NetOut=W*Hidden_Out+repmat(B,1,n);

Resid=SampleY-NetOut;

MSE_error=sumsqr(Resid)./(N*n);

Delta=Resid;

%??最速下降訓(xùn)練

dW=Delta*Hidden_Out';

dB=Delta*ones(n,1);

W=W+lemda*dW;

B=B+lemda*dB;

if MSE_error

break;

end

Iteration=Iteration+1;

end

NetOut=W*Hidden_Out+repmat(B,1,n);

Samplefit=postmnmx(NetOut,tmin,tmax);

%??將擬合樣本和原樣本比較

figure(2)

set(figure(2),'color','w')

hold on

subplot(3,1,1)

hold on

plot(1:20,Nn_Train(1,:),'ro-','markersize',8)

plot(1:20,Samplefit(1,:),'bo-','markersize',8)

title('樣本擬合對比')

subplot(3,1,2)

hold on

plot(1:20,Nn_Train(2,:),'ro-','markersize',8)

plot(1:20,Samplefit(2,:),'bo-','markersize',8)

title('樣本擬合對比')

subplot(3,1,3)

hold on

plot(1:20,Nn_Train(3,:),'ro-','markersize',8)

plot(1:20,Samplefit(3,:),'bo-','markersize',8)

title('樣本擬合對比')

hold off

總結(jié)

以上是生活随笔為你收集整理的python rbf神经网络_原创,基于径向基函数(RBF)神经网络RBF网络的举例应用!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。