APP下载

多产品相互制约条件下的制造业产品需求预测研究

2021-03-16

计算机应用与软件 2021年3期
关键词:型号神经网络预测

李 琼 陈 佳 徐 斌

(大连海事大学航运经济与管理学院 辽宁 大连 116026)

0 引 言

制造业的生产活动作为零部件输入、产品输出的动态过程,为下游分销商销售提供生产,同时其采购量又与上游供应商供应量紧密相关。绝大多数制造企业通常同一系列下生产多种型号产品,同一时间段内多型号产品各自处于生命周期的不同阶段时,在内外各种影响因素条件下,多型号产品之间的需求难免不会产生相互制约影响作用。

在供应链环境中企业的生产能力、市场需求量通常有限情况下,与短生命周期类产品缺乏历史订单数据,产品价值迅速衰退等特点不同,本文研究的座椅产品等耐用品具有历史订单数据可靠、生命周期形态理想等特点。尽可能精准地预测产品的市场需求,为企业更好地提供决策管理,这对于制造业乃至整条供应链都具有重要意义。

1 相关工作

目前关于需求预测的研究多集中在供应链环境中结合制造企业环境对产品需求量的影响,很少关注同一系列下多型号产品之间相互制约对各自需求的影响。传统的时间序列预测方法[1-3],根据历史数据随时间变化规律进行需求预测,在自回归滑动平均模型的基础上,发展了向量自回归模型[4]、自回归积分滑动平均模型[5]等变体模型。石海波[6]利用支持向量机进行回归预测研究,此类方法针对样本数据的时序性可进行有效研究,但不能有效捕捉各影响因素之间存在的非线性关系,对于同系列的产品总需求量可达到好的预测效果,但对多型号产品具体的需求量不能精准预测。此外,由于存在多重共线性、误差序列相关等缺点,时间序列预测方法难免出现丢失信息量、模拟效果不佳等问题。

近年逐渐兴起的人工智能算法,通过复杂的非线性函数对映射关系描述,可充分挖掘学习数据中的特征,将数据转换为更高层次的表达,拟合和预测效果较好。基础的BP神经网络方法被逐渐用于预测研究,在需求预测方面显示出独有优势。Guo等[7]通过SVR预测模型和BP神经网络模型对同一组需求样本数据进行训练、测试和对比分析,发现BP神经网络模型预测误差更低,精确度更高。窦云杰等[8]研究总训练时间、训练强度、天气和技术熟练程度等影响因素,建立BP神经网络模型预测备件需求量。阮翔[9]研究用主成分分析法对材料价格、订单价格、合格率、订单量、实际成本等多个影响因素二次筛选剩下主要成分,改进后的BP神经网络模型需求预测结果误差更小。组合预测是一种有效的预测方法,其预测效果优于单一模型,能够降低使用单一模型的误差。郝雪梅等[10]针对企业产品销售量这类非平稳变化序列,采用回归分析法和神经网络方法组合预测能够提升预测精度。针对BP神经网络容易陷入局部最优从而导致预测误差较大的问题。毕建涛等[11]结合主成分分析法和粒子群优化算法对样本质量和初始权值两方面进行改进。丁红卫等[12]使用Adam优化算法代替传统随机梯度下降算法,通过历史数据对改进的BP神经网络模型训练,能够明显减少需求预测的误差[12]。

关于多产品间存在的需求相互制约作用,文献[13]建立模型通过描述多品牌创新扩展,探讨产品成长过程具有影响作用的竞争效应。针对不同产品的生命周期特点,文献[14-16]通过建立Bass模型族,针对缺乏历史数据、生命周期的形态不够理想的短生命周期产品,结合总库存成本、订货量、短缺拖后量和价格等影响因素近似预测需求。但对于具有一定生命周期的产品,还需要考虑在生命周期的不同时间段内不同的需求形态。通过以上研究总结出,产品需求与零部件成本、生产提前期等供应链环境,以及同行竞争等外部不确定性因素相关,产品需求量呈非线性特征。

