CN117314492A - 销量预测方法、装置、计算机设备及存储介质 - Google Patents
销量预测方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN117314492A CN117314492A CN202311294073.1A CN202311294073A CN117314492A CN 117314492 A CN117314492 A CN 117314492A CN 202311294073 A CN202311294073 A CN 202311294073A CN 117314492 A CN117314492 A CN 117314492A
- Authority
- CN
- China
- Prior art keywords
- prediction
- data
- prediction model
- sales
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 92
- 238000003860 storage Methods 0.000 title claims abstract description 20
- 238000012549 training Methods 0.000 claims abstract description 111
- 238000012216 screening Methods 0.000 claims abstract description 15
- 238000004422 calculation algorithm Methods 0.000 claims description 42
- 230000006870 function Effects 0.000 claims description 38
- 230000015654 memory Effects 0.000 claims description 25
- 239000002245 particle Substances 0.000 claims description 22
- 238000005457 optimization Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 15
- 238000004891 communication Methods 0.000 claims description 7
- 230000009467 reduction Effects 0.000 claims description 7
- 239000011159 matrix material Substances 0.000 claims description 6
- 235000019504 cigarettes Nutrition 0.000 description 18
- 238000003066 decision tree Methods 0.000 description 11
- 230000008901 benefit Effects 0.000 description 9
- 230000007774 longterm Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000002790 cross-validation Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 238000009825 accumulation Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000002349 favourable effect Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000005065 mining Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 238000012417 linear regression Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000000737 periodic effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000001932 seasonal effect Effects 0.000 description 3
- 238000012706 support-vector machine Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 241000208125 Nicotiana Species 0.000 description 2
- 235000002637 Nicotiana tabacum Nutrition 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000011985 exploratory data analysis Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000000513 principal component analysis Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 102100035932 Cocaine- and amphetamine-regulated transcript protein Human genes 0.000 description 1
- 101000715592 Homo sapiens Cocaine- and amphetamine-regulated transcript protein Proteins 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000000546 chi-square test Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000004821 distillation Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
- G06Q30/0202—Market predictions or forecasting for commercial activities
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Marketing (AREA)
- General Engineering & Computer Science (AREA)
- General Business, Economics & Management (AREA)
- Artificial Intelligence (AREA)
- Economics (AREA)
- Game Theory and Decision Science (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及销量预测技术领域,公开了销量预测方法、装置、设备及存储介质,该销量预测方法包括:获取目标产品的销量数据,并构建销量数据集;计算销量数据集的特征重要性,并筛选销量数据集的重要特征数据;将重要特征数据输入至预设的销量数据预测模型,得到目标产品的销量预测结果;其中,预设的销量数据预测模型,是基于第一预测模型和第二预测模型的输出结果与历史销量预测数据对应的和历史销量真实数据进行训练得到的。通过实施本发明,可以结合第一预测模型和第二预测模型来提高预测准确率,解决传统的产品销量预测方法中采取单个模型进行预测,无法同时准确捕捉产品销量数据中的多种特征,模型泛化能力不足及预测能力有限的问题。
Description
技术领域
本发明涉及数字信息处理技术领域,具体涉及销量预测方法、装置、设备及存储介质。
背景技术
产品投放是商业公司一项非常重要的工作,由投放决定的销售订单将直接决定了采购计划、生产计划、物流计划等后续各环节的准备和实施,从而影响着商业公司的经济效益。具体来说,公司需要制定下一年度经济运行调控目标,结合市场需求预测情况,制订下一年度产品销售计划。如果产品销量估计不准确会导致在生产过程中频繁进行计划调整,过多的插单使整个生产效率难以提升,管理混乱,精益生产难以实现。因此,从历史的产品销量中准确预测出下一阶段的产品销量具有重要意义。
目前,由于产品销量数据受到季节性、节假日和随机性等多种因素的影响,这些因素在长期产品销量预测中可能相互作用,使得产品销量预测过程变成更加复杂,预测精度难以得到保障。传统的产品销量预测方法往往采取单个模型进行预测,比如线性回归、支持向量机、神经网络等方法。然而,这些传统预测方法无法同时准确捕捉产品销量数据中的多种特征,存在模型泛化能力不足、预测能力有限等问题。
发明内容
有鉴于此,本发明提供了一种销量预测方法、装置、设备及存储介质,以解决传统的产品销量预测方法往往采取单个模型进行预测,比如线性回归、支持向量机、神经网络等方法,这些传统预测方法无法同时准确捕捉产品销量数据中的多种特征,模型泛化能力不足、预测能力有限的问题。
第一方面,本发明提供了一种销量预测方法,所述方法包括:获取目标产品的销量数据,并构建销量数据集;计算所述销量数据集的特征重要性,并筛选所述销量数据集的重要特征数据;将所述重要特征数据输入至预设的销量数据预测模型,得到所述目标产品的销量预测结果;其中,所述预设的销量数据预测模型,是将所述目标产品的历史销量预测数据输入至第一预测模型和第二预测模型,并基于所述第一预测模型和第二预测模型的输出结果与所述历史销量预测数据对应的和历史销量真实数据进行训练得到的。
本实施例提供的销量预测方法,首先,通过计算所述销量数据集的特征重要性来筛选所述销量数据集的重要特征数据,将重要性数值化,提高了重要特征数据筛选的全面性和准确性;其次,通过采用可以直接生成多步预测结果的Informer模型进行卷烟销量预测,并进一步结合了XGBoost模型来提高预测准确率,由于这两个模型的原理相差较大而使得预测结果相关性较低,构成组合模型有利于对卷烟销量数据中有用信息进行充分挖掘和利用。最后,本发明还采用了PSO算法,通过不断寻找权重系数的最优组合来得到最优的预测结果,这种组合预测的方法可以充分利用两个模型的优势,提高预测准确率,为销量预测提供更加可靠的支持,提高了销量预测的可靠性。
在一种可选的实施方式中,训练所述预设的销量数据预测模型的过程,包括:获取所述目标产品的历史销量数据,基于所述历史销量数据构建第一训练数据集和第二训练数据集,所述第一训练数据集包含多个第一数据对,所述第二训练集包含一个第二数据对;利用所述第一训练数据集分别训练第一预测模型和第二预测模型,得到所述第一预测模型和第二预测模型;将所述第二训练数据集分别输入所述第一预测模型和第二预测模型,基于所述第一预测模型和第二预测模型的输出结果确定权重系数;基于所述第一预测模型、所述第二预测模型和所述权重系数,构建所述预设的销量数据预测模型。
本实施例提供的销量预测方法,通过利用往年的历史销量数据构建数据对,分别训练第一预测模型和第二预测模型,将机器学习技术与启发式算法进行结合,能够有效的预测下一年的卷烟销量,同时提高了卷烟销量预测的准确性,预测结果更加符合实际情况。
在一种可选的实施方式中,所述利用所述第一训练数据集分别训练第一预测模型和第二预测模型,得到所述第一预测模型和第二预测模型,包括:提取所述第一训练数据集中的时间序列特征和历史特征;基于所述时间序列特征和所述历史特征构建目标特征集合;计算所述目标特征集合中各个目标特征的目标重要性;根据所述目标重要性,从多个目标特征中确定目标重要特征数据;基于所述目标重要特征数据训练所述第一预测模型和第二预测模型,得到所述第一预测模型和第二预测模型。
本实施例提供的销量预测方法,通过采用LightGBM算法计算所述目标特征集合中各个目标特征的目标重要性,基于叶子结点的决策树生长策略,相比传统的层次生长策略,能够更好地捕捉特征之间的交互信息,提高销量预测模型的准确性。
在一种可选的实施方式中,基于所述目标重要特征数据训练所述第一预测模型得到所述第一预测模型的过程,包括:确定所述第一预测模型的超参数;将所述目标重要特征数据输入所述第一预测模型;利用所述目标重要特征数据对所述第一预测模型进行迭代;在每一轮迭代中,采用增量训练的方式以最小化目标函数;计算损失函数的梯度和二阶导数,并更新树的结构,直至迭代结束;得到更新后的第一预测模型为所述第一预测模型。
本实施例提供的销量预测方法,通过将所述目标重要特征数据输入所述第一预测模型;利用所述目标重要特征数据对所述第一预测模型进行迭代,对XGBoost模型进行更新,XGBoost模型采用了梯度提升算法,能够有效地减少偏差和方差,提高模型的泛化能力,通过组合多个弱分类器来构建最终的强分类器,每个新的分类器都会根据前面分类器的错误情况进行调整,从而避免了误差累积的问题。
在一种可选的实施方式中,基于所述目标重要特征数据训练所述第二预测模型得到所述第二预测模型的过程,包括:将所述目标重要特征数据输入所述第二预测模型;通过所述第二预测模型对输入序列的位置、时间和数据分别进行编码,得到位置编码、时间编码和数据编码;基于所述位置编码、时间编码和数据编码相加通过dropout层得到最终编码;通过编码层对所述最终编码进行数据削减;通过解码器层基于削减后的最终编码得到输入目标预测值及输出目标预测值;基于所述输入目标预测值、输出目标预测值及损失函数,对所述第二预测模型进行训练,得到所述第二预测模型。
本实施例提供的销量预测方法,通过基于所述输入目标预测值、输出目标预测值及损失函数,对所述第二预测模型进行训练,对Informer模型进行训练,Informer模型能够有效地对时间序列数据进行建模和预测,具有较好的序列建模能力,能够捕捉到长期依赖关系,并且克服了传统时间序列模型中忽视局部细节和整体趋势的问题,进一步提高了销量预测的准确性。
在一种可选的实施方式中,所述将所述第二训练数据集分别输入第一预测模型和第二预测模型,确定权重系数,包括:获取所述第二训练数据集的第二重要特征数据;将所述第二重要特征数据分别输入所述第一预测模型和第二预测模型,分别得到第一销量预测值和第二销量预测值;随机生成第一预测模型的第一初始化权重系数;随机生成第二预测模型的第二初始化权重系数;基于所述第一销量预测值、第二销量预测值、第一初始化权重系数和第二初始化权重系数,得到初始预测值;基于所述第二训练数据集和初始预测值,得到预测误差值;利用粒子群算法随机生成每个月的模型权重系数作为初始种群;将预测误差值作为优化目标对初始种群中的模型权重系数进行优化;输出误差最小的一组权重系数为所述权重系数。
本实施例提供的销量预测方法,通过不断寻找权重系数的最优组合来得到最优的预测结果,这种组合预测的方法可以充分利用两个模型的优势,提高预测准确率,为销量预测提供更加可靠的支持,提高了销量预测的可靠性。
在一种可选的实施方式中,所述将预测误差值作为优化目标对初始种群中的模型权重系数进行优化,包括:定义粒子群种群的大小N和最大迭代次数kmax,随机生成模型的权重系数矩阵作为算法初始解;设置改进惯性因子为:
其中ωmax为惯性因子最大值,ωmin为惯性因子最小值;利用改进粒子群算法的更新规则来对模型权重系数进行调整。
本实施例提供的销量预测方法,通过PSO算法模拟一群随机分布的“粒子”在搜索空间中的移动和信息交流来寻找最优解,提高了权重系数的可靠性,进而提高了销量预测结果的准确性。
第二方面,本发明提供了一种销量预测装置,所述装置包括:获取模块,用于获取目标产品的销量数据,并构建销量数据集;筛选模块,用于计算所述销量数据集的特征重要性,并筛选所述销量数据集的重要特征数据;预测模块,用于将所述重要特征数据输入至预设的销量数据预测模型,得到所述目标产品的销量预测结果;其中,所述预设的销量数据预测模型,是将所述目标产品的历史销量预测数据输入至第一预测模型和第二预测模型,并基于所述第一预测模型和第二预测模型的输出结果与所述历史销量预测数据对应的和历史销量真实数据进行训练得到的。
第三方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的销量预测方法。
第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的销量预测方法。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的销量预测方法的流程示意图;
图2是根据本发明实施例的另一销量预测方法的流程示意图;
图3是根据本发明实施例的预设销量数据预测模型训练方法的流程示意图;
图4是根据本发明实施例的第一预测模型和第二预测模型训练方法的流程示意图;
图5是根据本发明实施例的第一预测模型训练方法的流程示意图;
图6是根据本发明实施例的第二预测模型训练方法的流程示意图;
图7是根据本发明实施例的权重系数确定方法的流程示意图;
图8是根据本发明实施例的销量预测装置的结构框图;
图9是本发明实施例的计算机设备的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
传统的产品销量预测方法只能保证单步预测的准确率,而在多步预测中,它们往往采取递归预测,将上一次预测结果作为下一次预测模型的输入,这种方法会造成预测误差的累积,从而导致销量预测准确率大幅度下降。以烟草公司为例,如果烟草公司需要预测未来一年的销量数据,传统的单步预测方法只能得到下一年第一个月的预测数据,然后将第一个月的预测数据输入到模型中得到第二个月的预测数据,以此类推,得到未来一年销量预测数据,那么第一个月预测的误差值将会继续对第二个月的预测准确度造成误差影响。目前,由于产品销量数据受到季节性、节假日和随机性等多种因素的影响,这些因素在长期产品销量预测中可能相互作用,使得产品销量预测过程变成更加复杂,预测精度难以得到保障。传统的产品销量预测方法往往采取单个模型进行预测,比如线性回归、支持向量机、神经网络等方法。然而,这些传统预测方法无法同时准确捕捉产品销量数据中的多种特征,存在模型泛化能力不足、预测能力有限等问题。
本实施例提供的销量预测方法,首先,通过计算所述销量数据集的特征重要性来筛选所述销量数据集的重要特征数据,将重要性数值化,提高了重要特征数据筛选的全面性和准确性;其次,通过采用可以直接生成多步预测结果的Informer模型进行卷烟销量预测,并进一步结合了XGBoost模型来提高预测准确率,由于这两个模型的原理相差较大而使得预测结果相关性较低,构成组合模型有利于对卷烟销量数据中有用信息进行充分挖掘和利用。最后,本发明还采用了PSO算法,通过不断寻找权重系数的最优组合来得到最优的预测结果,这种组合预测的方法可以充分利用两个模型的优势,提高预测准确率,为销量预测提供更加可靠的支持,提高了销量预测的可靠性。
根据本发明实施例,提供了一种销量预测方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中提供了一种销量预测方法,图1是根据本发明实施例的销量预测方法的流程图,如图1所示,该流程包括如下步骤:
步骤S101,获取目标产品的销量数据,并构建销量数据集。
具体地,获取连续多年(例如是至少两年)的目标产品的销量数据,将连续两个的销量数据作为一个数据对,由多个数据对组成销量数据集。进一步地,对销量数据进行数据初步的预处理,其操作包括寻找数据中缺失值,使用插值操作填充缺失值,对数据中的异常值进行平滑处理,对数据集进行标准化处理等。
步骤S102,计算所述销量数据集的特征重要性,并筛选所述销量数据集的重要特征数据。
具体地,设置LightGBM的参数,训练数据中的所有特征,得到相关特征重要性。根据各特征的重要性来筛选出对影响产品销量影响较大的重要特征,以卷烟为例,卷烟库存、卷烟产量和烟酒类商品零售类值等可能是重要特征。对筛选出的重要特征进行5折交叉验证,将数据集随机打乱,平均分成5份。依次将每份数据作为测试集,其他4份数据作为训练集,每次选择不同的特征进行测试,计算模型预测误差。通过尝试不同的特征组合,最终确定对销量数据影响大的重要特征。
步骤S103,将所述重要特征数据输入至预设的销量数据预测模型,得到所述目标产品的销量预测结果;其中,所述预设的销量数据预测模型,是将所述目标产品的历史销量预测数据输入至第一预测模型和第二预测模型,并基于所述第一预测模型和第二预测模型的输出结果与所述历史销量预测数据对应的和历史销量真实数据进行训练得到。
具体地,所述第一预测模型为XGBoost模型,XGBoost(eXtreme GradientBoosting)模型是一种基于梯度提升决策树(Gradient Boosting Decision Tree)算法的集成学习模型。XGBoost模型采用了以决策树为基础的学习器作为基础模型,通过集成多个弱学习器来构建一个强大的预测模型。在XGBoost中,基础学习器使用了带有正则化项的决策树模型,以防止过拟合。XGBoost模型采用了梯度提升算法,通过迭代地在之前模型的残差上拟合新的基础学习器,逐步提高整体模型的性能。每一轮迭代中,通过计算残差的负梯度来更新模型参数,使得下一个基础学习器能够更好地拟合残差。为了控制模型的复杂度和避免过拟合,XGBoost模型引入了正则化项,在目标函数中加入了对模型复杂度的惩罚项。正则化项包括了两个部分:树的复杂度惩罚项和叶子节点权重的L1或L2正则化项。通过调节正则化参数,可以平衡模型的拟合能力和泛化能力。XGBoost模型采用了自定义的目标函数,将训练数据和正则化项相结合,形成一个优化问题。目标函数包括了损失函数和正则化项,并在每一轮迭代中对模型参数进行优化。常用的损失函数有平方损失函数(用于回归问题)、二分类损失函数(用于二分类问题)和多分类损失函数(用于多分类问题)等。通过这些组成部分的结合和优化,XGBoost模型能够在较少的决策树数量下达到较高的预测性能,并具有较好的鲁棒性和泛化能力。同时,XGBoost模型还引入了一系列的优化算法和技巧,如近似算法、剪枝策略和特征重要性评估等,以提高模型的训练速度和预测准确性。
所述第二预测模型为Informer模型,Informer模型是一种用于时间序列预测的深度学习模型,Informer模型首先通过多层自注意力编码器,将输入时间序列数据进行特征表示。自注意力机制允许模型在编码过程中自动关注序列中不同位置的重要信息,捕捉其内部的相关性和依赖关系。时序自注意力部分在编码器中的每个注意力头上应用了时间维度的自注意力机制,使得模型能够在编码器中同时捕获不同时间步的长期依赖关系。通过多个注意力头的并行计算,模型可以获得更全面、多样化的时间信息。Informer模型引入了一个全局自注意力层,用于在整个时间序列上捕捉全局的长期上下文关系。该层通过对所有时间步的编码结果进行自注意力计算,使得模型能够更好地感知整体趋势和周期性。Informer模型的解码器包括了未来编码器、自回归网络和额外的输出层。未来编码器用于提取输入未来时间步长的嵌入特征,使得解码器能够结合历史信息和未来目标进行预测。自回归网络通过逐步生成输出序列,自动利用前一个时间步的预测结果作为当前时间步的输入,实现自回归预测。额外的输出层用于将解码器的输出映射到最终的预测结果。Informer模型在解码器中引入了时序注意力,用于在解码器中的不同注意力头之间进行信息共享和交互。时序注意力可以帮助模型关注解码器中不同头之间的联系,并且充分利用全局和局部的时间信息,提高预测性能。通过以上的编码器、解码器以及其组成部分的联合训练,Informer模型能够有效地对时间序列数据进行建模和预测。它具有较好的序列建模能力,能够捕捉到长期依赖关系,并且克服了传统时间序列模型中忽视局部细节和整体趋势的问题。
本实施例提供的销量预测方法,首先,通过计算所述销量数据集的特征重要性来筛选所述销量数据集的重要特征数据,将重要性数值化,提高了重要特征数据筛选的全面性和准确性;其次,通过采用可以直接生成多步预测结果的Informer模型进行卷烟销量预测,并进一步结合了XGBoost模型来提高预测准确率,由于这两个模型的原理相差较大而使得预测结果相关性较低,构成组合模型有利于对卷烟销量数据中有用信息进行充分挖掘和利用。最后,本发明还采用了PSO算法,通过不断寻找权重系数的最优组合来得到最优的预测结果,这种组合预测的方法可以充分利用两个模型的优势,提高预测准确率,为销量预测提供更加可靠的支持,提高了销量预测的可靠性。
在本实施例中提供了一种销量预测方法,图2是根据本发明实施例的销量预测方法的流程图,如图2所示,该流程包括如下步骤:
步骤S201,获取目标产品的销量数据,并构建销量数据集。详细请参见图1所示实施例的步骤S101,在此不再赘述。
步骤S202,计算所述销量数据集的特征重要性,并筛选所述销量数据集的重要特征数据。详细请参见图1所示实施例的步骤S102,在此不再赘述。
步骤S203,将所述重要特征数据输入至预设的销量数据预测模型,得到所述目标产品的销量预测结果;其中,所述预设的销量数据预测模型,是将所述目标产品的历史销量预测数据输入至第一预测模型和第二预测模型,并基于所述第一预测模型和第二预测模型的输出结果与所述历史销量预测数据对应的和历史销量真实数据进行训练得到的。
具体地,图3是根据本发明实施例的预设销量数据预测模型训练方法的流程示意图,如图3所示,训练所述预设的销量数据预测模型的过程,包括:
步骤a1,获取所述目标产品的历史销量数据,基于所述历史销量数据构建第一训练数据集和第二训练数据集,所述第一训练数据集包含多个第一数据对,所述第二训练集包含一个第二数据对。
具体地,所述第一数据对为连续两年的销量数据,所述第二数据对为时间最近的连续两年的销量数据。以近十年的历史销量数据为例,所述第一数据对为第一年的销量数据和第二年的销量数据、第二年的销量数据和第三年的销量数据、第三年的销量数据和第四年的销量数据...第八年的销量数据和第九年的销量数据组成的数据对,所述第二数据对为第九年的销量数据和第十年的销量数据组成的数据对。
步骤a2,利用所述第一训练数据集分别训练第一预测模型和第二预测模型,得到所述第一预测模型和第二预测模型;将所述第二训练数据集分别输入所述第一预测模型和第二预测模型。
具体地,图4是根据本发明实施例的第一预测模型和第二预测模型训练方法的流程示意图,如图4所示,上述步骤a2包括:
步骤b1,提取所述第一训练数据集中的时间序列特征和历史特征。
具体地,时间序列特征是指在时间序列数据中使用的具有一定时间依赖性的特征。这些特征可以捕捉到时间序列数据的趋势、周期性、季节性等信息。常见的时间序列特征包括:趋势特征:反映时间序列数据的总体变化趋势,如线性趋势、非线性趋势等。季节性特征:描述时间序列数据中重复出现的季节性模式,如每天、每周、每月等一定时间间隔内的周期性变化。周期性特征:反映时间序列数据中存在的长期波动或周期性变动,如业务活动呈现的年度波动、经济周期等。自相关特征:描述时间序列数据中当前值与过去某一时刻值之间的相关性,反映数据的记忆性和趋势延续性。历史特征是指在建模时使用的过去观测值或事件记录作为特征。历史特征可以提供过去的信息,帮助模型识别模式和趋势,并用于预测未来的行为。对于时间序列数据,历史特征可以包括:直接历史特征:使用之前的时间点的观测值作为特征,如过去几个小时、几天或几周的数据。统计历史特征:使用过去一段时间内的统计量作为特征,如最大值、最小值、平均值、标准差等。滚动窗口历史特征:使用滑动窗口的方式获取特定时间窗口内的观测值,如过去一周、过去一个月的数据。通过结合时间序列特征和历史特征,可以更全面地描述时间序列数据的变化模式和趋势,提高模型的预测能力。
步骤b2,基于所述时间序列特征和所述历史特征构建目标特征集合。
具体地,通过销量数据中的时间序列特征和所有历史特征构建特征工程,得到目标特征集合。特征工程是指根据问题的特点和数据的特性,对原始数据进行处理和转换,以提取出更有用、更有表现力的特征以供机器学习算法使用的过程,良好的特征工程能够显著提高模型的性能。构建特征工程的步骤如下:数据理解和预处理:对原始数据进行探索性数据分析(EDA),包括查看数据的基本信息、缺失值处理、异常值处理等。特征选择:基于领域知识和统计方法,选择与目标变量相关性较高的特征。常用方法包括相关系数分析、卡方检验、信息增益等。特征编码:将分类特征转化为数值型特征,比如使用独热编码、标签编码等方式。特征变换:对原始特征进行数值变换,以改善特征的分布情况,例如对数变换、归一化、标准化等。特征生成:基于已有特征衍生出新的特征,如特征组合、多项式特征、时间序列特征等。特征降维:如果特征维度过高,可能会导致模型复杂度增加,降低模型性能。可以采用主成分分析(PCA)、线性判别分析(LDA)等方法进行降维。特征交叉验证:将数据集划分为训练集和验证集,并在验证集上验证特征的有效性和稳定性。特征筛选:根据模型训练结果,剔除对模型性能无贡献或冗余的特征,以提高模型的泛化能力。
步骤b3,计算所述目标特征集合中各个目标特征的目标重要性。
具体地,设置LightGBM的参数,训练数据中的所有特征,得到相关特征重要性。LightGBM是一种高效的梯度提升决策树(Gradient Boosting Decision Tree)框架,LightGBM采用基于叶子结点的决策树生长策略,相比传统的层次生长策略,能够更好地捕捉特征之间的交互信息,提高模型的准确性。
步骤b4,根据所述目标重要性,从多个目标特征中确定目标重要特征数据。
具体地,根据筛选出的重要特征对LightGBM进行建模,进行5折交叉验证,确定销量数据中的目标重要特征数据。5折交叉验证是用于评估机器学习算法的性能和泛化能力,将原始数据集划分为5个相等大小的子集,其中4个子集作为训练数据,剩余一个子集作为验证数据。整个过程会重复5次,每次使用不同的子集作为验证集,最终得到5个模型性能的评估结果,并取其平均值作为最终评估结果。
步骤b5,基于所述目标重要特征数据训练所述第一预测模型和第二预测模型,得到所述第一预测模型和第二预测模型。
将所述目标产品的历史销量预测数据的重要特征数据输入至第一预测模型和第二预测模型,对第一预测模型和第二预测模型进行训练,训练后的第一预测模型和第二预测模型都可以单独对销量数据进行预测,采取单个模型进行预测无法同时准确捕捉产品销量数据中的多种特征,模型泛化能力不足、预测能力有限,因此,确定一个数据对为训练数据对,将训练数据对中上一年销量数据的重要特征数据输入训练后的第一预测模型和第二预测模型,分别得到的第一预测模型和第二预测模型输出的预测销量值,采用PSO算法基于训练数据对中下一年销量数据、第一预测模型输出的预测销量值和第二预测模型输出的预测销量值确定第一预测模型和第二预测模型的权重系数。其中,第一预测模型输出的预测销量值×第一预测模型的权重系数+第二预测模型输出的预测销量值×第二预测模型的权重系数=训练数据对中下一年销量数据;第一预测模型的权重系数+第二预测模型的权重系数=1。基于第一预测模型及其权重系数、第二预测模型及其权重系数构建销量数据预测模型。PSO(Particle Swarm Optimization,粒子群优化)算法是一种基于群体智能的优化算法。它模拟了鸟群或鱼群等生物群体在寻找目标时的行为规律。PSO算法的基本思想是通过模拟一群随机分布的“粒子”在搜索空间中的移动和信息交流来寻找最优解。每个粒子代表一个潜在的解决方案,并根据自身的经验和群体的协作共同寻找最优解。
本实施例提供的销量预测方法,通过采用LightGBM算法计算所述目标特征集合中各个目标特征的目标重要性,基于叶子结点的决策树生长策略,相比传统的层次生长策略,能够更好地捕捉特征之间的交互信息,提高销量预测模型的准确性。
具体地,图5是根据本发明实施例的第一预测模型训练方法的流程示意图,如图5所示,上述步骤b5中,基于所述目标重要特征数据训练所述第一预测模型得到所述第一预测模型的过程包括:
步骤c1,确定所述第一预测模型的超参数。
具体地,所述第一预测模型为XGBoost模型,确定XGBoost模型的超参数,(如学习率、树的最大深度、正则化参数等)和目标函数(如回归问题使用均方误差损失函数,分类问题使用逻辑损失函数)。XGBoost采用CART(Classification and Regression Tree)作为基学习器,具体如下所示:
其中,为模型预测值;xi为第i个样本;fk为空间中的一个独立函数;F为所有CART组成的函数空间;在损失函数中加入正则化项,用来控制基学习器树的结构,防止过拟合,其目标函数/>如下所示:
其中,为模型预测值与实际值之间的误差,/>为正则化项;T是叶子节点数;ωj是叶子节点j的权重;γ和λ是预先给定的超参数,分别用于控制叶子节点的个数和分数。
步骤c2,将所述目标重要特征数据输入所述第一预测模型。
具体地,将训练数据集划分为特征矩阵和对应的标签。特征矩阵包含训练样本的各个特征值,而标签则是样本的预测目标。
步骤c3,利用所述目标重要特征数据对所述第一预测模型进行迭代。
具体地,通过迭代的方式,依次更新树的结构。在每轮迭代中,根据残差计算新的学习目标,并使用梯度提升算法来生成下一棵树。在生成新的树时,会考虑到前一轮树的预测结果与残差之间的关系。
步骤c4,在每一轮迭代中,采用增量训练的方式以最小化目标函数。
具体地,由于目标函数的优化参数是树模型,故将其迭代分解成树学习过程;在保持原模型不变的前提下,采用增量训练的方式以最小化目标函数。
步骤c5,计算损失函数的梯度和二阶导数,并更新树的结构,直至迭代结束。
具体地,根据设定的终止条件,判断是否继续进行迭代。常见的终止条件包括迭代次数达到设定的最大值,模型性能已经收敛等。
步骤c6,得到更新后的第一预测模型为所述第一预测模型。
具体地,所述第一预测模型可以独立对销量数据进行预测。
本实施例提供的销量预测方法,通过将所述目标重要特征数据输入所述第一预测模型;利用所述目标重要特征数据对所述第一预测模型进行迭代,对XGBoost模型进行更新,XGBoost模型采用了梯度提升算法,能够有效地减少偏差和方差,提高模型的泛化能力,通过组合多个弱分类器来构建最终的强分类器,每个新的分类器都会根据前面分类器的错误情况进行调整,从而避免了误差累积的问题。
具体地,图6是根据本发明实施例的第二预测模型训练方法的流程示意图,上述步骤b5中,所述目标重要特征数据训练所述第二预测模型得到所述第二预测模型的过程,包括:
步骤d1,将所述目标重要特征数据输入所述第二预测模型。
具体地,所述第二预测模型为Informer模型。
步骤d2,通过所述第二预测模型对输入序列的位置、时间和数据分别进行编码,得到位置编码、时间编码和数据编码。
具体地,通过Informer模型对输入序列的位置进行编码,位置编码PE的计算公式为:
其中,i表示对token编码后向量的第i个位置,pos是token在序列中的位置,Lx是编码器输入长度,dmodel是模型维度。
步骤d3,基于所述位置编码、时间编码和数据编码相加通过dropout层得到最终编码。
具体地,将三种编码相加通过dropout层得到最终编码。
步骤d4,通过编码层对所述最终编码进行数据削减。
具体地,在编码层,通过自注意力蒸馏机制削减输入长度,将第t个序列的输入削减长度提取为/>的计算公式为计算公式为:
其中,包含了多头ProbSparseSelf-attention和注意力块中的基本运算,Conv1d()表示1-D的卷积滤波器,并在时间维上使用ELU激活函数;MaxPool()为最大池化操作,可以降低数据的维度;在解码器层,输入向量:
其中表示starttoken;/>表示目标序列的占位符;dmodel是模型维度;Ly是模型输出长度;Ltoken是模型输入中已知数据的长度;Concat()函数表示通过一个全连接层获得最终的输出。从输入序列中选择一个长度为Ltoken的长序列作为token,将预测序列前的已知的数据作starttoken,然后将Xfeed_de={X3d,X0}作为解码器的输入,输出目标预测值,X0包括目标序列的时间编码。
步骤d5,通过解码器层基于削减后的最终编码得到输入目标预测值及输出目标预测值。
具体地,通过评价函数来优化损失函数,当预测值处于预测精度范围附近时降低梯度,避免过拟合,计算公式为:
其中,ε为激活函数,将一个实数映射到0-1的区间,用来做二分类,a为预测精度要求,a∈[0,1)。
步骤d6,基于所述输入目标预测值、输出目标预测值及损失函数,对所述第二预测模型进行训练,得到所述第二预测模型。
具体地,使用训练数据对模型进行训练,通过反向传播和优化算法(如梯度下降)来更新模型参数。可以采用批量训练或者迭代训练的方式。
本实施例提供的销量预测方法,通过基于所述输入目标预测值、输出目标预测值及损失函数,对所述第二预测模型进行训练,对Informer模型进行训练,Informer模型能够有效地对时间序列数据进行建模和预测,具有较好的序列建模能力,能够捕捉到长期依赖关系,并且克服了传统时间序列模型中忽视局部细节和整体趋势的问题,进一步提高了销量预测的准确性。
步骤a3,将所述第二训练数据集分别输入所述第一预测模型和第二预测模型,基于所述第一预测模型和第二预测模型的输出结果确定权重系数。
本实施例提供的销量预测方法,通过利用往年的历史销量数据构建数据对,分别训练第一预测模型和第二预测模型,将机器学习技术与启发式算法进行结合,能够有效的预测下一年的卷烟销量,同时提高了卷烟销量预测的准确性,预测结果更加符合实际情况。
具体地,图7是根据本发明实施例的权重系数确定方法的流程示意图,如图7所示,上述步骤a3包括:
步骤e1,获取所述第二训练数据集的第二重要特征数据。
具体地,设置LightGBM的参数,训练数据中的所有特征,得到相关特征重要性。根据筛选出的重要特征对LightGBM进行建模,进行5折交叉验证,确定第二训练数据集销量数据中的目标重要特征数据。
步骤e2,将所述第二重要特征数据分别输入所述第一预测模型和第二预测模型,分别得到第一销量预测值和第二销量预测值。
具体地,将所述第二重要特征数据分别输入到训练好的Informer模型和XGBoost模型中,得到下一年的销量预测值和/>
步骤e3,随机生成第一预测模型的第一初始化权重系数。
具体地,随机生成第一预测模型的初始化权重系数
步骤e4,随机生成第二预测模型的第二初始化权重系数。
具体地,随机生成第二预测模型的初始化权重系数/>
步骤e5,基于所述第一销量预测值、第二销量预测值、第一初始化权重系数和第二初始化权重系数,得到初始预测值。
具体地,将和/>使用进行加权操作后得出下一年的销售预测值Yt+1:
其中,为Informer模型下一年的预测值,/>为Informer模型的下一年每个月的权重系数;/>为XGBoost模型下一年的预测值,/>为XGBoost模型下一年的权重系数;两个模型的每个月的权重系数想加等于1,Yt+1为下一年最终预测结果。
步骤e6,基于所述第二训练数据集和初始预测值,得到预测误差值。
具体地,计算预测值与下一年的真实销量值的误差。
步骤e7,利用粒子群算法随机生成每个月的模型权重系数作为初始种群。
具体地,粒子群算法通过随机生成每个月的模型权重系数作为初始种群。
步骤e8,将预测误差值作为优化目标对初始种群中的模型权重系数进行优化。
具体地,上述步骤e8包括:
定义粒子群种群的大小N和最大迭代次数kmax,随机生成模型的权重系数矩阵作为算法初始解;
设置改进惯性因子为:
其中ωmax为惯性因子最大值,ωmin为惯性因子最小值;进一步地,算法前期应该选择较大的值,这样可以提高优化速度,后期取较小值可以提高优化精确性。
利用改进粒子群算法的更新规则来对模型权重系数进行调整。
具体地,粒子更新规则迭代公式如下:
其中,为第k+1次迭代模型权重变化值;/>为第k+1次迭代的模型权重;c1和c2为学习因子;r1和r2的取值范围为[0,1],是该区间的随机数;/>为第i个粒子截止第k次更新的最优历史位置;/>为截止第k次更新全部粒子的最优历史位置。
本实施例提供的销量预测方法,通过PSO算法模拟一群随机分布的“粒子”在搜索空间中的移动和信息交流来寻找最优解,提高了权重系数的可靠性,进而提高了销量预测结果的准确性。
步骤e9,输出误差最小的一组权重系数为所述权重系数。
具体地,计算出的销量预测值与销量真实值之间的误差作为优化目标,最终得出误差最小的一组权重系数。
本实施例提供的销量预测方法,通过不断寻找权重系数的最优组合来得到最优的预测结果,这种组合预测的方法可以充分利用两个模型的优势,提高预测准确率,为销量预测提供更加可靠的支持,提高了销量预测的可靠性。
步骤a4,基于所述第一预测模型、所述第二预测模型和所述权重系数,构建所述预设的销量数据预测模型。
具体地,基于所述第一预测模型、所述第二预测模型和所述权重系数,建立Informer-XGBoost-PSO模型。
在本实施例中还提供了一种销量预测装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本实施例提供一种销量预测装置,如图8所示,包括:
获取模块801,用于获取目标产品的销量数据,并构建销量数据集。
筛选模块802,用于计算所述销量数据集的特征重要性,并筛选所述销量数据集的重要特征数据。
预测模块803,用于将所述重要特征数据输入至预设的销量数据预测模型,得到所述目标产品的销量预测结果;其中,所述预设的销量数据预测模型,是将所述目标产品的历史销量预测数据输入至第一预测模型和第二预测模型,并基于所述第一预测模型和第二预测模型的输出结果与所述历史销量预测数据对应的和历史销量真实数据进行训练得到的。
本实施例提供的销量预测装置,首先,通过计算所述销量数据集的特征重要性来筛选所述销量数据集的重要特征数据,将重要性数值化,提高了重要特征数据筛选的全面性和准确性;其次,通过采用可以直接生成多步预测结果的Informer模型进行卷烟销量预测,并进一步结合了XGBoost模型来提高预测准确率,由于这两个模型的原理相差较大而使得预测结果相关性较低,构成组合模型有利于对卷烟销量数据中有用信息进行充分挖掘和利用。最后,本发明还采用了PSO算法,通过不断寻找权重系数的最优组合来得到最优的预测结果,这种组合预测的方法可以充分利用两个模型的优势,提高预测准确率,为销量预测提供更加可靠的支持,提高了销量预测的可靠性。
在一些可选的实施方式中,所述销量预测装置还包括模型训练模块,所述模型训练模块包括:
训练数据集构建子模块,用于获取所述目标产品的历史销量数据,基于所述历史销量数据构建第一训练数据集和第二训练数据集,所述第一训练数据集包含多个第一数据对,所述第二训练集包含一个第二数据对。
第一预测模型训练子模块,用于利用所述第一训练数据集分别训练第一预测模型和第二预测模型,得到所述第一预测模型和第二预测模型。
权重系数确定子模块,用于将所述第二训练数据集分别输入所述第一预测模型和第二预测模型,基于所述第一预测模型和第二预测模型的输出结果确定权重系数。
销量数据预测模型构建子模块,用于基于所述第一预测模型、所述第二预测模型和所述权重系数,构建所述预设的销量数据预测模型。
本实施例提供的销量预测装置,通过利用往年的历史销量数据构建数据对,分别训练第一预测模型和第二预测模型,将机器学习技术与启发式算法进行结合,能够有效的预测下一年的卷烟销量,同时提高了卷烟销量预测的准确性,预测结果更加符合实际情况。
在一些可选的实施方式中,所述第一预测模型训练子模块包括:
时间序列特征和历史特征提取单元,用于提取所述第一训练数据集中的时间序列特征和历史特征。
目标特征集合构建单元,用于基于所述时间序列特征和所述历史特征构建目标特征集合。
目标重要性计算单元,用于计算所述目标特征集合中各个目标特征的目标重要性。
目标重要特征数据确定单元,用于根据所述目标重要性,从多个目标特征中确定目标重要特征数据。
第二预测模型训练单元,用于基于所述目标重要特征数据训练所述第一预测模型和第二预测模型,得到所述第一预测模型和第二预测模型。
本实施例提供的销量预测装置,通过采用LightGBM算法计算所述目标特征集合中各个目标特征的目标重要性,基于叶子结点的决策树生长策略,相比传统的层次生长策略,能够更好地捕捉特征之间的交互信息,提高销量预测模型的准确性。
在一些可选的实施方式中,所述第二预测模型训练单元包括:
超参数确定子单元,用于确定所述第一预测模型的超参数。
第一目标重要特征数据输入子单元,用于将所述目标重要特征数据输入所述第一预测模型。
第一预测模型迭代子单元,用于利用所述目标重要特征数据对所述第一预测模型进行迭代。
增量训练子单元,用于在每一轮迭代中,采用增量训练的方式以最小化目标函数。
树的结构更新子单元,用于计算损失函数的梯度和二阶导数,并更新树的结构,直至迭代结束。
第一预测模型得到子单元,用于得到更新后的第一预测模型为所述第一预测模型。
本实施例提供的销量预测装置,通过将所述目标重要特征数据输入所述第一预测模型;利用所述目标重要特征数据对所述第一预测模型进行迭代,对XGBoost模型进行更新,XGBoost模型采用了梯度提升算法,能够有效地减少偏差和方差,提高模型的泛化能力,通过组合多个弱分类器来构建最终的强分类器,每个新的分类器都会根据前面分类器的错误情况进行调整,从而避免了误差累积的问题。
在一些可选的实施方式中,所述第二预测模型训练单元包括:
第二目标重要特征数据输入子单元,用于将所述目标重要特征数据输入所述第二预测模型。
编码子单元,用于通过所述第二预测模型对输入序列的位置、时间和数据分别进行编码,得到位置编码、时间编码和数据编码。
数据编码相加子单元,用于基于所述位置编码、时间编码和数据编码相加通过dropout层得到最终编码。
数据削减子单元,用于通过编码层对所述最终编码进行数据削减。
输入目标预测值及输出目标预测值得到子单元,用于通过解码器层基于削减后的最终编码得到输入目标预测值及输出目标预测值。
第二预测模型得到子单元,用于基于所述输入目标预测值、输出目标预测值及损失函数,对所述第二预测模型进行训练,得到所述第二预测模型。
本实施例提供的销量预测装置,通过基于所述输入目标预测值、输出目标预测值及损失函数,对所述第二预测模型进行训练,对Informer模型进行训练,Informer模型能够有效地对时间序列数据进行建模和预测,具有较好的序列建模能力,能够捕捉到长期依赖关系,并且克服了传统时间序列模型中忽视局部细节和整体趋势的问题,进一步提高了销量预测的准确性。
在一些可选的实施方式中,所述权重系数确定子模块包括:
第二重要特征数据获取单元,用于获取所述第二训练数据集的第二重要特征数据。
第一销量预测值和第二销量预测值得到单元,用于将所述第二重要特征数据分别输入所述第一预测模型和第二预测模型,分别得到第一销量预测值和第二销量预测值。
第一初始化权重系数生成单元,用于随机生成第一预测模型的第一初始化权重系数。
第二初始化权重系数生成单元,用于随机生成第二预测模型的第二初始化权重系数。
初始预测值得到单元,用于基于所述第一销量预测值、第二销量预测值、第一初始化权重系数和第二初始化权重系数,得到初始预测值。
预测误差值得到单元,用于基于所述第二训练数据集和初始预测值,得到预测误差值。
初始种群生成单元,用于利用粒子群算法随机生成每个月的模型权重系数作为初始种群。
权重系数优化单元,用于将预测误差值作为优化目标对初始种群中的模型权重系数进行优化。
权重系数输出单元,用于输出误差最小的一组权重系数为所述权重系数。
本实施例提供的销量预测装置,通过不断寻找权重系数的最优组合来得到最优的预测结果,这种组合预测的方法可以充分利用两个模型的优势,提高预测准确率,为销量预测提供更加可靠的支持,提高了销量预测的可靠性。
在一些可选的实施方式中,所述权重系数优化单元包括:
定义粒子群种群的大小N和最大迭代次数kmax,随机生成模型的权重系数矩阵作为算法初始解;
设置子单元,用于设置改进惯性因子为:
其中ωmax为惯性因子最大值,ωmin为惯性因子最小值;
调整子单元,用于利用改进粒子群算法的更新规则来对模型权重系数进行调整。
本实施例提供的销量预测装置,通过PSO算法模拟一群随机分布的“粒子”在搜索空间中的移动和信息交流来寻找最优解,提高了权重系数的可靠性,进而提高了销量预测结果的准确性。
上述各个模块和单元的更进一步的功能描述与上述对应实施例相同,在此不再赘述。
本实施例中的销量预测装置是以功能单元的形式来呈现,这里的单元是指ASIC(Application Specific Integrated Circuit,专用集成电路)电路,执行一个或多个软件或固定程序的处理器和存储器,和/或其他可以提供上述功能的器件。
本发明实施例还提供一种计算机设备,具有上述图8所示的销量预测装置。
请参阅图9,图9是本发明可选实施例提供的一种计算机设备的结构示意图,如图9所示,该计算机设备包括:一个或多个处理器10、存储器20,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在计算机设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在一些可选的实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个计算机设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图9中以一个处理器10为例。
处理器10可以是中央处理器,网络处理器或其组合。其中,处理器10还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。
其中,所述存储器20存储有可由至少一个处理器10执行的指令,以使所述至少一个处理器10执行实现上述实施例示出的方法。
存储器20可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器20可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些可选的实施方式中,存储器20可选包括相对于处理器10远程设置的存储器,这些远程存储器可以通过网络连接至该计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
存储器20可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器20还可以包括上述种类的存储器的组合。
该计算机设备还包括通信接口30,用于该计算机设备与其他设备或通信网络通信。
本发明实施例还提供了一种计算机可读存储介质,上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的第一存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等;进一步地,存储介质还可以包括上述种类的存储器的组合。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现上述实施例示出的方法。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (10)
1.一种销量预测方法,其特征在于,所述方法包括:
获取目标产品的销量数据,并构建销量数据集;
计算所述销量数据集的特征重要性,并筛选所述销量数据集的重要特征数据;
将所述重要特征数据输入至预设的销量数据预测模型,得到所述目标产品的销量预测结果;其中,所述预设的销量数据预测模型,是将所述目标产品的历史销量预测数据输入至第一预测模型和第二预测模型,并基于所述第一预测模型和第二预测模型的输出结果与所述历史销量预测数据对应的和历史销量真实数据进行训练得到的。
2.根据权利要求1所述的销量预测方法,其特征在于,训练所述预设的销量数据预测模型的过程,包括:
获取所述目标产品的历史销量数据,基于所述历史销量数据构建第一训练数据集和第二训练数据集,所述第一训练数据集包含多个第一数据对,所述第二训练集包含一个第二数据对;
利用所述第一训练数据集分别训练第一预测模型和第二预测模型,得到所述第一预测模型和第二预测模型;
将所述第二训练数据集分别输入所述第一预测模型和第二预测模型,基于所述第一预测模型和第二预测模型的输出结果确定权重系数;
基于所述第一预测模型、所述第二预测模型和所述权重系数,构建所述预设的销量数据预测模型。
3.根据权利要求2所述的销量预测方法,其特征在于,所述利用所述第一训练数据集分别训练第一预测模型和第二预测模型,得到所述第一预测模型和第二预测模型,包括:
提取所述第一训练数据集中的时间序列特征和历史特征;
基于所述时间序列特征和所述历史特征构建目标特征集合;
计算所述目标特征集合中各个目标特征的目标重要性;
根据所述目标重要性,从多个目标特征中确定目标重要特征数据;
基于所述目标重要特征数据训练所述第一预测模型和第二预测模型,得到所述第一预测模型和第二预测模型。
4.根据权利要求3所述的销量预测方法,其特征在于,基于所述目标重要特征数据训练所述第一预测模型得到所述第一预测模型的过程,包括:
确定所述第一预测模型的超参数;
将所述目标重要特征数据输入所述第一预测模型;
利用所述目标重要特征数据对所述第一预测模型进行迭代;
在每一轮迭代中,采用增量训练的方式以最小化目标函数;
计算损失函数的梯度和二阶导数,并更新树的结构,直至迭代结束;
得到更新后的第一预测模型为所述第一预测模型。
5.根据权利要求3所述的销量预测方法,其特征在于,基于所述目标重要特征数据训练所述第二预测模型得到所述第二预测模型的过程,包括:
将所述目标重要特征数据输入所述第二预测模型;
通过所述第二预测模型对输入序列的位置、时间和数据分别进行编码,得到位置编码、时间编码和数据编码;
基于所述位置编码、时间编码和数据编码相加通过dropout层得到最终编码;
通过编码层对所述最终编码进行数据削减;
通过解码器层基于削减后的最终编码得到输入目标预测值及输出目标预测值;
基于所述输入目标预测值、输出目标预测值及损失函数,对所述第二预测模型进行训练,得到所述第二预测模型。
6.根据权利要求3所述的销量预测方法,其特征在于,所述将所述第二训练数据集分别输入第一预测模型和第二预测模型,确定权重系数,包括:
获取所述第二训练数据集的第二重要特征数据;
将所述第二重要特征数据分别输入所述第一预测模型和第二预测模型,分别得到第一销量预测值和第二销量预测值;
随机生成第一预测模型的第一初始化权重系数;
随机生成第二预测模型的第二初始化权重系数;
基于所述第一销量预测值、第二销量预测值、第一初始化权重系数和第二初始化权重系数,得到初始预测值;
基于所述第二训练数据集和初始预测值,得到预测误差值;
利用粒子群算法随机生成每个月的模型权重系数作为初始种群;
将预测误差值作为优化目标对初始种群中的模型权重系数进行优化;
输出误差最小的一组权重系数为所述权重系数。
7.根据权利要求6所述的销量预测方法,其特征在于,所述将预测误差值作为优化目标对初始种群中的模型权重系数进行优化,包括:
定义粒子群种群的大小N和最大迭代次数kmax,随机生成模型的权重系数矩阵作为算法初始解;
设置改进惯性因子为:
其中ωmax为惯性因子最大值,ωmin为惯性因子最小值;
利用改进粒子群算法的更新规则来对模型权重系数进行调整。
8.一种销量预测装置,其特征在于,所述装置包括:
获取模块,用于获取目标产品的销量数据,并构建销量数据集;
筛选模块,用于计算所述销量数据集的特征重要性,并筛选所述销量数据集的重要特征数据;
预测模块,用于将所述重要特征数据输入至预设的销量数据预测模型,得到所述目标产品的销量预测结果;其中,所述预设的销量数据预测模型,是将所述目标产品的历史销量预测数据输入至第一预测模型和第二预测模型,并基于所述第一预测模型和第二预测模型的输出结果与所述历史销量预测数据对应的和历史销量真实数据进行训练得到的。
9.一种计算机设备,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1至7中任一项所述的销量预测方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至7中任一项所述的销量预测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311294073.1A CN117314492A (zh) | 2023-10-08 | 2023-10-08 | 销量预测方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311294073.1A CN117314492A (zh) | 2023-10-08 | 2023-10-08 | 销量预测方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117314492A true CN117314492A (zh) | 2023-12-29 |
Family
ID=89249549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311294073.1A Pending CN117314492A (zh) | 2023-10-08 | 2023-10-08 | 销量预测方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117314492A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118008110A (zh) * | 2024-04-08 | 2024-05-10 | 江苏省金鑫安防设备有限公司 | 一种气密钢质防火门及其智能监控方法 |
-
2023
- 2023-10-08 CN CN202311294073.1A patent/CN117314492A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118008110A (zh) * | 2024-04-08 | 2024-05-10 | 江苏省金鑫安防设备有限公司 | 一种气密钢质防火门及其智能监控方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190180375A1 (en) | Financial Risk Forecast System and the Method Thereof | |
Chatterjee et al. | Stock price prediction using time series, econometric, machine learning, and deep learning models | |
US20220138621A1 (en) | System and method for facilitating a machine learning model rebuild | |
Rathnayaka et al. | Taylor series approximation and unbiased GM (1, 1) based hybrid statistical approach for forecasting daily gold price demands | |
CN115409292A (zh) | 一种电力系统短期负荷预测方法及相关装置 | |
CN116663746A (zh) | 一种电力负荷预测方法、装置、计算机设备及存储介质 | |
Lum et al. | Industrial electrical energy consumption forecasting by using temporal convolutional neural networks | |
CN111667307A (zh) | 一种理财产品销量的预测方法及装置 | |
CN117314492A (zh) | 销量预测方法、装置、计算机设备及存储介质 | |
CN115187312A (zh) | 基于深度学习的客户流失预测方法及系统 | |
Supri et al. | Asian Stock Index Price Prediction Analysis Using Comparison of Split Data Training and Data Testing | |
Ma et al. | Research on stock trading strategy based on deep neural network | |
Nagashima et al. | Data Imputation Method based on Programming by Example: APREP-S | |
Khumaidi et al. | Forecasting of Sales Based on Long Short Term Memory Algorithm with Hyperparameter | |
Kushwaha et al. | Prospective Stock Analysis Model to improve the investment chances using Machine Learning | |
US20240185143A1 (en) | Selecting Influencer Variables in Time Series Forecasting | |
CN116719519B (zh) | 银行领域的广义线性模型训练方法、装置、设备和介质 | |
CN112308293B (zh) | 违约概率预测方法及装置 | |
CN110704730B (zh) | 基于大数据的产品数据推送方法、系统及计算机设备 | |
KR102496501B1 (ko) | 시뮬레이션 데이터를 이용한 자산 배분 정보 산출 방법 및 시뮬레이션 데이터를 이용한 자산 배분 정보 산출 장치 | |
US20230394512A1 (en) | Methods and systems for profit optimization | |
CN117495554A (zh) | 基于时间卷积网络的期权买卖时机确定系统及方法 | |
Pratama | Multilayer Perceptron and Long Short-Term Memory for Predicting Indonesian Composite Stock Price Index Using Macroeconomic Factors | |
Fitria | A Comparison of Deep Neural Networks for Sales Forecasting | |
Reus | Graph generation for synthetic stock data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |