首页> 中国专利> 生成商品销量预测模型及预测商品销量的方法和装置

生成商品销量预测模型及预测商品销量的方法和装置

摘要

提供了一种生成商品销量预测模型及预测商品销量的方法和装置。所述生成商品销量预测模型的方法包括:获取关于多个数据表的表关系配置信息,其中,所述多个数据表包括商品销售信息和商品属性信息,所述表关系配置信息包括:两两数据表之间的关联关系;基于所述表关系配置信息,将所述多个数据表拼接成一个基础样本表;基于所述基础样本表中的字段生成关于所述字段的衍生特征,并将生成的衍生特征并入所述基础样本表形成包括多条机器学习样本的样本表;基于所述样本表进行机器学习模型训练,生成用于预测商品未来k天的销量的商品销量预测模型。

著录项

  • 公开/公告号CN115994782A

    专利类型发明专利

  • 公开/公告日2023-04-21

    原文格式PDF

  • 申请/专利权人 第四范式(北京)技术有限公司;

    申请/专利号CN202111205737.3

  • 发明设计人 王海;涂威威;

    申请日2021-10-15

  • 分类号G06Q30/0202(2023.01);G06N20/00(2019.01);

  • 代理机构北京铭硕知识产权代理有限公司 11286;北京铭硕知识产权代理有限公司 11286;

  • 代理人徐璐璐;薛义丹

  • 地址 100085 北京市海淀区清河中街66号院1号楼九层LO901-1号

  • 入库时间 2023-06-19 19:23:34

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-05-09

    实质审查的生效 IPC(主分类):G06Q30/0202 专利申请号:2021112057373 申请日:20211015

    实质审查的生效

  • 2023-04-21

    公开

    发明专利申请公布

说明书

技术领域

本公开总体说来涉及人工智能领域,更具体地讲,涉及一种生成商品销量预测模型的方法及装置、预测商品销量的方法及装置。

背景技术

机器学习的样本数据来源广泛,往往存储在不同的数据表当中。与此同时,例如,商品交易量等数据会随时间发生变化,因此存在大量时序关系型数据。

在传统的机器学习应用中,需要建模经验丰富的专家才能从时序关系型数据中挖掘出有效的时序信息,并加以利用提升机器学习模型的效果。即使具备较深的知识储备的专家也需要通过不断的尝试和试错,才能构建出有价值的时序特征,并且利用好多个相关联表来提升机器学习模型的效果。

发明内容

本公开的示例性实施例在于提供一种生成商品销量预测模型及预测商品销量的方法和装置,以解决现有技术存在的无法有效地从数据拼接开始即自动化地执行机器学习的问题。

根据本公开的示例性实施例,提供一种生成商品销量预测模型的方法,包括:获取关于多个数据表的表关系配置信息,其中,所述多个数据表包括商品销售信息和商品属性信息,所述表关系配置信息包括:两两数据表之间的关联关系;基于所述表关系配置信息,将所述多个数据表拼接成一个基础样本表;基于所述基础样本表中的字段生成关于所述字段的衍生特征,并将生成的衍生特征并入所述基础样本表形成包括多条机器学习样本的样本表;基于所述样本表进行机器学习模型训练,生成用于预测商品未来k天的销量的商品销量预测模型。

可选地,所述多个数据表包括:行为数据表、反馈数据表、销量辅助数据表中的至少一个;其中,所述行为数据表包括以下项之中的至少一项:商品id、仓库id、预测基准日期、目标日期、商品属性信息、样本id、日期的时间特征信息;其中,所述反馈数据表包括以下项之中的至少一项:样本id、目标日期、原始样本标签,原始样本标签为目标日期的商品销量;其中,所述销售辅助数据表包括以下项之中的至少一项:商品id、仓库id、销售日期、商品销售信息。

可选地,在所述行为数据表中,相同的商品id、仓库id、以及预测基准日期对应k条数据记录,所述k条数据记录的目标日期分别为所述预测基准日期的未来k天中的不同天的日期。

可选地,所述表关系配置信息包括:所述行为数据表与所述反馈数据表之间基于关联字段具有关联关系,所述行为数据表和所述反馈数据表中的所述关联字段为:样本id字段;所述表关系配置信息还包括:所述行为数据表与所述销售辅助数据表之间基于关联字段具有关联关系,所述行为数据表中的所述关联字段为商品id字段、仓库id以及预测基准日期字段,所述销售辅助数据表中的所述关联字段为商品id字段、仓库id以及销售日期字段。

可选地,基于所述表关系配置信息,将所述多个数据表拼接成一个基础样本表的步骤包括:按照将具有关联关系的两个数据表中的一个数据表中的字段基于关联字段拼接到另外一个数据表,直至拼接到指定数据表的拼接顺序,将除指定数据表之外的数据表中的字段拼接到指定数据表形成基础样本表。

可选地,按照所述拼接顺序将除指定数据表之外的数据表中的字段拼接到指定数据表形成基础样本表的步骤包括:按照所述拼接顺序将除指定数据表之外的数据表中的字段分别进行各种聚合处理后或直接拼接到指定数据表;针对每个分别进行各种聚合处理后才拼接到指定数据表的字段,从针对该字段分别进行各种聚合处理后得到的拼接到指定数据表的各个聚合字段中筛选出特征重要性较低的聚合字段;从拼接后的指定数据表中删除筛选出的聚合字段,以得到基础样本表。

可选地,在按照所述拼接顺序将除指定数据表之外的数据表中的字段分别进行各种聚合处理后或直接拼接到指定数据表的步骤中,当除指定数据表之外的任一数据表中的字段能够不需要聚合处理而直接从其初始所在的数据表按照所述拼接顺序拼接到指定数据表时,将该数据表的字段直接从其初始所在的数据表按照所述拼接顺序拼接到指定数据表;当除指定数据表之外的任一数据表中的字段只有进行聚合处理才能够从其初始所在的数据表按照所述拼接顺序拼接到指定数据表时,在按照所述拼接顺序将该字段从其初始所在的数据表拼接到指定数据表的过程中,每当需要进行聚合处理才能将该数据表的字段或该数据表的字段的聚合字段拼接到下一数据表时,将对该数据表的字段或该数据表的字段的聚合字段分别进行各种聚合处理后得到的各个聚合字段拼接到下一数据表,其中,所述各种聚合处理包括基于各个时间窗口的各种时序聚合处理和/或各种非时序聚合处理。

可选地,按照所述拼接顺序将除指定数据表之外的数据表中的字段分别进行各种聚合处理后或直接拼接到指定数据表的步骤包括:针对除指定数据表之外的每个数据表中的除与其要拼接到的数据表之间的关联字段之外的每个字段,生成按照所述拼接顺序将该字段分别进行各种聚合处理后或直接拼接到指定数据表的拼接路径;针对所述每个字段,按照该字段的拼接路径分别进行聚合处理后或直接将该字段拼接到指定数据表。

可选地,从针对该字段分别进行各种聚合处理后得到的拼接到指定数据表的各个聚合字段中筛选出特征重要性较低的聚合字段的步骤包括:针对该字段分别进行各种聚合处理后得到的拼接到指定数据表的各个聚合字段中的每个聚合字段,基于拼接后的指定数据表中的未经过聚合处理的字段和该聚合字段训练对应的机器学习模型;从针对该字段分别进行各种聚合处理后得到的拼接到指定数据表的各个聚合字段中筛选出:对应的机器学习模型的效果较差的聚合字段作为特征重要性较低的聚合字段。

