掌桥专利:专业的专利平台
掌桥专利
首页

销量预测方法、系统、设备及存储介质

文献发布时间:2024-01-17 01:27:33


销量预测方法、系统、设备及存储介质

背景技术

销量预测是指对物品在未来一段时间内的累积销售数量进行估计,典型的应用场景是在电商平台中,商家基于对每个所售物品的销量预测结果,设置合理的配货安排,避免因货品积压或数量不足带来损失。

对于日用品零售行业,针对日用品的SKU的预测存在不确定性,而且一些日用品在市场上未出现,销售数据、消费者偏好等数据都无法参考;对于促销活动的销量预测,往往需要专家的知识和经验进行评估,不可避免地带有专家的主观意见。

在相关技术中,采用机器预测的方式成为当前主流的预测方式。然而,现有销量预测模型存在预测精度低、效果差、易发生过拟合的问题。

需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

发明内容

本公开提供一种销量预测方法、系统、设备及存储介质,至少在一定程度上克服相关技术中销量预测存在预测精度低、效果差、易发生过拟合的问题。

本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。

根据本公开的一个方面,提供一种销量预测方法,包括:从目标物品的属性数据中提取物品特征,从目标活动的活动数据中提取活动特征;其中,所述属性数据包括物品静态属性数据和物品动态属性数据;所述活动数据包括活动静态属性数据和活动动态属性数据;根据所述物品特征和所述活动特征,得到交叉特征;根据预设销量预测模型对所述物品特征、所述活动特征以及所述交叉特征进行处理,得到所述目标物品进行所述目标活动的销量,其中,所述预设销量预测模型,根据所述目标物品的已知销量结果作为标签的特征数据,进行训练后得到。

在本公开的一个实施例中,所述销量预测模型包括第一模型和第二模型;其中,所述根据预设销量预测模型对所述物品特征、所述活动特征以及所述交叉特征进行处理,得到所述目标物品进行所述目标活动的销量,包括:将所述物品特征和所述活动特征输入所述第一模型,得到第一预测数据;将所述交叉特征输入所述第二模型,得到第二预测数据;对所述第一预测数据和所述第二预测数据进行融合,得到所述目标物品进行所述目标活动的销量。

在本公开的一个实施例中,所述第一模型为线性回归模型;以及所述第二模型为深度神经网络模型。

在本公开的一个实施例中,所述从目标物品的属性数据中提取物品特征,包括:将所述目标物品的属性数据输入预设特征提取模型,得到所述预设特征提取模型的预测结果,其中,所述预设特征提取模型,根据目标物品的销量是否高于预期作为标签的特征数据,进行训练得到的;将所述预测结果中的离散值进行独热编码,得到所述离散值的编码结果;通过预设逻辑回归模型对所述预测结果中的连续值和所述离散值的编码结果进行转换,得到所述目标物品的物品特征。

在本公开的一个实施例中,所述根据所述物品特征和所述活动特征,得到交叉特征,包括:将所述目标物品的物品动态属性数据对应的物品动态特征、物品静态属性数据对应的物品静态特征以及所述目标活动的活动静态属性数据对应的活动静态特征中的任意两项进行交叉,得到所述交叉特征。

在本公开的一个实施例中,所述物品静态特征包括基于品类的物品静态属性特征组、基于规格的物品静态属性特征组、以及基于销量的物品静态属性特征组中的至少一项;所述物品动态属性包括所述目标物品的近期促销次数、近期收益活动信息及其对应活动的静态属性、共同组合或套装物品的静态属性、和所述目标物品的近期销量数据中的至少一项。

在本公开的一个实施例中,所述活动静态属性包括活动力度、活动时间、活动地点、活动平台、场次、物品类别、竞品动态中的至少一项;所述目标活动的活动动态属性数据对应的活动动态属性包括近期活动效果统计信息、近日市场活跃度信息、近日物品销量总体趋势中的至少一项。

在本公开的一个实施例中,在所述根据预设销量预测模型对所述物品特征、所述活动特征以及所述交叉特征进行处理,得到所述目标物品进行所述目标活动的销量之前,所述方法还包括:获取所述目标物品的特征数据,以及所述特征数据对应的已知销量结果作为标签,其中,所述目标物品的特征数据包括物品特征样本和活动特征样本;将所述物品特征样本和所述活动特征样本输入待训练的第一模型,得到第一预测数据;根据所述物品特征样本和所述活动特征样本,得到交叉特征样本;将所述交叉特征样本输入待训练的第二模型,得到第二预测数据;对所述第一预测数据和所述第二预测数据进行融合,得到所述目标物品进行所述目标活动的预测销量;根据所述预测销量和对应的已知销量结果,计算模型损失;若满足预设训练停止条件,则得到所述预设销量预测模型;若未满足所述预设训练停止条件,则调整销量预测模型的模型参数重新训练,直至满足所述预设训练停止条件。

在本公开的一个实施例中,所述满足预设训练停止条件包括:若所述模型损失小于预设损失阈值,且模型训练次数达到预设次数阈值,则判定满足所述预设训练停止条件;或者,若所述模型损失小于预设损失阈值,且模型训练时长达到预设时长阈值,则判定满足所述预设训练停止条件。

在本公开的另一个方面,还提供了一种销量预测系统,包括:特征提取模块,用于从目标物品的属性数据中提取物品特征,从目标活动的活动数据中提取活动特征;其中,所述属性数据包括物品静态属性数据和物品动态属性数据;所述活动数据包括活动静态属性数据和活动动态属性数据;特征交叉模块,用于根据所述物品特征和所述活动特征,得到交叉特征;销量预测模块,用于根据预设销量预测模型对所述物品特征、所述活动特征以及所述交叉特征进行处理,得到所述目标物品进行所述目标活动的销量,其中,所述预设销量预测模型,根据所述目标物品的已知销量结果作为标签的特征数据,进行训练后得到。

根据本公开的另一个方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述的销量预测方法。

根据本公开的另一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的销量预测方法。

根据本公开的又一个方面,提供一种计算机程序产品,所述计算机程序产品包括计算机程序或计算机指令,所述计算机程序或所述计算机指令由处理器加载并执行,以使计算机实现上述的销量预测方法。

在本公开实施例中,从目标物品的属性数据中提取物品特征,从目标活动的活动数据中提取活动特征;属性数据包括物品静态属性数据和物品动态属性数据;活动数据包括活动静态属性数据和活动动态属性数据;根据物品特征和活动特征,得到交叉特征;根据预设销量预测模型对物品特征、活动特征以及交叉特征进行处理,得到目标物品进行目标活动的销量,预设销量预测模型,根据目标物品的已知销量结果作为标签的特征数据,进行训练后得到,在日用品的促销预测场景下,物品数据和活动数据极其丰富,针对数据的自定义特征筛选和特征加工,对物品数据的特征联合匹配活动特征联合功能,可以支撑预设销量预测模型的应用,提升预测精确度。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出本公开实施例提供的销量预测系统架构图。

图2示出本公开实施例提供的一种销量预测方法流程图。

图3示出本公开实施例提供的另一种销量预测方法流程图。

图4示出本公开实施例提供的WDL模型结构示意图。

图5示出本公开实施例提供的销量预测模型训练方法流程图。

图6示出本公开实施例提供的物品特征提取方法流程图。

图7示出本公开实施例提供的物品销量预测原理图。

图8示出本公开实施例提供的一种销量预测系统的结构示意图。

图9示出本公开实施例提供的电子设备的结构框图。

具体实施方式

现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。

此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。

图1示出了可以应用本公开实施例的销量预测方法、或销量预测系统的示例性系统架构100。

如图1所示,系统架构100可以包括终端设备110,网络120和服务器130。

网络120用以在终端设备110和服务器130之间提供通信链路的介质,可以是有线网络,也可以是无线网络。

用户可以使用终端设备110通过网络120与服务器130交互,以接收或发送消息,此用户可以为商家。

终端设备110可以是具有显示屏且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、显示屏和台式电脑等。

终端设备110上可以安装的应用程序的客户端是相同的,或基于不同操作系统的同一类型应用程序的客户端。基于终端平台的不同,该应用程序的客户端的具体形态也可以不同,比如,该应用程序客户端可以是手机客户端、PC客户端等。

示例性的,终端设备110安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通讯工具、邮箱客户端、社交平台软件等,通过通讯客户端应用可以设定活动信息以及选择待参加上述活动的物品或者商品,其中,上述物品可以为日用品。

服务器130可以是提供各种服务的服务器,例如对用户利用终端设备110所进行操作的装置提供支持的后台管理服务器。后台管理服务器可以对接收到的请求等数据(例如物品数据和活动数据等)进行分析等处理,得到处理结果(例如目标物品进行目标活动的销量)。

可选地,服务器130可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。

本领域技术人员可以知晓,图1中的终端设备、网络和服务器的数量仅仅是示意性的,根据实际需要,可以具有任意数目的终端设备、网络和服务器。本公开实施例对此不作限定。

在相关技术中,传统销量预测模型在促销销量预测需求情形下预测效果差,促销活动按照传统的时序模型,并不会存在明显的趋势项和周期项,不同次的促销活动的内容并非完全相同,导致基于促销活动基本信息的机器学习模型的预测结果也会存在较大的残差值。

由于促销形式丰富多彩,可以利用的特征和信息变化更多,传统算法无法提供将更多特征属性输入至预测模型以进行促销销量预测的能力。

促销形式丰富多彩体现在:

促销活动个性化,一方面,与宣传个性化推送相类似的促销活动个性化推送,针对不同特性的客户采用不同的促销方式;另一方面,专属促销,例如,利用专属优惠券等形式与个体单位相关的促销方式;

推送方式个性化,在大数据信息挖掘与分析技术越来月成熟的情况下,促销活动的推送也可以更加个性化,比如与游戏相结合,具体地,对于喜欢游戏的顾客采用游戏化促销策略,对于喜欢简单的顾客采取简单促销,除此之外,还可以划分顾客忠诚等级、潜在客户等等,采取针对性的促销策略,提高促销转化率;

促销内容情感化:指促销的内容不再是冰冷的打折优惠券,而是在促销过程中注入商家的情感,目的是引起消费者的情感共鸣,从而使消费行为上升到为“情”消费。为情消费的好处是具有长期得利性,有利于提高消费者对品牌的认同感、归属感,最终对品牌形成情感和行为忠诚,这相比于一次性的减价等物质性消费所带来的利益,从长期角度来看,是要大得多的。当然,促销内容情感化并不是与打折优惠水火不容,恰恰相反的是,情感要与打折促销相结合,双管齐下,实现1+1>2的效果。

然而,相关技术中的促销销量预测模型基于时序和残差预测的模型或者基于搜索类似的模型预测效果差,不会运用到商品或者促销活动等各种维度的特征,且模型功能单一,一般只能提供基础的销量预测功能,无法完全覆盖日用品促销活动销量预测业务场景需求功能。

基于此,本公开通过采集更多的物品和促销活动的属性特征,基于梯度提升决策树(Gradient Boosting Decision Tree,GBDT)模型结合逻辑回归(Logistic Regression,LR)模型进行一个特征工程,即采用GBDT模型学习到的树来构造新特征,将这些新特征加入原有特征一起进行模型训练,得到模型的输入量,以预测物品销量,从而提升模型预测的精确度,防止过拟合。

需要指出的是,在不冲突的情况下,本发明的实施例以及实施例中的技术特征可以相互结合。

下面结合附图及实施例对本示例实施方式进行详细说明。

首先,本公开实施例中提供了一种销量预测方法,该方法可以由任意具备计算处理能力的系统执行。在一些实施例中,本公开实施例中提供的销量预测方法,可以由服务器执行;在另一些实施例中,本公开实施例提供销量预测方法可以由终端设备和服务器通过交互的方式来实现。

图2示出本公开实施例中提供的一种销量预测方法流程图,如图2所示,本公开实施例中提供的销量预测方法,包括如下步骤:

S202、从目标物品的属性数据中提取物品特征,从目标活动的活动数据中提取活动特征,其中,属性数据包括物品静态属性数据和物品动态属性数据;活动数据包括活动静态属性数据和活动动态属性数据。

在S202中,目标物品可以为日用品,目标物品可以是一个或多个单独销售的商品,也可以是一组或多组以套装形式搭配销售的商品。

需要说明的是,目标物品的属性数据包括物品静态属性数据、物品动态属性数据、近期活动信息和所述近期活动的活动静态属性数据中的至少一项。与物品静态属性数据对应的物品特征为物品静态特征,与物品动态属性数据对应的物品特征为物品动态特征。

其中,物品静态特征包括基于品类的物品静态属性特征组、基于规格的物品静态属性特征组、以及基于销量的物品静态属性特征组中的至少一项。

基于品类的物品静态属性特征组可以包括商品一级品类、商品二级品类、商品三级品类等,例如,对于某牛奶商品,其基于品类的商品静态属性为:商品一级品类为食品、商品二级品类为蛋乳类、商品三级品类为牛奶。

基于规格的物品静态属性特征组可以包括尺寸、重量等,例如上述牛奶商品,基于规格的物品静态属性特征组可以为尺寸为35,重量为2.5Kg。

基于销量的物品静态属性特征组可以包括价格、产地等,同样地,对于上述牛奶商品,基于销量的物品静态属性特征组包括商品价格为45.5元,产地为A省等。

物品动态特征包括目标物品的近期促销次数、近期收益活动信息及其对应活动的静态属性、共同组合或套装物品的静态属性、和目标物品的近期销量数据中的至少一项。其中,目标物品的近期促销次数可以为最近5次正向收益的促销活动,促销次数可以根据实际情况确定;近期收益活动信息可以包括上述活动的名称、活动时段等,近期收益活动的静态属性可以包括上述活动的力度、时间、场次、正向收益情况等。需要说明的是,上述信息中存在数据缺失时可以采用空值填充。

对于共同组合或套装物品的静态特征可以采用每个物品品产生的多个物品静态特征,套装物品中一般都有一个主商品,其余为副商品,套装物品一般不会超过两种主商品,但会出现相同商品的不同款式的组合,可以当作该商品为主商品,副商品为该商品的套装组合。

目标物品的近期销量数据作为目标物品特征数据的标签,用于训练销量预测模型。对于单独销售的商品,可以采用近120天的销量数据作为目标物品的近期销量数据;对于套装物品的近期销量数据可以采用过去365天的单品销量数据。需要说明的是,近期为以当前时间之前的一个时间段,时间段的长度可以根据具体情况而定,例如上述的120天或365天,本公开不做具体限定。

上述的目标活动为商家欲开展的促销活动,目标活动与上述目标物品的近期促销活动的属性信息可以至少部分相同。目标活动的活动数据包括目标活动的活动静态属性数据和活动动态属性数据。与活动静态属性数据对应的活动特征为活动静态特征,与活动动态属性数据对应的活动特征为活动动态特征。

目标活动的活动静态特征包括活动力度、活动时间、活动地点、活动平台、代言人、场次、物品类别、竞品动态中的至少一项。活动动态特征包括近期活动效果统计信息、近日市场活跃度信息、近日物品销量总体趋势中的至少一项。其中,近期活动效果统计信息可以为近N次活动效果统计信息,N为正整数,例如N=5,近日市场活跃度信息为销售环比上一年度同期的效果,对新品而言,无去年数据的,采用市场环比总增长填充。

S204、根据物品特征和活动特征,得到交叉特征。