神经网络由于自学习、自适应、容错性等特点在预测中显示出独有优势,但上述研究中均将每个数据样本看作相互独立的个体,无法考虑各数据样本之间的时间关系,不能更好地处理序列性的数据样本信息。吴培德等[17]应用时间序列预测模式,尝试将BP神经网络模型运用到需求量的短期预测,根据按时间排列的样本数据前面几期的采购量来预测稍后一期的采购量,但存在预测时间局限性、个别预测值相对误差较大等问题。

用户需求随着多产品相互制约作用以及外部因素等影响过程动态变化与时间相互关联。BP神经网络预测作为传统的神经网络预测方法,无法考虑数据在时间上的相关性,若直接采用神经网络学习和训练,将会产生较大的预测误差。因此,需要在神经网络的隐藏层单元,将需求量在时间上的相关性考虑进去。RNN(循环神经网络)[18]是一种专门为序列建模而设计的深度神经网络,在基础神经网路模型中的每一层节点之间增加了连接,能记忆之前的信息,再应用于当前输出计算。

2 提出问题

2.1 考虑多需求影响因素

供应链作为一个企业节点环环紧扣的有机整体,终端客户的产品需求与供应链环境上游的产品零部件成本、价格、生产提前期等因素紧密相关。通常供应链制造企业在人力、设备条件限制下生产能力有限,受客户需求的影响下游市场容量也是一定的。在各影响因素相互影响下,同一系列下多种型号产品之间对各自的需求量会产生相互制约作用。

预测多型号产品相互制约条件下的产品需求,需要研究各种影响因素下需求数据的特征,统计分析时间序列下的数据样本存在的特点与规律,据此设计具有针对性的建模方案进行需求预测。GRU作为传统循环神经网络的一种改进模型,针对制造企业产品的动态历史需求量数据处理具有优势,它能够考虑数据样本的时间序列前后输入关系,将隐含层的输入层与序列的上一个元素隐含层的输出共同作用到当前隐藏层。在RNN模型结构最重要的隐含层的节点之间建立连接,从而更好地捕获数据特征。

本文考虑以真实产品历史订单数据为对象,研究同系列下多种型号产品间对各自需求的制约影响。但若仅考虑通过历史订单所反映出的数据特征,且只采用GRU网络单一方法处理所有特征会降低预测精度。因此,考虑来自供应链环境下的产品需求影响因素、多型号产品自身属性所造成的需求差异,以及季节等外部环境的影响。通过BP神经网络模型将影响因素按属性分类,做不同数据处理后作为神经网络的输入变量,进一步实现某型号产品在多影响因素制约影响作用下的需求预测。

2.2 考虑时间序列下不同需求形态

目前绝大多数需求预测研究工作都是在单一时间尺度上进行,很少考虑产品在生命周期中的不同时间段内表现出不同的需求特征。在不同时间段内影响因素的不同特征值下各型号产品呈现出不同的需求特征。比如产品价格变化与需求变化存在有效联系,产品成熟期前降价较少,销量逐渐下降进入衰退期后,通过降价可刺激客户影响需求量。诸如此类多因素影响下,多型号产品之间存在相互制约作用,最终在同一时间段内多型号产品呈现出不同的需求形态。

考虑多型号产品在生命周期下的某一段时间内受某些因素影响,产品需求出现短期内的需求上升、平稳、下降等单一形态。一段时间内的单一需求形态可能会在时间序列中重复出现,呈现周期性需求波动变化。最终各型号产品在各自的生命周期内,还可能会呈现出长期的需求演化趋势。

长时间序列的样本数据通常包括多种信息叠加,可通过分解时间序列抽取不同分量后分别进行需求预测。所以本文考虑区别于传统的循环神经网络在单一时间线上预测客户需求,通过将生命周期内的单一时间线分段,研究不同时间段内的需求特征。鉴于供应链环境下存在多个用户需求影响因素的特点,考虑采用时序分解和组合预测进行研究。

