销量预测及其模型训练方法、装置与流程

文档序号:17289659发布日期:2019-04-03 03:51阅读:191来源:国知局
销量预测及其模型训练方法、装置与流程

本发明涉及深度学习技术领域,具体涉及一种销量预测及其模型训练方法、装置、计算机设备及存储介质。



背景技术:

目前,深度学习的各类训练模型已经比较成熟,这些成熟的训练模型一般运行在单机上,但是单机的cpu和内存资源比较有限。由于当前对商品销售企业(例如,零售便利店或零售超市)采集的数据量比较大,如果采用单机则需要极高的配置才能实现。而如果采用分布式集群服务器,则需要需要对训练模型的算法代码本身做出很多调整,大大增加了训练模型的算法应用的复杂度,增加了研发人员的工作量。



技术实现要素:

本发明要解决现有技术中现有的训练模型在单机上运行资源有限,在分布式集群服务器上运行则需要大幅度调整训练模型的算法代码的问题,从而提供一种销量预测及其模型训练方法、装置、计算机设备及存储介质。

本发明的一方面,提供了一种模型训练方法,包括:获取训练样本数据;按照样本类别将所述训练样本数据进行分类,形成多列样本数据;将所述多列样本数据逐列分发到部署在无服务器架构上的训练模型,由所述训练模型进行训练,得到训练后的模型,其中,部署在无服务器架构上的所述训练模型为在单机上运行的模型。

可选地,在按照样本类别将所述训练样本数据进行分类,形成多列样本数据之后,还包括:将所述多列样本数据存储在分布式存储服务器上。

可选地,按照样本类别将所述训练样本数据进行分类,形成多列样本数据包括:将所述训练样本数据打包形成数据矩阵,其中,所述数据矩阵中每一列代表一个样本类别。

可选地,还包括:在所述无服务器架构上按照所述样本类别构建对应的子训练模型,其中,每个样本类别对应一个子训练模型;其中,将所述多列样本数据逐列分发到部署在无服务器架构上的训练模型包括:按照所述样本类别将每列样本数据分发到对应的子训练模型中进行训练。

可选地,所述训练样本数据为商品销量数据,所述样本类别为商品类别,所述训练模型为销量预测模型。

本发明的另一方面,提供了一种销量预测方法,包括:获取预设时间的商品销量数据;按照商品类别对所述商品销量数据进行分类,形成多列商品销量数据;逐列将所述商品销量数据输入到所述的模型训练方法训练得到的模型中,得到每个商品类别的商品销量预测结果。

本发明的另一方面,提供了一种模型训练装置,包括:样本获取模块,用于获取训练样本数据;样本分类模块,用于按照样本类别将所述训练样本数据进行分类,形成多列样本数据;训练模块,用于将所述多列样本数据逐列分发到部署在无服务器架构上的训练模型,由所述训练模型进行训练,得到训练后的模型,其中,部署在无服务器架构上的所述训练模型为在单机上运行的模型。

本发明的另一方面,提供了一种销量预测装置,包括:销量数据获取模块,用于获取预设时间的商品销量数据;商品数据分类模块,用于按照商品类别对所述商品销量数据进行分类,形成多列商品销量数据;预测模块,用于逐列将所述商品销量数据输入到所述的模型训练方法训练得到的模型中,得到每个商品类别的商品销量预测结果。

本发明的另一方面,提供了一种计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述方法的步骤。

本发明的另一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述方法的步骤。

本发明实施例中,通过将只能在单机上运行的训练模型部署到无服务器架构上,也即是将训练模型的代码和特征部署在无服务器架构上,只需要在训练模型的代码上增加一个资源调用的函数,就可以利用无服务器架构所具有的资源调用方式,实现大数据量的模型训练,避免了训练模型在单机上运行资源有限,在分布式集群服务器上运行则需要大幅度调整训练模型的算法代码的问题。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例中学习信息的处理方法的流程图;

图2为本发明实施例中消息队列的示意图;

图3为本发明实施例中学习信息的处理装置的示意图;

图4为本发明实施例计算机设备的硬件结构示意图;以及

图5示出了具有处理器以及存储器的计算机设备。

具体实施方式

下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本发明的描述中,需要说明的是,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。

此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。

本发明实施例提供了一种模型训练方法,如图1所示,该方法包括:

步骤s101,获取训练样本数据。训练样本数据可以包括训练数据和检测数据,其中,训练数据用于训练模型进行训练使用,检测数据则用于检测训练模型的准确性,从而保证训练后的模型的检测精确度。

步骤s102,按照样本类别将所述训练样本数据进行分类,形成多列样本数据。具体地,可以将所述训练样本数据打包形成数据矩阵,其中,所述数据矩阵中每一列代表一个样本类别。

在分类之后,将所述多列样本数据存储在分布式存储服务器上。

步骤s103,将所述多列样本数据逐列分发到部署在无服务器架构上的训练模型,由所述训练模型进行训练,得到训练后的模型,其中,部署在无服务器架构上的所述训练模型为在单机上运行的模型。其中,无服务器架构可以是指采用无服务器计算的架构,无服务器计算是在无需最终用户管理的基础设施上托管应用程序的新方式。无服务器计算是一种云服务,托管服务提供商会实时为你分配充足的资源,而不是让你预先为专用的服务器或容量付费。