在一个实施例中,针对模型容易出现过拟合的情况,本公开对模型本身的交叉项进行缩减,考虑到属性数据已经做了特征组分组,上述S204根据物品特征和活动特征,得到交叉特征,包括:将目标物品的物品动态属性数据对应的物品动态特征、物品静态属性数据对应的物品静态特征以及目标活动的活动静态属性数据对应的活动静态特征中的任意两项进行交叉,得到交叉特征,通过允许三个分组进行一个相互的交叉,只输入了物品动态特征、物品静态特征以及活动静态特征进行交叉,提高物品的权重,将物品静态特征的二次项添加至交叉后的特征组中,提升模型预测的精确度。

具体地,可以将物品动态特征、物品静态特征、活动静态特征输入预先训练的神经网络模型,即可实现上述三个特征的交叉。

S206、根据预设销量预测模型对物品特征、活动特征以及交叉特征进行处理,得到目标物品进行目标活动的销量,其中,预设销量预测模型,根据目标物品的已知销量结果作为标签的特征数据,进行训练后得到。

预设销量预测模型可用于预测目标物品进行目标活动的销量,预设销量预测模型可以基于目标物品的特征数据、以及目标物品的已知销量结果进行训练得到,需要说明的是,预设销量预测模型为训练完成的销量预测模型。

上述的预设销量预测模型可以包含至少两个模型的混合模型。在一些实施例中,可以基于机器学习方法(例如人工神经网络算法、深度学习算法、判定树算法、关联规则算法、归纳逻辑程序设计算法等)确定和/或训练销量预测模型。具体地,可以基于损失函数(例如销量预测模型预测得到的目标物品进行目标活动的销量和目标物品的已知销量结果之间的差异)确定上述销量预测模型。

本公开实施例提供的销量预测方法,从目标物品的属性数据中提取物品特征,从目标活动的活动数据中提取活动特征;根据物品特征和活动特征,得到交叉特征;根据预设销量预测模型对物品特征、活动特征以及交叉特征进行处理,得到目标物品进行目标活动的销量,预设销量预测模型,根据目标物品的已知销量结果作为标签的特征数据,进行训练后得到,在日用品的促销预测场景下,物品数据和活动数据及其丰富,针对数据的自定义特征筛选和特征加工,对物品数据的特征联合匹配活动特征联合功能,可以支撑预设销量预测模型的应用,提升预测精确度。

在一个实施例中,销量预测模型包括第一模型和第二模型,其中,第一模型可对应于目标物品和目标活动的特征数据的处理,第二模型可对应于交叉特征的处理。

图3示出本公开实施例提供的另一种销量预测方法流程图。如图3所示,在本公开的一个实施例中,上述S206根据预设销量预测模型对物品特征、活动特征以及交叉特征进行处理,得到目标物品进行目标活动的销量,包括:

S302、将物品特征和活动特征输入第一模型,得到第一预测数据;

S304、将交叉特征输入第二模型,得到第二预测数据;

S306、对第一预测数据和第二预测数据进行融合,得到目标物品进行目标活动的销量。

需要说明的是,销量预测模型可以是Wide and Deep Learning(WDL)模型,该WDL模型包括线性回归模型和深度神经网络(Deep Neural Networks,DNN)模型。在本公开中,第一模型为线性回归模型;以及第二模型为深度神经网络模型。与目标物品和目标活动的基本属性相关的物品特征和活动特征可以为线性回归模型的输入,交叉特征可以为深度神经网络模型的输入。

图4示出本公开实施例提供的WDL模型结构示意图。如图4所示,WDL模型包括左侧的第一模型(或称宽度组件)和右侧的第二模型(或称深度组件)。在一些实施例中,第一模型可以是线性回归模型,第二模型可以是深度神经网络模型。WDL模型可以包括第一输入层401和输出层404,第一输入层401可以作为物品特征和活动特征的输入层。第二模型还可以进一步包括第二输入层402和多个隐藏层403,第二输入层402可以作为交叉特征的输入层。第一输入层401、第二输入层402和输出层404可以分别包括一个或多个人工神经元,例如图4所示的圆圈。

第一预测数据(第一模型的输出)和第二预测数据(第二模型的输出)的加权求和(上述的融合)可以作为预测值,以将第一模型和第二模型进行结合,预测值可以进一步计算模型的损失函数。除此之外,还可以对第一预测数据和第二预测数据对数几率的加权求和,以作为销量预测模型的预测值,该预测值可以输出至损失函数进行模型训练。

在本公开实施例中,针对促销场景的销量预测,通过预设销量预测模型一站式处理与促销活动相关的所有特征数据,提高模型的表达能力,通过WDL模型的记忆能力与泛化能力完成促销场景的销量预测和匹配能力计算。

图5示出本公开实施例提供的销量预测模型训练方法流程图。在一个实施例中,在S206根据预设销量预测模型对物品特征、活动特征以及交叉特征进行处理,得到目标物品进行目标活动的销量之前,本公开实施例提供的销量预测方法还包括:

S502、获取目标物品的特征数据,以及特征数据对应的已知销量结果作为标签,其中,目标物品的特征数据包括物品特征样本和活动特征样本;

S504、将物品特征样本和活动特征样本输入待训练的第一模型,得到第一预测数据;

S506、根据物品特征样本和活动特征样本,得到交叉特征样本;

S508、将交叉特征样本输入待训练的第二模型,得到第二预测数据;

S510、对第一预测数据和第二预测数据进行融合,得到目标物品进行目标活动的预测销量;

S512、根据预测销量和对应的已知销量结果,计算模型损失;