3 模型建立

3.1 RNN(循环神经网络)

RNN神经网络在传统神经网络基础上考虑前后输入关系,在隐含层的节点间建立连接,将隐含层的输入层与序列中上一个元素隐含层的输出共同作用到当前的隐藏层。基本RNN结构图按时间展开如图1所示,t时刻神经元的输入包含了返回的t-1时刻的状态ht-1,将捕捉到的历史信息一并作为输入。权重矩阵W就是隐藏层上一次的值作为这一次的输入的权重,输入层到隐含层,隐含层到输出层的权重矩阵U、V均不变。

图1 基本RNN结构图按时间展开图

RNN中采用BPTT反向传播算法,其基本思想是沿着需要优化的参数的负梯度方向不断寻找更优的点直至收敛,本质与BP神经网络相同,还是梯度下降算法。随着隐含层数目的增多,传统RNN存在梯度消失问题[19-20],不能有效捕获长时间的依赖,学者提出长短期记忆网络(LSTM)[21]和门控循环单元(GRU)[22]来解决这一问题。

3.2 GRU(门控循环神经网络)

区别于传统的循环神经网络,GRU采用门控循环神经网络结构代替简单的tanh等函数作为神经元模块组成链式模型。GRU作为RNN一种改进模型,解决了RNN梯度消失问题。GRU将LSTM中遗忘门和输入门合并为更新门,将原来三个“门”结构组合优化成两个“门”,保持了LSTM预测效果基础上,训练参数更少。单神经元的内部详细结构如图2所示。其中:zt表示更新门,用于控制前一时刻的状态信息被带入到当前状态中的程度,其值越大说明前一时刻的状态信息带入越多;rt表示重置门,用于控制忽略前一时刻的状态信息的程度,其值越小说明忽略得越多;x表示神经元的输入值。

图2 单神经元内部结构

将GRU神经网络中的内部详细结构逐步分解:

zt=σ(Wz·[ht-1,xt])

(1)

式中:zt表示更新门,通过上一个神经元输出ht-1与本次神经元输入xt相加后乘以更新门权重Wz,再使用Sigmoid函数运算。更新门zt取值越大,当前神经元保留信息越多,而上一个神经元保留信息越少。更新门模型如图3所示。

图3 更新门模型

rt=σ(Wr·[ht-1,xt])

(2)

式中:rt表示重置门,通过上一个神经元输出ht-1与本次神经元输入xt相加后乘以重置门权重Wr,再使用Sigmoid函数运算。重置门rt取值为0,表示抛弃上一个神经元传来的某些无用信息只取当前神经元的输入作为输入。重置门模型如图4所示。

图4 重置门模型

(3)

图5 待定输入值模型

(4)

图6 输出值模型

每个神经元都在决策每次信息的输出量使得各神经元之间存在依赖关系,重置门对于短距离学习会比较活跃,更新门对于长距离学习会比较活跃。

3.3 基于时序分解的多制约影响因素下组合需求预测模型

通过研究不同时间序列下数据变化规律,可捕获到不同时序条件下的需求数据特征,在不同时间序列方面分别建立GRU神经网络模型,可同时训练,协同性强,最后再将三组预测结果加权得到最终预测结果Y1、Y2、Y3、Y4、Y5。

针对同一种型号产品,在GRU模型的预测基础上,再结合其他环境影响因素,进一步实现某型号产品需求的精准预测。通过GRU和BP组合神经网络预测模型,最终得出同系列多型号产品各自的需求量。图7为本文建立的预测模型架构图。

图7 预测模型架构

4 数据分析与模型处理

4.1 数据分析

数据集选取某销售商2013年至2018年Lily系列下A、B、C、D、E共5种型号座椅产品历史订单。首先处理原数据,去除包含缺失值与异常值的数据样本,保证数据集内无稀疏记录与无效记录。选取稳定长生命周期的各型号产品按周统计的销售数据共计5 120条,表1为5种型号产品2016年部分历史订单数据。

表1 2016年5种型号产品销售数据

4.2 不同时间序列下的多种需求形态

产品在完整生命周期内会大致呈现需求增长、成熟稳定、衰退三种需求形态。图8在长时间序列跨度中选取了部分历史需求数据,可以看出5种型号产品在各自的生命周期内不是呈现单一的增长等需求形态,而是在不同时间段内呈现出不同的需求波动。某一固定时间段内,5种型号产品呈现出不同的需求形态。

图8 5种型号产品需求数据图

各型号产品在某一短时间段内呈现上升、稳定、下降的单一需求形态。抽取产品D某一短期序列,图9中x轴表示时间间隔,y轴表示时间间隔下产品需求的比值。随着时间间隔增加,用户需求比值呈现正相关变化,时间间隔越小,用户需求相关性越强。由此可验证用户短期内的需求存在依赖关系。

图9 短期需求数据分析图

短时间内形成的单一需求波动会重复出现,如图10所示,在长时间序列下产品D大约以两周为周期波动呈现。不同的周期时间段上,每次波动变化的需求数据存在明显的波峰值,但是每次波动的波峰波谷值不相同。

图10 产品D周期性需求数据分析图

从长跨度的时间序列中能够看出,由于受某些因素影响,在不同的时间序列段中产品需求表现出一定的周期性,但总体还是会呈现出长期需求的大致演化趋势。图8中,产品B和产品D虽然在某些时间段内呈现需求上升过程,但是它的整体需求还是处于下降趋势;产品E初始阶段总体需求量较少,但能够看出总体需求水平还是处于上升趋势。图11为产品D的需求长期演化趋势。

图11 产品D长期性需求数据分析图

时间序列数据包括了多种信息的叠加,通过对样本数据特点分析,可在短时间序列、周期序列、长时间序列三个方面研究用户需求的数据特征。

时间序列可将作用于不同时序条件下的影响因素实现数据分离,短时间序列可将一条时间序列上呈现的多型号产品的多种需求形态,转化为捕获到在同一短时间段内多型号产品呈现出单一需求形态。周期性时间序列可捕获到长时间序列上的需求数据的周期性波动信息。长时间序列能捕获某型号产品在自身生命周期下的需求长期演化趋势。

通过研究5种型号产品历史订单数据所反映的需求特点,统计分析用户在不同时间段上的需求数据变化特点与规律,据此设计具有针对性的建模方案。

4.3 不同需求形态的数据建模

采用离散傅里叶变换DFT及离散傅里叶逆变换IDFT,可从需求时间序列中捕获所隐含的周期信息和频域特征。离散傅里叶变换DFT通对一个时域非周期的信号x(n)作变换,非周期的信号x(n)经过周期延拓得到一个周期信号xtilde(n)。离散傅里叶变换可将离散的时间序列变换为一组不同振幅、相位和频率的正弦信号叠加,完成时间序列由时域分析转换到频域分析。

离散傅里叶变换定义为:

(5)

式中:一个具有N个序列值的离散时间信号x(n)(n=1,2,…,N),N表示样本个数;j2=-1;k为频域中的频率点。

逆变换定义为:

(6)

时间序列的采样周期为T,采样频率f=(1/T),对应幅频图横轴上具有N个频率点,前后频率点的频率间隔△f=(1/T)。第k个频率点对应时域周期信号的周期为:

(7)

短期内的单一需求形态是一个平稳时间序列,不含明显周期性。将分离出单一的短期需求时间序列进行离散傅里叶变换可得到对应幅频图,提取出幅值较大的频率点后进行离散傅里叶逆变换,可得到时间序列中所隐含的周期特征。

在产品短时间内的单一需求形态上通过DFT得到的幅频图,以产品D为例,由于采样点过于密集显示效果不好,图12只显示了54组数据,x轴表示频率点,y轴表示振幅值。