可选地,所述表关系配置信息还包括:最大拼接次数,其中,按照所述拼接顺序将除指定数据表之外的数据表中的字段拼接到指定数据表形成基础样本表的步骤包括:确定所述多个数据表之中是否存在按照所述拼接顺序最终拼接到指定数据表需要拼接的次数超过最大拼接次数的数据表;当确定存在时,按照所述拼接顺序将所述多个数据表之中除指定数据表和确定的数据表之外的数据表中的字段拼接到指定数据表形成基础样本表;当确定不存在时,按照所述拼接顺序将所述多个数据表之中除指定数据表之外的数据表中的字段拼接到指定数据表形成基础样本表。

可选地,基于所述基础样本表中的字段生成关于所述字段的衍生特征并将生成的衍生特征并入所述基础样本表的步骤包括:(a)对当前的特征搜索空间中的特征进行第i轮衍生,并从第i轮生成的衍生特征中筛选出特征重要性较高的衍生特征,其中,i的初始值为1,特征搜索空间的初始值为基础样本表中的特征重要性最高的第一预定数量的字段;(b)当i小于预设阈值时,将特征搜索空间更新为基础样本表中除已被作为特征搜索空间之外的特征重要性最高的第一预定数量的字段,令i=i+1,并返回执行步骤(a);(c)当i大于或等于预设阈值时,将前i轮筛选出的衍生特征并入所述基础样本表。

可选地,对当前的特征搜索空间中的特征进行第i轮衍生的步骤包括:分别对当前的特征搜索空间中的每n个特征进行各种n阶处理以生成各个n阶衍生特征;其中,n取大于0的至少一个整数;n阶处理为基于n个特征对该n个特征中的至少一个进行的处理。

可选地,从第i轮生成的衍生特征中筛选出特征重要性较高的衍生特征的步骤包括:针对第i轮生成的衍生特征中的每个衍生特征,基于当前的特征搜索空间中的特征和该衍生特征训练对应的机器学习模型;从第i轮生成的衍生特征中筛选出:对应的机器学习模型的效果满足预设条件的衍生特征。

可选地,基于所述样本表进行机器学习模型训练,生成用于预测商品未来k天的销量的商品销量预测模型的步骤包括:基于所述样本表,分别训练使用不同机器学习算法及不同超参数的机器学习模型;从训练出的机器学习模型中确定效果最好的机器学习模型,作为最终生成的商品销量预测模型。

可选地,基于所述样本表进行机器学习模型训练,生成用于预测商品未来k天的销量的商品销量预测模型的步骤包括:基于所述样本表,分别训练使用不同形式的样本标签的机器学习模型;从训练出的机器学习模型中确定效果最好的机器学习模型,作为最终生成的商品销量预测模型。

可选地,所述不同形式的样本标签包括:原始样本标签和对原始样本标签进行对数变换后得到的新的样本标签。

根据本公开的另一示例性实施例,提供一种预测商品销量的方法,其中,所述方法包括:获取关于待预测商品的多个数据表,其中,所述多个数据表包括待预测商品的商品销售信息和商品属性信息;基于所述多个数据表生成预测样本;将所述预测样本输入至通过执行如上所述的方法而生成的商品销量预测模型,得到待预测商品未来k天的商品销量。

根据本公开的另一示例性实施例,提供一种生成商品销量预测模型的装置,包括:配置信息获取单元,被配置为获取关于多个数据表的表关系配置信息,其中,所述多个数据表包括商品销售信息和商品属性信息,所述表关系配置信息包括:两两数据表之间的关联关系;拼接单元,被配置为基于所述表关系配置信息,将所述多个数据表拼接成一个基础样本表;样本表生成单元,被配置为基于所述基础样本表中的字段生成关于所述字段的衍生特征,并将生成的衍生特征并入所述基础样本表形成包括多条机器学习样本的样本表;模型生成单元,被配置为基于所述样本表进行机器学习模型训练,生成用于预测商品未来k天的销量的商品销量预测模型。

可选地,所述多个数据表包括:行为数据表、反馈数据表、销量辅助数据表中的至少一个;其中,所述行为数据表包括以下项之中的至少一项:商品id、仓库id、预测基准日期、目标日期、商品属性信息、样本id、日期的时间特征信息;其中,所述反馈数据表包括以下项之中的至少一项:样本id、目标日期、原始样本标签,原始样本标签为目标日期的商品销量;其中,所述销售辅助数据表包括以下项之中的至少一项:商品id、仓库id、销售日期、商品销售信息。

可选地,在所述行为数据表中,相同的商品id、仓库id、以及预测基准日期对应k条数据记录,所述k条数据记录的目标日期分别为所述预测基准日期的未来k天中的不同天的日期。

可选地,所述表关系配置信息包括:所述行为数据表与所述反馈数据表之间基于关联字段具有关联关系,所述行为数据表和所述反馈数据表中的所述关联字段为:样本id字段;所述表关系配置信息还包括:所述行为数据表与所述销售辅助数据表之间基于关联字段具有关联关系,所述行为数据表中的所述关联字段为商品id字段、仓库id以及预测基准日期字段,所述销售辅助数据表中的所述关联字段为商品id字段、仓库id以及销售日期字段。

可选地,拼接单元被配置为按照将具有关联关系的两个数据表中的一个数据表中的字段基于关联字段拼接到另外一个数据表,直至拼接到指定数据表的拼接顺序,将除指定数据表之外的数据表中的字段拼接到指定数据表形成基础样本表。

可选地,拼接单元被配置为按照所述拼接顺序将除指定数据表之外的数据表中的字段分别进行各种聚合处理后或直接拼接到指定数据表;针对每个分别进行各种聚合处理后才拼接到指定数据表的字段,从针对该字段分别进行各种聚合处理后得到的拼接到指定数据表的各个聚合字段中筛选出特征重要性较低的聚合字段;并从拼接后的指定数据表中删除筛选出的聚合字段,以得到基础样本表。

可选地,拼接单元被配置为当除指定数据表之外的任一数据表中的字段能够不需要聚合处理而直接从其初始所在的数据表按照所述拼接顺序拼接到指定数据表时,将该数据表的字段直接从其初始所在的数据表按照所述拼接顺序拼接到指定数据表;并当除指定数据表之外的任一数据表中的字段只有进行聚合处理才能够从其初始所在的数据表按照所述拼接顺序拼接到指定数据表时,在按照所述拼接顺序将该字段从其初始所在的数据表拼接到指定数据表的过程中,每当需要进行聚合处理才能将该数据表的字段或该数据表的字段的聚合字段拼接到下一数据表时,将对该数据表的字段或该数据表的字段的聚合字段分别进行各种聚合处理后得到的各个聚合字段拼接到下一数据表,其中,所述各种聚合处理包括基于各个时间窗口的各种时序聚合处理和/或各种非时序聚合处理。

可选地,拼接单元被配置为针对除指定数据表之外的每个数据表中的除与其要拼接到的数据表之间的关联字段之外的每个字段,生成按照所述拼接顺序将该字段分别进行各种聚合处理后或直接拼接到指定数据表的拼接路径;并针对所述每个字段,按照该字段的拼接路径分别进行聚合处理后或直接将该字段拼接到指定数据表。

可选地,拼接单元被配置为针对该字段分别进行各种聚合处理后得到的拼接到指定数据表的各个聚合字段中的每个聚合字段,基于拼接后的指定数据表中的未经过聚合处理的字段和该聚合字段训练对应的机器学习模型;并从针对该字段分别进行各种聚合处理后得到的拼接到指定数据表的各个聚合字段中筛选出:对应的机器学习模型的效果较差的聚合字段作为特征重要性较低的聚合字段。

