基于离线环境的模型训练方法及装置制造方法及图纸

技术编号:36932753 阅读:54 留言:0更新日期:2023-03-22 18:55
本发明专利技术公开了一种基于离线环境的模型训练方法及装置,其中,该方法包括:获取多个样本用户的历史订单数据,其中,所述历史订单数据包括所述多个样本用户在多个时间分别购买的商品集合列表;采用所述多个样本用户的历史订单数据按照用户层级生成正样本序列集合,其中,所述用户层级用于表征对应样本用户的消费习惯类型;采用所述正样本序列离线生成负样本序列集合;采用所述正样本序列集合和所述负样本序列集合训练初始对抗式网络强化学习GRL网络,得到商品推荐模型。通过本发明专利技术,解决了相关技术训练模型效率低的技术问题,降低了模型训练时对样本数量和样本质量的要求,提高了模型的训练效率。的训练效率。的训练效率。

【技术实现步骤摘要】
基于离线环境的模型训练方法及装置


[0001]本专利技术涉及计算机
,具体而言,涉及一种基于离线环境的模型训练方法及装置。

技术介绍

[0002]相关技术中,在实际电商运营场景中,同一个店铺的用户下个购买商品往往难以预测,准确推荐用户所需商品能大大提高用户的购买可能性,对提高店铺营业额和延长用户生命周期有重大意义。目前离线环境中,预测用户下个购买商品方法有:根据用户已购商品推已购商品,该方法实现简单,但无法预知未买过的商品;根据用户与商品的交互信息,利用协同过滤的思想进行推荐,该方法能有效利用用户信息、商品信息,挖掘商品相关性、用户相关性,但该方法如果数据稀疏,准确率不高,且无法学习用户购买的商品的先后次序;根据机器学习模型推荐,传统的机器学习根据用户与商品的交互信息,训练FM(因子分解机,Factorization Machine)模型,得到用户或商品的隐向量,利用隐向量相似性,完成商品推荐,该方法精度较高,效果较好,但无法得到购买序列信息,序列问题表现为当前推荐商品虽然是用户喜欢的,但不是当前阶段所需要的,会降低用户购买的可能性;利用深度学习进行推荐也有许多方法,典型如Deepwalk(深度游走)利用图节点的共现关系,学习用户或商品隐向量,该方法精度高,效果好,目前已有广泛应用,但仍存在购买序列次序问题;强化学习能够学习用户与商品的交互序列信息,得到用户或商品的embedding(对象表示)向量,推荐时,根据用户的所处购买状态,推荐商品会发生相应的变化,解决商品购买次序问题,因此备受研究推崇,但该方法训练需要大量交互数据,且训练难度较高。
[0003]针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。

技术实现思路

