人工神经网络以其独特的信息处理能力在许多领域得到了成功的应用。它不仅具有强大的非线性映射能力,而且具有自适应、自学习和容错性等,能够从大量的历史数据中进行聚类和学习,进而找到某些行为变化的规律。
径向基函数(RBF)神经网络是一种新颖有效的前馈式神经网络,它具有最佳逼近和全局最优的性能,同时训练方法快速易行,不存在局部最优问题,这些优点使得RBF网络在非线性时间序列预测中得到了广泛的应用。1985年,Powell提出了多变量插值的径向基函数(Radial-Basis Function, RBF)方法。1988年,Broomhead和Lowe首先将RBF应用于神经网络设计,构成了径向基函数神经网络,即RBF神经网络。用径向基函数(RBF)作为隐单元的“基”构成隐含层空间,对输入矢量进行一次变换,将低维的模式输入数据变换到高维空间内,通过对隐单元输出的加权求和得到输出,这就是RBF网络的基本思想。
二:matlab代码实现%第三题:RBF对一二题的检验,及预测%第一问主要指标组合
shuju1=importdata('sumtotal.txt');%m*nX=shuju1(:,3:end);%测试数据归一化X=mapminmax(X',0,1)';
a=[35 11 24 22 14 7 18 63 52 53 9 36 10 37];X=X(:,a)';
Y=shuju1(:,2)';
%参数设置
a=randperm(length(Y));%在总数据中随机1000/10个样本来训练检验
P_train = X(:,a(1:1000));%输入向量
T_train = Y(:,a(1:1000));%目标分类向量T_t=T_train;
P_test=P_train;
T_test=T_train;
T_s=T_test;goal = 1e-3; %径向基函数目标误差为1e-6就spread1 = 01; %径向基函数扩展速度
net=newrb(P_train,T_train,goal,spread1,50000);%训练函数为newrb,%newrb创建网络
%% 仿真测试
Tn_sim_optimized =sim(net,P_test);
Tn_sim_optimized = mapminmax(Tn_sim_optimized,0,1);
Tn_sim_optimized = round(Tn_sim_optimized,0);
Tn_sim_optimized2 = sim(net,P_train);
Tn_sim_optimized2 = mapminmax(Tn_sim_optimized2,0,1);
Tn_sim_optimized2 = round(Tn_sim_optimized2,0);%统计错误率err1=sum(abs(Tn_sim_optimized-T_test))/length(T_test);
%拟合图
figure(1);splot(T_t);
hold on
plot(Tn_sim_optimized2,'r:');
title('RBF网络拟合曲线图一');
legend('实际值','预测值');
ylabel('比率');
xlabel('输入样本点');
figure(2);plot(T_s,'-*');hold on;plot(Tn_sim_optimized,'r:');
legend('期望输出','预测输出')
title('RBF网络预测曲线图一')
ylabel('比率')
xlabel('样本')