图12 频率图

从产品需求时间序列中进一步分离出周期性特征,如图13所示,对于产品D,将p(周期)设置为两周,将t(长期)设置为一月。

图13 周期图

4.4 GRU模型处理步骤

通常大多数制造企业,生产的某一系列产品下具有多种型号产品。通过同一系列下多种型号产品各自历史订单量作为影响因素,研究同一系列下多种型号产品之间的相互制约影响。考虑针对具有时序性的多年历史订单数据,采用GRU网络建模,研究多型号产品之间的数据内部动态变化规律,学习序列数据中的潜在特征,实现同一系列下不同型号产品各自的需求量的预测。

步骤1样本数据预处理,通过sklearn的preprocessing.MinMaxScaler()对输入数据预处理,使其能被模型有效识别。本文选取将原始数据归一到指定的最小最大数[0,1]之间,利用式(8)对数据预处理。

(8)

式中:归一化后的数据矩阵X作为GRU神经网络的输入变量;Xmin(axis=0)表示输入矩阵中X的最小值;Xmax(axis=0)表示输入矩阵中X的最大值,axis表示矩阵的逐行。矩阵X中的元素(i,j)表示第i种型号产品,第j种产品特征。

矩阵表示每种型号产品在t时刻的历史订单量,可按时间序列顺序拼接,设置利用前三周的历史订单数据来预测第四周的产品需求量。

步骤2对输入矩阵数据统计分析,分别利用生命周期下呈现出的短期、周期、长期三种需求形态,捕获不同时序下的数据特征,分别建立GRU神经网络模型。

步骤3将以上三个GRU神经网络模型得到的预测结果w1、w2、w3赋予不同的权值φ1、φ2、φ3,加权求解得到GRU最终预测结果W。

4.5 多制约影响因素的选择

企业业务活动发生伴随着来源于各地的不确定性,销售活动作为供应链一个重要环节,用户产品需求与原材料成本的供应商、采购提前期的生产商等各个供应链节点企业相关。从供应链全局角度分析,将影响产品需求的相关主体简化归结为零部件供应商、制造企业和分销商三类,其中包含的需求影响因素有零部件供应量、采购提前期、订单量、订单总额、全年销售百分比、市场需求量等,如图14所示。

图14 供应链用户需求影响因素

此外,季节性等非线性因素往往对该类产品市场需求量有一定的影响,该类特征内部潜在规律并不明显,一般的时间序列无法基于此类影响因子进行合理预测,模拟效果不佳,不适合作为GRU神经网络输入。采用BP神经网络方法能有效处理这些外在因素对预测结果的影响,从中学习该类特征与需求的关系,能以任意精度逼近任意复杂的非线性映射,提高预测精度。

选取BP神经网络输入变量主要考虑两点:(1) 能够对输出变量影响大的数值变量。(2) 各个输入变量之间互不相关或相关性很小。

鉴于供应商与制造商长期稳定合作,所以供应商等级、品牌效应因素不作重点考虑。同一系列下多型号产品的零部件耗费量不同,与之相关的零部件价格以及采购涉及的人力物力成本都会影响各型号产品原材料总成本。综合统计各型号产品耗用数据,在供应商端选取原材料总成本作为需求影响因素之一。

制造商的产品生产消耗各型号产品的零部件、组件不同,零部件采购提前期会对产品的生产周期以及及时供应产生影响,所以选取各型号产品零部件的采购提前期作为需求影响因素之一。

产品定价在考虑零部件总成本基础上,综合考虑了各种不同型号的产品在生产工艺流程上存在的差异,以及工艺生产中所耗费的物流、时间、人力等成本,产品定价在其各因素相互制约影响下不同,最终影响客户的购买力,所以将产品价格作为需求影响因素之一。

制造商产品生产的订单量、订单总额、分销商的销售额、销售百分比都与产品需求量、产品价格紧密相关,此类相关因素不作重复考虑。

