❶ matlab中用RBF神經網路做預測的代碼怎麼寫
^clc;
clearall;
closeall;
%%----
c_1=[00];
c_2=[11];
c_3=[01];
c_4=[10];
n_L1=20;%numberoflabel1
n_L2=20;%numberoflabel2
A=zeros(n_L1*2,3);
A(:,3)=1;
B=zeros(n_L2*2,3);
B(:,3)=0;
%createrandompoints
fori=1:n_L1
A(i,1:2)=c_1+rand(1,2)/2;
A(i+n_L1,1:2)=c_2+rand(1,2)/2;
end
fori=1:n_L2
B(i,1:2)=c_3+rand(1,2)/2;
B(i+n_L2,1:2)=c_4+rand(1,2)/2;
end
%showpoints
scatter(A(:,1),A(:,2),[],'r');
holdon
scatter(B(:,1),B(:,2),[],'g');
X=[A;B];
data=X(:,1:2);
label=X(:,3);
%%Usingkmeanstofindcintervector
n_center_vec=10;
rng(1);
[idx,C]=kmeans(data,n_center_vec);
holdon
scatter(C(:,1),C(:,2),'b','LineWidth',2);
%%Calulatesigma
n_data=size(X,1);
%calculateK
K=zeros(n_center_vec,1);
fori=1:n_center_vec
K(i)=numel(find(idx==i));
end
%
%thencalucatesigma
sigma=zeros(n_center_vec,1);
fori=1:n_center_vec
[n,d]=knnsearch(data,C(i,:),'k',K(i));
L2=(bsxfun(@minus,data(n,:),C(i,:)).^2);
L2=sum(L2(:));
sigma(i)=sqrt(1/K(i)*L2);
end
%%Calutateweights
%kernelmatrix
k_mat=zeros(n_data,n_center_vec);
fori=1:n_center_vec
r=bsxfun(@minus,data,C(i,:)).^2;
r=sum(r,2);
k_mat(:,i)=exp((-r.^2)/(2*sigma(i)^2));
end
W=pinv(k_mat'*k_mat)*k_mat'*label;
y=k_mat*W;
%y(y>=0.5)=1;
%y(y<0.5)=0;
%%
[W1,sigma1,C1]=RBF_training(data,label,10);
y1=RBF_predict(data,W,sigma,C1);
[W2,sigma2,C2]=lazyRBF_training(data,label,2);
y2=RBF_predict(data,W2,sigma2,C2);
(1)rbf神經網路畢業設計擴展閱讀
matlab的特點
1、具有完備的圖形處理功能,實現計算結果和編程的可視化;
2、友好的用戶界面及接近數學表達式的自然化語言,使學者易於學習和掌握;
3、功能豐富的應用工具箱(如信號處理工具箱、通信工具箱等) ,為用戶提供了大量方便實用的處理工具。
❷ 畢設臨近,哪位大神會用matlab編寫RBF神經網路的代碼
那篇《基於RBF神經網路的校園網路流量預測研究》里的數據看不到,請把數據貼出來便於分析編寫其代碼。
❸ Rbf神經網路原理
rbf神經網路即徑向基函數神經網路(Radical Basis Function)。徑向基函數神經網路是一種高效的前饋式神經網路,它具有其他前向網路所不具有的最佳逼近性能和全局最優特性,並且結構簡單,訓練速度快。同時,它也是一種可以廣泛應用於模式識別、非線性函數逼近等領域的神經網路模型。
❹ matlab程序代碼 RBF神經網路車牌識別
車牌識別技術(Vehicle License Plate Recognition,VLPR) 是計算機視頻圖像識別技術在車輛牌照識別中的一種應用。車牌識別技術要求能夠將運動中的汽車牌照從復雜背景中提取並識別出來,通過車牌提取、圖像預處理、特徵提取、車牌字元識別等技術,識別車輛牌號,目前的技術水平為字母和數字的識別率可達到96%,漢字的識別率可達到95%。車牌識別在高速公路車輛管理中得到廣泛應用,電子收費(ETC)系統中,也是結合DSRC技術識別車輛身份的主要手段。
❺ RBF神經網路和BP神經網路有什麼區別
1.RBF 的泛化能力在多個方面都優於BP 網路, 但是在解決具有相同精度要求的問題時, BP網路的結構要比RBF 網路簡單。
2. RBF 網路的逼近精度要明顯高於BP 網路,它幾乎能實現完全逼近, 而且設計起來極其方便, 網路可以自動增加神經元直到滿足精度要求為止。但是在訓練樣本增多時, RBF 網路的隱層神經元數遠遠高於前者, 使得RBF 網路的復雜度大增加, 結構過於龐大, 從而運算量也有所增加。
3. RBF神經網路是一種性能優良的前饋型神經網路,RBF網路可以任意精度逼近任意的非線性函數,且具有全局逼近能力,從根本上解決了BP網路的局部最優問題,而且拓撲結構緊湊,結構參數可實現分離學習,收斂速度快。
4. 他們的結構是完全不一樣的。BP是通過不斷的調整神經元的權值來逼近最小誤差的。其方法一般是梯度下降。RBF是一種前饋型的神經網路,也就是說他不是通過不停的調整權值來逼近最小誤差的,的激勵函數是一般是高斯函數和BP的S型函數不一樣,高斯函數是通過對輸入與函數中心點的距離來算權重的。
5. bp神經網路學習速率是固定的,因此網路的收斂速度慢,需要較長的訓練時間。對於一些復雜問題,BP演算法需要的訓練時間可能非常長,這主要是由於學習速率太小造成的。而rbf神經網路是種高效的前饋式網路,它具有其他前向網路所不具有的最佳逼近性能和全局最優特性,並且結構簡單,訓練速度快。
❻ 用c語言編寫RBF神經網路程序
RBF網路能夠逼近任意的非線性函數,可以處理系統內的難以解析的規律性,具有良好的泛化能力,並有很快的學習收斂速度,已成功應用於非線性函數逼近、時間序列分析、數據分類、模式識別、信息處理、圖像處理、系統建模、控制和故障診斷等。
簡單說明一下為什麼RBF網路學習收斂得比較快。當網路的一個或多個可調參數(權值或閾值)對任何一個輸出都有影響時,這樣的網路稱為全局逼近網路。由於對於每次輸入,網路上的每一個權值都要調整,從而導致全局逼近網路的學習速度很慢。BP網路就是一個典型的例子。
如果對於輸入空間的某個局部區域只有少數幾個連接權值影響輸出,則該網路稱為局部逼近網路。常見的局部逼近網路有RBF網路、小腦模型(CMAC)網路、B樣條網路等。
附件是RBF神經網路的C++源碼。
❼ 訓練好的RBF徑向基神經網路這么查看相關參數,例如訓練時間,epochs,MSE
newrb()可以用來設計一個近似徑向基網路,用newrb()創建RBF網路是一個不斷嘗試的過程,在創建過程中,需要不斷增加中間神經元的個數,直到網路的輸出誤差滿足預先設定的值為止。和newrb(),newrbe()用於創建一個嚴格的徑向基網路,它能夠基於設計向量快速地、無誤差地設計一個徑向基網路。這就是兩個函數運行時間相差很大的原因。
❽ rbf神經網路和bp神經網路有什麼區別
bp神經網路學習速率是固定的,因此網路的收斂速度慢,需要較長的訓練時間。對於一些復雜問題,BP演算法需要的訓練時間可能非常長,這主要是由於學習速率太小造成的。而rbf神經網路是種高效的前饋式網路,它具有其他前向網路所不具有的最佳逼近性能和全局最優特性,並且結構簡單,訓練速度快。