可选地,所述表关系配置信息还包括:最大拼接次数,其中,拼接单元被配置为确定所述多个数据表之中是否存在按照所述拼接顺序最终拼接到指定数据表需要拼接的次数超过最大拼接次数的数据表;当确定存在时,按照所述拼接顺序将所述多个数据表之中除指定数据表和确定的数据表之外的数据表中的字段拼接到指定数据表形成基础样本表;并当确定不存在时,按照所述拼接顺序将所述多个数据表之中除指定数据表之外的数据表中的字段拼接到指定数据表形成基础样本表。

可选地,样本表生成单元被配置为执行以下操作:(a)对当前的特征搜索空间中的特征进行第i轮衍生,并从第i轮生成的衍生特征中筛选出特征重要性较高的衍生特征,其中,i的初始值为1,特征搜索空间的初始值为基础样本表中的特征重要性最高的第一预定数量的字段;(b)当i小于预设阈值时,将特征搜索空间更新为基础样本表中除已被作为特征搜索空间之外的特征重要性最高的第一预定数量的字段,令i=i+1,并返回执行操作(a);(c)当i大于或等于预设阈值时,将前i轮筛选出的衍生特征并入所述基础样本表。

可选地,样本表生成单元被配置为分别对当前的特征搜索空间中的每n个特征进行各种n阶处理以生成各个n阶衍生特征;其中,n取大于0的至少一个整数;n阶处理为基于n个特征对该n个特征中的至少一个进行的处理。

可选地,样本表生成单元被配置为针对第i轮生成的衍生特征中的每个衍生特征,基于当前的特征搜索空间中的特征和该衍生特征训练对应的机器学习模型;并从第i轮生成的衍生特征中筛选出:对应的机器学习模型的效果满足预设条件的衍生特征。

可选地,模型生成单元被配置为基于所述样本表,分别训练使用不同机器学习算法及不同超参数的机器学习模型;并从训练出的机器学习模型中确定效果最好的机器学习模型,作为最终生成的商品销量预测模型。

可选地,模型生成单元被配置为基于所述样本表,分别训练使用不同形式的样本标签的机器学习模型;并从训练出的机器学习模型中确定效果最好的机器学习模型,作为最终生成的商品销量预测模型。

可选地,所述不同形式的样本标签包括:原始样本标签和对原始样本标签进行对数变换后得到的新的样本标签。

根据本公开的另一示例性实施例,提供一种预测商品销量的装置,其中,所述装置包括:数据表获取单元,被配置为获取关于待预测商品的多个数据表,其中,所述多个数据表包括待预测商品的商品销售信息和商品属性信息;预测样本生成单元,被配置为基于所述多个数据表生成预测样本;预测单元,被配置为将所述预测样本输入至通过执行如上所述的装置而生成的商品销量预测模型,得到待预测商品未来k天的商品销量。

根据本公开的另一示例性实施例,提供一种包括至少一个计算装置和至少一个存储指令的存储装置的系统,其中,所述指令在被所述至少一个计算装置运行时,促使所述至少一个计算装置执行如上所述的生成商品销量预测模型的方法和/或如上所述的预测商品销量的方法。

根据本公开的另一示例性实施例,提供一种存储指令的计算机可读存储介质,其中,当所述指令被至少一个计算装置运行时,促使所述至少一个计算装置执行如上所述的生成商品销量预测模型的方法和/或如上所述的预测商品销量的方法。

根据本公开示例性实施例的生成商品销量预测模型及预测商品销量的方法和装置,提供了一种便捷有效的商品销量预测模型的生成方式,既提高了处理效率降低了特征工程的使用门槛,也便于提取有效特征形成机器学习样本以提高机器学习模型的效果;既可自动训练出满足需求的机器学习模型,大大降低了机器学习的门槛,进一步地,由于得到的机器学习样本包括有效特征信息,从而能够进一步提高训练出的对应的机器学习模型的效果。

将在接下来的描述中部分阐述本公开总体构思另外的方面和/或优点,还有一部分通过描述将是清楚的,或者可以经过本公开总体构思的实施而得知。

附图说明

通过下面结合示例性地示出实施例的附图进行的描述,本公开示例性实施例的上述和其他目的和特点将会变得更加清楚,其中:

图1示出根据本公开示例性实施例的生成商品销量预测模型的方法的流程图;

图2示出根据本公开示例性实施例的将多个数据表拼接成一个基础样本表的方法的流程图;

图3示出根据本公开示例性实施例的生成衍生特征并将生成的衍生特征并入基础样本表的方法的流程图;

图4示出根据本公开示例性实施例的预测商品销量的方法的流程图;

图5示出根据本公开示例性实施例的生成商品销量预测模型的装置的框图;

图6示出根据本公开示例性实施例的预测商品销量的装置的框图。

具体实施方式

现将详细参照本公开的实施例,所述实施例的示例在附图中示出,其中,相同的标号始终指的是相同的部件。以下将通过参照附图来说明所述实施例,以便解释本公开。

图1示出根据本公开示例性实施例的生成商品销量预测模型的方法的流程图。这里,作为示例,所述方法可通过计算机程序来执行,也可由专门的用于执行机器学习、大数据计算、或数据分析等的硬件设备或软硬件资源的集合体来执行,例如,所述方法可由用于进行数据存储和管理的数仓软件、实现机器学习相关业务的机器学习平台等来执行。

所述商品销量预测模型用于针对当前日期预测商品当前日期的未来k天的销量。具体地,可预测商品未来k天中的每一天(也即,目标日期)的销量。k可为大于0的整数,例如,当k为2时,所述商品销量预测模型可用于针对今天(例如,10日)预测商品明天(例如,11日)的销量和后天(例如,12日)的销量。

作为示例,所述商品销量预测模型可用于预测商品未来k天中每一天的总销量或某一类经销商的总销量。例如,经销商的类型可包括但不限于以下项之中的至少一项:门店、直营门店、加盟门店。

参照图1,在步骤S10,获取关于多个数据表的表关系配置信息。

所述多个数据表包括商品销售信息和商品属性信息。

作为示例,商品属性信息可包括但不限于以下项之中的至少一项:商品类型信息、商品单位信息。

例如,商品类型信息可包括商品所属的各种层次的类型,例如,可包括所属的大类(例如,冷冻商品、休闲商品)、具体精细分类(例如,食物、饮品等)、是一般商品还是组合商品等。例如,商品单位信息可包括:商品单位为个或kg等。

作为示例,商品销售信息可包括但不限于以下项之中的至少一项:经销商的类型信息,销售该商品的经销商的数量、销量、销售额(单价*销量)、实际销售额(实际付款*销量)。例如,经销商的类型信息也可划分到商品属性信息中。

作为示例,所述多个数据表可包括但不限于以下数据表之中的至少一项:行为数据表、反馈数据表、销量辅助数据表;所述行为数据表可包括以下项之中的至少一项:商品id、仓库id、预测基准日期、目标日期(也即,预测目标日期)、商品属性信息、样本id、日期的时间特征信息;所述反馈数据表可包括以下项之中的至少一项:样本id、目标日期、原始样本标签,原始样本标签为目标日期的商品销量;所述销售辅助数据表可包括以下项之中的至少一项:商品id、仓库id、销售日期、商品销售信息。

作为示例,日期的时间特征信息可为预测基准日期和/或目标日期的时间特征信息。例如,可包括目标日期所属的年、所属的月、是否是周末、是否是工作日、是否是休息日、是否是假期、是否是促销日等中的至少一项。

