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

训练分组模型,以及对时序数据进行分组的方法和装置

文献发布时间:2023-06-19 13:46:35


训练分组模型,以及对时序数据进行分组的方法和装置

技术领域

本说明书一个或多个实施例涉及机器学习领域,尤其涉及训练时序数据的分组模型,利用分组模型对时序数据进行分组的方法和对应的装置。

背景技术

随着计算机技术的发展,机器学习已经应用到各种各样的技术领域,用于分析、预测各种业务数据。在互联网环境中,时序数据是常见的分析来源。

时序数据是随时间线而发生和记录的一系列数据构成的序列。在许多场景下,所关注的时序数据是由更细粒度的数据汇总聚合的结果。例如,一个商铺的总销量随时间的变化时序,可以是该商铺下所有商品销量的时序数据的汇总;一个网站的总流量(或访问量)随时间的变化时序,可以是访问该网站的所有用户访问行为的时序数据的汇总。在这样的情况下,可以将这种细粒度的时序数据称为微观时序数据,将这些细粒度的时序数据的汇总称为宏观时序数据。

在许多情况下,需要对宏观时序数据进行预测,从而进行宏观部署。例如,一些网络平台需要预测未来不同时段的访问量和流量,从而可以预先针对流量变化更好地部署服务器集群;一些社交平台需要预测一些评论对象,例如歌曲,电影,书籍的流行度或评论数量,从而可以更好地执行业务策略部署,例如,页面安排,用户分流,用户引流等等。

然而,宏观时序数据由于其构成的复杂性,其时序预测存在一些困难。最为直接的一种预测方式,是针对宏观时序数据直接建立时序预测模型。由于汇总了微观时序数据,这种方式会丢掉大量的微观数据信息,比如微观数据存在的不同的潜在规律等;这些信息的缺失可能导致难以建立合适的宏观时序模型。然而若是直接对微观数据建立预测模型并聚合得到宏观维度的预测,虽然考虑了微观数据的信息,不过因无法看到宏观变化的数据特点往往不能得到更好的预测效果。

由此,希望能有改进的方案,可以对时序数据进行更好的处理,从而更好地进行宏观时序数据的预测。

发明内容

本说明书一个或多个实施例描述了一种训练分组模型,以及对时序数据进行分组的方法和装置,其中直接从微观时序数据本身出发,通过混合模型发现不同微观时序数据的规律,智能化地实现微观时序数据的分组。

根据第一方面,提供了一种训练分组模型的方法,包括:

获取时序样本集,其中任意的第一时序样本包括,单个业务对象在n个时段的n个指标值构成的序列;

将所述第一时序样本输入分组模型,得到该样本分属于K个分组的预测概率分布;

将所述第一时序样本分别输入与K个分组对应的K个解码网络,得到K个重构样本;

根据所述时序样本集中各个样本的预测概率分布与样本在K个分组间的预设先验分布,确定总分布损失;

根据各个样本分别对应的K个重构样本,以及所述预测概率分布,确定总重构损失;

根据所述总分布损失和总重构损失,训练所述分组模型和所述K个解码网络。

在不同实施例中,单个业务对象可以为以下之一:单个用户,单个商品,单个商铺,单个服务项目,单个产品;所述指标值为以下之一:点击量,销量,流动量。

根据一种实施方式,上述方法还包括,根据所述n个指标值的均值,对所述第一时序样本进行预处理。

根据一种实施方式,上述分组模型包括编码网络和分组网络;所述将所述第一时序样本输入分组模型,得到该样本分属于K个分组的预测概率分布,包括:将所述第一时序样本输入编码网络,得到该第一时序样本的编码特征;将所述编码特征输入所述分组网络,得到所述预测概率分布。

进一步的,在上述实施方式的一个实施例中,编码网络是基于时序的神经网络;将所述第一时序样本输入编码网络,得到该第一时序样本的编码特征,具体包括:将所述n个指标值依次输入所述基于时序的神经网络,得到所述编码特征。

在上述实施方式的一个实施例中,分组网络实现为多层感知机MLP;将所述编码特征输入所述分组网络,得到所述预测概率分布,具体包括:通过多层感知机MLP处理所述编码特征,得到所述预测概率分布。

在一种实施方式中,所述K个解码网络具有相同的网络结构,不同的网络参数。

根据一种实施方式,K个解码网络包括任意的第一解码网络;将所述第一时序样本分别输入与K个分组对应的K个解码网络,得到K个重构样本,包括:将所述第一时序样本的第一时序片段输入第一解码网络,所述第一解码网络根据所述第一时序片段预测第二时序片段,基于第二时序片段形成第一重构样本。

进一步的,在一个实施例中,上述第一时序片段包括,所述n个指标值中前s个指标值;第二时序片段包括后s个指标值;其中,s大于n/2。

根据一个实施例,可以将上述第一时序片段中的各个指标值依次输入所述第一解码网络,所述第一解码网络滚动预测下一指标值,形成第二时序片段。

根据另一实施例,可以将上述第一时序片段整体输入所述第一解码网络,所述第一解码网络得到所述第一时序片段的片段表征向量,基于该片段表征向量,预测第二时序片段。

根据一种实施方式,前述确定总分布损失,具体包括:根据所述时序样本集中各个样本的预测概率分布,得到所述各个样本在所述K个分组的总体后验分布;根据所述预设先验分布和所述总体后验分布之间的分布差异,确定所述总分布损失。

根据另一种实施方式,确定总分布损失,具体包括:根据所述第一时序样本的预测概率分布与所述预设先验分布的分布差异,得到第一时序样本对应的样本分布损失;根据所述各个样本的样本分布损失,得到所述总分布损失。

在一个实施例中,所述分布差异为分布之间的KL散度。

根据一种实施方式,所述确定总重构损失,包括:对于所述K个解码网络中任意的第一解码网络,确定该第一解码网络针对第一时序样本的单网络单样本重构损失;以所述第一时序样本的预测概率分布中对应于所述K个解码网络的K个概率为权重,对K个解码网络针对第一时序样本的单网络单样本重构损失求和,得到第一时序样本的单样本重构损失;对所述时序样本集中各个样本的单样本重构损失求和,得到所述总重构损失。

在上述实施方式的一个实施例中,如下确定单网络单样本重构损失:获取所述第一解码网络针对所述第一时序样本的第一重构样本;根据所述第一重构样本中各时段的预测值与所述第一时序样本中对应时段的指标值的差值,确定所述单网络单样本重构损失。

在上述实施方式的另一个实施例中,如下确定单网络单样本重构损失:针对所述重构样本所覆盖的多个目标时段,获取所述第一解码网络针对每个目标时段预测的指标值分布的均值和方差;根据每个目标时段的均值和方差,以及所述第一时序样本中该目标时段的指标值,确定该目标时段的分布偏差;根据所述多个目标时段的分布偏差的求和,确定所述单网络单样本重构损失。

根据一种实施方式,根据所述总分布损失和总重构损失,训练所述分组模型和所述K个解码网络,具体包括:根据预设权重组合所述总分布损失和总重构损失,得到总损失;在总损失减小的方向,调整所述分组模型和所述K个解码网络中的参数。

根据第二方面,提供了一种对时序数据进行分组的方法,包括:

获取待测时序样本,其中包括,单个业务对象在n个时段的n个指标值构成的序列;

将所述待测时序样本输入分组模型,输出其分属于K个分组的预测概率分布,所述分组模型根据第一方面的方法训练得到;

确定所述预测概率分布中概率值最高的目标分组,将所述待测时序样本归入该目标分组。

根据第三方面,提供了一种对宏观时序数据进行预测的方法,包括:

获取N个时序样本,其中每个时序样本包括,单个业务对象在n个时段的n个指标值构成的序列;

将各时序样本输入分组模型,输出其分属于K个分组的预测概率分布,所述分组模型根据第一方面的方法训练得到;

将各时序样本划分到其对应的预测概率分布中概率值最高的分组,从而得到K组时序样本;

针对所述K组时序样本中的每个分组,将该分组中的各个时序样本进行聚合,得到该分组对应的融合时序样本;

基于融合时序样本,确定该分组对应的业务对象子群体在目标时段的预测指标值;

基于K个分组分别对应的预测指标值,确定所述业务对象总群体在所述目标时段的宏观指标值。

