基于 LSTM 循环神经网络的排产预测

2022-08-19 08:19上海市建筑科学研究院有限公司上海建筑机械安全智能控制工程技术研究中心上海0003上海市建筑科学研究院科技发展有限公司上海01506
绿色建筑 2022年4期
关键词:神经网络时刻建模

周 恒 (1. 上海市建筑科学研究院有限公司上海建筑机械安全智能控制工程技术研究中心, 上海 0003;. 上海市建筑科学研究院科技发展有限公司, 上海 01506)

在“双碳”目标日益紧迫的背景下,中国信息通信研究院发布《企业数字化转型蓝皮报告—新 IT 赋能实体经济低碳绿色转型》,聚焦石油石化、电力和制造 3 个碳排放能耗大户,对其数字化最新进展、转型成效、痛点难点、相关技术、业务场景与转型路径进行了深度剖析。工信部智能制造试点示范项目数据显示,相关制造企业在数字化、智能化转型后,其能源利用率平均提升 16.1%,最高达到 1.25 倍,节能降耗正向赋能作用显著。通过以上数据可以看到,在推进“双碳”工作实施落地的过程中,新 IT 相关数字技术正成为驱动产业绿色低碳改造、实现节能降耗减排的重要引擎,正成为促进能源效率提升、能源结构优化的重要动力,正成为推动企业发展模式绿色低碳转型、实现人与自然和谐共生的重要手段。

推进数字化转型升级和实现智能制造,是传统制造业的必经之路,制造业的核心是生产,数字化生产是指企业应用新 IT 数字技术如数字孪生、人工智能、大数据等,从计划、质量、物料、设备等多维度实现自感知、自决策,以达到智能化的目标。作为数字化生产的源头,全面准确地预测分析客户的需求,对于计划调度的优化和产能的合理配置都是极其重要的,能够有效降低市场的不确定性对生产的冲击,对历史客户需求数据的分析以及对未来一段时间内的需求预测,是发挥大数据辅助决策功能的重要基础。

生产需求预测具有典型的时间序列数据特征,具有不稳定性、随机性、复杂性等特征。针对时间序列预测问题,现有的主要研究成果方向,主要包括经典的线性回归模型和基于机器学习的预测模型。由于时间序列数据基本属于非线性,因此机器学习的预测模型效果要远好于线性回归模型。本文选择机器学习中的 LSTM 循环神经网络,它具有出色的非线性拟合能力,能够有效提升预测效果。

1 循环神经网络

1.1 基础循环神经网络(RNN)

RNN 网络结构如图 1 所示,RNN 模型在 t 时刻的输入为 Xt,上一时刻的状态 zt-1传递到当前时刻,并与参与当前运算,获得当前时刻的输出 Yt和状态 zt,并将 zt传递到下一时刻,影响下一时刻的运算,运算公式简化如式(1)和(2)所示,其中的 a、b、c、u、v、w 为参数,通过模型训练后获得最优解。

图1 RNN 网络结构图

1.2 长短期记忆循环神经网络(LSTM)

相较于传统循环神经网络无差别的记忆所有信息,导致重要信息经过长期迭代后丢失,LSTM 采用了“门控制”的思想,忘记门将部分无用信息剔除,更新门确定给记忆细胞添加哪些信息,输出门筛选需要输出的信息[1]。因此,在深层次网络结构中,也能留下重要信息并传递下去,可以解决长期时序信息处理时梯度消失的问题[2]。LSTM 的单元网络结构如图 2 所示。

图2 LSTM 网络结构图

其中 LSTM 的核心部分为单元状态如式(3)所示。

遗忘门原理:ft是一个[0,1]的向量如公式(4)所示,通过单位乘运算,将上个单元的 Ct-1的部分特征信息保留到 Ct中。通常使用 sigmoid 作为激活函数,sigmoid 的输出是一个 [0,1] 区间内的值,计算公式如式(5)所示。

输入门原理: it如公式(6)所示,和 ft一样也是一个[0,1]的向量,用于控制将 Ct有用的特征更新 Ct,同样由 Xt和 ht-1经由 sigmoid 激活函数计算而成。Ct表示单元状态更新值如式(7)所示,由输入数据 Xt和隐节点 ht-1经由一个神经网络层得到,单元状态更新值的激活函数通常使用 tanh 如图 2 所示 。

输出门原理:输出 ht由 ot和单元状态 Ct计算得到,其中 ot的计算方式和 ft以及 it相同,ot、ht计算如式(9)、式(10)所示。

以上公式中的 Wf、Wi、Wo为随机权重参数,bf、bi、bo为偏置参数。

2 循环神经网络的产品排产预测模型