作为示例,行为数据表可包括以下字段之中的至少一项:reqId、sku_key、ware_code、start_date、target_date、sku_unit、category_four_code、channel、spu_type、sku_x_sale_level、ndays、year、mon、day、dow、weekday、weekend、break、holiday、name、lunar、s、e、hs、se、ae。作为示例,反馈数据表可包括以下字段之中的至少一项:reqId,target_date,sales_quantity。作为示例,销量辅助数据表可包括以下字段之中的至少一项:sku_key、ware_code、target_date、category_four_code、sales_quantity、store_num、sals_amount、sals_actual_amount。

其中,sku_key:商品id;ware_code:仓库id;start_date:当前日期(也即,预测基准日期);sku_unit:商品单位(例如,kg,个);category_four_code:商品大类(例如,冷冻,休闲);channel:直营或者加盟(门店维度,例如,都为直营);sales_quantity:销量;store_num:当前商品的门店的数量;sals_amount:销售额(单价*销量);sals_actual_amount:实际销售额(实际付款*销量);spu_type:一般商品和组合商品;sku_x_sale_level:商品的类别;ndays,year,mon,day,dow,weekday,weekend,break,holiday,name,lunar,s,e,hs,se,ae:时间相关特征;reqId:样本的标识符;target_date:目标日期。

例如,反馈数据表中的sales_quantity可为label字段,反馈数据表中的sales_quantity字段可表示在目标日期所有门店销售该商品的总销量。例如,销量辅助数据表中的sales_quantity字段可表示在对应的销售日期(target_date字段值)仓库中该商品的销量。例如,销量辅助数据表中的store_num字段可表示在对应的销售日期销售该商品的门店的数量。

作为示例,在所述行为数据表中,相同的商品id、仓库id、以及预测基准日期可对应k条数据记录,所述k条数据记录的目标日期分别为所述预测基准日期的未来k天中的不同天的日期。例如,同一个预测基准日期可对应k条数据记录,k条数据对应着未来k天的每一天,其他特征基本都一致,只是目标日期的时间戳和样本id不一致。

所述表关系配置信息包括:两两数据表之间的关联关系,例如,数据表A与数据表B之间具有关联关系。进一地,作为示例,所述表关系配置信息还可包括以下项之中的至少一项:两两数据表之间的关联关系所基于的关联字段、两两数据表之间的关联关系的具体类型、最大拼接次数、所述多个数据表中的至少一个数据表的类型、拼接终点。应该理解,所述表关系配置信息还可包括其他适当的用于配置多个数据表之间的拼接方式的信息,本公开对此不作限制。

作为示例,所述表关系配置信息可包括:所述行为数据表与所述反馈数据表之间基于关联字段具有关联关系,所述行为数据表和所述反馈数据表中的所述关联字段为:样本id字段。所述表关系配置信息还可包括:所述行为数据表与所述销售辅助数据表之间基于关联字段具有关联关系,所述行为数据表中的所述关联字段为商品id字段、仓库id以及预测基准日期字段,所述销售辅助数据表中的所述关联字段为商品id字段、仓库id以及销售日期字段。

作为示例,可根据用户在屏幕中执行的输入操作,获取关于所述多个数据表的表关系配置信息。作为示例,所述输入操作可包括:用于指定两两数据表之间具有关联关系的输入操作。此外,作为示例,所述输入操作还可包括以下项之中的至少一项:用于指定两两数据表之间的关联关系的类型的输入操作、用于指定两两数据表之间的关联关系所基于的关联字段的输入操作、用于指定所述多个数据表中的至少一个数据表的类型的输入操作、用于指定所允许的最大拼接次数的输入操作、用于指定作为拼接终点的数据表的输入操作。

这里,数据表中的每条数据记录可被看作关于一个事件或对象的描述,对应于一个示例或样例。在数据记录中,包括反映事件或对象在某方面的表现或性质的属性信息,即字段。例如,数据表的一行对应一条数据记录,数据表的一列对应一个字段。在具有基于关联字段的关联关系的两个数据表中,一个数据表中对应的关联字段的含义,与另一个数据表中对应的关联字段的含义相同,从而能够基于这两个关联字段将这两个数据表中的数据记录对应起来,以实现拼接。例如,在拼接时可将这两个数据表中的这两个关联字段的字段值相同的数据记录拼接在一起。应该理解,这两个关联字段的字段名称可以相同,也可以不同。例如,一个关联字段可为“ID”字段,与其相应的关联字段可为“sku_key”字段,两者虽然字段名称不同,但所描述的业务信息实质上相同,都是用于描述商品的ID号。例如,在具有基于关联字段的关联关系的两个数据表中,一个数据表中对应的关联字段可为该数据表的主键,另一个数据表中对应的关联字段可为该主键的外键。

作为示例,两两数据表之间的关联关系的类型可包括:一对一、一对多、多对一和多对多。具体地,数据表A和数据表B之间基于关联字段C具有关联关系,如果数据表A中关联字段C的同一个字段值仅可能在一条数据记录中出现,且数据表B中关联字段C的同一个字段值仅可能在一条数据记录中出现,则数据表A和数据表B之间的关联关系的类型为:一对一;如果数据表A中关联字段C的同一个字段值仅可能在一条数据记录中出现,且数据表B中关联字段C的同一个字段值可能在多条数据记录中出现,则数据表A和数据表B之间的关联关系的类型为:一对多;如果数据表A中关联字段C的同一个字段值可能在多条数据记录中出现,且数据表B中关联字段C的同一个字段值仅可能在一条数据记录中出现,则数据表A和数据表B之间的关联关系的类型为:多对一;如果数据表A中关联字段C的同一个字段值可能在多条数据记录中出现,且数据表B中关联字段C的同一个字段值可能在多条数据记录中出现,则数据表A和数据表B之间的关联关系的类型为:多对多。

作为示例,当关联字段为样本id字段时,行为数据表和反馈数据表的关联关系可为:一对一;当所述行为数据表中的关联字段为商品id字段、仓库id以及预测基准日期字段,所述销售辅助数据表中的关联字段为商品id字段、仓库id以及销售日期字段时,销量辅助数据表和行为数据表的关联关系可为:一对一。应该理解,上述数据表之间也可为其他类型的关联关系。

作为示例,数据表的类型可包括但不限于以下项之中的至少一项:静态表、时序表、切片表。应该理解,数据表的类型还可包括其他适当的类型,本公开对此不作限制。

在步骤S20,基于所述表关系配置信息,将所述多个数据表拼接成一个基础样本表。

作为示例,可按照将具有关联关系的两个数据表中的一个数据表中的字段基于两者间的关联字段拼接到另外一个数据表,直至拼接到指定数据表的拼接顺序,将除指定数据表之外的数据表中的字段拼接到指定数据表形成基础样本表。

具体说来,可基于所述多个数据表之中两两数据表之间的关联关系,确定所述多个数据表的拼接顺序,然后,按照该拼接顺序,将除指定数据表之外的数据表中的字段拼接到指定数据表形成基础样本表。例如,如果数据表A和数据表B具有关联关系,数据表B和数据表C具有关联关系,数据表C和数据表D具有关联关系,数据表D和数据表E具有关联关系,数据表E和数据表F具有关联关系,数据表E为指定数据表(也即,前面所提的拼接终点),则拼接顺序可为:数据表A→数据表B→数据表C→数据表D→数据表E、以及数据表F→数据表E,例如,数据表A的拼接路径为:数据表A的字段需先拼接到数据表B,然后再从数据表B拼接到数据表C、再从数据表C拼接到数据表D、再从数据表D拼接到数据表E,需要拼接的次数也即4次;数据表B的拼接路径为:数据表B的字段需先拼接到数据表C,然后再从数据表C拼接到数据表D,接下来从数据表D拼接到数据表E,需要拼接的次数也即3次;数据表F的拼接路径为:数据表F的字段拼接到数据表E,需要拼接的次数也即1次。