S514、判断是否满足预设训练停止条件,若满足,则执行S516;若未满足,则执行S518;

S516、得到预设销量预测模型;

S518、调整销量预测模型的模型参数重新训练,直至满足预设训练停止条件。

在一些实施例中,将目标物品的特征数据以及对应的已知销量结果构建训练集和验证集,其中,训练集用于模型训练,验证集用于模型验证,训练集和验证集按照预设比例划分。通常的,训练集和验证集以8:2或9:1的比例划分,预设比例可以根据实际情况确定,不做具体限定。

上述的目标物品的特征数据包括物品特征样本和活动特征样本,需要说明的是,模型训练输入的特征数据的提取方式与上述实施例的物品特征和活动特征的提取方式相同。

在一个实施例中,第一预测数据(第一模型的输出)和第二预测数据(第二模型的输出)的加权求和(上述的融合)可以作为预测值,以将第一模型和第二模型进行结合,预测值可以进一步计算模型的损失函数。除此之外,还可以对第一预测数据和第二预测数据对数几率的加权求和,以作为销量预测模型的预测值,该预测值可以输出至损失函数进行模型训练。

在一些实施例中,可以根据预测销量和对应的已知销量结果,确定销量预测模型的模型损失,模型损失可以表征销量预测模型的准确率。

具体地,用于确定销量预测模型的损失函数可以采用平均绝对百分比误差、均方误差、均方根误差等,或其任意组合。

在一个实施例中,上述的满足预设训练停止条件可以包括:若模型损失小于预设损失阈值,且模型训练次数达到预设次数阈值,则判定满足预设训练停止条件;或者,若模型损失小于预设损失阈值,且模型训练时长达到预设时长阈值,则判定满足预设训练停止条件。

需要说明的是,上述的预设损失阈值、预设次数阈值或预设时长阈值可以为预先设置的固定值,也可以为在不同条件下进行调整,具体取值可以根据实际情况确定,本公开不做具体限定。

当模型训练的预测结果满足预设训练停止条件时,将销量预测模型存储为预设销量预测模型;当模型训练的预测结果未满足预设训练停止条件时,可以调整模型参数,重新训练。

对于WDL模型,可以包括多个初始参数,例如,核的数目、每个核的大小、处理层的数目、第一模型和第二模型的权重等。其中,WDL模型的初始参数可以根据实际需求设定或者根据不同条件进行调整。

需要说明的是,上述销量预测模型的训练步骤可以根据实际情况调整顺序,例如可以调整S504和S506的先后顺序。

在本公开实施例中,通过目标物品的特征数据以及对应的已知销量结果构建训练集和验证集,当通过模型训练无法得到满足预设训练停止条件的销量预测模型时,调整模型参数,重新训练,直至满足预设训练停止条件,从而采用多种特征数据,建立目标物品的特征数据与销量之间的关联关系,进而根据目标物品的特征数据,预测目标物品进行目标活动的销量,有效提升模型训练和预测的精确度,有助于理解日用品促销活动的过程。

图6示出本公开实施例提供的物品特征提取方法流程图。如图6所示,上述S202中的从目标物品的属性数据中提取物品特征,包括:

S602、将目标物品的属性数据输入预设特征提取模型,得到预设特征提取模型的预测结果,其中,预设特征提取模型,根据目标物品的销量是否高于预期作为标签的特征数据,进行训练得到的。

在一个实施例中,特征提取模型可以为梯度提升决策树GBDT模型、随机森林模型等,其中,GBDT模型是一种迭代的决策树算法,通过构造一组弱的学习器,并把多颗决策树的结果累加,作为最终的预测结果。

在训练GBDT模型时,以目标物品的属性数据(包括目标物品的物品静态属性数据和物品动态属性数据)作为特征数据,将特征数据输入待训GBDT模型,以目标物品的销量是否高于预期作为标签,迭代训练上述待训练GBDT模型,直至满足预设条件(例如,模型训练得到的模型损失小于预设阈值,和/或迭代时长(迭代次数)达到预设时长(预设次数)),得到上述预设特征提取模型。

S604、将预测结果中的离散值进行独热编码,得到离散值的编码结果。

在一个实施例中,GBDT模型输出的预测结果可以包括连续值和离散值,对于预测结果中的离散值,通过独热编码(one-hot编码),得到离散值对应的编码结果。独热编码,又称一位有效编码,其使用N为状态寄存器来对N个状态进行编码,每个状态都由其他独立的寄存位,并且在任意时候只有一位有效。one-hot编码是分类变量作为二进制向量的表示,首先将分类变量(上述的预测结果中的离散值)映射到整数值,然后每个整数值被表示为二进制向量,除了整数的索引(标记为1)之外,其他均为0。

S606、通过预设逻辑回归模型对预测结果中的连续值和离散值的编码结果进行转换,得到目标物品的物品特征。

在一个实施例中,通过逻辑回归LR模型对上述的连续值和离散值的编码结果进行转换,从而得到目标物品的物品特征,逻辑回归是一种广义线性回归,是从指数分布族导出线性模型,逻辑回归假设(Y,X)服从伯努利分布。

需要说明的是,目标活动的活动特征与物品特征的提取方式类似,本公开不再赘述。

