BP实现数据预测

简介: BP实现数据预测

前言


     近日受友人所托助力电力负荷预测试验,本篇结合《巧借循环对神经网络输出值控制得理想值【MATLAB】》(使用部分数据(由于复现文章导致数据不全)进行原理上的数据模拟进行试验,整体框架可供大家参考。



BP流程


     基于误差反向传播(Back Propagation,简称BP)可以看成正向传播信息与反向传播信息两个部分。当数据通过建立的BP神经网络模型,其输出值与实际值的误差大于我们规定的误差时,数据将反向传播。BP算法核心原理就是对各个节点输入变量求偏导,使得输出值与实际值误差达到最小,从而重新赋予全值与阈值。数据从输出层传送到中间的隐含层来调整其权值与阈值,并在输入层将权值与阈值重新定义再次正向传播数据。


直至误差值小于规定值时,完成-组历史数据的学习。


基本流程:


  1. 开始


  1. 输入数据矩阵


  1. 数据预处理,并进行分类


  1. 建立网络


  1. 采用BP算法进行训练,形成模型网络权值


  1. 基于误差反向传播完成负荷预测


  1. 输出预测结果


  1. 结束




仿真


试验数据表:

image.png


数据的选择和处理:


(1) 数据的选取与预处理


(2) 训练样本的选取


(3) 网络的初始化


神经网络算法模型


(1) 数据计算预处理


(2) 生成的预测矩阵


(3) 拆分数据集以创建培训和测试集


(4) 基于神经网络模型的预测


(5)产生的周线图\



demo 实现


整体框架可参考前言中所介绍,这里逐步介绍一下:\


  1. xlsread读取记录表中的数据并save方便调用


  1. 构造一个“死循环”:while 1 == 1 ----  end 结构


  1. 如下制作虚拟数据
new_data2014 = 1.14.*old_datas;
new_data2015 = 1.16.*old_datas;
new_data2016 = 1.18.*old_datas;
  1. 使用mapminmax 进行数据归一化(-1 1)之间


  1. 选择输入和输出
data_x = [X(1:72,3:5)';X(1:72,7:10)'];
data_y = X(1:72,6:6)';
  1. 搭建网络


  1. 构造2017年数据,并重复第4和5步计算处理2017年数据


  1. 通过sim 函数得到预测值(test_Y)


  1. 计算预测值和真值的平均绝对误差


mae = mean(abs(真值 - 预测值))


  1. 作判断if(当mae< 0.0176)


  1. 满足时跳出while 1 ==1  ----- end循环


  1. 存储 BP训练的网络(save MyNet.mat net)


  1. 新建.m文件并调用网络(MyNet.mat)


  1. 绘制2017年数据




相关文章
|
机器学习/深度学习 传感器 算法
【BP回归预测】基于BP神经网络的数据回归预测附matlab完整代码
【BP回归预测】基于BP神经网络的数据回归预测附matlab完整代码
|
机器学习/深度学习 人工智能 知识图谱
BP神经网络应用案例(一)
BP神经网络应用案例
224 0
|
机器学习/深度学习
BP神经网络应用案例(二)
BP神经网络应用案例
|
机器学习/深度学习 传感器 算法
TSO-BP分类预测 | Matlab金枪鱼算法优化BP神经网络分类预测
TSO-BP分类预测 | Matlab金枪鱼算法优化BP神经网络分类预测
|
机器学习/深度学习 传感器 算法
【BP时序预测】基于BP神经网络时间序列预测附MATLAB完整代码
【BP时序预测】基于BP神经网络时间序列预测附MATLAB完整代码
【BP时序预测】基于BP神经网络时间序列预测附MATLAB完整代码
|
机器学习/深度学习 传感器 算法
【BP时序预测】基于BP神经网络的时间序列预测附matlab完整代码
【BP时序预测】基于BP神经网络的时间序列预测附matlab完整代码
|
机器学习/深度学习 传感器 算法
【BP回归预测】基于BP神经网络温度预测附Matlab代码
【BP回归预测】基于BP神经网络温度预测附Matlab代码
|
机器学习/深度学习 传感器 数据采集
【BP分类】基于BP神经网络的数据分类预测附matlab代码
【BP分类】基于BP神经网络的数据分类预测附matlab代码
|
机器学习/深度学习 传感器 算法
BP预测 | MATLAB实现FA-BP多输入单输出回归预测(萤火虫算法优化BP神经网络)
BP预测 | MATLAB实现FA-BP多输入单输出回归预测(萤火虫算法优化BP神经网络)
BP预测 | MATLAB实现FA-BP多输入单输出回归预测(萤火虫算法优化BP神经网络)
|
机器学习/深度学习 传感器 算法
【BP分类】基于ADABOOST-BP算法实现数据分类附matlab代码
【BP分类】基于ADABOOST-BP算法实现数据分类附matlab代码