此外,作为示例,可确定所述多个数据表之中是否存在按照所述拼接顺序最终拼接到指定数据表需要拼接的次数超过最大拼接次数的数据表;当确定存在时,按照所述拼接顺序将所述多个数据表之中除指定数据表和确定的数据表之外的数据表中的字段拼接到指定数据表形成基础样本表,即,按照所述拼接顺序最终拼接到指定数据表需要拼接的次数超过最大拼接次数的数据表不参与拼接;当确定不存在时,按照所述拼接顺序将所述多个数据表之中除指定数据表之外的数据表中的字段拼接到指定数据表形成基础样本表。

后面将会结合图2来描述步骤S20的示例性实施例。

在步骤S30,基于所述基础样本表中的字段生成关于所述字段的衍生特征,并将生成的衍生特征并入所述基础样本表形成包括多条机器学习样本的样本表。

作为示例,一个衍生特征可以是基于至少一个字段生成的。

后面将会结合图3来描述步骤S30的示例性实施例。

在步骤S40,基于所述样本表进行机器学习模型训练,生成用于预测商品未来k天的销量的商品销量预测模型。

作为示例,可基于所述样本表,分别训练使用不同机器学习算法及不同超参数的机器学习模型;并从训练出的机器学习模型中确定效果最好的机器学习模型,作为最终生成的商品销量预测模型。

作为示例,可使用random search(随机搜索)、grid search(网格搜索)、贝叶斯优化、超参数优化算法hyperband等适当的算法来基于所述样本表分别训练使用不同机器学习算法及不同超参数的机器学习模型。

作为示例,可基于所述样本表,分别训练使用不同形式的样本标签的机器学习模型;从训练出的机器学习模型中确定效果最好的机器学习模型,作为最终生成的商品销量预测模型。例如,所述不同形式的样本标签可包括:原始样本标签或对原始样本标签进行对数变换(即,取log)后得到的新的样本标签。应该理解,也可对原始样本标签进行其他变换,以得到其他形式的样本标签,本公开对此不作限制。

应该理解,如果最终生成的商品销量预测模型是使用对原始样本标签进行对数变换(即,取log)后得到的新的样本标签进行训练得到的,那么对模型输出的预测结果进行反变换,即可得到预测的商品销量。

图2示出根据本公开示例性实施例的将多个数据表拼接成一个基础样本表的方法的流程图。

如图2所示,在步骤S201,按照所述拼接顺序将除指定数据表之外的数据表中的字段分别进行各种聚合处理后或直接(即,无需对字段值进行聚合处理)拼接到指定数据表。

作为示例,当除指定数据表之外的任一数据表中的字段能够不需要聚合处理而直接从其初始所在的数据表按照所述拼接顺序拼接到指定数据表时,可将该数据表的字段直接从其初始所在的数据表按照所述拼接顺序拼接到指定数据表。

作为示例,当除指定数据表之外的任一数据表中的字段只有进行聚合处理才能够从其初始所在的数据表按照所述拼接顺序拼接到指定数据表时,在按照所述拼接顺序将该字段从其初始所在的数据表拼接到指定数据表的过程中,每当需要进行聚合处理才能将该数据表的字段或该数据表的字段的聚合字段拼接到下一数据表时,可将对该数据表的字段或该数据表的字段的聚合字段分别进行各种聚合处理后得到的各个聚合字段拼接到下一数据表。此外,当该数据表的字段或该数据表的字段的聚合字段能够不需要聚合处理而直接拼接到下一数据表时,可将该数据表的字段或该数据表的字段的聚合字段直接拼接到下一数据表。数据表中的字段只有进行聚合处理才能够从其初始所在的数据表按照所述拼接顺序拼接到指定数据表,可理解为:数据表中的字段在从其初始所在的数据表按照所述拼接顺序拼接到指定数据表的过程中,至少有一次只有进行聚合处理才能继续向下拼接。

例如,当需要将一个数据表(即,待拼接的数据表)拼接到另一个数据表(即,拼接到的数据表)时,如果待拼接的数据表与拼接到的数据表之间的关联关系为:一对一、或一对多时,则可将待拼接的数据表的字段直接拼接到所述拼接到的数据表;如果待拼接的数据表与拼接到的数据表之间的关联关系为:多对一、或多对多时,则需对待拼接的数据表的字段分别进行各种聚合处理后拼接到所述拼接到的数据表。这里,对待拼接的数据表的字段分别各种聚合处理后拼接到所述拼接到的数据表的字段即为所述待拼接的数据表的字段的聚合字段。应该理解,对一个字段分别进行n种聚合处理,将会得到n个聚合字段。例如,数据表1需要拼接到数据表2,数据表2需要拼接到数据表3,且需要对数据表1的字段进行聚合处理后才能拼接到数据表2,需要对数据表2的字段进行聚合处理后才能拼接到数据表3,针对数据表1除与数据表2之间的关联字段之外的字段a,可对字段a分别进行n种聚合处理,并将字段a的n个聚合字段拼接到数据表2,在将数据表2拼接到数据表3时,可对字段a的n个聚合字段再分别进行n种聚合处理,并将聚合结果n*n个聚合字段拼接到数据表3。作为示例,当待拼接的数据表的类型为切片表时,可将待拼接的数据表以last-join的方式拼接到所述拼接到的数据表。

作为示例,所述各种聚合处理可包括基于各个时间窗口的各种时序聚合处理和/或各种非时序聚合处理。作为示例,所述表关系配置信息还可包括以下项之中的至少一项:所述各种时序聚合处理的类型、所述各种非时序聚合处理的类型、所述各个时间窗口的大小。作为示例,所述各种时序聚合处理的类型、所述各种非时序聚合处理的类型、所述各个时间窗口的大小可由用户指定。应该理解,在不同时间窗口下的同一种时序聚合处理也属于不同的聚合处理;基于不同的聚合基准字段进行同一种聚合处理也属于不同的聚合处理。

作为示例,可根据字段的类型,来对字段进行聚合处理。作为示例,数据表中各字段的类型可由用户指定。作为示例,可根据用户在屏幕中显示的用于设置数据表内字段的类型的图形界面中执行的输入操作,设置数据表内的字段的类型。

作为示例,字段的类型可包括但不限于以下项之中的至少一项:singlestring(单字符串型)、arraystring(数组字符串型)、kvstring(Key-value字符串型)、continuenum(连续值型)、time(时间戳型)。

作为示例,时序聚合处理的类型可包括但不限于以下项之中的至少一项:求和、求平均、取最大值、取最小值、计算不同字段值的个数、计算字段值的个数、求方差、求均方差、求出现频率最高的预设数量的字段值、取上一个字段值、取上一个非空字段值。

作为示例,非时序聚合处理的类型可包括但不限于以下项之中的至少一项:求和、求平均、取最大值、取最小值、计算不同字段值的个数、计算字段值的个数、求方差、求均方差、求出现频率最高的预设数量的字段值。

此外,作为示例,可针对除指定数据表之外的每个数据表中的除与其要拼接到的数据表之间的关联字段之外的每个字段,生成按照所述拼接顺序将该字段分别进行各种聚合处理后或直接拼接到指定数据表的拼接路径;针对所述每个字段,按照该字段的拼接路径分别进行聚合处理后或直接将该字段拼接到指定数据表。从而底层计算引擎可根据拼接路径对除指定数据表之外的每个数据表中的字段进行处理并拼接到指定数据表上。

在步骤S202,针对每个分别进行各种聚合处理后才拼接到指定数据表的字段,从针对该字段分别进行各种聚合处理后得到的拼接到指定数据表的各个聚合字段中筛选出特征重要性较低的聚合字段。