2.1 建模流程及方法

本文通过某建筑机械制造工厂的实际数据做分析,使用神经网络模型实现排产预测,建模和训练主流程如图 3 所示。收集 2019—2022年的某客户的销售数据,将 2019年和 2020年的数据作为训练数据集,2021年和 2022年的数据作为测试数据集,为了数据更快收敛将数据进行归一化处理。首先进行数据预处理,把数据转换成可以用于 RNN 输入的数据。接着建立 RNN 模型,通过训练数据集训练 RNN 模型,得到预测模型,再将测试数据导入预测模型获得预测结果,并将预测结果与实际数据做对比。

图3 建模和训练流程图

数据初始化:选用长度为 7 个数据的窗口,对第 8 个数据进行预测,对未来一周的产品销售情况进行预测。提取数据方法如图 4 所示,形成样本数 250 个,序列长度为 7 ,数据维度为 1。

图4 数据初始化方法

2.2 基础 RNN 建模及结果

首次建模参数采用单层 RNN 结构,输出 5 个神经元,激活函数选用 ReLU,输出层选用单神经元,激活函数选用 linear,配置参数中优化器选用 adam,损失函数选用最小均方误差(MSE)。

30 个样本计算一次梯度下降,经过 1000 次训练后,损失函数值为 0.0107,效果不是很理想。如图 5 所示,蓝色为测试数据集的实际曲线,黄色为预测数据曲线,在徒增和陡降时拟合的效果不佳。利用训练后的模型对测试组数据进行预测,结果如图 6 所示,两条曲线也是欠拟合状态。

图5 训练数据集预测结果图

图6 测试数据集预测结果图

2.3 LSTM 循环神经网络建模及结果

设置模型常量:采用函数式构造流程,设置 2 层 LSTM,1 层全连接,1 层 dropout,最后连接 1 层全连接。预测输入神经元个数为 5 个,LSTM 单元中的神经元个数为 10,LSTM 单元个数为 7,输出神经元个数为 1,学习率为 0.0007。

神经网络变量:随机产生输入和输出层的权重,以及 dropout 参数。

LSTM 的输入样本为(samples, timesteps, features),根据训练集生成时间序列样本数据集为(249,7,1)共 249 个样本,测试集生成时间序列样本数据集为(125,7,1)共 125 个样本,lookback 设置为 7,用前 7 天的数据来预测下一天的数据。

32 个样本计算一次梯度下降,经过 100 次训练后,损失函数值为 3.0750×10-8,效果较理想。如图 7 所示,为训练集预测数据,蓝色为训练数据集的实际曲线,黄色为预测数据曲线,曲线拟合度较高。如图 8 所示,为测试集预测情况,效果也较为理想。

图7 训练数据集预测结果图

图8 测试数据集预测结果图

2.4 RNN 建模与 LSTM 建模比较与优化

对建筑机械制造工厂的 2019—2022年的某客户的销售数据运用 RNN 和 LSTM 分别进行建模分析,通过损失函数对两个模型进行评价,结果如下表 1。

表1 RNN 与 LSTM 模型效果比较表

从两者预测结果图中可以看到两种模型都有预测滞后问题,把测试集的真实值及预测值画出来对比一下,就会发现 t 时刻的预测值往往是 t-1 时刻的真实值,也就是模型倾向于把上一时刻的真实值作为下一时刻的预测值,导致两条曲线存在滞后性,也就是真实值曲线滞后于预测值曲线,就像图 6 和图 8 所显示的那样。之所以会这样,是因为序列存在自相关性,如一阶自相关指的是当前时刻的值与其自身前一时刻值之间的相关性[2]。因此,如果一个序列存在一阶自相关,模型学到的就是一阶相关性。而消除自相关性的办法就是进行差分运算,也就是我们可以将当前时刻与前一时刻的差值作为我们的回归目标。

3 结语

基于 LSTM 双向循环神经网络算法的排产预测模型能够有效精准的预测客户的需求,提前量有利于生产计划安排,也助于产能的合理规划,错峰用电节约成本,提高抵抗疫情、气候、市场、原料等不确定因素的影响,使得企业具有更高的生产管理韧性。

猜你喜欢
神经网络时刻建模
基于神经网络的船舶电力系统故障诊断方法
MIV-PSO-BP神经网络用户热负荷预测
冬“傲”时刻
物理建模在教与学实践中的应用
基于改进Hopfield神经网络的对地攻击型无人机自主能力评价
在经历中发现在探究中建模
捕猎时刻
联想等效,拓展建模——以“带电小球在等效场中做圆周运动”为例
求距求值方程建模
三次样条和二次删除相辅助的WASD神经网络与日本人口预测