本发明实施例中,通过将只能在单机上运行的训练模型部署到无服务器架构上,也即是将训练模型的代码和特征部署在无服务器架构上,只需要在训练模型的代码上增加一个资源调用的函数,就可以利用无服务器架构所具有的资源调用方式,实现大数据量的模型训练,避免了训练模型在单机上运行资源有限,在分布式集群服务器上运行则需要大幅度调整训练模型的算法代码的问题。

本发明实施例中,不限定任何训练模型的算法,只要训练模型的算法为现有的、开源的、在单机上运行的算法即可。可选地,本发明实施例的所述训练样本数据可以是商品销量数据,所述样本类别可以是商品类别,所述训练模型可以是销量预测模型。

对于商品销量数据,可以采用矩阵的方式进行数据存储,其中,每一列代表一个商品类别,每一行代表一个时间单位的数据。从而矩阵中的每一个元素代表某个时间单位的某个商品的销量。对于一个有2500个sku的零售便利店,可以采集近两年的商品销量数据,建立730行2500列的矩阵,用以表示最近两年的2500个sku的销售数据。

作为一种可选的实施方式,无服务器架构支持多列形式的接收数据,并对每一列构建模型,因此,本发明实施例的模型训练方法还包括:在所述无服务器架构上按照所述样本类别构建对应的子训练模型,其中,每个样本类别对应一个子训练模型。

相应地,将所述多列样本数据逐列分发到部署在无服务器架构上的训练模型包括:按照所述样本类别将每列样本数据分发到对应的子训练模型中进行训练。对于训练后的子训练模型,整合得到最终的训练后的模型。

本发明实施例还提供了一种销量预测方法,如图2所示,该方法包括:

步骤s201,获取预设时间的商品销量数据。

步骤s202,按照商品类别对所述商品销量数据进行分类,形成多列商品销量数据。对于商品销量数据的分类可以与上述训练样本数据相同的方式进行处理。

步骤s203,逐列将所述商品销量数据输入到模型训练方法训练得到的模型中,得到每个商品类别的商品销量预测结果。其中模型训练方法为本发明上述实施例中所述的方法,这里不做赘述。

本发明实施例中,采用上述模型训练方法训练得到的模型同样部署在无服务器架构上,只需要在训练模型的代码上增加一个资源调用的函数,就可以利用无服务器架构所具有的资源调用方式,实现大数据量的模型训练,避免了训练模型在单机上运行资源有限,在分布式集群服务器上运行则需要大幅度调整训练模型的算法代码的问题。

本发明实施例还提供了一种模型训练装置,如图3所示,该装置包括:

样本获取模块31,用于获取训练样本数据。

样本分类模块32,用于按照样本类别将所述训练样本数据进行分类,形成多列样本数据。

训练模块33,用于将所述多列样本数据逐列分发到部署在无服务器架构上的训练模型,由所述训练模型进行训练,得到训练后的模型,其中,部署在无服务器架构上的所述训练模型为在单机上运行的模型。

本发明实施例中,通过将只能在单机上运行的训练模型部署到无服务器架构上,也即是将训练模型的代码和特征部署在无服务器架构上,只需要在训练模型的代码上增加一个资源调用的函数,就可以利用无服务器架构所具有的资源调用方式,实现大数据量的模型训练,避免了训练模型在单机上运行资源有限,在分布式集群服务器上运行则需要大幅度调整训练模型的算法代码的问题。

具体描述参见上述方法实施例,这里不再赘述。

本发明实施例还提供了一种销量预测装置,如图4所示,该装置包括:

销量数据获取模块41,用于获取预设时间的商品销量数据;

商品数据分类模块42,用于按照商品类别对所述商品销量数据进行分类,形成多列商品销量数据;

预测模块43,用于逐列将所述商品销量数据输入到权利要求1至5任一项所述的模型训练方法训练得到的模型中,得到每个商品类别的商品销量预测结果。

本发明实施例中,采用上述模型训练方法训练得到的模型同样部署在无服务器架构上,只需要在训练模型的代码上增加一个资源调用的函数,就可以利用无服务器架构所具有的资源调用方式,实现大数据量的模型训练,避免了训练模型在单机上运行资源有限,在分布式集群服务器上运行则需要大幅度调整训练模型的算法代码的问题。

具体描述参见上述方法实施例,这里不再赘述。

本实施例还提供一种计算机设备,如可以执行程序的台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备20至少包括但不限于:可通过系统总线相互通信连接的存储器21、处理器22,如图5所示。需要指出的是,图5仅示出了具有组件21-22的计算机设备20,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。

本实施例中,存储器21(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备20的内部存储单元,例如该计算机设备20的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备20的外部存储设备,例如该计算机设备20上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,存储器21还可以既包括计算机设备20的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备20的操作系统和各类应用软件,例如上述实施例的装置的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。

处理器22在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制计算机设备20的总体操作。本实施例中,处理器22用于运行存储器21中存储的程序代码或者处理数据,实现上述实施例的方法。

本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘、服务器、app应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储上述实施例的方法的代码,被处理器执行时实现上述实施例的方法。

显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本申请的保护范围之中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1