在步骤S203,从拼接后的指定数据表中删除筛选出的聚合字段,以得到基础样本表。

换言之,完成拼接后得到的指定数据表中的未经过聚合处理而得到的字段直接保留,而其中的曾经过聚合处理才得到的字段(也即,聚合字段),仅保留特征重要性较高的聚合字段。

可使用各种适当的方法来筛选特征重要性较低的聚合字段。作为示例,针对每个分别进行各种聚合处理后才拼接到指定数据表的字段,可针对该字段分别进行各种聚合处理后得到的拼接到指定数据表的各个聚合字段中的每个聚合字段,基于拼接后的指定数据表中的未经过聚合处理的字段和该聚合字段训练对应的机器学习模型;从针对该字段分别进行各种聚合处理后得到的拼接到指定数据表的各个聚合字段中筛选出:对应的机器学习模型的效果较差的聚合字段作为特征重要性较低的聚合字段。

由于相应的机器学习模型的效果能够反映候选聚合字段的特征重要性(例如,预测力),从而可通过衡量与每个候选聚合字段相应的机器学习模型的效果来筛选候选聚合字段,例如,对应的机器学习模型的效果越好,特征重要性越高。作为示例,可使用指定的模型评价指标来评价与每个候选聚合字段相应的机器学习模型的效果。作为示例,模型评价指标可以是AUC(ROC(受试者工作特征,Receiver Operating Characteristic)曲线下的面积,Area Under ROC Curve)、MAE(平均绝对误差,Mean Absolute Error)或对数损失函数(logloss)等。

作为示例,针对每个分别进行各种聚合处理后才拼接到指定数据表的字段,可从针对该字段分别进行各种聚合处理后得到的拼接到指定数据表的各个聚合字段中筛选出特征重要性最低的一定数量的聚合字段,而该数量可基于该字段初始所在的数据表中的字段总数量而确定。

根据本公开的将多个数据表拼接成一个基础样本表的方式,能够自动挖掘关联表的有效特征信息形成基础样本表。

图3示出根据本公开示例性实施例的生成衍生特征并将生成的衍生特征并入基础样本表的方法的流程图。

如图3所示,在步骤S301,对当前的特征搜索空间中的特征进行第i轮衍生,并从第i轮生成的衍生特征中筛选出特征重要性较高的衍生特征,其中,i的初始值为1。

作为示例,特征搜索空间的初始值可为基础样本表中的特征重要性最高的第一预定数量的字段。此外,也可使用其他适当的方法来确定特征搜索空间的初始值,例如,可使用meta-learning(元学习)来确定特征搜索空间的初始值。

作为示例,对当前的特征搜索空间中的特征进行第i轮衍生的步骤可包括:分别对当前的特征搜索空间中的每n个特征进行各种n阶处理以生成各个n阶衍生特征;其中,n取大于0的至少一个整数;n阶处理为基于n个特征对该n个特征中的至少一个进行的处理。

作为示例,对当前的特征搜索空间中的特征进行第i轮衍生的步骤可包括:

分别对当前的特征搜索空间中的每个特征进行各种一阶处理以生成各个一阶衍生特征;

和/或,分别对当前的特征搜索空间中的每两个特征进行各种二阶处理以生成各个二阶衍生特征;

和/或,分别对当前的特征搜索空间中的每三个特征进行各种三阶处理以生成各个三阶衍生特征。从而,可将生成的一阶衍生特征和/或二阶衍生特征和/或三阶衍生特征之中的至少一项,作为第i轮衍生的衍生特征。

作为示例,一阶处理可为仅以单个特征为处理对象的处理;二阶处理可为基于两个特征对该两个特征中的至少一个进行的处理;三阶处理可为基于三个特征对该三个特征中的至少一个进行的处理。

作为示例,可由用户指定一阶处理的方式、二阶处理的方式、三阶处理的方式。例如,一阶处理的方式可包括:对连续特征进行离散化处理。二阶处理的方式可包括:对两个特征进行组合和/或聚合处理,和/或以一个特征为聚合基准来对另一特征进行聚合处理。例如,三阶处理的方式可包括:对三个特征进行组合和/或聚合处理,和/或以一个特征为聚合基准来对另两个特征进行聚合处理,和/或以两个特征为聚合基准来对另一特征进行聚合处理。

作为示例,从第i轮生成的衍生特征中筛选出特征重要性较高的衍生特征的步骤可包括:针对第i轮生成的衍生特征中的每个衍生特征,基于当前的特征搜索空间中的特征和该衍生特征训练对应的机器学习模型;从第i轮生成的衍生特征中筛选出:对应的机器学习模型的效果满足预设条件的衍生特征。例如,所述预设条件可以是机器学习模型的效果占:从高到低对第i轮生成的各个衍生特征对应的机器学习模型的效果排序中的前预设百分比。

在步骤S302,确定i是否小于预设阈值。

在步骤S303,当i小于预设阈值时,将特征搜索空间更新为基础样本表中除已被作为特征搜索空间之外的特征重要性最高的第一预定数量的字段,令i=i+1,并返回执行步骤S301。

在步骤S304,当i大于或等于预设阈值时,将前i轮筛选出的衍生特征并入所述基础样本表。

作为示例,进行每轮衍生时,可仅使用基础样本表中的部分数据记录,每轮可选择合适数量的数据记录且不同轮选择的数量可以相同或不同,可根据计算要求(考虑计算配置、计算所需时间等多方面)进行合理设置,并且,由于需要验证相应机器学习模型的效果,因此需要验证样本,每轮所使用的基础样本表中的部分数据记录可根据时序切分成本轮的训练样本和验证样本。最后,可按照前i轮筛选出的衍生特征的具体形式,针对基础样本表中的全部数据记录生成衍生特征并并入基础样本表。

此外,作为示例,每轮选择的衍生特征数量可相同或不同;每轮所使用的特征搜索空间中的字段的数量可相同或不同。

作为示例,可基于目标日期字段衍生出多个特征,例如,目标日期距离当前日期的天数等。

作为示例,销售辅助数据表中的商品销售信息可用于sku_key、ware_code维度的历史销量滑窗,行为数据表和销量辅助数据表的表关系可为1-M,关联字段可为sku_key+ware_code,行为数据表的时间戳为start_date,销量辅助数据表的时间戳为target_date,因此,可对于当前日期(start_date)的sku_key、ware_code统计历史销量、销售额、实际销售额等作为衍生特征。例如,可基于将所述多个数据表拼接成的基础样本表,以sku_key+ware_code为聚合基准,时间戳为start_date,对sales_quantity、sals_amount、sals_actual_amount等字段分别进行时序聚合,得到相应的衍生特征,应该理解,也可对其他字段进行相应的时序聚合,以得到其他的衍生特征,本公开对此不作限制。

根据本公开的示例性实施例,能够自动基于基础样本表中的字段进一步衍生出有价值的特征信息,以提高样本表中的特征的全面性和有效性。

根据本公开的示例性实施例,用户仅需要在任意两个数据表之间建立关联关系即可获得基于多个数据表拼接出的包括较全面的有价值的特征信息的样本表。用户操作简便、直观且便于理解,从而能够让无特征工程相关经验的用户也能够构建出效果较好的用于机器学习模型训练的样本表。

根据本公开的示例性实施例,用户仅需要执行易于操作、直观便于理解的用于在任意两个数据表之间建立关联关系的输入操作,即可训练出满足需求的机器学习模型,从而不具备与机器学习相关的专业能力的业务人员也能够独立完成建模工作,大大降低了机器学习的门槛,并且也能够将建模工程师从对目标领域的业务的学习中解放出来,投入到更专业的生产工作当中。

