MATLAB神经网络实验-非线性逼近

一、导入数据

filename = 'data';
[data] = xlsread(filename,'A2:B72');
p = data( :,1);
t = data( :,2);
%保存数据到matlab的工作路径里面
save p.mat;
save t.mat; 
%赋值给输出p和输入t 
p=p';
t=t'; 
年龄(天)重量(mg)
15.0021.66
15.0022.75
15.0022.30
18.0031.25
860.00246.70
768.00232.12
756.00242.57
723.00230.77
705.00242.40
660.00231.00
648.00244.30
591.00234.70
554.00233.90
535.00209.70
513.00203.30
394.00224.82
375.00202.63
357.00195.31
354.00189.70
347.00188.38
338.00203.23
317.00216.41
312.00195.10
305.00186.80
301.00186.70
300.00186.09
285.00189.66
276.00186.26
258.00183.40
246.00176.13
237.00187.07
232.00161.29
232.00159.98
227.00173.73
225.00177.68
224.00178.86
219.00173.54
218.00173.03
218.00174.18
195.00161.10
192.00145.72
183.00153.22
165.00139.81
159.00142.15
150.00144.50
147.00152.20
147.00155.30
142.00140.58
142.00130.68
125.00134.90
98.00104.30
97.00110.00
91.00102.90
91.00101.70
85.00105.00
82.0092.50
75.0094.60
75.0086.10
72.0071.90
65.0065.31
65.0079.51
64.0079.09
61.0073.09
60.0081.00
50.0061.13
50.0063.47
44.0052.03
37.0046.88
37.0050.25
29.0040.55
28.0044.79

数据需要先进行排序

二、数据归一化

[p1,ps]=mapminmax(p);
[t1,ts]=mapminmax(t);

三、网络设计和训练

TF1='tansig';TF2='purelin'; 
net=newff(minmax(p1),[7,1],{TF1 TF2},'trainlm');%网络创建
%网络参数的设置
net.trainParam.epochs=10000;%训练次数设置
net.trainParam.goal=1e-3;%训练目标设置
net.trainParam.lr=0.1;%学习率设置
net.trainParam.show=25;%显示的间隔次数
% 指定训练参数
[net,tr]=train(net,p1,t1);

四、网络仿真

[normtrainoutput,trainPerf]=sim(net,p1,[],[],t1);%训练的数据

五、反归一化

%将所得的结果进行反归一化
trainoutput=mapminmax('reverse',normtrainoutput,ts);
%数据反归一化
trainvalue=mapminmax('reverse',t1,ts);%正常的验证数据

六、画图

plot(p,t)
hold on
plot(p,trainoutput)
title('数据拟合');
xlabel('年龄');
ylabel('重量')

七、结果和总结

第一次学习这个,在实验过程中,发现使用预测数据不能很好拟合,而使用实验数据可以获得较好的表现,但此问题仍未获得好的解答,希望指正一下。
在这里插入图片描述
在这里插入图片描述

函数逼近(Function Approximation )是函数论中的一个重要组成部分,其在数值计算中的作用是十分重要的。运用神经网络进行函数逼近,为函数逼近的发展提供了一条新的思路。 用神经网络函数逼近有许多优点: 首先,它提供了一个标准的逼近结构及逼近工具,这个工具可以随着隐层个数改变来达到任意精度; 其次,有标准的学习算法用以确定逼近函数的参数,并且这一过程是拟人的,即很好地模拟了人的学习过程;最后,能处理的数据对象十分广泛:适用于大规模的,高度非线性的,不完备的数据处理。 本文以几种典型神经网络为例(BP神经网络Function Approximation 、RBF神经网络www.BoliLib.com Approximation 、正交多项式基函数神经网络、样条基函数神经网络),对基于神经网络函数逼近方法进行了研究。神经网络函数逼近能力受神经元个数、学习率、学习次数和训练目标等因素的影响,因此,在研究过程中,充分运用神经网络非线性逼近能力,首先对几种用于函数逼近神经网络的结构及算法进行研究;再针对几种常用函数曲线,如正弦函数、指数函数、对数函数、三角函数等,分别用典型神经网络进行逼近,并对逼近效果进行比较,得到用于函数逼近神经网络选取规律。所得结论经过实际仿真测试,证明了其有效性。 本文的研究结果对函数逼近的研究具有借鉴意义。
MATLAB 神经网络43个案例分析》源代码&数据 《MATLAB 神经网络43个案例分析》目录 第1章 BP神经网络的数据分类——语音特征信号分类 第2章 BP神经网络非线性系统建模——非线性函数拟合 第3章遗传算法优化BP神经网络——非线性函数拟合 第4章神经网络遗传算法函数极值寻优——非线性函数极值寻优 第5章基于BP_Adaboost的强分类器设计——公司财务预警建模 第6章 PID神经元网络解耦控制算法——多变量系统控制 第7章RBF网络的回归--非线性函数回归的实现 第8章GRNN网络的预测----基于广义回归神经网络的货运量预测 第9章离散Hopfield神经网络的联想记忆——数字识别 第10章离散Hopfield神经网络的分类——高校科研能力评价 第11章连续Hopfield神经网络的优化——旅行商问题优化计算 第12章初始SVM分类与回归 第13章LIBSVM参数实例详解 第14章基于SVM的数据分类预测——意大利葡萄酒种类识别 第15章SVM的参数优化——如何更好的提升分类器的性能 第16章基于SVM的回归预测分析——上证指数开盘指数预测. 第17章基于SVM的信息粒化时序回归预测——上证指数开盘指数变化趋势和变化空间预测 第18章基于SVM的图像分割-真彩色图像分割 第19章基于SVM的手写字体识别 第20章 LIBSVM-FarutoUltimate工具箱及GUI版本介绍与使用 第21章自组织竞争网络在模式分类中的应用—患者癌症发病预测 第22章SOM神经网络的数据分类--柴油机故障诊断 第23章 Elman神经网络的数据预测----电力负荷预测模型研究 第24章概率神经网络的分类预测--基于PNN的变压器故障诊断 第25章基于MIV的神经网络变量筛选----基于BP神经网络的变量筛选 第26章LVQ神经网络的分类——乳腺肿瘤诊断 第27章 LVQ神经网络的预测——人脸朝向识别 第28章决策树分类器的应用研究——乳腺癌诊断 第29章极限学习机在回归拟合及分类问题中的应用研究——对比实验 第30章基于随机森林思想的组合分类器设计——乳腺癌诊断 第31章思维进化算法优化BP神经网络——非线性函数拟合 第32章小波神经网络的时间序列预测——短时交通流量预测 第33章模糊神经网络的预测算法——嘉陵江水质评价 第34章广义神经网络的聚类算法——网络入侵聚类 第35章粒子群优化算法的寻优算法——非线性函数极值寻优 第36章遗传算法优化计算——建模自变量降维 第37章基于灰色神经网络的预测算法研究——订单需求预测 第38章基于Kohonen网络的聚类算法——网络入侵聚类 第39章神经网络GUI的实现——基于GUI的神经网络拟合、模式识别、聚类 第40章动态神经网络时间序列预测研究——基于MATLAB的NARX实现 第41章定制神经网络的实现——神经网络的个性化建模与仿真 第42章并行运算与神经网络——基于CPU/GPU的并行神经网络运算 第43章神经网络高效编程技巧——基于MATLABR2012b新版本特性的探讨
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cifeng79

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值