资源简介
径向基网络预测地下水位的实例,m文件中包含样本和输出,输出平均相对误差,最大相对误差,显示实际值与拟合值,显示残差。
代码片段和文件信息
% rbf_underwater.m
%% 清理工作空间
clearclc
close all
%% 定义输入数据
% 输入
x = [ 1.5 1.8 4.0 13.0 5.0 9.0 10.0 9.0 7.0 9.5 5.5 12.0...
1.5 3.0 7.0 19.0 4.5 8.0 57.0 35.0 39.0 23.0 11.0 4.5;
-10.0 -10.0 -2.0 10.0 17.0 22.0 23.0 21.0 15.0 8.5 0 -8.5...
-11.0 -7.0 0 10.0 18.0 21.5 22.0 19.0 13.0 6.0 1.0 -2.0;
1.2 2.0 2.5 5.0 9.0 10.0 8.0 6.0 5.0 5.0 6.2 4.5...
2.0 2.5 3.0 7.0 10.0 11.0 5.5 5.0 5.0 3.0 2.0 1.0;
1.0 1.0 6.0 30.0 18.0 13.0 29.0 74.0 21.0 15.0 14.0 11.0...
1.0 2.0 4.0 0 19.0 81.0 186.0 114.0 60.0 35.0 4.0 6.0;
1.2 0.8 2.4 4.4 6.3 6.6 5.6 4.6 2.3 3.5 2.4 0.8...
1.3 1.3 4.1 3.2 6.5 7.7 5.5 4.6 3.6 2.6 1.7 1.0
];
y = [6.92 6.97 6.84 6.5 5.75 5.54 5.63 5.62 5.96 6.3 6.8 6.9...
6.7 6.77 6.67 6.33 5.82 5.58 5.48 5.38 5.51 5.84 6.32 6.56];
%% 划分训练数据与测试数据
% 训练输入向量
trainx = x(: 6:24);
% 训练样本对应的输出
trainy = y(6:24);
% 测试输入向量
testx = x(:1:5);
% 测试样本对应的输出
testy = y(1:5);
%% 对训练样本做插值
% 训练样本的个数
N = size(trainx 2);
X = [trainx; trainy];
% 网格
[xx0 yy0] = meshgrid(1:N 1:6);
[xx1yy1] = meshgrid(linspace(1N100) 1:6);
% 使用interp2函数做二维三次插值
XX = interp2(xx0 yy0 X xx1 yy1 ‘cubic‘);
% 形状复原
trainx = XX(1:5 :);
trainy = XX(6 :);
%% 创建网络
% 误差容限
er = 1e-8;
% 扩散因子
spread = 22;
% 神经元个数
N = 101;
net = newrb(trainx trainy er spread N);
%% 测试
yy = net(testx);
%% 计算、显示相对误差
e = (testy - yy)./testy;
fprintf(‘相对误差: \n ‘);
fprintf(‘%f ‘ e);
fprintf(‘\n\n‘);
% 平均相对误差
m = mean( abs(e) );
fprintf(‘平均相对误差: \n %f\n‘ m);
% 最大相对误差
ma = max(abs(e));
fprintf(‘最大相对误差: \n %f\n‘ ma);
% 显示实际值与拟合值
figure(1)
plot(1:5 testy ‘bo-‘)
hold on
plot(1:5 yy ‘r*-‘)
title(‘地下水测试结果‘)
legend(‘真实值‘ ‘预测值‘)
axis([1508])
% 显示残差
figure(2)
plot(1:5 abs(testy - yy) ‘-o‘)
title(‘残差‘)
axis([1500.3])
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2012-11-19 13:00 径向基网络预测地下水位\
文件 2189 2012-10-25 07:49 径向基网络预测地下水位\rbf_underwater.m
- 上一篇:心电特征提取程序
- 下一篇:关于matlab的100个问题
相关资源
- 英国设菲尔德Sheffield大学的MATLAB遗传
- matlab gui
- BP神经网络预测实例
- 阿尔法贝塔滤波器实例
- knn matting 国外写的knn-matting
- 随机共振的所有实例
- 可以用的经典密度聚类算法(DBSCAN)
- 时间序列ARMA建模实例
- 极限学习机elm的神经网络模型的源代
- PSO粒子群5种改进算法实例源码
- matlab数字信号处理-matlab数字信号处理
- MATLAB图像处理详解百度网盘
- 基于Matlab的机构动力学仿真分析-基于
- 使用BP神经元网络、ELM分类分类实例(
- matlab实现的偏最小二乘PLS和一个实例
- 基于PSO的PMU配置的简易实例 (PSO ba
- 5th WENO Matlab Example 计算流体力学 五阶
- 五次B样条曲线的程序和实例分析
- 四旋翼无人机的 三维动态仿真实例
- matlab实现的递归神经网络程序(LSTM)
- farrow滤波器测试实例
- gabijiao 该程序通过实例(函数)
- Kalman 用卡尔曼滤波跟踪目标实例
- MATLAB-and-labview 多个matlab与labview混合编
- 5 matlab的几种小波阈值去噪方法实例。
- mfccPSVM 本实例程序是基于matlab的语音
- Matrix-Completion 低秩矩阵方面的实例
- RPCA 鲁棒式主成分分析的实例
- synsq_toolbox_v1.1 同步挤压小波变换的源
- BP2648564
评论
共有 条评论