根据本公开的示例性实施例,能够通过用户配置的多个表之间的表关系自动挖掘关联表的有效特征信息;能够迭代运行时序特征的自动生成与有效特征的自动选择;还能够自动选择最优的模型超参数和标签形式。

图4示出根据本公开示例性实施例的预测商品销量的方法的流程图。

如图4所示,在步骤S50,获取关于待预测商品的多个数据表。

所述多个数据表包括待预测商品的商品销售信息和商品属性信息。

在步骤S60,基于所述多个数据表生成预测样本。

应该理解,可按照在上述示例性实施例的生成商品销量预测模型的方法中确定的对数据表的拼接方式、以及最终确定的样本表中所包括的具体特征,来基于所述多个数据表生成预测样本,具体生成方式在此不再赘述。

在步骤S70,将所述预测样本输入至通过执行如上述示例性实施例所述的生成商品销量预测模型的方法而生成的商品销量预测模型,得到待预测商品未来k天的商品销量。

根据本公开的示例性实施例,在销量预测场景上,基于多个数据表(例如,行为数据表、反馈数据表、销量辅助数据表等),能够自动挖掘仓库、商品等维度的历史销售量等信息来帮助模型预测商家未来的销量,最终获得相比人工建模方案更加精准的销量预测结果。

图5示出根据本公开示例性实施例的生成商品销量预测模型的装置的框图。

参照图5,根据本公开示例性实施例的生成商品销量预测模型的装置包括:配置信息获取单元10、拼接单元20、样本表生成单元30、模型生成单元40。

具体说来,配置信息获取单元10被配置为获取关于多个数据表的表关系配置信息,其中,所述多个数据表包括商品销售信息和商品属性信息,所述表关系配置信息包括:两两数据表之间的关联关系。

拼接单元20被配置为基于所述表关系配置信息,将所述多个数据表拼接成一个基础样本表。

样本表生成单元30被配置为基于所述基础样本表中的字段生成关于所述字段的衍生特征,并将生成的衍生特征并入所述基础样本表形成包括多条机器学习样本的样本表。

模型生成单元40被配置为基于所述样本表进行机器学习模型训练,生成用于预测商品未来k天的销量的商品销量预测模型。

作为示例,所述多个数据表可包括:行为数据表、反馈数据表、销量辅助数据表中的至少一个;其中,所述行为数据表可包括以下项之中的至少一项:商品id、仓库id、预测基准日期、目标日期、商品属性信息、样本id、日期的时间特征信息;其中,所述反馈数据表可包括以下项之中的至少一项:样本id、目标日期、原始样本标签,原始样本标签为目标日期的商品销量;其中,所述销售辅助数据表可包括以下项之中的至少一项:商品id、仓库id、销售日期、商品销售信息。

作为示例,在所述行为数据表中,相同的商品id、仓库id、以及预测基准日期可对应k条数据记录,所述k条数据记录的目标日期分别为所述预测基准日期的未来k天中的不同天的日期。

作为示例,所述表关系配置信息可包括:所述行为数据表与所述反馈数据表之间基于关联字段具有关联关系,所述行为数据表和所述反馈数据表中的所述关联字段为:样本id字段;所述表关系配置信息还包括:所述行为数据表与所述销售辅助数据表之间基于关联字段具有关联关系,所述行为数据表中的所述关联字段为商品id字段、仓库id以及预测基准日期字段,所述销售辅助数据表中的所述关联字段为商品id字段、仓库id以及销售日期字段。

作为示例,拼接单元20可被配置为按照将具有关联关系的两个数据表中的一个数据表中的字段基于关联字段拼接到另外一个数据表,直至拼接到指定数据表的拼接顺序,将除指定数据表之外的数据表中的字段拼接到指定数据表形成基础样本表。

作为示例,拼接单元20可被配置为按照所述拼接顺序将除指定数据表之外的数据表中的字段分别进行各种聚合处理后或直接拼接到指定数据表;针对每个分别进行各种聚合处理后才拼接到指定数据表的字段,从针对该字段分别进行各种聚合处理后得到的拼接到指定数据表的各个聚合字段中筛选出特征重要性较低的聚合字段;并从拼接后的指定数据表中删除筛选出的聚合字段,以得到基础样本表。

作为示例,拼接单元20可被配置为当除指定数据表之外的任一数据表中的字段能够不需要聚合处理而直接从其初始所在的数据表按照所述拼接顺序拼接到指定数据表时,将该数据表的字段直接从其初始所在的数据表按照所述拼接顺序拼接到指定数据表;并当除指定数据表之外的任一数据表中的字段只有进行聚合处理才能够从其初始所在的数据表按照所述拼接顺序拼接到指定数据表时,在按照所述拼接顺序将该字段从其初始所在的数据表拼接到指定数据表的过程中,每当需要进行聚合处理才能将该数据表的字段或该数据表的字段的聚合字段拼接到下一数据表时,将对该数据表的字段或该数据表的字段的聚合字段分别进行各种聚合处理后得到的各个聚合字段拼接到下一数据表,其中,所述各种聚合处理包括基于各个时间窗口的各种时序聚合处理和/或各种非时序聚合处理。

作为示例,拼接单元20可被配置为针对除指定数据表之外的每个数据表中的除与其要拼接到的数据表之间的关联字段之外的每个字段,生成按照所述拼接顺序将该字段分别进行各种聚合处理后或直接拼接到指定数据表的拼接路径;并针对所述每个字段,按照该字段的拼接路径分别进行聚合处理后或直接将该字段拼接到指定数据表。

作为示例,拼接单元20可被配置为针对该字段分别进行各种聚合处理后得到的拼接到指定数据表的各个聚合字段中的每个聚合字段,基于拼接后的指定数据表中的未经过聚合处理的字段和该聚合字段训练对应的机器学习模型;并从针对该字段分别进行各种聚合处理后得到的拼接到指定数据表的各个聚合字段中筛选出:对应的机器学习模型的效果较差的聚合字段作为特征重要性较低的聚合字段。

作为示例,所述表关系配置信息还可包括:最大拼接次数,其中,拼接单元20可被配置为确定所述多个数据表之中是否存在按照所述拼接顺序最终拼接到指定数据表需要拼接的次数超过最大拼接次数的数据表;当确定存在时,按照所述拼接顺序将所述多个数据表之中除指定数据表和确定的数据表之外的数据表中的字段拼接到指定数据表形成基础样本表;并当确定不存在时,按照所述拼接顺序将所述多个数据表之中除指定数据表之外的数据表中的字段拼接到指定数据表形成基础样本表。

作为示例,样本表生成单元30可被配置为执行以下操作:

(a)对当前的特征搜索空间中的特征进行第i轮衍生,并从第i轮生成的衍生特征中筛选出特征重要性较高的衍生特征,其中,i的初始值为1,特征搜索空间的初始值为基础样本表中的特征重要性最高的第一预定数量的字段;

(b)当i小于预设阈值时,将特征搜索空间更新为基础样本表中除已被作为特征搜索空间之外的特征重要性最高的第一预定数量的字段,令i=i+1,并返回执行操作(a);

(c)当i大于或等于预设阈值时,将前i轮筛选出的衍生特征并入所述基础样本表。

作为示例,样本表生成单元30可被配置为分别对当前的特征搜索空间中的每n个特征进行各种n阶处理以生成各个n阶衍生特征;其中,n取大于0的至少一个整数;n阶处理为基于n个特征对该n个特征中的至少一个进行的处理。

