資源簡介
小腦神經網絡進行正弦曲線擬合的matlab程序,歡迎大家參考指正!!!

代碼片段和文件信息
%%%%%%%%要求實現(xiàn)y=sinx函數(shù)的CMAC擬合%%%%%%%%
%%%%%%%%%%%%%%%%%%?初始化%%%%%%%%%%%%%%%%%%%%%%%%%%
clear
clc
max=5000;%%%%最大循環(huán)次數(shù)
c=5;%%%%%重復覆蓋的區(qū)域的內存?zhèn)€數(shù)
data=72;%%%%需要輸入的數(shù)據(jù)個數(shù)
mem=77;%%%%需要的內存?zhèn)€數(shù)
error=0.0001;%%%誤差精確度
alpha=0.3;%%%%調整步長
?A=uint8(zeros(datac));%%%用于存儲每個數(shù)據(jù)所激活的內存空間地址
w=rand(122);%%%%初始化權值
%%%%%%%%求出訓練數(shù)據(jù)的預測值%%%%%%%%
for?i=1:data
???x(i)=i/360*pi*10;
???d(i)=sin(i/360*pi*10);
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for?i=1:data
????sw(i)=i;
end
for?i=1:c
??for?j=1:data
????temp=0;
????for?k=1:i-1
?????temp=ceil(k/c+1)+temp;
end??
???A(ji)=temp+(j-i)/c+1;
end?
end
for?m=1:max
??for?i=1:data
??out=0;
??for?j=1:c
???out=w(A(ij))+out;
end
??y(i)=out;
??e(i)=d(i)-y(i);
??if(abs(e(i)/d(i)) ??????
???continue;
else
???for?k=1:c
???w(A(ik))=w(A(ik))+alpha/3*e(i);
end
end
??end
end
%%%%%%%%%%%%%%%%%%%%%%?顯示%%%%%%%%%%%%%%%%%%%%%
figure
plot(xd‘r-‘);
hold?on
plot(xy‘g-‘);
hold?on
plot(xe‘b-‘);
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1056??2011-12-14?14:46??myamac.m
-----------?---------??----------?-----??----
?????????????????1056????????????????????1
評論
共有 條評論