根据第四方面,提供了一种训练分组模型的装置,包括:

获取单元,配置为获取时序样本集,其中任意的第一时序样本包括,单个业务对象在n个时段的n个指标值构成的序列;

分组处理单元,配置为将所述第一时序样本输入分组模型,得到该样本分属于K个分组的预测概率分布;

重构处理单元,配置为将所述第一时序样本分别输入与K个分组对应的K个解码网络,得到K个重构样本;

分布损失确定单元,配置为根据所述时序样本集中各个样本的预测概率分布与样本在K个分组间的预设先验分布,确定总分布损失;

重构损失确定单元,配置为根据各个样本分别对应的K个重构样本,以及所述预测概率分布,确定总重构损失;

训练单元,配置为根据所述总分布损失和总重构损失,训练所述分组模型和所述K个解码网络。

根据第五方面,提供了一种对时序数据进行分组的装置,包括:

获取单元,配置为获取待测时序样本,其中包括,单个业务对象在n个时段的n个指标值构成的序列;

模型处理单元,配置为将所述待测时序样本输入分组模型,输出其分属于K个分组的预测概率分布,所述分组模型根据第四方面的装置训练得到;

分组单元,配置为确定所述预测概率分布中概率值最高的目标分组,将所述待测时序样本归入该目标分组。

根据第六方面,提供了一种对宏观时序数据进行预测的装置,包括:

获取单元,配置为获取N个时序样本,其中每个时序样本包括,单个业务对象在n个时段的n个指标值构成的序列;

模型处理单元,配置为将各时序样本输入分组模型,输出其分属于K个分组的预测概率分布,所述分组模型根据第四方面的装置训练得到;

分组单元,配置为将各时序样本划分到其对应的预测概率分布中概率值最高的分组,从而得到K组时序样本;

聚合单元,配置为针对所述K组时序样本中的每个分组,将该分组中的各个时序样本进行聚合,得到该分组对应的融合时序样本;

预测单元,配置为基于融合时序样本,确定该分组对应的业务对象子群体在目标时段的预测指标值;

确定单元,配置为基于K个分组分别对应的预测指标值,确定所述业务对象总群体在所述目标时段的宏观指标值。

根据第七方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面至第三方面中任一个所述的方法。

根据第四方面,提供了一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面至第三方面中任一个的方法。

在本说明书的实施例中,为了对微观时序数据进行分组,训练分组模型。并且,与分组模型同步地训练混合模型,通过微观时序数据在混合模型中的分布,发现微观时序数据的深层规律,将具有相似分布、相似规律的微观时序数据归为一类。由此,不拘泥于显见的属性,而是基于混合模型反映出的微观行为规律,智能化、自动化地实现宏观时序的拆分,进而提升宏观预测性能。

附图说明

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

图1为根据一个实施例对微观时序数据进行分组的实施过程示意图;

图2示出根据一个实施例的训练分组模型的方法流程图;

图3示出根据一个实施例的训练分组模型的过程示意图;

图4示出根据一个实施例对时序数据进行分组的方法流程图;

图5示出根据一个实施例对宏观时序数据进行预测的方法流程图;

图6示出根据一个实施例的训练分组模型的装置结构示意图;

图7示出根据一个实施例的对时序数据进行分组的装置结构示意图;

图8示出根据一个实施例的对宏观数据进行预测的装置结构示意图。

具体实施方式

下面结合附图,对本说明书提供的方案进行描述。

如前所述,宏观时序数据由于其构成的复杂性,其时序预测存在一些困难。不管是针对宏观数据直接进行预测,还是针对微观数据预测后再聚合,都难以达到期望的准确度和效果。

为此,在一种实施方案中,从预测的粒度出发,将时序预测拆分为介于直接预测宏观数据和预测微观数据两种方式之间。换而言之,可以利用某种策略将宏观时序数据拆分为多条子时间序列,分别预测后再汇总得到宏观预测结果。相比于直接预测宏观数据,该方案能够利用更多的有用信息,挖掘微观时序的不同规律辅助预测;而相比于直接预测微观数据,该方案避免了无法捕捉宏观时序变化带来的问题,并且能够极大地降低时序建模成本。