作为示例,样本表生成单元30可被配置为针对第i轮生成的衍生特征中的每个衍生特征,基于当前的特征搜索空间中的特征和该衍生特征训练对应的机器学习模型;并从第i轮生成的衍生特征中筛选出:对应的机器学习模型的效果满足预设条件的衍生特征。

作为示例,模型生成单元40可被配置为基于所述样本表,分别训练使用不同机器学习算法及不同超参数的机器学习模型;并从训练出的机器学习模型中确定效果最好的机器学习模型,作为最终生成的商品销量预测模型。

作为示例,模型生成单元40可被配置为基于所述样本表,分别训练使用不同形式的样本标签的机器学习模型;并从训练出的机器学习模型中确定效果最好的机器学习模型,作为最终生成的商品销量预测模型。

作为示例,所述不同形式的样本标签可包括:原始样本标签和对原始样本标签进行对数变换后得到的新的样本标签。

图6示出根据本公开示例性实施例的预测商品销量的装置的框图。

参照图6,根据本公开示例性实施例的预测商品销量的装置包括:数据表获取单元50、预测样本生成单元60、预测单元70。

具体说来,数据表获取单元50被配置为获取关于待预测商品的多个数据表,其中,所述多个数据表包括待预测商品的商品销售信息和商品属性信息。

预测样本生成单元60被配置为基于所述多个数据表生成预测样本。

预测单元70被配置为将所述预测样本输入至通过执行如上述示例性实施例所述的装置而生成的商品销量预测模型,得到待预测商品未来k天的商品销量。

应该理解,根据本公开示例性实施例的生成商品销量预测模型的装置和预测商品销量的装置所执行的具体处理已经参照图1至图4进行了详细描述,这里将不再赘述相关细节。

根据本公开示例性实施例的生成商品销量预测模型的装置和预测商品销量的装置可被分别配置为执行特定功能的软件、硬件、固件或上述项的任意组合。例如,这些单元可对应于专用的集成电路,也可对应于纯粹的软件代码,还可对应于软件与硬件相结合的模块。此外,这些单元所实现的一个或多个功能也可由物理实体设备(例如,处理器、客户端或服务器等)中的组件来统一执行。

应理解,根据本公开示例性实施例的生成商品销量预测模型的方法可通过记录在计算可读介质上的程序来实现,例如,根据本公开的示例性实施例,可提供一种生成商品销量预测模型的计算机可读介质,其中,在所述计算机可读介质上记录有用于执行以下方法步骤的计算机程序:获取关于多个数据表的表关系配置信息,其中,所述多个数据表包括商品销售信息和商品属性信息,所述表关系配置信息包括:两两数据表之间的关联关系;基于所述表关系配置信息,将所述多个数据表拼接成一个基础样本表;基于所述基础样本表中的字段生成关于所述字段的衍生特征,并将生成的衍生特征并入所述基础样本表形成包括多条机器学习样本的样本表;基于所述样本表进行机器学习模型训练,生成用于预测商品未来k天的销量的商品销量预测模型。

应理解,根据本公开示例性实施例的预测商品销量的方法可通过记录在计算可读介质上的程序来实现,例如,根据本公开的示例性实施例,可提供一种预测商品销量的计算机可读介质,其中,在所述计算机可读介质上记录有用于执行以下方法步骤的计算机程序:获取关于待预测商品的多个数据表,其中,所述多个数据表包括待预测商品的商品销售信息和商品属性信息;基于所述多个数据表生成预测样本;将所述预测样本输入至通过执行如上所述的方法而生成的商品销量预测模型,得到待预测商品未来k天的商品销量。

上述计算机可读介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,应注意,所述计算机程序还可用于执行除了上述步骤以外的附加步骤或者在执行上述步骤时执行更为具体的处理,这些附加步骤和进一步处理的内容已经参照图1至图4进行了描述,这里为了避免重复将不再进行赘述。

应注意,根据本公开示例性实施例的生成商品销量预测模型的装置和预测商品销量的装置可完全依赖计算机程序的运行来实现相应的功能,即,各个装置与计算机程序的功能架构中与各步骤相应,使得整个装置通过专门的软件包(例如,lib库)而被调用,以实现相应的功能。

另一方面,根据本公开示例性实施例的生成商品销量预测模型的装置和预测商品销量的装置所包括的各个单元也可以通过硬件、软件、固件、中间件、微代码或其任意组合来实现。当以软件、固件、中间件或微代码实现时,用于执行相应操作的程序代码或者代码段可以存储在诸如存储介质的计算机可读介质中,使得处理器可通过读取并运行相应的程序代码或者代码段来执行相应的操作。

例如,本公开的示例性实施例还可以实现为计算装置,该计算装置包括存储部件和处理器,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令集合被所述处理器执行时,执行生成商品销量预测模型的方法和/或预测商品销量的方法。

具体说来,所述计算装置可以部署在服务器或客户端中,也可以部署在分布式网络环境中的节点装置上。此外,所述计算装置可以是PC计算机、平板装置、个人数字助理、智能手机、web应用或其他能够执行上述指令集合的装置。

这里,所述计算装置并非必须是单个的计算装置,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。计算装置还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子装置。

在所述计算装置中,处理器可包括中央处理器(CPU)、图形处理器(GPU)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。

根据本公开示例性实施例的生成商品销量预测模型的方法和预测商品销量的方法中所描述的某些操作可通过软件方式来实现,某些操作可通过硬件方式来实现,此外,还可通过软硬件结合的方式来实现这些操作。

处理器可运行存储在存储部件之一中的指令或代码,其中,所述存储部件还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,所述网络接口装置可采用任何已知的传输协议。

存储部件可与处理器集成为一体,例如,将RAM或闪存布置在集成电路微处理器等之内。此外,存储部件可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储部件和处理器可在操作上进行耦合,或者可例如通过I/O端口、网络连接等互相通信,使得处理器能够读取存储在存储部件中的文件。

此外,所述计算装置还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。计算装置的所有组件可经由总线和/或网络而彼此连接。

根据本公开示例性实施例的生成商品销量预测模型的方法和预测商品销量的方法所涉及的操作可被描述为各种互联或耦合的功能块或功能示图。然而,这些功能块或功能示图可被均等地集成为单个的逻辑装置或按照非确切的边界进行操作。

例如,如上所述,根据本公开示例性实施例的生成商品销量预测模型的计算装置可包括存储部件和处理器,其中,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令集合被所述处理器执行时,执行下述步骤:获取关于多个数据表的表关系配置信息,其中,所述多个数据表包括商品销售信息和商品属性信息,所述表关系配置信息包括:两两数据表之间的关联关系;基于所述表关系配置信息,将所述多个数据表拼接成一个基础样本表;基于所述基础样本表中的字段生成关于所述字段的衍生特征,并将生成的衍生特征并入所述基础样本表形成包括多条机器学习样本的样本表;基于所述样本表进行机器学习模型训练,生成用于预测商品未来k天的销量的商品销量预测模型。

例如,如上所述,根据本公开示例性实施例的预测商品销量的计算装置可包括存储部件和处理器,其中,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令集合被所述处理器执行时,执行下述步骤:获取关于待预测商品的多个数据表,其中,所述多个数据表包括待预测商品的商品销售信息和商品属性信息;基于所述多个数据表生成预测样本;将所述预测样本输入至通过执行如上所述的方法而生成的商品销量预测模型,得到待预测商品未来k天的商品销量。

以上描述了本公开的各示例性实施例,应理解,上述描述仅是示例性的,并非穷尽性的,本公开不限于所披露的各示例性实施例。在不偏离本公开的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。因此,本公开的保护范围应该以权利要求的范围为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号