自己测试人口预测的matlab实现:

x=[54167

55196

56300

57482

58796

60266

61465

62828

64653

65994

67207

66207

65859

67295

69172

70499

72538

74542

76368

78534

80671

82992

85229

87177

89211

90859

92420

93717

94974

96259

97542

98705

100072

101654

103008

104357

105851

107507

109300

111026

112704

114333

115823

117171

118517

119850

121121

122389

123626

124761

125786

126743

127627

128453

129227

129988

130756

131448

132129

132802

134480

135030

135770

136460

137510]';

% 该脚本用来做NAR神经网络预测

lag=3;    % 自回归阶数

iinput=x;    % x为原始序列(行向量)

n=length(iinput);

%准备输入和输出数据

inputs=zeros(lag,n-lag);

for i=1:n-lag

inputs(:,i)=iinput(i:i+lag-1)';

end

targets=x(lag+1:end);

%创建网络

hiddenLayerSize = 10; %隐藏层神经元个数

net = fitnet(hiddenLayerSize);

% 避免过拟合,划分训练,测试和验证数据的比例

net.divideParam.trainRatio = 70/100;

net.divideParam.valRatio = 15/100;

net.divideParam.testRatio = 15/100;

%训练网络

[net,tr] = train(net,inputs,targets);

%% 根据图表判断拟合好坏

yn=net(inputs);

errors=targets-yn;

figure, ploterrcorr(errors)                      %绘制误差的自相关情况(20lags)

figure, parcorr(errors)                          %绘制偏相关情况

%[h,pValue,stat,cValue]= lbqtest(errors)         %Ljung-Box Q检验(20lags)

figure,plotresponse(con2seq(targets),con2seq(yn))   %看预测的趋势与原趋势

figure, ploterrhist(errors)                      %误差直方图

figure, plotperform(tr)                          %误差下降线

%% 下面预测往后预测几个时间段

fn=7;  %预测步数为fn

f_in=iinput(n-lag+1:end)';

f_out=zeros(1,fn);  %预测输出

% 多步预测时,用下面的循环将网络输出重新输入

for i=1:fn

f_out(i)=net(f_in);

f_in=[f_in(2:end);f_out(i)];

end

% 画出预测图

figure,plot(1949:2013,iinput,'b',2013:2020,[iinput(end),f_out],'r')

用2014a版matlab运行后结果如下:

网络结构和各参数显示如下:

误差直方图

图1  自相关    图2 误差

图3 预测

注意在对结果好坏的判断中,仅仅看误差图是不够的,如果是一个好的预测,那么自相关性图中除了0阶自相关外,其他的自相关系数系数都不应该超过上下置信区间。还有其他的统计量和图表都都写在”%“后面了,如果需要,去掉就可用。最后的预测值为f_out,我的预测值为

138701.065269972    139467.632609654    140207.209707364    141210.109373609    141981.285378849    142461.332139592    143056.073139776