[0004]本专利技术实施例提供了一种基于离线环境的模型训练方法及装置。
[0005]根据本申请实施例的一个方面,提供了一种基于离线环境的模型训练方法,包括:获取多个样本用户的历史订单数据,其中,所述历史订单数据包括所述多个样本用户在多个时间分别购买的商品集合列表;采用所述多个样本用户的历史订单数据按照用户层级生成正样本序列集合,其中,所述用户层级用于表征对应样本用户的消费习惯类型;采用所述正样本序列离线生成负样本序列集合;采用所述正样本序列集合和所述负样本序列集合训练初始对抗式网络强化学习GRL网络,得到商品推荐模型。
[0006]进一步,采用所述多个样本用户的历史订单数据按照用户层级生成正样本序列集合包括:获取每个样本用户的历史订单数据的商品集合列表;以样本用户的用户标识为第一键值,采用所述商品集合列表创建每个样本用户的购买序列,其中,所述购买序列包括多个按照时间升序购买的商品;按照单位序列长度截取所述购买序列,得到每个样本用户的截取序列,其中,所述单位序列长度为单个购买周期的时长;以序列状态为第二键值,聚合所有样本用户的截取序列,得到多个样本用户集合,其中,所述序列状态用于指示购买周
期,每个单位的序列长度对应一个序列状态;采用所述多个样本用户集合分层生成正样本序列集合。
[0007]进一步,以序列状态为第二键值,聚合所有样本用户的截取序列,得到多个样本用户集合包括:从起始序列状态开始,迭代执行以下步骤,直到最后一个序列状态:确定第一序列状态对应的第一时段;在所有样本用户的截取序列中提取所述第一时段购买的第一商品集合;按照所述第一商品集合中的商品标识对所有的用户标识进行聚类,得到多个按照商品标识分类的第一用户集合;将所述第一序列状态更新为相邻的第二序列状态,其中,所述第一用户集合的数量与商品标识的数量相同;在迭代完成之后,按照序列状态存储所有的样本用户集合,得到多个样本用户集合。
[0008]进一步,采用所述多个样本用户集合分层生成正样本序列集合包括:从起始序列状态开始,迭代执行以下步骤,直到最后一个序列状态:确定第一序列状态;读取所述第一序列状态的所有历史序列,将所述所有历史序列中相同购买序列的用户划分到同一层,以使相同购买序列的多个样本用户具有同一层级表示,每个层级的若干个样本用户采用相同的商品标识进行层级表示;按照层级读取每个历史序列的下一个状态值;将下一个状态值分别添加至历史序列的末端,并配置正奖励值,得到所述第一序列状态的多个正样本序列;将所述第一序列状态更新为相邻的第二序列状态;在迭代完成之后,将所有序列状态的正样本序列确定为正样本序列集合。
[0009]进一步,采用所述正样本序列离线生成负样本序列集合包括:解析所述正样本序列的每个序列状态;从起始序列状态开始,迭代执行以下步骤,直到最后一个序列状态:确定第一序列状态;读取所述第一序列状态的所有历史序列,将所述所有历史序列按照商品标识进行用户分层,以使每个层级的若干个样本用户对应的商品标识相同;获取所述第一序列状态所有样本用户购买的第二商品集合,以及所述用户层级的层级商品,其中,所述用户层级为按照所述层级商品的商品标识分类的样本用户集合;计算所述第二商品集合与所述层级商品的差集,并为所述差集中的所有商品配置负奖励值,得到负样本序列;将所述第一序列状态更新为相邻的第二序列状态;在迭代完成之后,将所有序列状态的负样本序列确定为负样本序列集合。
[0010]进一步,采用所述正样本序列集合和所述负样本序列集合训练初始GRL网络,得到商品推荐模型包括:采用长短期记忆网络LSTM提取所述正样本序列集合的第一状态向量;为所述第一状态向量配置正反馈参数,为所述负样本序列集合配置负反馈参数,并训练所述初始GRL网络的判别网络,直到所述判别网络的损失函数的损失量小于预设量或者达到预设训练次数,得到商品推荐模型。
[0011]进一步,在采用所述正样本序列集合和所述负样本序列集合训练初始GRL网络,得到商品推荐模型之后,所述方法还包括:获取目标用户的历史订单记录;从所述历史订单记录中按时序提取预设序列长度的历史购买商品,并基于所述历史购买商品生成所述目标用户的当前状态序列,其中,所述当前状态序列包括若干个按照时间升序排序的历史购买商品;将所述当前状态序列输入所述商品推荐模型,输出所述当前状态序列之后的若干个推荐商品。
[0012]根据本申请实施例的另一个方面,还提供了一种基于离线环境的模型训练装置,包括:获取模块,用于获取多个样本用户的历史订单数据,其中,所述历史订单数据包括所
述多个样本用户在多个时间分别购买的商品集合列表;第一生成模块,用于采用所述多个样本用户的历史订单数据按照用户层级生成正样本序列集合,其中,所述用户层级用于表征对应样本用户的消费习惯类型;第二生成模块,用于采用所述正样本序列离线生成负样本序列集合;训练模块,用于采用所述正样本序列集合和所述负样本序列集合训练初始对抗式网络强化学习GRL网络,得到商品推荐模型。
[0013]进一步,所述第一生成模块包括:获取单元,用于获取每个样本用户的历史订单数据的商品集合列表;创建单元,用于以样本用户的用户标识为第一键值,采用所述商品集合列表创建每个样本用户的购买序列,其中,所述购买序列包括多个按照时间升序购买的商品;本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于离线环境的模型训练方法,其特征在于,包括:获取多个样本用户的历史订单数据,其中,所述历史订单数据包括所述多个样本用户在多个时间分别购买的商品集合列表;采用所述多个样本用户的历史订单数据按照用户层级生成正样本序列集合,其中,所述用户层级用于表征对应样本用户的消费习惯类型;采用所述正样本序列离线生成负样本序列集合;采用所述正样本序列集合和所述负样本序列集合训练初始对抗式网络强化学习GRL网络,得到商品推荐模型。2.根据权利要求1所述的方法,其特征在于,采用所述多个样本用户的历史订单数据按照用户层级生成正样本序列集合包括:获取每个样本用户的历史订单数据的商品集合列表;以样本用户的用户标识为第一键值,采用所述商品集合列表创建每个样本用户的购买序列,其中,所述购买序列包括多个按照时间升序购买的商品;按照单位序列长度截取所述购买序列,得到每个样本用户的截取序列,其中,所述单位序列长度为单个购买周期的时长;以序列状态为第二键值,聚合所有样本用户的截取序列,得到多个样本用户集合,其中,所述序列状态用于指示购买周期,每个单位的序列长度对应一个序列状态;采用所述多个样本用户集合分层生成正样本序列集合。3.根据权利要求2所述的方法,其特征在于,以序列状态为第二键值,聚合所有样本用户的截取序列,得到多个样本用户集合包括:从起始序列状态开始,迭代执行以下步骤,直到最后一个序列状态:确定第一序列状态对应的第一时段;在所有样本用户的截取序列中提取所述第一时段购买的第一商品集合;按照所述第一商品集合中的商品标识对所有的用户标识进行聚类,得到多个按照商品标识分类的第一用户集合;将所述第一序列状态更新为相邻的第二序列状态,其中,所述第一用户集合的数量与商品标识的数量相同;在迭代完成之后,按照序列状态存储所有的样本用户集合,得到多个样本用户集合。4.根据权利要求2所述的方法,其特征在于,采用所述多个样本用户集合分层生成正样本序列集合包括:从起始序列状态开始,迭代执行以下步骤,直到最后一个序列状态:确定第一序列状态;读取所述第一序列状态的所有历史序列,将所述所有历史序列中相同购买序列的用户划分到同一层,以使相同购买序列的多个样本用户具有同一层级表示,每个层级的若干个样本用户采用相同的商品标识进行层级表示;按照层级读取每个历史序列的下一个状态值;将下一个状态值分别添加至历史序列的末端,并配置正奖励值,得到所述第一序列状态的多个正样本序列;将所述第一序列状态更新为相邻的第二序列状态;在迭代完成之后,将所有序列状态的正样本序列确定为正样本序列集合。5.根据权利要求1所述的方法,其特征在于,采用所述正样本序列离线生成负样本序列集合包括:解析所述正样本序列的每个序列状...

【专利技术属性】
技术研发人员:肖荣昌许先才张家栋熊磊
申请(专利权)人:深圳市云积分科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1