多型号的座椅类产品其自身属性,针对不同的用户特征也会造成需求差异,其承重量、面料材质、是否可升降折叠等因素都是用户选购的考虑因素。

此外,考虑季节对分销商的影响,季节影响因子通过向销售、管理人员进行调查分析方式确定,范围0~1之间,其大小表示该因素对该座椅产品销售的影响大小。产品销售量影响因素汇总如表2所示。

表2 产品销售量影响因素

在研究同一系列多型号产品对各自需求预测基础上,针对某一种型号产品,选取上步GRU预测出的需求量,再选取供应链环境中包含的原材料总成本、采购提前期、产品价格、季节影响因素业作为输入变量,进一步构建BP神经网络模型预测某型号产品需求量。

对于供应链环境下的影响因素原材料总成本、采购提前期等信息从制造业和销售报表中获取,产品价格、型号和承重量从产品详细信息单中获取。数据样本详细记录了每种型号产品的数据特征,该类连续性的属性可通过式(8)对数据归一化处理后直接作为神经网络的输入变量。

对于面料材质、是否可升降等一般离散属性,做One-Hot编码处理;产品型号属于ID离散属性,采用One-Hot方式编码后输入到不同嵌入层[23],把高维向量映射为低维向量做降维处理后再作为输入变量。

将多个影响因素属性值数据处理后连接,作为BP神经网络的输入变量。神经网络输出层表示系统所要实现的功能目标,输出层节点个数匹配目标的维度。本文神经网络的输出变量选取本月5种型号产品各自的需求量,设置输出层神经元个数为5。

表3抽取了产品D不同时间序列中的各个影响因素需求量、原材料总成本、采购提前期、产品价格、季节影响因子作为神经网络输入变量的值。

表3 某些时刻影响因素值

5 实 验

实验环境在硬件配置为CPU型号Intel酷睿i73 610QM、CPU主频2.4 GHz、内存容量4 GB(4 GB×1)DDR31 600 MHz、操作系统为Windows 8的PC机上进行。

本文使用Python 3.7构建实验模型,使用包括Pybrain、Numpy等Python库。GRU模型基于Python的Keras包实现,Keras以TensorFlow或Theano作为后端,是一个非常方便的深度学习框架。Keras对RNN模型进行封装,在layers包的recurrent模块中实现RNN相关层模型支持,并在wrapper模型中实现双向RNN包装器。采用Sigmoid函数作为激活函数处理神经网络模型的输出结果。

5.1 GRU神经网络模型

GRU神经网络模型的训练集,设置batch-size=100,epochs=10,随机分配批量梯度下降,每一批样本用来优化损失函数。样本分批后,一次epoch就是用完所有批次的样本用来梯度下降。样本分为100批,优化时需要做100次参数更新。每一个epoch参数更新100次,共10个epoch。以下是建立GRU神经网络的核心代码:

def build_model(inputs):

y=recurrent.GRU(5, activation=‘sigmoid’, dropout=0.5, recurrent_dropout=0.0, return_sequences=False)(inputs)

model=Model(inputs, y)

model.compile(optimizer=‘adam’,

loss=‘mse’)

return model

inputs=layers.Input(shape=(3, 5))

model=build_model(inputs)

model.summary()

GRU()参数说明:

units: RNN输出维度,匹配输出结果设置为5。

activation: 激活函数,默认为tanh。

dropout:控制输入线性变换的神经元失活的比例,0~1之间的浮点数,设置为0.5。

recurrent_dropout:控制循环状态的线性变换的神经元失活比例,0~1之间的浮点数。

return_sequences:用于stack两个层,False返回输出序列最后一个输出。

timesteps:表示认为每个输入数据与前多少个连续输入数据有关。

本文利用TensorFlow[24-25]提供的训练模型的Adam优化算法[26]进行参数优化,它是一个寻找全局最优点的优化算法,优点主要在于经过偏置校正后,每一次迭代学习率都有个确定范围,使得参数比较平稳。相比于基础随机梯度下降(SGD)算法,不容易陷于局部优点,而且速度更快。经过校正后最终Adam算法的更新为:

(9)

计算损失函数直接调用Keras自带的loss函数MSE:

(10)

5.2 时序分解下销量制约的GRU需求预测结果

采用GRU神经网络模型来预测Lily系列下5种型号产品的需求,数据样本选取了2013年至2018年的历史订单。在每一轮神经网络训练中,实验设置通过前3个数据样本预测第4个。选取该数据集的前80%作为训练集,用于神经网络数据训练,剩下的20%作为测试集,测试训练后的神经网络是否具有良好的泛化能力,设置学习率为0.000 1。图15-图19为5种型号产品的测试集的预测值与真实值对比图。

图15 A型号产品预测结果对比

图16 B型号产品预测结果对比

图17 C型号产品预测结果对比

图18 D型号产品预测结果对比

图19 E型号产品预测结果对比

5.3 添加外部制约影响因素的GRU-BP预测结果

在GRU预测基础上,针对某一种型号产品选取对应型号产品的原材料成本、采购提前期、产品价格、季节影响因子,作为BP神经网络的输入变量,图20-图24为输出5种型号产品的测试集预测值与真实值对比图。

图20 A型号产品预测结果对比

图21 B型号产品预测结果对比

图22 C型号产品预测结果对比

图23 D型号产品预测结果对比

图24 E型号产品预测结果对比

5种型号产品两次预测结果误差统计分析如表4所示,与单一的GRU预测结果比较,在加入了外部环境影响因素后,产品需求的在预测精度上有很大改善,其平均绝对百分比误差由29.11%减少到了11.59%,最大误差百分比最少可达到11.61%。

表4 5种型号产品两次预测结果误差 %

从样本数据中随机抽取A型号产品第13至第37周历史需求数据,对预测模型进行检验得到预测结果与实际值对比如图25所示。

图25 A型号产品抽取需求测试结果

5.4 对比评价

本文使用均方根误差(RMSE)和平均绝对误差(MAE)作为预测模型的评价指标:

(11)

(12)

为验证本文建立的组合神经网络预测模型的有效性,建立一般BP神经网络预测模型和普通循环神经网络预测模型(RNN)以及单独的GRU预测模型作为对照组以更好比较预测结果,模型预测结果如表5所示。

表5 多种预测模型预测结果评价

通过真实值与预测值的对比可以得出,本文构建的GRU-BP组合模型的能够对用户需求进行有效预测,其次针对用户需求时序特点的三方面分解进行预测也是有效的,说明本文构建的预测模型能够较好地对用户需求特征进行提取并充分利用。

6 结 语

针对产品需求的增长期、成熟稳定期、衰退期这三种生命周期内划分的不同时间序列段上的产品需求形态,在企业产能、市场容量受限情况下,再结合供应链和外部环境下的影响因素,通过GRU与BP神经网络组合神经网络,将长时间序列的多产品多需求形态转化为捕获同一时间段上多型号产品分布的各自单一需求形态,同时划分出的不同时间序列的循环神经网络模型可同时训练,协同性强。在基于时序分解的循环神经网络基础上,再考虑其他影响因素,达到对某型号产品需求的全面预测。GRU-BP组合模型叠加各个子序列获得最终预测结果,效果优于单一时间序列的预测,能降低各个模型的预测误差。

猜你喜欢

型号神经网络预测
2022年7月主要家用电器产品前10名型号价格变动分析
无可预测
基于神经网络的船舶电力系统故障诊断方法
航天型号研制配套计划管理的思考
选修2-2期中考试预测卷(A卷)
选修2-2期中考试预测卷(B卷)
选修2—2期中考试预测卷(A卷)
MIV-PSO-BP神经网络用户热负荷预测
基于改进Hopfield神经网络的对地攻击型无人机自主能力评价
三次样条和二次删除相辅助的WASD神经网络与日本人口预测