bp神经网络预测python人口预测_BP神经网络人口预测程序(matlab实现)相关推荐

  1. 交通状态预测 | Python实现基于LSTM的客流量预测方法

    交通状态预测 | Python实现基于LSTM的客流量预测方法 目录 交通状态预测 | Python实现基于LSTM的客流量预测方法 基本介绍 研究回顾 模型结构 程序设计 参考资料 基本介绍 Pyt ...

  2. 时间序列预测 | Python实现LSTM多变量时间序列数据预测

    时间序列预测 | Python实现LSTM多变量时间序列数据预测 目录 时间序列预测 | Python实现LSTM多变量时间序列数据预测 基本介绍 程序设计 参考资料 基本介绍 时间序列分析(Time ...

  3. bp神经网络实验报告郑航_bp神经网络实验报告

    bp神经网络实验报告 深 圳 大 学 实 验 报 告 实验课程名称: 人工神经网络技术 实验项目名称: BP 神经网络对蝴蝶花分类 学院: 专业: 软件工程 报告人: 学号: 班级: 同组人: 无 指 ...

  4. 卷积神经网络算法python实现_卷积神经网络概述及python实现-阿里云开发者社区...

    对于卷积神经网络(CNN)而言,相信很多读者并不陌生,该网络近年来在大多数领域都表现优异,尤其是在计算机视觉领域中.但是很多工作人员可能直接调用相关的深度学习工具箱搭建卷积神经网络模型,并不清楚其中具 ...

  5. python实现神经网络_3. Python矢量化实现神经网络

    本节课中,我们将学习如何利用Python的矢量化来实现神经网络. 根本上讲,矢量化的目的是为了提高计算的效率,加快计算速度. 矢量化 深度学习想要发挥其优势,一个最重要的前提条件是有足够大量的数据. ...

  6. 实用卷积神经网络 运用python pdf_解析卷积神经网络—深度学习实践手册 中文pdf高清版...

    解析卷积神经网络-深度学习实践手册从实用角度着重解析了深度学习中的一类神经网络模型--卷积神经网络,向读者剖析了卷积神经网络的基本部件与工作机理,更重要的是系统性的介绍了深度卷积神经网络在实践应用方面 ...

  7. 神经网络用python还是matlab_Matlab与神经网络学习笔记

    这是学习<Neural Network and Deep Learning>的笔记.在刚开始学习时,电脑安装的是python3,而作者用的是2.我想着反正要熟悉代码,大学期间MATLAB用 ...

  8. python预测算整理集合 python根据历史数据,预测未来数据 神经网络时间序列预测python 销售收入分析与预测 神经网络预测控制 Python 源码 4个lstm做数据预测的案例源代码

    python 预测未来/神经网络/负荷/飞机零件故障/链路预测程序源码 1.python实现TensorFlow2股票股价预测(源码) 2.负荷预测(py thon例子,实时负荷预测,15分钟到4小时 ...

  9. 神经网络讲解与实例,如何理解神经网络

    如何简单形象又有趣地讲解神经网络是什么? 神经网络最重要的用途是分类,为了让大家对分类有个直观的认识,咱们先看几个例子:垃圾邮件识别:现在有一封电子邮件,把出现在里面的所有词汇提取出来,送进一个机器里 ...

  10. 用python写bp神经网络作价格预测_bp神经网络预测python

    一文详解神经网络 BP 算法原理及 Python 实现 什么是梯度下降和链式求导法则 假设我们有一个函数 J(w),如下图所示. 梯度下降示意图 现在,我们要求当 w 等于什么的时候,J(w) 能够取 ...

最新文章

  1. DBUtils 笔记
  2. 查看显卡显存_强力散热别浪费 显卡超频这样搞
  3. LeetCode N-Queens
  4. Axis --SOAP引擎
  5. 搜索插入位置—leetcode35
  6. 消防给水及消火栓系统技术规范_消防给水及消火栓系统技术规范5.1 消防水泵 习题...
  7. linux文件编辑命令详细整理,Linux文件编辑命令vi详细说明
  8. 动态规划思想-----求数组中出现最多数
  9. 设计模式 (二十二) 责任链模式
  10. vdbench多主机运行指导
  11. Android开发一个简单的交互式App
  12. 本地调试微信接口花生壳等域名被限制拉黑
  13. Mac 系统更新系统安装包损坏丢失,崩溃
  14. 「石墨文档」在线协同办公系统平台免费在线办公文档兼容Office
  15. centos 7.5 安装桌面环境及报错
  16. php如何做防抖,别抖,OK? 操作系统抖动现象、网络抖动与延迟、函数抖动之防抖与节流,串讲...
  17. 火山PC(火山视窗)图形按钮制作器教程
  18. Python之Flask入门教程
  19. Unresolved reference(未解析的引用)——解决Pycharm无法导入包问题
  20. 计算机操作系统保研面试题整理(自用)

热门文章

  1. R_展示变量之间关系的图形
  2. 陈睿竟也是个“大龄二次元宅”?还不知道的集美看过来
  3. 文件上传进度条 c 语言,cgi 上传文件(c 语言) 进度条显示
  4. 100天python_GitHub - 332465723/Python-100-Days: Python - 100天从新手到大师
  5. githup找回被删除的文件
  6. 铁流:浪潮思科合资,高通中国设厂背后有什么故事
  7. java epoch_获取Java中的Epoch的天数,周数和月份
  8. Javascript面试题 把AaaBbbcccc 变成AaaBbbCcc
  9. 腾达无线路由器dns服务器,腾达无线路由器如何设置DNS
  10. VS使用NPOI替换word模板中的关键字