CN112950262A - 销量预测方法、装置、计算机设备和存储介质 - Google Patents
销量预测方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN112950262A CN112950262A CN202110194428.4A CN202110194428A CN112950262A CN 112950262 A CN112950262 A CN 112950262A CN 202110194428 A CN202110194428 A CN 202110194428A CN 112950262 A CN112950262 A CN 112950262A
- Authority
- CN
- China
- Prior art keywords
- sales
- promotion
- value
- commodity
- prediction
- 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
- 238000003860 storage Methods 0.000 title claims abstract description 14
- 230000000875 corresponding Effects 0.000 claims description 30
- 230000002159 abnormal effect Effects 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 13
- 230000001502 supplementation Effects 0.000 claims description 13
- 238000000605 extraction Methods 0.000 claims description 8
- 238000000034 method Methods 0.000 description 31
- 238000007781 pre-processing Methods 0.000 description 18
- 238000004364 calculation method Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 9
- 238000010801 machine learning Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000001737 promoting Effects 0.000 description 7
- 230000003247 decreasing Effects 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 5
- 101700050571 SUOX Proteins 0.000 description 3
- 239000003795 chemical substances by application Substances 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000001360 synchronised Effects 0.000 description 2
- 230000003044 adaptive Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006011 modification reaction Methods 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 230000003068 static Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06Q—DATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce, e.g. shopping or e-commerce
- G06Q30/02—Marketing, e.g. market research and analysis, surveying, promotions, advertising, buyer profiling, customer management or rewards; Price estimation or determination
- G06Q30/0202—Market predictions or demand forecasting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06Q—DATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce, e.g. shopping or e-commerce
- G06Q30/02—Marketing, e.g. market research and analysis, surveying, promotions, advertising, buyer profiling, customer management or rewards; Price estimation or determination
- G06Q30/0202—Market predictions or demand forecasting
- G06Q30/0203—Market surveys or market polls
Abstract
本申请涉及一种销量预测方法、装置、计算机设备和存储介质。该方法包括:获取目标商品的当前正常销售商品特征和当前促销销售商品特征,并获取目标商品的促销计划信息以及促销系数;根据当前正常销售商品特征以及根据目标商品的历史正常销售商品特征的训练得到第一销量预测模型对目标商品进行初始销量预测,得到第一初始销量预测值;根据当前促销销售商品特征以及根据目标商品的历史促销销售商品特征训练得到的第二销量预测模型对目标商品进行初始销量预测,得到第二初始销量预测值;根据促销计划信息、促销系数、第一初始销量预测值以及第二初始销量预测值,确定目标商品在指定预测期的销量预测值。采用本方法能够提升销量预测结果准确性。
Description
技术领域
本申请涉计算机技术领域,特别是涉及一种销量预测方法、装置、计算机设备和存储介质。
背景技术
销量预测是企业生产经营中的重要一环,商品的销量预测是企业制定下一步的运营计划的一个重要依据。因此,及时准确地做好销量预测对于企业生产经营有着十分重要的作用。
随着大数据和机器学习等技术的成熟及广泛应用,这些新兴技术开始应用于商品销量预测领域中。为了提升模型预测结果的准确率,目前主流的预测方案的侧重点主要分为以下几类:一是选择不同技术手段来处理异常数据或者缺失数据,以此来提升原始数据质量。二是选择不同的技术方案来提取特征。三是选择不同的机器学习模型完成预测工作。
尽管上述这些方法可行,但对实际商品销售过程中,存在大量的客观因素对销量产生影响,其中发生频率最高、影响最严重的就是促销活动。促销活动会严重影响商品在促销周期内的销售量,使得一般的机器学习模型很难学习到商品销量的变化规律。针对这一问题,目前主流的预测方案中的处理方式主要有两种,一是将这部分数据作为异常值剔除掉,不参与模型训练。二是直接当作正常数据参与模型训练,寄希望于模型的学习能力。基于这两种处理方式训练出的模型用于销量预测,往往很难给出比较准确的销量预测结果。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提升销量预测结果准确性的销量预测方法、装置、计算机设备和存储介质。
一种销量预测方法,该方法包括:
获取目标商品的当前正常销售商品特征和当前促销销售商品特征,并获取目标商品的促销计划信息以及促销系数;
根据当前正常销售商品特征和第一销量预测模型对目标商品进行初始销量预测,得到第一初始销量预测值,第一销量预测模型根据目标商品的历史正常销售商品特征的训练得到;
根据当前促销销售商品特征和第二销量预测模型对目标商品进行初始销量预测,得到第二初始销量预测值,第二销量预测模型根据目标商品的历史促销销售商品特征训练得到;
根据促销计划信息、促销系数、第一初始销量预测值以及第二初始销量预测值,确定目标商品在指定预测期的销量预测值。
一种销量预测装置,该装置包括:
参数获取模块,用于获取目标商品的当前正常销售商品特征和当前促销销售商品特征,并获取目标商品的促销计划信息以及促销系数;
第一初始预测模块,用于根据当前正常销售商品特征和第一销量预测模型对目标商品进行初始销量预测,得到第一初始销量预测值,第一销量预测模型根据目标商品的历史正常销售商品特征的训练得到;
第二初始预测模块,用于根据当前促销销售商品特征和第二销量预测模型对目标商品进行初始销量预测,得到第二初始销量预测值,第二销量预测模型根据目标商品的历史促销销售商品特征训练得到;
数据处理模块,用于根据促销计划信息、促销系数、第一初始销量预测值以及第二初始销量预测值,确定目标商品在指定预测期的销量预测值。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
获取目标商品的当前正常销售商品特征和当前促销销售商品特征,并获取目标商品的促销计划信息以及促销系数;
根据当前正常销售商品特征和第一销量预测模型对目标商品进行初始销量预测,得到第一初始销量预测值,第一销量预测模型根据目标商品的历史正常销售商品特征的训练得到;
根据当前促销销售商品特征和第二销量预测模型对目标商品进行初始销量预测,得到第二初始销量预测值,第二销量预测模型根据目标商品的历史促销销售商品特征训练得到;
根据促销计划信息、促销系数、第一初始销量预测值以及第二初始销量预测值,确定目标商品在指定预测期的销量预测值。
一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取目标商品的当前正常销售商品特征和当前促销销售商品特征,并获取目标商品的促销计划信息以及促销系数;
根据当前正常销售商品特征和第一销量预测模型对目标商品进行初始销量预测,得到第一初始销量预测值,第一销量预测模型根据目标商品的历史正常销售商品特征的训练得到;
根据当前促销销售商品特征和第二销量预测模型对目标商品进行初始销量预测,得到第二初始销量预测值,第二销量预测模型根据目标商品的历史促销销售商品特征训练得到;
根据促销计划信息、促销系数、第一初始销量预测值以及第二初始销量预测值,确定目标商品在指定预测期的销量预测值。
上述销量预测方法、装置、计算机设备和存储介质,由于第一销量预测模型根据目标商品的历史正常销售商品特征的训练得到,第二销量预测模型根据目标商品的历史促销销售商品特征训练得到,且由于是根据当前正常销售商品特征和第一销量预测模型对目标商品进行初始销量预测,得到第一初始销量预测值,且是根据当前促销销售商品特征和第二销量预测模型对目标商品进行初始销量预测,得到第二初始销量预测值,也就是说,将正常销售商品的销售数据和促销商品的销售数据在模型训练阶段以及初始销量预测阶段都进行了区分,针对性更强,可以有利于提升初始预测结果的准确性;同时,还引入了促销系数,基于促销计划信息、促销系数以及初始预测结果确定指定预测期的销量预测值,如此,可以灵活响应实际经营过程中的促销计划,保证了预测结果的准确性。
附图说明
图1为一个实施例中销量预测方法的应用环境图;
图2为一个实施例中销量预测方法的流程示意图;
图3为一个实施例中销量预测值确定步骤的细化流程示意图;
图4为一个实施例中预测模型的训练方法的流程示意图;
图5为一个实施例中数据预处理步骤的流程示意图;
图6为一个实施例中促销系数调整步骤的流程示意图;
图7为一个实施例中后m个周期的促销系数调整步骤的细化流程示意图;
图8为另一个实施例中销量预测方法的流程示意图;
图9为一个实施例中的商品销量预测方法中的数据预处理过程的流程示意图;
图10为一个实施例中的促销系数动态调整算法流程图;
图11为一个实施例中的商品销量预测方法中的模型训练过程的流程示意图;
图12为一个实施例中的商品销量预测方法中的销量预测过程的流程示意图;
图13为一个实施例中销量预测装置的结构框图;
图14为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,本申请所使用的术语“或者/和”,描述关联对象的关联关系,表示可以存在三种关系,例如,A或者/和B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或者”的关系。
本申请提供的销量预测方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。终端102可以向服务器104发送销量预测请求,销量预测请求可以携带有指定预测期和目标商品标识信息等,服务器104可以在接收到该销量预测请求后,获取目标商品的当前正常销售商品特征和当前促销销售商品特征,还获取目标商品的促销计划信息以及促销系数,调用预设的第一销量预测模型和第二销量预测模型进行初始销量预测,再结合初始销量预测结果、促销计划信息以及促销系数最终确定指定预测期的效率值。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种销量预测方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤202,获取目标商品的当前正常销售商品特征和当前促销销售商品特征。
这里,当前正常销售商品特征是指目标商品在当前时段内为正常销售商品期间的销售数据的特征值,当前促销销售商品特征是指目标商品在当前时段内为促销商品期间的销售数据的特征值。正常销售一般指没有参与促销销售等特殊销售的销售形式。当前时段一般可以是当前周期(或者指定预测期)之前的一个或者多个周期,也可以包括当前周期。
具体地,可以获取目标商品的当前时段的销售数据,将该销售数据区分为正常销售商品当前销售数据和促销销售商品当前销售数据,分别对当前销售数据和促销销售商品当前销售数据进行特征提取,得到当前正常销售商品特征和当前促销销售商品特征。例如,当前时段是2021年1月10日至2021年1月15日,2021年1月14日和2021年1月15日为目标商品的促销日,剩余日期为目标商品的正常销售日,则正常销售商品当前销售数据指目标商品在2021年1月10日-2021年1月13日的销售数据,促销销售商品当前销售数据指目标商品2021年1月14日和2021年1月15日的销售数据。
步骤204,根据当前正常销售商品特征和第一销量预测模型对目标商品进行初始销量预测,得到第一初始销量预测值,第一销量预测模型根据目标商品的历史正常销售商品特征的训练得到。
这里,历史正常销售商品特征指目标商品在指定历史时段内为正常销售商品期间的销售数据的特征值。
具体地,可以将当前正常销售商品特征输入到第一销量预测模型,从该第一销量预测模型的输出值中获得第一初始销量预测值。
步骤206,根据当前促销销售商品特征和第二销量预测模型对目标商品进行初始销量预测,得到第二初始销量预测值,第二销量预测模型根据目标商品的历史促销销售商品特征训练得到。
这里,历史促销销售商品特征指目标商品在指定历史时段内为促销商品期间的销售数据的特征值。
具体地,可以将当前促销销售商品特征输入到第二销量预测模型,从该第二销量预测模型的输出值中获得第二初始销量预测值。
其中,历史正常销售商品特征和历史正常销售商品特征的获取方式与当前正常销售商品特征和当前促销销售商品特征的获取方式类似,在此不予赘述。
步骤208,获取目标商品的促销计划信息以及促销系数。
这里,促销计划信息可以是之前、当前以及未来的一段时间对促销计划的安排信息,例如,什么时候开始对目标商品进行促销,什么时候结束对目标商品的促销或者在什么时段对目标商品进行促销等。
这里,促销系数一般是通过对目标商品的历史销售数据或者促销商品历史销售数据统计分析得到,也可以通过已有的一些促销系数计算模型得到。该促销系数表征了促销销售对销量的影响程度,一般地,促销销售对销量是正向影响,因此该促销系数往往大于1。该促销系数可以为常量,也可以为变量。
需要说明的是,上述的步骤202和步骤208也可以不采用上述先后顺序执行,也可以同时执行。同时,上述的步骤204和步骤206也可以不采用上述先后顺序执行,也可以同时执行。
步骤210,根据促销计划信息、促销系数、第一初始销量预测值以及第二初始销量预测值,确定目标商品在指定预测期的销量预测值。
这里,指定预测期是表示预先指定的预测销量的时段。
具体地,可以根据促销计划信息确定目标商品的当前商品类型(是正常销售商品还是促销商品)以及目标商品在指定预测期的当前促销计划类型,根据当前商品类型和促销计划类型确定对第一初始销量预测值或者/和第二初始销量预测值的本次调整方式,通过促销系数按照该本次调整方式对第一初始销量预测值或者/和第二初始销量预测值进行调整,得到目标商品在指定预测期的销量预测值。可以预先设置商品类型、促销计划类型和调整方式的对应关系,在需要进行销量预测时,根据当前商品类型和当前促销计划类型查询对应的调整方式。调整方式包括保持不变、调高或者调低,这里的调高或者调低可以是对第一初始销量预测值和第二初始销量预测值中的一个或者两个进行调高或者调低。可以仅基于第一初始销量预测值和第二初始销量预测值中的一个调整后的值,确定目标商品在指定预测期的销量预测值,也可以结合第一初始销量预测值和第二初始销量预测值的原值或者/和调整后的值,确定目标商品在指定预测期的销量预测值。
上述销量预测方法中,由于第一销量预测模型根据目标商品的历史正常销售商品特征的训练得到,第二销量预测模型根据目标商品的历史促销销售商品特征训练得到,且由于是根据当前正常销售商品特征和第一销量预测模型对目标商品进行初始销量预测,得到第一初始销量预测值,且根据当前促销销售商品特征和第二销量预测模型对目标商品进行初始销量预测,得到第二初始销量预测值,也就是说,将正常销售商品的销售数据和促销商品的销售数据在模型训练阶段以及初始销量预测阶段都进行了区分,针对性更强,可以有利于提升初始预测结果的准确性;同时,还引入了促销系数,基于促销计划信息、促销系数以及初始预测结果确定指定预测期的销量预测值,如此,可以灵活响应实际经营过程中的促销计划,保证了预测结果的准确性。
在其中一个实施例中,上述的根据促销计划信息、促销系数、第一初始销量预测值以及第二初始销量预测值,确定目标商品在指定预测期的销量预测值,包括如下步骤:
步骤302,在目标商品当前为正常销售商品,且根据促销计划信息确定目标商品没有在指定预测期进行促销的促销计划时,根据第一初始销量预测值确定销量预测值。
在本步骤的这种情况下,由于目标商品当前为正常销售商品且没有在指定预测期的促销计划,用第一初始销量预测值直接作为销量预测值相对更为准确,即此种情况下,可以根据R*=R1确定销量预测值,R*和R1分别表示销量预测值和第一初始销量预测值。
步骤304,在目标商品当前为正常销售商品,且根据促销计划信息确定准备在指定预测期对目标商品进行促销时,根据促销系数和第一初始销量预测值确定销量预测值。
在本步骤的这种情况下,由于目标商品当前为正常销售商品,采用第一初始销量预测值作为基准值,而且由于准备在指定预测期对目标商品进行促销,通过促销系数对第一初始销量预测值进行调高处理,这样得到的销量预测值相对更为准确,即此种情况下,可以根据R*=R1×Fc确定销量预测值,Fc表示促销系数。
步骤306,在目标商品当前为促销商品,且根据促销计划信息确定在指定预测期继续促销目标商品时,根据促销系数、第一初始销量预测值以及第二初始销量预测值确定销量预测值。
在本步骤的这种情况下,由于目标商品当前为促销商品,至少应该以第二初始销量预测值作为基准值,同时由于促销商品持续促销后部分地会体现出正常销售的特点(例如,销售数据逐渐趋于平稳),若同时考虑第一初始销量预测值,通过促销系数对该第一初始销量预测值进行调高,如此,结合第二初始销量预测值以及调高后的第一初始销量预测值计算销量预测值,计算结果相对更为准确。具体地,可以根据R*=a×R1×Fc+(1-a)×R2确定销量预测值,其中,R2表示第二初始销量预测值,a在0到1之间取值,即a∈[0,1]。
步骤308,在目标商品当前为促销商品且根据促销计划信息确定准备在指定预测期停止促销目标商品时,根据促销系数以及第二初始销量预测值确定销量预测值。
在这种情况下,由于目标商品当前为促销商品,采用第二初始销量预测值作为基准值,且由于在指定预测期停止促销,通过促销系数对第二初始销量预测值进行调低处理,如此得到的销量预测值相对更为准确,即此种情况下,可以根据R*=R2/Fc确定销量预测值。
其中,目标商品当前为促销商品还是为正常销售商品,可以根据目标商品的当前销售状态信息确定,也可以根据促销计划信息确定,例如,某一周期没有促销计划,则目标商品在该周期为正常销售商品,反之为促销商品。
本实施例中,在多种不同情况下,分别采用与之相匹配的更为准确的销量预测值计算方式,可以提升销量预测值的准确性。此外,传统的销量预测方式一般无法响应用户(商家)即将开始促销活动的预测需求,而采用本实施例方案,也可以响应用户即将开始促销活动的预测需求。
在其中一个实施例中的销量预测方法,如图4所示,还可以包括预测模型的训练步骤,该预测模型的训练步骤包括如下步骤:
步骤402,获取目标商品的历史销售数据。
具体地,可以获取目标商品的指定历史时段的销售数据。该历史销售数据至少包括销售时间、商品销量、商品价格以及是否参与促销等信息。
步骤404,将历史销售数据划分为正常销售商品历史销售数据和促销商品历史销售数据。
具体地,可以根据历史销售数据中的是否参与促销的信息,将历史销售数据划分为正常销售商品历史销售数据和促销商品历史销售数据。
步骤406,分别对正常销售商品历史销售数据和促销商品历史销售数据进行特征提取,得到历史正常销售商品特征和历史促销销售商品特征。
具体地,该特征提取可以包括非数值信息的数值化编码、特征中心化以及特征过滤等过程,还可以包括扩充特征维度的过程。
步骤408,根据历史正常销售商品特征进行模型训练,得到第一销量预测模型。
步骤410,根据历史促销销售商品特征进行模型训练,得到第二销量预测模型。
对于步骤408和步骤410的模型训练,可以根据实际的数据情况,选择相适应的机器学习方法来训练预测模型,例如,可以选择LightGBM算法训练预测模型。
本实施例中,考虑到商品在正常销售模式下的特征与促销模式下的特征不同,使用单个模型很难有效的应对促销对商品销量预测的影响,选择训练两个模型,分别处理正常销售模式下和促销模式下的销量预测问题,有助于提升销量预测结果的准确性。
在其中一个实施例中,根据上述的促销系数和上述的正常销售商品历史销售数据,补充对应周期的促销商品历史销售数据。
本实施例中,可以根据促销系数和正常销售商品历史销售数据中的销量值,反推预测对应周期目标商品若为促销销售相应的销量值,例如,将2020年12月5日(正常销售)的销量值乘以促销系数,得到目标商品2020年12月5日若为促销销售的销量值。如此,可以补充对应周期的促销商品历史销售数据。此外,促销系数有可能随时时间的变化而变化,可以在促销系数为变量时,根据对应周期的促销系数和正常销售商品历史销售数据,补充对应周期的促销商品历史销售数据。
同理,在其中一个实施例中,上述的方法还可以包括步骤:根据促销系数和促销商品历史销售数据,补充对应周期的正常销售商品历史销售数据。在促销系数为变量时,根据对应周期的促销系数和促销商品历史销售数据,补充对应周期的正常销售商品历史销售数据。
这两个实施例中,扩充了用于模型训练的数据,可以提升学习模型的泛化能力,基于扩充后的数据训练得到的第一初始销量预测值和第二初始销量预测值,在用于销量预测时,有利于提升预测结果的准确性。
在其中一个实施例中,上述任意一个或者多个实施例中的销量预测方法还可以包括步骤:通过统计目标商品的不同长度周期的历史正常销售商品特征或者/和历史促销销售商品特征的方式扩充特征维度。不同长度周期可以根据实际情况设定,例如,1天、1周、1月等。
在其中一个实施例中,上述任意一个或者多个实施例中的销量预测方法还可以包括步骤:通过目标商品的同类商品历史销售数据的特征的扩充特征维度。
上述两个实施例,通过扩充特征维度,可以增加训练数据的数量,也可以提升学习模型的泛化能力。根据需要,可以选择应用这两种扩充特征维度的方式中的任意一种,也可以综合应用这两种扩充特征维度方式。
在其中一个实施例中,上述任意一个或者多个实施例中的销量预测方法还可以包括数据预处理步骤,如图5所示,该数据预处理步骤包括如下步骤:
步骤502,根据目标商品的当前类型的历史销售数据,确定第一平均销量值。
这里,第一平均销量值为目标商品的与当前类型为同一类型的近N个周期的平均销量,N为正整数,当前类型的历史销售数据为正常销售商品历史销售数据和促销商品历史销售数据。
这里,与当前类型为同一类型指同为促销商品,或者同为正常销售商品。
步骤504,判断第一平均销量值是否大于预设阈值,若是,则进入步骤506,若否,则进入步骤508。
步骤506,确定目标商品为高周转商品;
步骤508,确定目标商品为低周转商品;
步骤508,在目标商品为高周转商品时,若任意一个历史周期的销量值高于K倍的第一平均销量值或者低于P倍的第一平均销量值,则删除该历史周期的销售数据中的销量值,P<K;
步骤510,在目标商品为低周转商品时,若任意一个历史周期的销量值高于R倍的平均销量或者当前周期之前与当前类型为同一类型的连续Q个周期的销量为0且当前周期的销量为0,则删除该历史周期的销售数据中的销量值,R>1,Q为正整数。
上述的K、P、R、Q等参数值可以根据实际情况设定,同时,对于正常销售商品历史销售数据对应的这些参数值和促销商品历史销售数据对应的这些参数值一般取不同值。
在本实施例中,根据目标商品的销售量,判断目标商品属于高周转商品还是低周转商品。并对应地设定了高周转商品和低周转商品的销量值的删除策略,可以查询异常值并对异常值进行删除,减少异常值对模型训练的影响。
在其中一个实施例中,如图5所示,上述的数据预处理步骤还可以包括如下步骤:
步骤512,在任意一个历史周期的销售数据中的销量值被删除后,通过插值方式补充该历史周期的销售数据中的销量值。
具体地,可以采用牛顿插值法补充数据的缺失值。牛顿插值法可以克服多节点线性多项式插值计算量大、无统一描述形式的缺点且牛顿插值法具有承袭性和对称性,实际应用中可以通过适当增加插值节点有效提高模型的拟合精度。例如,可以使用缺失值前后各7个(也不限于7个)未缺失的数据参与建模,得到缺失值计算模型,通过该缺失值计算模型可以较为准确的拟合商品销售样本的缺失值。通过适当增加插值节点,可以有效提高缺失值的拟合精度。
在其中一个实施例中,上述任意一个或者多个实施例中的销量预测方法还可以包括促销系数调整步骤,如图6所示,该促销系数调整步骤包括如下步骤:
步骤602,获取目标商品的初始促销系数、最近一个周期的实际销量值以及第二平均销量值,第二平均销量值为目标商品的前n个促销类周期的平均销量值;
这里,n为正整数,大小可以根据实际情况设定。
这里,初始促销系数可以是根据历史销售数据确定的,也可以上次促销系数调整之后得到的促销系数。
步骤604,在最近一个周期的实际销量值不小于预设比例的第二平均销量值时,对目标商品的后m个促销类周期的初始促销系数进行调整,得到目标商品的后m个促销类周期的促销系数。
这里,m为正整数,大小可以根据实际情况设定。
具体地,可以在时,对目标商品的后m个促销类周期的初始促销系数进行调整,x表示最近一个周期的实际销量值,表示第二平均销量值,δ表示预设的异常销售容忍系数。
根据本实施例中中的促销系数调整算法来动态更新促销系数,可以不断地用新的数据来调整促销系数,提升预测的准确性。
在其中一个实施例中,如图7所示,上述的对目标商品的后m个周期的初始促销系数进行调整,得到目标商品的后m个周期的促销系数,包括如下步骤:
步骤702,在最近一个周期的实际销量值大于预设的预测销量允许变化范围的上限值时,根据该上限值和最近一个周期的实际销量值的比例值调高初始促销系数,得到目标商品的后m个周期的促销系数。
具体地,初始促销系数的增加值可以为1-Me/x,也就是说,此时可以根据如下的公式(1)确定促销系数:
Fc=Fc'+(1-Me/x) (1)
其中,Fc表示促销系数,Fc'表示初始促销系数,x表示最近一个周期的实际销量值,Me表示预测销量允许变化范围的上限值。
步骤704,在最近一个周期的实际销量值小于预设的预测销量允许变化范围的下限值时,根据最近一个周期的实际销量值和下限值的比例值调低初始促销系数,得到目标商品的后m个促销类周期的促销系数;
具体地,初始促销系数的减少值为1-x/Md,也就是说,此时可以根据如下的公式(2)确定促销系数:
Fc=Fc'-(1-x/Md) (2)
其中,Md表示预测销量允许变化范围的下限值。
进一步地,若减少初始促销系数,得到的促销系数小于1,则将该促销系数调整为1。
在其中一个实施例中,Me=Prev×Fc'×Fp×(1+UVP),Md=Prev×Fc'×Fp×(1-UVP),Prev表示后m个促销类周期中的任意一个周期的销量预测值,Fc'表示初始促销系数,Fp为预设的预测条数的权重值,UVP为预设的允许变化范围阈值。
为了更清楚地说明本发明实施例方案,以下结合一具体示例进行详细说明。在该具体实施例中是以天为周期,且是以同时包括模型训练过程以及模型应用过程(训练后的模型用于商品销量预测)为例,但这些并不构成对本发明方案的限定。
如图8所示,本具体示例提供的一种基于机器学习的商品销量预测方法,该方法具体步骤包括:步骤802,获取目标商品在指定时间段内的历史销售数据;步骤804,数据分类;步骤806,数据预处理;步骤808,计算促销系数Fc;步骤810,特征提取;步骤812,训练模型;步骤814,汇总预测结果。以下对这些步骤进行详细阐述:
步骤802,获取目标商品在指定时间段内的历史销售数据。
在本步骤中,为了达到更好的预测效果,需要企业(商家)提供店铺内至少最近一个月的全量销售数据的详细信息。每笔交易记录为一条单独记录,记录要求至少包含交易时间、店铺位置、店铺编号、商品种类、商品编号、销售价格、销售数量、是否参与促销等必要字段。
剩余步骤可分为3个主要过程,这3个主要过程包括:数据预处理过程(对应下述的步骤804-步骤810)、模型训练过程(对应下述的步骤812)和预测过程(对应下述的步骤814)。
步骤804,数据分类,包括:
步骤8042,区分正常销售商品销售数据和促销商品销售数据。
步骤8044,进一步地,在步骤8042的基础上,区分商品高低周转类型不同的销售数据。
此步骤主要用于后续的异常值处理逻辑。
步骤806,数据预处理,包括:
步骤8062,数据合并。将商品销量以天为单位,进行合并,关注商品在一天内的销售情况。
步骤8064,基于步骤804的区分结果,结合业务逻辑对异常值进行处理。
步骤8066,基于牛顿插值法对销售数据中的缺失值进行补充。
步骤808,将“促销期系数计算模型”应用于促销商品的全量销售数据,根据实际的促销计划,计算各促销商品的促销系数。再利用“促销期系数动态调整算法”对促销系数进行实时调整。
步骤810,对步骤804中得到的正常销售商品销售数据和促销商品销售数据分别进行特征提取,包括:
步骤8102,非数值型信息的数值化编码。
步骤8104,扩充特征维度,包括统计过去不同周期内的同类商品销量、价格,如过去1天、1周、2周、1月等。
进一步优选地,在步骤8104前,可以利用促销系数和促销周期内的销售量,对促销商品的正常销售量进行反推预测,以此补充商品在促销期间缺失的正常销售数据。
步骤8106,特征中心化。
步骤8108,基于特征评价结果过滤无效特征,如特征值单一、相关系数较低的特征。
以下对上述的数据预处理过程,即步骤804-步骤810,进行详细说明。
数据预处理过程主要作用是完成对数据的预处理,根据业务逻辑和现有的通用数据分析、数据挖掘技术对数据特则进行提取,用于模型训练以及预测过程,具体流程如图9所示。首先,考虑到商品在正常销售模式下的特征与促销模式下的特征不同,为提升模型预测的准确率,将全量数据集拆分为正常销售数据和促销数据两部分,分别进行处理。在此基础上,根据商品的销售量,判断商品属于高周转商品还是低周转商品。这项工主要的作用为了判断异常值。判断规则为:若商品近N天的平均销量大于M(对应前述的预设阈值)则认为是高周转商品,否则认为是低周转商品。
然后,需要对单条销售数据以商品和店铺为单位按天进行合并处理。因为,一般情况下,预测过程只需要关注商品在一天内的销量。此外,为保证模型的稳定性,需要剔除异常数据。业务层面,对于高周转商品,若高于K倍近N天平均日销量或低于P倍近N天平均日销量,则剔除该数据;对于低周转商品,若高于R倍近N天平均日销量或连续Q天为0第Q+1天也为0,则剔除该数据。其中,正常销售模式和促销模式的参数不同,视具体情况而定。此外,还可以根据实际情况采用计算平均值、方差等技术来检测异常数据并剔除。
剔除异常数据之后,可以采用牛顿插值法补充数据的缺失值。采用牛顿插值法补充数据的缺失值的具体实现方式如前描述,在此不予赘述。
上述过程可以提升原始数据的质量。此时,在高质量的原始数据集上可以利用促销系数计算模型和促销系数动态调整算法,来计算预测周期中,每天的促销系数。其中促销系数计算模型用于生成预测周期中初始促销系数,然后促销系数动态调整算法可以根据最近一天的数据对促销系数进行精确调整。具体地,流程如图10所示。对指定商品k,统计前n天的平均销量若当天实际销量满足则需要对接下来几天的促销系数进行动态调整。该条件旨在避免异常或极端销售数据对促销系数的影响。
首先计算预测量的允许变化范围的上下界,Me=Prev×Fc'×Fp×(1+UVP),Md=Prev×Fc'×Fp×(1-UVP)。若实际销量大于预测允许变化范围的上界,则Fc=Fc'-(1-x/Md);若实际销量小于预测允许变化范围的下界,则Fc=Fc'-(1-x/Md),若实际销量在允许变化范围内,则无需更新。此外,需要注意的是,若更新后的促销系数小于1,则将促销系数置为1。该机制使得在模型后续补充数据后,可以及时调整促销系数,提升模型预测的准确性。
进一步可选的,可以通过促销系数机制,对促销数据进行反向推断,以此来估计在促销期间,商品若处于正常销售模式下应有的销量,这部分数据可以与商品正常销售数据合并,共同参与后续的特则提取流程。
最后,对两部分数据进行特征提取,其中主要环节包括:步骤8102,非数值型信息的数值化编码。该步骤用于提取销售数据中非数值字段中蕴含的有效信息,使之可以参与后面的模型训练。具体地,可以结合业务逻辑进行字典翻译、one-hot等方式完成数值化编码过程。步骤8104,扩充特征维度。预测过程需要考虑的不仅仅是商品当天的销售情况,过去一段周期内的销售情况也有很重要的参考价值。不失一般性的,可以统计商品在过去1天、1周、2周和1月内的销量和价格。步骤8106,特征中心化,其目的是防止不同特征之间不同的量纲影响,使每个特征都能被同等对待。中心化处理后的数据,均值为0。步骤8108,无效特征过滤。通过特征值单一性、与目标特征的相关系数等特征评价指标,对特征进行筛选,将弱相关和信息熵较低的特征去掉,最终得到正常销售商品特征和促销销售商品特征两组特征样本,其中n为特则维度,m1和m2为样本数量。
步骤812,模型设计与训练,包括:
步骤8122,利用从正常销售商品销售数据中提取到的特征,训练机器学习模型M1(相当于上述的第一销量预测模型)。
步骤8124,利用从促销商品销售数据中提取到的特征,训练机器学习模型M2(相当于上述的第二销量预测模型)。
进一步优选地,在步骤8122和步骤8124之前,可以采用贝叶斯优化方法对模型的超参进行自动调参,以此代替人工调参过程。
模型训练模块的具体流程如图11所示。通过对比,选择LightGBM算法训练预测模型。根据实际的数据情况,还可以选择其他机器学习方法来训练预测模型。由于商品在正常销售模式下的特征与促销模式下的不同,使用单个模型很难有效的应对促销对商品销量预测的影响,所以选择训练两个模型,分别处理正常销售模式下和促销模式下的销量预测问题。具体地,利用历史正常销售商品特征F1训练预测模型M1,历史促销销售商品特征F2训练预测模型M2。训练时,选用80%的特征样本作为训练集,20%的特征样本作为验证集。进一步优选地,可以采用贝叶斯优化方法对模型的超参进行自动调参,以此代替人工调参过程,提升模型训练的效率和效果。具体地,首先是超参搜索范围,可以基于我们所掌握的领域知识,最大可能的将搜索范围放在超参最可能出现的地方。其次是目标函数,即将超参带入其中可能得到我们想要最小化(或最大化)的评价指标的分数。比如,我们在搜索空间寻找最优超参使评价指标的均方根误差最小。再次,如何建立代理模型和选择基于代理模型的最优超参,对于建立代理模型一般有高斯过程,随机森林回归和TPE(Tree ParzenEstimators),而最优超参的选择则基于期望改善,即所选择的超参可以在评价指标上获得更好的得分。
步骤814,预测结果汇总。
销量预测的具体流程如图12所示。在预测过程中,原始数据(相当于前述的当前时段的销售数据)也需要经过数据预处理模块进行处理,得到当前正常销售商品特征F1'、当前促销销售商品特征F2'以及促销系数Fc。然后将F1'输入模型M1中,得到预测结果R1;将F2'输入模型M2中,得到预测结果R2。然后结合用户(商家)的促销计划,对结果进行汇总,汇总规则如下:
(1)对于正常销售的商品,若没有促销计划,可以直接使用M1模型的输出R1作为最终的预测销量R*,即R*=R1。
(2)对于正常销售的商品,若即将开始促销计划,利用M1模型预测销量R1和促销系数Fc计算最终的预测销量R*,即R*=R1×Fc。其中,Fc会根据促销期每天的销售情况动态更新。
(3)对于正在促销的商品,若继续执行促销计划,使用M2模型输出的预测销量R2作为第一部分结果,利用M1模型输出的预测销量结果R1和促销系数Fc计算的预测销量作为第二部分结果,然后综合考虑两部分数据结果,择优选择最终的预测销量R*,即R*=a×R1×Fc+(1-a)×R2,a∈[0,1]。
(4)对于正在促销的商品、若取消促销计划,使用M2模型预测销量的结果R2和促销系数Fc反推正常模式下最终的预测销量R*,即R*=R2/Fc。
应该理解的是,虽然图2-12的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-12中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图13所示,提供了一种销量预测装置,包括:参数获取模块1302、第一初始预测模块1304和第一初始预测模块1304,其中:
参数获取模块1302,用于获取目标商品的当前正常销售商品特征和当前促销销售商品特征,并获取目标商品的促销计划信息以及促销系数;
第一初始预测模块1304,用于根据当前正常销售商品特征和第一销量预测模型对目标商品进行初始销量预测,得到第一初始销量预测值,第一销量预测模型根据目标商品的历史正常销售商品特征的训练得到;
第二初始预测模块1306,用于根据当前促销销售商品特征和第二销量预测模型对目标商品进行初始销量预测,得到第二初始销量预测值,第二销量预测模型根据目标商品的历史促销销售商品特征训练得到;
数据处理模块1308,用于根据促销计划信息、促销系数、第一初始销量预测值以及第二初始销量预测值,确定目标商品在指定预测期的销量预测值。
在其中一个实施例中,上述的数据处理模块1308可以包括:
第一数据处理单元(图中未示出),用于在目标商品当前为正常销售商品,且根据促销计划信息确定目标商品没有在指定预测期进行促销的促销计划时,根据第一初始销量预测值确定销量预测值;
第二数据处理单元(图中未示出),用于在目标商品当前为正常销售商品,且根据促销计划信息确定准备在指定预测期对目标商品进行促销时,根据促销系数和第一初始销量预测值确定销量预测值;
第三数据处理单元(图中未示出),用于在目标商品当前为促销商品,且根据促销计划信息确定在指定预测期继续促销目标商品时,根据促销系数、第一初始销量预测值以及第二初始销量预测值确定销量预测值;
第四数据处理单元(图中未示出),用于在目标商品当前为促销商品,且根据促销计划信息确定准备在指定预测期停止促销目标商品时,根据促销系数以及第二初始销量预测值确定销量预测值。
在其中一个实施例中,第一数据处理单元可以在目标商品当前为正常销售商品,且根据促销计划信息确定目标商品没有在指定预测期进行促销的促销计划时,根据R*=R1确定销量预测值;第二数据处理单元可以在目标商品当前为正常销售商品,且根据促销计划信息确定准备在指定预测期对目标商品进行促销时,根据R*=R1×Fc确定销量预测值;第三数据处理单元可以在目标商品当前为促销商品,且根据促销计划信息确定在指定预测期继续促销目标商品时,根据R*=a×R1×Fc+(1-a)×R2确定销量预测值;第四数据处理单元可以在目标商品当前为促销商品,且根据促销计划信息确定准备在指定预测期停止促销目标商品时,优选的,根据R*=R2/Fc确定销量预测值;其中,R*、R1和R2分别表示销量预测值、第一初始销量预测值和第二初始销量预测值,Fc表示促销系数,a∈[0,1]。
在其中一个实施例中,上述的参数获取模块1302还可以用于获取目标商品的历史销售数据;上述的装置还可以包括数据预处理模块(图中未示出)和模型训练模块(图中未示出),数据预处理模块包括数据划分单元和特征提取单元;数据划分单元用于将历史销售数据划分为正常销售商品历史销售数据和促销商品历史销售数据;特征提取单元分别对正常销售商品历史销售数据和促销商品历史销售数据进行特征提取,得到历史正常销售商品特征和历史促销销售商品特征;模型训练模块用于根据历史正常销售商品特征进行模型训练,得到第一销量预测模型,并根据历史促销销售商品特征进行模型训练,得到第二销量预测模型。
在其中一个实施例中,上述的历史正常销售商品特征和历史促销销售商品特征分别包括销量值,上述的数据预处理模块还可以包括第一数据补充单元或者/和第二数据补充单元,第一数据补充单元用于根据促销系数和正常销售商品历史销售数据,补充对应周期的促销商品历史销售数据。其中,在促销系数为变量时,第一数据补充单元可以根据对应周期的促销系数和正常销售商品历史销售数据,补充对应周期的促销商品历史销售数据。
在其中一个实施例中,上述的数据预处理模块第一特征维度扩展单元或者/和第二特征维度扩展单元。第一特征维度扩展单元可以用于通过统计目标商品的不同长度周期的历史正常销售商品特征或者/和历史促销销售商品特征的方式扩充特征维度。第二特征维度扩展单元可以用于通过目标商品的同类商品历史销售数据的特征的扩充特征维度。
在其中一个实施例中,上述的数据预处理模块还可以包括异常数据处理单元,异常数据处理单元用于根据目标商品的当前类型的历史销售数据,确定第一平均销量值,第一平均销量值为目标商品的与当前类型为同一类型的近N个周期的平均销量,N为正整数,当前类型的历史销售数据为正常销售商品历史销售数据和促销商品历史销售数据,若第一平均销量值大于预设阈值,则确定目标商品为高周转商品,若第一平均销量值不大于预设阈值,则确定目标商品为低周转商品,在目标商品为高周转商品时,若任意一个历史周期的销量值高于K倍的第一平均销量值或者低于P倍的第一平均销量值,则删除该历史周期的销售数据中的销量值,P<K,在目标商品为低周转商品时,若任意一个历史周期的销量值高于R倍的平均销量或者当前周期之前与当前类型为同一类型的连续Q个周期的销量为0且当前周期的销量为0,则删除该历史周期的销售数据中的销量值,R>1,Q为正整数。
在其中一个实施例中,上述的异常数据处理单元还可以用于在任意一个历史周期的销售数据中的销量值被删除后,通过插值方式补充该历史周期的销售数据中的销量值。
在其中一个实施例中,上述的数据预处理模块还可以包括促销系数调整单元,促销系数调整单元用于获取目标商品的初始促销系数、最近一个周期的实际销量值以及第二平均销量值,第二平均销量值为目标商品的前n个促销类周期的平均销量值;在最近一个周期的实际销量值不小于预设比例的第二平均销量值时,对目标商品的后m个促销类周期的初始促销系数进行调整,得到目标商品的后m个促销类周期的促销系数,n和m均为正整数。
在其中一个实施例中,在时,对目标商品的后m个促销类周期的初始促销系数进行调整,x表示最近一个周期的实际销量值,表示第二平均销量值,δ表示预设的异常销售容忍系数。
在其中一个实施例中,促销系数调整单元在最近一个周期的实际销量值大于预测销量允许变化范围的上限值时,根据上限值和最近一个周期的实际销量值的比例值调高初始促销系数,得到目标商品的后m个周期的促销系数,在最近一个周期的实际销量值小于预测销量允许变化范围的下限值时,根据最近一个周期的实际销量值和下限值的比例值调低初始促销系数,得到目标商品的后m个促销类周期的促销系数。
在其中一个实施例中,上述的初始促销系数的增加值为1-Me/x,x表示任意一个周期的实际销量,Me表示销量上限值。
在其中一个实施例中,上述的初始促销系数的减少值为1-x/Md,Md表示销量下限值。
在其中一个实施例中,上述的若减少初始促销系数,得到的促销系数小于1,则将促销系数调整为1,其中,x表示任意一个周期的实际销量,Me表示销量上限值,Md表示销量下限值;
在其中一个实施例中,Me=Prev×Fc×Fp×(1+UVP),Md=Prev×Fc×Fp×(1-UVP),Prev表示后m个促销类周期中的任意一个周期的销量预测值,Fc表示初始促销系数,Fp为预设的预测条数的权重值,UVP为预设的允许变化范围阈值。
关于销量预测装置的具体限定可以参见上文中对于销量预测方法的限定,在此不再赘述。上述销量预测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,该计算机设备也可以是终端。其内部结构图可以如图14所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。根据需要该计算机设备还可以包括显示屏和输入装置,或者还可以包括数据库,图14中示出的是包括显示屏和输入装置,但未包括数据库的情况。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序,根据需要该非易失性存储介质存储有数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端或者终端通过网络连接通信。该计算机程序被处理器执行时以实现一种销量预测方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图14中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任意一个实施例的销量预测方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任意一个实施例的销量预测方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种销量预测方法,所述方法包括:
获取目标商品的当前正常销售商品特征和当前促销销售商品特征,并获取所述目标商品的促销计划信息以及促销系数;
根据所述当前正常销售商品特征和第一销量预测模型对所述目标商品进行初始销量预测,得到第一初始销量预测值,所述第一销量预测模型根据所述目标商品的历史正常销售商品特征的训练得到;
根据当前促销销售商品特征和第二销量预测模型对所述目标商品进行初始销量预测,得到第二初始销量预测值,所述第二销量预测模型根据所述目标商品的历史促销销售商品特征训练得到;
根据所述促销计划信息、所述促销系数、所述第一初始销量预测值以及所述第二初始销量预测值,确定所述目标商品在指定预测期的销量预测值。
2.根据权利要求1所述的方法,其特征在于,所述根据所述促销计划信息、所述促销系数、所述第一初始销量预测值以及所述第二初始销量预测值,确定所述目标商品在指定预测期的销量预测值,包括:
在所述目标商品当前为正常销售商品,且根据所述促销计划信息确定所述目标商品没有在所述指定预测期进行促销的促销计划时,根据所述第一初始销量预测值确定所述销量预测值,优选的,根据R*=R1确定所述销量预测值;
在所述目标商品当前为正常销售商品,且根据所述促销计划信息确定准备在所述指定预测期对所述目标商品进行促销时,根据所述促销系数和所述第一初始销量预测值确定所述销量预测值,优选的,根据R*=R1×Fc确定所述销量预测值;
在所述目标商品当前为促销商品,且根据所述促销计划信息确定在所述指定预测期继续促销所述目标商品时,根据所述促销系数、所述第一初始销量预测值以及所述第二初始销量预测值确定所述销量预测值,优选的,根据R*=a×R1×Fc+(1-a)×R2确定所述销量预测值;
在所述目标商品当前为促销商品,且根据所述促销计划信息确定准备在所述指定预测期停止促销所述目标商品时,根据所述促销系数以及所述第二初始销量预测值确定所述销量预测值,优选的,根据R*=R2/Fc确定所述销量预测值;
其中,R*、R1和R2分别表示所述销量预测值、所述第一初始销量预测值和所述第二初始销量预测值,Fc表示所述促销系数,a∈[0,1]。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
获取所述目标商品的历史销售数据;
将所述历史销售数据划分为正常销售商品历史销售数据和促销商品历史销售数据;
分别对所述正常销售商品历史销售数据和促销商品历史销售数据进行特征提取,得到历史正常销售商品特征和历史促销销售商品特征;
根据所述历史正常销售商品特征进行模型训练,得到所述第一销量预测模型;
根据所述历史促销销售商品特征进行模型训练,得到所述第二销量预测模型。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
根据所述促销系数和所述正常销售商品历史销售数据,补充对应周期的促销商品历史销售数据,优选的,在所述促销系数为变量时,根据对应周期的促销系数和所述正常销售商品历史销售数据,补充对应周期的促销商品历史销售数据;
或者/和
根据所述促销系数和所述促销商品历史销售数据,补充对应周期的正常销售商品历史销售数据,优选的,在所述促销系数为变量时,根据对应周期的促销系数和所述促销商品历史销售数据,补充对应周期的正常销售商品历史销售数据;
优选的,所述方法还包括:通过统计所述目标商品的不同长度周期的历史正常销售商品特征或者/和历史促销销售商品特征的方式扩充特征维度;或者/和,通过所述目标商品的同类商品历史销售数据的特征的扩充特征维度。
5.根据权利要求3或者4所述的方法,其特征在于,在所述分别对所述正常销售商品历史销售数据和促销商品历史销售数据进行特征提取之前,所述方法还包括:
根据所述目标商品的当前类型的历史销售数据,确定第一平均销量值,所述第一平均销量值为所述目标商品的与所述当前类型为同一类型的近N个周期的平均销量,N为正整数,所述当前类型的历史销售数据为正常销售商品历史销售数据和促销商品历史销售数据;
若所述第一平均销量值大于预设阈值,则确定所述目标商品为高周转商品;
若所述第一平均销量值不大于所述预设阈值,则确定所述目标商品为低周转商品;
在所述目标商品为高周转商品时,若任意一个历史周期的销量值高于K倍的所述第一平均销量值或者低于P倍的所述第一平均销量值,则删除该任意一个历史周期的销售数据中的销量值,P<K;
在所述目标商品为低周转商品时,若任意一个历史周期的销量值高于R倍的所述平均销量或者所述当前周期之前与所述当前类型为同一类型的连续Q个周期的销量为0且当前周期的销量为0,则删除该任意一个历史周期的销售数据中的销量值,R>1,Q为正整数;
优选的,所述方法还包括,在任意一个历史周期的销售数据中的销量值被删除后,通过插值方式补充该历史周期的销售数据中的销量值。
6.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
获取所述目标商品的初始促销系数、最近一个周期的实际销量值以及第二平均销量值,所述第二平均销量值为所述目标商品的前n个促销类周期的平均销量值;
在所述最近一个周期的实际销量值不小于预设比例的所述第二平均销量值时,对所述目标商品的后m个促销类周期的初始促销系数进行调整,得到所述目标商品的后m个促销类周期的促销系数,n和m均为正整数;
优选的,在时,对所述目标商品的后m个促销类周期的初始促销系数进行调整,x表示所述最近一个周期的实际销量值,表示所述第二平均销量值,δ表示预设的异常销售容忍系数。
7.根据权利要求6所述的方法,其特征在于,所述对所述目标商品的后m个周期的初始促销系数进行调整,得到所述目标商品的后m个周期的促销系数,包括:
在所述最近一个周期的实际销量值大于预测销量允许变化范围的上限值时,根据所述上限值和所述最近一个周期的实际销量值的比例值调高所述初始促销系数,得到所述目标商品的后m个周期的促销系数;优选的,所述初始促销系数的增加值为1-Me/x;
在所述最近一个周期的实际销量值小于所述预测销量允许变化范围的下限值时,根据所述最近一个周期的实际销量值和所述下限值的比例值调低所述初始促销系数,得到所述目标商品的后m个促销类周期的促销系数,优选的,所述初始促销系数的减少值为1-x/Md;优选的,若减少所述初始促销系数,得到的所述促销系数小于1,则将所述促销系数调整为1,其中,x表示任意一个周期的实际销量,Me表示所述销量上限值,Md表示所述销量下限值;
优选的,Me=Prev×Fc'×Fp×(1+UVP),Md=Prev×Fc'×Fp×(1-UVP),Prev表示所述后m个促销类周期中的任意一个周期的销量预测值,Fc'表示所述初始促销系数,Fp为预设的预测条数的权重值,UVP为预设的允许变化范围阈值。
8.一种销量预测装置,其特征在于,所述装置包括:
参数获取模块,用于获取目标商品的当前正常销售商品特征和当前促销销售商品特征,并获取所述目标商品的促销计划信息以及促销系数;
第一初始预测模块,用于根据所述当前正常销售商品特征和第一销量预测模型对所述目标商品进行初始销量预测,得到第一初始销量预测值,所述第一销量预测模型根据所述目标商品的历史正常销售商品特征的训练得到;
第二初始预测模块,用于根据当前促销销售商品特征和第二销量预测模型对所述目标商品进行初始销量预测,得到第二初始销量预测值,所述第二销量预测模型根据所述目标商品的历史促销销售商品特征训练得到;
数据处理模块,用于根据所述促销计划信息、所述促销系数、所述第一初始销量预测值以及所述第二初始销量预测值,确定所述目标商品在指定预测期的销量预测值。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110194428.4A CN112950262A (zh) | 2021-02-20 | 2021-02-20 | 销量预测方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110194428.4A CN112950262A (zh) | 2021-02-20 | 2021-02-20 | 销量预测方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112950262A true CN112950262A (zh) | 2021-06-11 |
Family
ID=76245049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110194428.4A Pending CN112950262A (zh) | 2021-02-20 | 2021-02-20 | 销量预测方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112950262A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113487365A (zh) * | 2021-07-28 | 2021-10-08 | 厦门海晟融创信息技术有限公司 | 大数据分析与客户反馈的智慧烟草营销与处理 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106408341A (zh) * | 2016-09-21 | 2017-02-15 | 北京小米移动软件有限公司 | 货品销量的预测方法及装置、电子设备 |
CN109559138A (zh) * | 2017-09-25 | 2019-04-02 | 北京京东尚科信息技术有限公司 | 闪购活动销量预测方法及装置、存储介质、电子设备 |
-
2021
- 2021-02-20 CN CN202110194428.4A patent/CN112950262A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106408341A (zh) * | 2016-09-21 | 2017-02-15 | 北京小米移动软件有限公司 | 货品销量的预测方法及装置、电子设备 |
CN109559138A (zh) * | 2017-09-25 | 2019-04-02 | 北京京东尚科信息技术有限公司 | 闪购活动销量预测方法及装置、存储介质、电子设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113487365A (zh) * | 2021-07-28 | 2021-10-08 | 厦门海晟融创信息技术有限公司 | 大数据分析与客户反馈的智慧烟草营销与处理 |
CN113487365B (zh) * | 2021-07-28 | 2022-08-23 | 厦门海晟融创信息技术有限公司 | 大数据分析与客户反馈的智慧烟草营销与处理 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019001120A1 (zh) | 商品动态定价数据处理方法和系统 | |
Okolelova et al. | The mechanism of evaluation under the conditions of uncertainty of innovational project as a random process | |
Ouyang et al. | Agricultural commodity futures prices prediction via long-and short-term time series network | |
Silva et al. | A neural network based approach to support the market making strategies in high-frequency trading | |
CN112950262A (zh) | 销量预测方法、装置、计算机设备和存储介质 | |
CN112785057A (zh) | 基于指数平滑的件量预测方法、装置、设备及存储介质 | |
JP5251217B2 (ja) | 販売数予測システム、販売数予測システムの動作方法および販売数予測プログラム | |
CN110400022B (zh) | 自助柜员机现金用量预测方法及装置 | |
CN111666494A (zh) | 分群决策模型生成、分群处理方法、装置、设备及介质 | |
Huang et al. | The strategy of investment in the stock market using modified support vector regression model | |
Kim et al. | Predicting corporate defaults using machine learning with geometric-lag variables | |
Hallman | A comparative study on Linear Regression and Neural Networks for estimating order quantities of powder blends | |
JP2001134643A (ja) | 需要予測装置及び需要予測方法 | |
US20210109906A1 (en) | Clustering model analysis for big data environments | |
Jiang et al. | Application of Machine Learning Model and Hybrid Model in Retail Sales Forecast | |
van der Schans et al. | Time-dependent Black–Litterman | |
Tarsidin et al. | Nowcasting Household Consumption and Investment in Indonesia | |
CN113689020A (zh) | 业务信息预测方法、装置、计算机设备和存储介质 | |
US20200051175A1 (en) | Method and System for Predicting and Indexing Probability of Financial Stress | |
Corona-Bermudez et al. | On the computation of optimized trading policies using deep reinforcement learning | |
CN110766465A (zh) | 金融产品评估方法及其验证方法、装置 | |
CN110097250A (zh) | 产品风险预测方法、装置、计算机设备和存储介质 | |
CN107679987A (zh) | 资产配置策略获取方法、装置、计算机设备和存储介质 | |
Božović | Postoje li makroekonomski prediktori za Point-in-Time PD? Rezultati na osnovu baze podataka stopa neizmirenja Udruženja banaka Srbije | |
Božović | Are there macroeconomic predictors of Point-in-Time PD? Results based on default rate data of the Association of Serbian Banks |
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 |