在上述实施方案中,对宏观时序数据进行恰当的拆分,对于最终的预测效果至关重要。直观上,可以依据一些显见的属性或指标,例如地理位置,产品类型等,对宏观时序数据进行拆分。然而,这些显见的属性或指标通常并不包含太多的微观时序信息,并且可以作为拆分依据的属性/指标成百上千,找到合适的指标需要很强的专家知识,同时需要大量的试错成本,费时费力。

有鉴于此,在本说明书的实施例中提供一种面向宏观时序预测的时序拆分方法,其技术构思为,直接从微观时序数据本身出发,通过混合模型发现不同微观时序数据的规律,将服从相同微观行为规律的数据归为一类,智能化地实现宏观时序的拆分,从而辅助提升宏观时序的预测性能。

图1为根据一个实施例对微观时序数据进行分组的实施过程示意图。可以理解,对宏观时序进行拆分,等同于对微观时序数据进行分组。根据本说明书的实施例,借助多个解码网络构成的混合模型训练一个分组模型,之后,即可利用该分组模型对微观时序数据进行分组。因此,图1的实施过程可以划分为分组模型的训练阶段和使用阶段,下面分别进行描述。

在训练阶段,可以设定希望的分组数目K,也就是希望将宏观时序数据拆分为K个子时序,或者说,希望将微观时序数据划分为K个分组。此外,还可以假定大量微观时序样本在这K个分组之间的先验分布。基于此,可以构建辅助用的混合模型,该混合模型包括多个用于对微观时序样本进行重构的解码网络。解码网络的数目与期望分组的数目K相等。即混合模型包括K个解码网络,对应于K个分组。

在训练过程中,如上图所示,对于样本集中的单条微观时序样本x,将其输入待训练的分组模型,可以得到分组模型预测的、样本x分属于K个分组(对应于K个解码网络)的概率分布P。此外,还将该微观时序样本x分别输入到K个解码网络进行解码重构。每个解码网络i针对该样本x进行重构,输出重构样本x

在针对样本集中各个样本进行上述概率预测和样本重构后,可以基于各个样本的预测的概率分布P,重构样本,以及前述的先验分布,确定整体预测损失,其中包括预测概率分布与先验分布的分布损失,以及与样本重构相关的重构损失。于是可以基于整体预测损失,对分组模型和K个解码网络进行参数调优,实现其训练。

在完成分组模型的训练之后,就可以使用该分组模型对微观时序数据进行分组。如下图所示,对于有待分组的单条微观时序样本y,将其输入训练好的分组模型,可以得到分组模型预测的、样本y分属于K个分组的概率分布。从该概率分布中选择概率最高的分组,作为目标分组,将样本y划分到该目标分组。如此,实现了各条微观时序样本的分组。进一步地,可以基于如此分组的微观时序数据,进行宏观时序的预测。

在以上实施过程中,与分组模型同步地训练混合模型,通过微观时序数据在混合模型中的分布,发现微观时序数据的深层规律,将具有相似分布、相似规律的微观时序数据归为一类。由此,不拘泥于显见的属性,而是基于混合模型反映出的微观行为规律,智能化、自动化地实现宏观时序的拆分,进而提升宏观预测性能。

下面具体描述上述实施过程。

图2示出根据一个实施例的训练分组模型的方法流程图,该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群执行。图3示出根据一个实施例的训练分组模型的过程示意图。下面结合图2和图3,对分组模型训练过程中的各个步骤的具体执行方式进行详细描述。

如图2所示,首先在步骤21,获取时序样本集。可以理解,该时序样本集包括一批,例如N个微观时序样本。单个微观时序样本,是单个业务对象在n个时段的n个指标值依时间顺序构成的序列。下文中为了清楚方便起见,又将其称为第一时序样本。在图3中,单个微观时序样本记为x=[x

取决于有待分析的宏观对象的不同,单个业务对象可以是单个用户,单个商品,单个商铺,单个服务项目,单个产品,等等,上述指标值可以是例如点击量,访问时长,销量,流动量,等等;n个时段可以取一天24小时,一周7天,一月30天,等等。相应的,在不同实施例中,单个微观时序样本可以具有不同的含义。例如,在一个例子中,有待分析的宏观对象是,一个商铺的总销量,则单个微观时序样本可以是,该商铺中的单个商品在各个时段的销量序列;在一个例子中,有待分析的宏观对象是,一个电商平台的总销量,则单个微观时序样本可以是,该电商平台中的单个商铺在各个时段的销量序列;在又一例子中,有待分析的宏观对象是,一个点评类网站的评论量,则单个微观时序样本可以是,该网站中单个产品在各个时段的评论量序列;在另一例子中,有待分析的宏观对象是,涉及可流动资源的服务产品的流动量(例如,涉及支付的服务产品的资金转出和转入),则单个微观时序样本可以是,单个用户在各个时段的资源流动量。可以理解,本领域技术人员能够根据有待分析的宏观对象来设定相应的微观时序样本,微观时序样本的具体实现可以有更多示例,在此不一一枚举。

根据一种实施方式,在进行模型处理之前,对各个微观时序样本x进行预处理。具体的,在一个实施例中,可以根据单个微观时序样本中n个指标值的均值,对该条样本进行预处理,使得处理后的指标值的数值范围小于原始数值范围。在一个例子中,可以按照如下公式(1)对微观时序样本x进行预处理:

其中,x

在另一例子中,还可以采用其他预处理方式,例如,归一化方式,将所有指标值归一化到预定区间。

对于以上的各种微观时序样本x,或称为第一时序样本,如图2所示,在步骤22,将该第一时序样本输入分组模型,得到该样本分属于K个分组的预测概率分布。上述分组数目K可以是根据需要预先设定的值。将K个分组中任意某个分组记为z,那么可以将分组模型输出的预测概率分布记为q(z|x),即,样本x属于各个分组z的概率。

在一个实施例中,上述分组模型实现为一个整体的神经网络模型,通过对输入的时序样本x中的各项特征进行处理,输出上述预测概率分布。

在另一实施例中,如图3所示,上述分组模型包括编码网络和分组网络。相应地,分组模型对第一时序样本x的处理过程,可以包括,将该第一时序样本x输入编码网络,得到该第一时序样本x的编码特征u,其中u=f

在一个例子中,上述编码网络是基于时序的神经网络,例如,循环神经网络RNN,长短期记忆网络LSTM,等。在这样的情况下,将第一时序样本中的n个指标值按照其时间顺序依次输入上述基于时序的神经网络,该神经网络基于时序累积对输入的样本进行编码,得到编码特征u。

在另一例子中,上述编码网络还可以是非时序的、可用于处理多维输入的神经网络,例如,卷积神经网络CNN,或者基于注意力的神经网络,比如Transformer等。在这样的情况下,可以将第一时序样本中的n个指标值作为多维输入一并输入该编码网络;该编码网络例如基于注意力机制对多维输入进行处理,得到编码特征u。

编码特征u接着被输入到分组网络,进行分组概率的预测。在一个实施例中,分组网络实现为多层感知机MLP。如此,通过多层感知机MLP处理上述编码特征u,得到所述预测概率分布q(z|x),即:

q(z|x)=MLP(u) (2)

在其他例子中,分组网络也可以通过更为复杂的神经网络实现,在此不做限定。

另一方面,在图2的步骤23,将上述第一时序样本x分别输入与K个分组对应的K个解码网络,得到K个重构样本。如前所述,K个解码网络与预设的K个分组对应构建,形成混合模型。典型地,该K个解码网络具有相同的网络结构,不同的网络参数。下面以其中任意一个解码网络z为例,描述解码网络针对第一时序样本x进行样本重构的过程。

在一个实施例中,可以将第一时序样本x的一部分时序片段,称为第一时序片段,输入解码网络z,解码网络z根据该第一时序片段预测另一部分时序片段,称为第二时序片段,从而基于预测的第二时序片段形成重构样本x'。因此,重构样本x'一般包括对n个时段中部分时段的预测值。

例如,在图3的示例中,第一时序片段为x

在其他例子中,第一/第二时序片段还可以有其他设置方式。例如,在一个具体示例中,第一时序片段可以包括,n个时段对应的n个指标值中前s个指标值;第二时序片段包括后s个指标值;其中,s大于n/2。例如,当n个时段为12个月,可以选取s为9,此时,编码网络基于1-9月的指标值,预测4-12月的指标值。

编码网络可以采用多种方式,预测第二时序片段。

在一个实施例中,编码网络z为基于时序的神经网络,例如RNN或LSTM,并设置为,逐个时段滚动预测。具体的,可以将第一时序片段中的各个指标值依次输入解码网络z,解码网络z滚动预测下一指标值,形成第二时序片段。

例如,在一个具体例子中,将x

在另一实施例中,解码网络z基于第一时序片段的整体表征,预测第二时序片段。此时,可以将第一时序片段整体输入解码网络z,解码网络z得到该第一时序片段的片段表征向量h,然后基于该片段表征向量h,预测第二时序片段。在一个具体例子中,解码网络z可实现为transformer网络,基于注意力机制,得到第一时序片段的整体片段表征向量h。然后通过解码阶段,基于向量h预测第二时序片段,形成重构样本x'。在又一例子中,解码网络z可以实现为seq2seq网络,基于第一时序片段的片段表征向量h,逐个预测第二时序片段中的元素,构成重构样本x'。

在更多实施例中,解码网络z还可以通过其他方式,例如自编码网络,形成重构样本。本说明书对于解码网络重构样本的方式和过程不做限制。

此外,需要说明的是,步骤22中分组模型对第一时序样本x的处理,和步骤23中K个解码网络对该样本x的处理,可以以任意相对顺序执行,例如先后执行,并行执行,在此亦不做限定。

在针对样本集中的N个微观时序样本分别执行步骤22和步骤23后,可以确定整个预测过程中的损失,据此对分组模型和K个解码网络进行调优和训练。具体如下所述。

在步骤24,根据时序样本集中各个样本的预测概率分布q(z|x)与样本在K个分组间的预设先验分布,确定总分布损失L1。

如前所述,在设定希望的分组数目K的基础上,还可以设定大量微观时序样本在这K个分组之间的先验分布,记为p(z)。在比较简单的场景下,可以假定该先验分布为,在K个分组之间均匀分布。在对场景特点有更多专家知识的情况下,也可以针对场景特点设定其他先验分布的形式,例如,设定样本在K个分组之间的分布符合某种非均匀分布,等等。从而,基于该先验分布p(z),以及分组模型针对各个样本的预测概率分布q(z|x),确定与样本分布相关的总分布损失。

在一个实施方式中,可以先将样本集中N个样本的预测概率分布聚合,得到这N个样本在K个分组的总体预测分布,或称为总体后验分布,记为q(z),然后根据预设先验分布p(z)和该总体后验分布q(z)之间的分布差异,确定总分布损失L1。

在一个例子中,可以对N个样本的预测概率分布求平均,得到总体后验分布q(z),即:

在确定先验分布p(z)和总体后验分布q(z)之间的分布差异时,可以采用多种计算方式。例如,可以如下计算p(z)和q(z)之间的KL散度,作为其分布差异:

在另一例子中,还可以采用交叉熵,计算p(z)和q(z)之间的分布差异。

根据另一种实施方式,可以先根据单个微观时序样本x的预测概率分布q(z|x)与上述先验分布p(z)的分布差异,计算得到该样本x对应的样本分布损失;然后,对样本集中各个样本的样本分布损失进行综合,得到总分布损失L1。在确定预测概率分布q(z|x)与先验分布p(z)的分布差异时,可以类似地采用交叉熵,KL散度等计算方式。

如此,通过多种方式,确定出与样本分布相关的总分布损失L1。

另一方面,在步骤25,根据各个样本分别对应的K个重构样本,以及预测概率分布,确定总重构损失L2。

在一个实施例中,可以通过多重求和,得到该总重构损失L2。具体的,对于K个解码网络中任意的解码网络z,确定该解码网络z针对第一时序样本x的单网络单样本重构损失L

L2=∑

其中,L

在一个例子中,获取解码网络z针对该第一时序样本x的第一重构样本x';根据第一重构样本x'中各时段的预测值与第一时序样本x中对应时段的指标值的差值,确定该单网络单样本重构损失。具体的,可以通过以下公式(6)确定单网络单样本重构损失L

L

其中,x

在另一例子中,假定针对每个时段i,各个样本的指标值符合一定分布,根据该分布来确定单网络单样本重构损失。具体的,可以假定每个时段i,各个样本的指标值符合高斯分布;相应的,设定解码网络z输出的重构样本指示每个时段i指标值分布的均值μ,并且解码网络z还预测指标值分布的方差σ。在获取解码网络z针对时段i预测的均值和方差的基础上,根据该均值和方差,以及第一时序样本x中该时段i的指标值x

在一个具体例子中,通过以下公式(7)确定单网络单样本重构损失L

其中,x

将公式(7)中确定单网络单样本重构损失的方式代入公式(5),可以得到,在一个具体例子中,确定总重构损失L2的计算过程,如下式表示:

在其他实施例中,还可以对以上例子中的计算方式进行一些变形和改动,例如,调整公式(5)中求和的顺序,改动L

还需说明的是,步骤24中对总分布损失的确定,和步骤25中对总重构损失的确定,可以以任意相对顺序执行,例如先后执行,并行执行,在此亦不做限定。

在以上基础上,在步骤26,可以根据总分布损失L1和总重构损失L2,训练上述分组模型和K个解码网络。在一个实施例中,可以根据预设权重α,组合上述总分布损失L1和总重构损失L2,得到总损失L。总损失L例如可以表示为:

L=L1+α*L2 (9)

进而,在总损失减小的方向,调整上述分组模型和K个解码网络中的参数。在这个过程中,对分组模型和K个解码网络进行联合训练。

如此,经过若干批样本集的训练,可以得到训练好的分组模型和K个解码网络。上述K个解码网络的训练是为了辅助分组模型的训练,在训练完成后,可以不再使用解码网络,或者将其用于其他用途。而对于训练好的分组模型,就可以直接利用该分组模型对微观时序样本进行分组。

图4示出根据一个实施例对时序数据进行分组的方法流程图,该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群执行。如图4所示,该方法可以包括以下步骤。一种对时序数据进行分组的方法,包括:

在步骤41,获取待测时序样本,其中包括,单个业务对象在n个时段的n个指标值构成的序列。该待测时序样本可记为样本y。

在步骤42,将该待测时序样本输入分组模型,输出其分属于K个分组的预测概率分布。该分组模型是根据上述结合图2所描述的方法训练得到的。

然后,在步骤43,确定上述预测概率分布中概率值最高的分组作为目标分组,将该待测时序样本y归入该目标分组。

通过以上方式,实现了对单条微观时序样本y进行分组。针对待处理的大量微观时序样本中的每一条,均可以按照上述方式进行处理,从而将其分别划分到K个分组中。由于分组模型与K个解码网络组成的混合模型同步训练,因此,分组模型的输出反映了输入的微观时序样本在混合模型的K个组分之间的分布,具有相似分布的样本具有微观特征上相似的深层规律,因此,通过以上过程,可以将具有相似的深层规律的微观时序数据归为一类。

以上对微观时序数据进行分组,可以用于多种场景和目的。例如,对各个微观时序样本进行分组,可以用于对对应的业务对象进行分流处理,比如,分流至与K个分组对应设置K个处理部(可以是,K组客服人员,K个子服务器)等等。对大量微观时序样本进行分组,可以便于对分组后的数据进行进一步分析处理。典型的,上述分组可以用于对宏观时序数据进行拆分,从而基于分组后的数据进行宏观指标的预测。

图5示出根据一个实施例对宏观时序数据进行预测的方法流程图,该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群执行。如图5所示,该方法包括以下步骤。

在步骤51,获取N个时序样本,其中每个时序样本包括,单个业务对象在n个时段的n个指标值构成的序列。

在步骤52,将各时序样本输入分组模型,分组模型输出其分属于K个分组的预测概率分布;其中,该分组模型是根据上述结合图2所描述的方法训练得到的。

接着,在步骤53,将各时序样本划分到其对应的预测概率分布中概率值最高的分组,从而得到K组时序样本。如此,实现了将N个时序样本划分到K个分组。

接着,在步骤54,针对上述K组时序样本中的每个分组j,将该分组j中的各个时序样本进行聚合,得到该分组j对应的融合时序样本。在一个实施例中,上述聚合可以是,将一个分组中的时序样本求和,得到融合时序样本。在另一个例子中,可以对一个分组中各个时序样本求均值,作为该分组对应的融合时序样本。

于是,在步骤55,可以基于融合时序样本,确定该分组对应的业务对象子群体在目标时段的预测指标值。该预测过程可以通过时序预测模型而实现。对于该时序预测模型的算法结构、构建方式、训练方式,在此不做限定。

最后,在步骤56,基于K个分组分别对应的预测指标值,确定业务对象总群体在所述目标时段的宏观指标值,从而实现宏观预测。

由于微观时序样本的分组基于微观样本的深层规律而进行,基于如此分组的子序列进行宏观预测,可以更好地挖掘微观时序的规律作为辅助,从而提升预测性能。

根据另一方面的实施例,提供了一种训练分组模型的装置。图6示出根据一个实施例的训练分组模型的装置结构示意图,该装置可以部署在任何具有数据存储、计算、处理能力的设备、平台或设备集群中。如图6所示,该训练装置600包括:

获取单元61,配置为获取时序样本集,其中任意的第一时序样本包括,单个业务对象在n个时段的n个指标值构成的序列;

分组处理单元62,配置为将所述第一时序样本输入分组模型,得到该样本分属于K个分组的预测概率分布;

重构处理单元63,配置为将所述第一时序样本分别输入与K个分组对应的K个解码网络,得到K个重构样本;

分布损失确定单元64,配置为根据所述时序样本集中各个样本的预测概率分布与样本在K个分组间的预设先验分布,确定总分布损失;

重构损失确定单元65,配置为根据各个样本分别对应的K个重构样本,以及所述预测概率分布,确定总重构损失;

训练单元66,配置为根据所述总分布损失和总重构损失,训练所述分组模型和所述K个解码网络。

该训练装置的具体执行方式,可以参照结合图2所描述的训练方法。

根据又一方面的实施例,提供了一种对时序数据进行分组的装置。图7示出根据一个实施例的对时序数据进行分组的装置结构示意图,该装置可以部署在任何具有数据存储、计算、处理能力的设备、平台或设备集群中。如图7所示,该分组装置700包括:

获取单元71,配置为获取待测时序样本,其中包括,单个业务对象在n个时段的n个指标值构成的序列;

模型处理单元72,配置为将所述待测时序样本输入分组模型,输出其分属于K个分组的预测概率分布,所述分组模型根据图6所示装置训练得到;

分组单元73,配置为确定所述预测概率分布中概率值最高的目标分组,将所述待测时序样本归入该目标分组。

该训练装置的具体执行方式,可以参照结合图4所描述的分组方法。

根据还一方面的实施例,提供了一种对宏观时序数据进行预测的装置。图8示出根据一个实施例的对宏观数据进行预测的装置结构示意图,该装置可以部署在任何具有数据存储、计算、处理能力的设备、平台或设备集群中。如图8所示,该预测装置800包括:

获取单元81,配置为获取N个时序样本,其中每个时序样本包括,单个业务对象在n个时段的n个指标值构成的序列;

模型处理单元82,配置为将各时序样本输入分组模型,输出其分属于K个分组的预测概率分布,所述分组模型根据图6所示的装置训练得到;

分组单元83,配置为将各时序样本划分到其对应的预测概率分布中概率值最高的分组,从而得到K组时序样本;

聚合单元84,配置为针对所述K组时序样本中的每个分组,将该分组中的各个时序样本进行聚合,得到该分组对应的融合时序样本;

预测单元85,配置为基于融合时序样本,确定该分组对应的业务对象子群体在目标时段的预测指标值;

确定单元86,配置为基于K个分组分别对应的预测指标值,确定所述业务对象总群体在所述目标时段的宏观指标值。

该预测装置的具体执行方式,可以参照结合图5所描述的预测方法。

通过以上各个装置,与分组模型同步地训练混合模型,通过微观时序数据在混合模型中的分布,发现微观时序数据的深层规律,将具有相似分布、相似规律的微观时序数据归为一类。由此,不拘泥于显见的属性,而是基于混合模型反映出的微观行为规律,智能化、自动化地实现宏观时序的拆分,进而提升宏观预测性能。

根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2,图4,或图5所描述的方法。

根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2,图4,或图5所述的方法。

本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

技术分类

06120113807068