作业帮 > 综合 > 作业

MATLAB中如何用BP和RBF网络表示一个y=cos( t) 函数

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/01 00:24:42
MATLAB中如何用BP和RBF网络表示一个y=cos( t) 函数
y0=0.5
BP的:
p=1:10;
t=cos(p);
SamNum=10;
TextNum=10;
ForcastNum=10;
HiddenNum=8;
InDim=1;
OutDim=1;
[SamIn,ss]=mapminmax(p);p
[tn,ts]=mapminmax(t);t
rand('state',sum(100*clock));
NoiseVar=0.01;Noise=NoiseVar*randn(1,SamNum);
SamOut=tn+Noise;
TestSamIn=SamIn;
TestSamOut=SamOut;
MaxEpochs=10000;
lr=0.035;
E0=0.65*10^(-3);
W1=0.5*rand(HiddenNum,InDim)-0.1;
B1=0.5*rand(HiddenNum,1)-0.1;
W2=0.5*rand(OutDim,HiddenNum)-0.1;
B2=0.5*rand(OutDim,1)-0.1;
ErrHistory=[];
for i=1:MaxEpochs
\x05HiddenOut=logsig(W1*SamIn+repmat(B1,1,SamNum));
\x05NetworkOut=W2*HiddenOut+repmat(B2,1,SamNum);
\x05Error=SamOut-NetworkOut;
\x05SSE=sumsqr(Error);
\x05ErrHistory=[ErrHistory SSE];
if SSE
再问: 虽然我已经写出来交了,但是还是谢谢了~