在本公开实施例中,在已有的活动静态特征、活动动态特征、物品静态特征和物品动态特征中,将物品静态特征进行一个特征工程,基于物品静态特征构造新特征,然后将新特征加入原有特征一起进行模型训练和模型预测,避免出现过拟合的情况,提升销量预测的精确度。

图7示出本公开实施例提供的物品销量预测原理图。如图7所示,本公开将销量预测系统划分为三个层面,分别为数据层、算法层和业务层。

其中,数据层用于采集并管理物品信息和活动信息,以为算法层执行的模型训练和模型预测提供物品和/或活动的相关信息。对于物品信息和活动信息,将其属性分为动态属性和静态属性,基于此对数据库信息进行解耦,解耦后可以根据业务层设置对动态属性进行自定义的汇集和统计计算等特征加工,一般采用分布式的数据库或者Hive集权等OLTP数据管理系统,提供足够的数据计算和传输能力,保证支持算法的使用,同时可以架构上OLAP的数据库软件提供业务层面的分析功能,在本公开中,无需提供实时计算能力,只要保证数据的容灾和稳定的大数据计算能力即可。

算法层包括模型板块和特征处理板块。其中,模型板块用于进行模型管理、活动选品、构建动态属性、促销活动选择,即用于确定促销活动、确定参加促销活动的物品、以及确定适用于上述促销活动的模型并构建动态属性;特征处理板块用于进行活动管理、活动归类、基础信息采集、活动维护、活动信息归档、活动复盘等。

业务层为系统架构的顶层,连接应用层,面向用户直接提供算法结果和统计结果,不仅保留原有促销销量预测的能力,而且提供了更丰富的服务种类。业务层用于活动选品、物品活动选择、销量时序预测、GMV预测、焦点展示、业务自定义属性组等。

对于业务层,针对业务场景,重点针对的是销售预测数据,销售的内容主要是利用已有的数据对物品未知的时间段进行预测或者填补空缺值,方便合理规划整个供应链仓储、采购、补调等环节的作用。

销量预测是整个供应链优化提升的起点也是基础,影响至关重要,预测的误差在整个供应链后续的优化中逐层提高影响,不仅提高消耗的成本,也影响工作效率。

促销活动关系到消费者对促销物品的价值感知和评估,甚至影响到物品的品牌价值在促销活动中,不同的促销方式也会营销促销效果,促销活动做主动的涉及,能够引导企业树立品牌意识,以品牌开拓市场,提升市场份额和竞争力,提升企业的经济效益和企业的快速发展,同时提升物品的品牌知名度和市场竞争力。

下面结合物品销量预测的具体示例进行说明。

在单独促销某类日用品的场景下,物品维度特征对应的特征工程,前面的物品属性信息通过对离散值的one-hot编码和连续值的特征的拼接,组成20+列的静态属性(例如,某牛奶商品,物品对应的静态属性:一级品类是食品,二级品类是蛋乳类,三级品类是牛奶,对应尺寸是(35cm),重量是2.5kg,商品价格45.5元等这些静态属性),动态拼接物品最近120天的销量数据(不够就填充),以及动态得获取最近的5次正向收益的促销活动,以及这些活动的静态属性包括力度、时间、场次、以及正向收益情况等(不够就用空值填充),汇集40列的特征,总共有180个特征列,对应4个特征组。

活动维度特征对应的特征工程,根据活动的静态属性同上包含力度、时间、场次、以及整体正向收益情况等,以及最近的动态属性,包括市场活跃度(销量环比去年同期的效果,对新品无去年数据的用市场环比总增长来填充),相同活动最近3次的活动效果包含力度、时间、场次等信息,共计5个静态特征和25个动态特征,两组特征。

训练数据集:对于促销销量预测,将所有要预测的目标物品和目标活动进行匹配,每个目标物品采用参加目标活动时对应的180个特征列以及目标活动的30个特征列(5个静态特征和25个动态特征)输入待训练的WDL模型,共计210个特征列,6组特征,数据打标使用该目标物品在目标活动中的销量作为标签lable值。

模型训练:将所有匹配的商品和活动的相关数据输入待训练WDL模型,训练得到WDL模型,WDL模型为深度学习模型,仅需要灌入数据训练即可。模型梯度采用均方误差MSE下降方式,每批次的batch-size取200(单次用以训练的数据(样本)个数),对于学习率,我们设定为初始值为0.001的warm-up,Epoch的个数设置为500,每次取上一步中整理得到的训练数据集剩下的数据的10%作为测试数据集,验证模型训练效果。

根据上述的特征工程调整特征参数,并进行GDBT模型和LR模型的训练,之后进行训练。

模型迭代:每经过一个月,累积新的促销活动,将最近一年的商品和活动数据重新采用上述的特征工程处理,并且匹配得到新的训练集,进行替换模型文件,迭代训练WDL模型。

模型调用:活动选品通过配置相应的活动配置,通过活动的静态属性使用ES集群和最近邻匹配得到最接近的已经发生过的活动,使用匹配到的活动来补充动态属性,这样可以造出需要的活动数据,另一方面,物品的数据使用数据库中的物品数据,可以按照当前情况重新进行特征工程(可以按照日维度进行特征工程,更新对应的动态数据部分,静态数据部分不需要重新计算);最后将活动的数据和物品的数据共同输入训练完成的WDL模型,得到对应的目标物品的预测销量数据。

对接业务系统:将得到的预测销量数据接通到业务系统,供给客户可以按照其业务需求挑选相应的物品参加促销活动(活动选品);将活动销量参照历史销量趋势按照时间拆分为日维度数据(可以预测总销量,也可以按照这个物品在历史活动的时间段内销量的分布进行拆分,如果这个物品历史没有促销活动,用过去的相似活动中物品总体销量分布来进行拆分,比如,预测某物品的总销量为100万件,该物品在上次活动中的前一个月卖了50件,中间一个月卖了20件,最后一个月卖了30件,按照这个分布进行拆分,预测该物品在促销活动的销量时间序列分别是50w,20w,30w。上述仅为月维度的示例,对于日维度,可以参考月维度拆分至日维度即可)。对于活动销量预测,通过简单的数据处理,也可以将预测销量数据转化成对应的销售额,实现商品交易总额(Gross Merchandise Volume,GMV)预测。

在组合物品或者套装物品的场景下,物品维度数据特征处理与单独促销某类日用品的处理方式类似。每个套装物品产生共计20个静态属性特征,以及40个动态的活动信息,将近120天的销量数据改为过去365天的单品销量数据。

套装维度数据的特征工程,按照套装物品的活动销量,将套装物品全部拆分为两两的配对,例如,将套装物品按照主商品和副商品进行配对组合,如一个套装物品(A、B、C、D、E),其中,A为主商品,得到的商品对分别为(A,B)、(A,C)、(A,D)、(A,E),并且按照物品价格得到相应的套装整体折扣率,汇总历史365天内的套装物品的销售数据。

构造训练数据集:将物品的信息和套装数据(商品对)进行匹配,一个商品对匹配两个商品数据,共计82个特征列,添加套装的特征列,并添加标签label值,采用套装物品的销售量作为label。

模型训练:同上,将得到的2个商品组合数据和套装物品数据输入到待训练WDL模型中,训练得到训练完成的WDL模型,训练参数同上(模型梯度采用均方误差MSE下降方式,每批次的batch-size取200,对于学习率,我们设定为初始值为0.001的warm-up,Epoch的个数设置为500,每次取上一步中得到的训练数据集剩下的数据的10%作为测试数据集,验证模型训练效果)。

模型迭代:与上述示例类似,可以累积一个月进行一次迭代,使用新的数据训练全新的模型文件,将线上的模型文件替换为新的模型文件。

模型调用:首先是数据部分,每天用最新的物品数据制作物品的动态属性(单品销量数据),业务场景内,客户先选定一个主商品的范围,将主商品和所有副商品进行匹配,分别计算销量,得到销量预测结果。

对接业务系统:将得到的预测销量数据接通到业务系统,供给客户可以按照其业务需求挑选合适的物品套装组合。

在日用品的促销预测场景下,物品数据和活动数据极其丰富完全可以支撑我们深度学习的算法模型,基于内容的深度学习推荐算法在促销销量预测上的应用,提供了包括选品和选活动等在内的更丰富的服务功能。在离线促销销量预测系统设计的架构设计针对传统销量预测不同的提供更丰富的功能和数据库设计、及时响应的能力;针对数据的自定义特征筛选和特征加工,对物品数据的特征联合匹配活动特征联合功能。针对日益丰富的促销活动和各类促销活动的信息越来越丰富和多样化,本公开提供了用于促销销量预测的一站式的动态特征处理能力,并提供了进阶的物品或者活动的用于预测的特征高维度输出能力,以便于模型的提升和物品\活动\模型分析时归因分析得能力。

基于同一发明构思,本公开实施例中还提供了一种销量预测系统,如下面的实施例。由于该系统实施例解决问题的原理与上述方法实施例相似,因此该系统实施例的实施可以参见上述方法实施例的实施,重复之处不再赘述。

图8示出本公开实施例提供的一种销量预测系统示意图。如图8所示,本实施例的销量预测系统,包括特征提取模块801、特征交叉模块802和销量预测模块803。

其中,特征提取模块801,用于从目标物品的属性数据中提取物品特征,从目标活动的活动数据中提取活动特征;其中,所述属性数据包括物品静态属性数据和物品动态属性数据;所述活动数据包括活动静态属性数据和活动动态属性数据;

特征交叉模块802,用于根据物品特征和活动特征,得到交叉特征;

销量预测模块803,用于根据预设销量预测模型对物品特征、活动特征以及交叉特征进行处理,得到目标物品进行目标活动的销量,其中,预设销量预测模型,根据目标物品的已知销量结果作为标签的特征数据,进行训练后得到。

在一个实施例中,销量预测模型包括第一模型和第二模型;销量预测模块803用于将物品特征和活动特征输入第一模型,得到第一预测数据;将交叉特征输入第二模型,得到第二预测数据;对第一预测数据和第二预测数据进行融合,得到目标物品进行目标活动的销量。

需要说明的是,第一模型为线性回归模型;以及第二模型为深度神经网络模型。

在一个实施例中,特征提取模块801具体用于将目标物品的属性数据输入预设特征提取模型,得到预设特征提取模型的预测结果,其中,预设特征提取模型,根据目标物品的销量是否高于预期作为标签的特征数据,进行训练得到的;将预测结果中的离散值进行独热编码,得到离散值的编码结果;通过预设逻辑回归模型对预测结果中的连续值和离散值的编码结果进行转换,得到目标物品的物品特征。

在一个实施例中,特征交叉模块802,用于将目标物品的物品动态属性数据对应的物品动态特征、物品静态属性数据对应的物品静态特征以及目标活动的活动静态属性数据对应的活动静态特征中的任意两项进行交叉,得到交叉特征。

需要说明的是,物品静态特征包括基于品类的物品静态属性特征组、基于规格的物品静态属性特征组、以及基于销量的物品静态属性特征组中的至少一项;物品动态特征包括目标物品的近期促销次数、近期收益活动信息及其对应活动的静态属性、共同组合或套装物品的静态属性、和目标物品的近期销量数据中的至少一项。

需要说明的是,物动静态特征包括活动力度、活动时间、活动地点、活动平台、场次、物品类别、竞品动态中的至少一项;目标活动的活动动态属性数据对应的活动动态属性包括近期活动效果统计信息、近日市场活跃度信息、近日物品销量总体趋势中的至少一项。

在一个实施例中,本公开实施例的销量预测系统还包括未显示在附图中的模型训练模块,模型训练模型用于获取目标物品的特征数据,以及特征数据对应的已知销量结果作为标签,其中,目标物品的特征数据包括物品特征样本和活动特征样本;将物品特征样本和活动特征样本输入待训练的第一模型,得到第一预测数据;根据物品特征样本和活动特征样本,得到交叉特征样本;将交叉特征样本输入待训练的第二模型,得到第二预测数据;对第一预测数据和第二预测数据进行融合,得到目标物品进行目标活动的预测销量;根据预测销量和对应的已知销量结果,计算模型损失;若满足预设训练停止条件,则得到预设销量预测模型;若未满足预设训练停止条件,则调整销量预测模型的模型参数重新训练,直至满足预设训练停止条件。

需要说明的是,满足预设训练停止条件包括:若模型损失小于预设损失阈值,且模型训练次数达到预设次数阈值,则判定满足预设训练停止条件;或者,若模型损失小于预设损失阈值,且模型训练时长达到预设时长阈值,则判定满足预设训练停止条件。

在本公开实施例中,从目标物品的属性数据中提取物品特征,从目标活动的活动数据中提取活动特征;其中,属性数据包括物品静态属性数据和物品动态属性数据;活动数据包括活动静态属性数据和活动动态属性数据;根据物品特征和活动特征,得到交叉特征;根据预设销量预测模型对物品特征、活动特征以及交叉特征进行处理,得到目标物品进行目标活动的销量,预设销量预测模型,根据目标物品的已知销量结果作为标签的特征数据,进行训练后得到,在日用品的促销预测场景下,物品数据和活动数据及其丰富,针对数据的自定义特征筛选和特征加工,对物品数据的特征联合匹配活动特征联合功能,可以支撑预设销量预测模型的应用,提升预测精确度。

所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。

下面参照图9来描述根据本发明的这种实施方式的电子设备900。图9显示的电子设备900仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图9所示,电子设备900以通用计算设备的形式表现。电子设备900的组件可以包括但不限于:上述至少一个处理单元910、上述至少一个存储单元920、连接不同系统组件(包括存储单元920和处理单元910)的总线930。

其中,存储单元存储有程序代码,程序代码可以被处理单元910执行,使得处理单元910执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。例如,处理单元910可以执行如图2中所示的从目标物品的属性数据中提取物品特征,从目标活动的活动数据中提取活动特征;其中,属性数据包括物品静态属性数据和物品动态属性数据;活动数据包括活动静态属性数据和活动动态属性数据;根据物品特征和活动特征,得到交叉特征;根据预设销量预测模型对物品特征、活动特征以及交叉特征进行处理,得到目标物品进行目标活动的销量,其中,预设销量预测模型,根据目标物品的已知销量结果作为标签的特征数据,进行训练后得到。

存储单元920可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)9201和/或高速缓存存储单元9202,还可以进一步包括只读存储单元(ROM)9203。

存储单元920还可以包括具有一组(至少一个)程序模块9205的程序/实用工具9204,这样的程序模块9205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

总线930可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。

电子设备900也可以与一个或多个外部设备940(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该系统交互的设备通信,和/或与使得该电子设备900能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/生成(I/O)接口950进行。并且,系统还可以通过网络适配器960与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图9所示,网络适配器960通过总线930与电子设备900的其它模块通信。应当明白,尽管图9中未示出,可以结合电子设备900使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。

通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。

在本公开的示例性实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质可以是可读信号介质或者可读存储介质。在本公开的示例性实施例中,还提供了一种计算机程序产品,计算机程序产品包括计算机程序或计算机指令,计算机程序或计算机指令由处理器加载并执行,以使计算机实现上述实施例公开的方法的步骤。

本公开中的计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。

在本公开中,计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

可选地,计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。

在具体实施时,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。

应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。

此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。

通过以上实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。

相关技术
  • 存储设备测试方法、存储设备测试系统及存储介质
  • 告警预测方法、系统、存储介质及计算机设备
  • 自动骨龄预测方法、系统、计算机设备和存储介质
  • 物流网点健康状况的预测方法、系统、存储介质、及设备
  • 顾客属性预测方法、存储介质、系统及设备
  • 一种商品销量预测方法、系统、电子设备及存储介质
  • 一种预测销量的方法、系统、设备和存储介质
技术分类

06120116222932