【技术实现步骤摘要】
一种基于生成对抗网络的双向动态推荐系统
[0001]本专利技术涉及推荐系统
,特别涉及一种基于生成对抗网络的双向动态推荐系统。
技术介绍
[0002]随着互联网规模在不断的扩大,其存在的信息在以指数级的速度快速增长,大量种类繁多且异常复杂的信息充斥在我们的周围,同时也造成了信息过载现象的发生。用户无法有效的汲取互联网信息,许多有用的信息被“闲置”,不能及时的被用户所发现,造成信息资源的严重浪费。
[0003]近年来,推荐系统领域发展迅速,现已深入到我们日常生活之中,例如网络购物以及网络招聘等场景。一种有效的推荐算法,可以帮助用户快速找到所需的信息,从而大大提升信息的检索效率。推荐策略是推荐系统中不可忽视的部分,基于用户喜爱度对物体进行排名的Top-N推荐策略是当前比较流行的方法之一,各种基于Top-N策略的推荐算法在最近几年层出不穷,核心思想是根据文本信息获得用户与商品之间相关性,并将其按递减的顺序进行排序,每个用户可以得到独立的个性化推荐列表,最终相关性排名最高的商品会被推荐给用户。夏彬等人在Vrer:Con ...
【技术保护点】
【技术特征摘要】
1.一种基于生成对抗网络的双向动态推荐系统,其特征在于:包括有以下步骤:S1:收集推荐系统双方主体客体之间的历史相互选择数据,分别对其进行重新分配分组,即针对对主体推荐客体的行为中,采用数据处理模块,构建以主体为中心的通用数据集;针对对客体推荐主体的行为中,采用数据处理模块,构建以客体为中心的通用数据集。S2:对抗网络中设置有两个生成器,训练对抗网络中的一个生成器,利用通用数据集学习主体选择客体的偏好;训练生成对抗网络中的另一个生成器,利用通用数据集学习客体选择主体的偏好。S3:使用两个判别器分别对两个生成器生成的数据进行判别后,分别得到具有推荐合适主体的生成器和具有推荐合适客体的生成器。S4:训练得到已经收敛的生成对抗网,并使用两个可利用的生成器为主客体分别进行生成推荐。2.根据权利要求1所述的一种基于生成对抗网络的双向动态推荐系统,其特征在于:所述S1中采用数据处理模块分别构建以主体为中心的通用数据集和以客体为中心的通用数据集的具体构建步骤如下:S1.1:采集主体客体双方之间的历史选择信息,以此作为模型学习的样本,并对原始信息进行格式化处理。S1.2:分别对主体客体按照排列次序进行数字化编码,将字符形式的名称转换为模型可读取的数字化格式。S1.3:若主体的数量为u,客体的数量为v,分别以主体为中心构建u*v维和以客体为中心构建v*u维矩阵。在u*v维的矩阵中,第零行依次存放每个主体,第零列依次存放每个客体,矩阵中第(i,j)位置的数据表示第i个主体对第j个客体的偏好权重。S1.4:类似的,在v*u维矩阵中,第零行依次放置每个客体,第零列以此放置每个主体。S1.5:特殊的,假若主体和客体之间并没有历史选择记录,那么在各自的矩阵中对应位置权重值为0。3.根据权利要求1所述的一种基于生成对抗网络的双向动态推荐系统,其特征在于:所述S2中生成器包括有三个输入(以下阐述均以主体为中心,以客体为中心内容与此类似):(1)被推荐主体;(2)前一个推荐客体;(3)把以前一个推荐客体为中心进行推荐主体的序列。4.根据权利要求1所述的一种基于生成对抗网络的双向动态推荐系统,其特征在于:所述S2中生成器模型为一个三层的循环神经网络,训练过程如下:S2.1:将原始主体样本及以客体为中心的生成器针生成的主体样本分别编码成128维数组形式的数据信息作为网络的输入;S2.2:将编码后的数据输入到第一层长短期记忆神经网络中,用于提取特征信息;S2.3:对上步骤中的两个特征向量进行融合,将融合后的特征向量输入到第二层的长短期记忆神经网络中,提取更深层的特征信息;S2.4:在以主体为中心的生成器中,第三层网络接入一个线性回归模型,输出维度为客体的数目,最终使用sigmoid函数进行推荐排序;同样的,以客体为中心的生成器与之类似,第三层网络接入一个线性回归模型,输出维度为主体的数目,最终使用sigmoid函数进行推荐排序;
S2.5:生成器的损失函数包括两部分组成,对第一部分的损失函数使用交叉熵函数,衡量生成推荐序列与真实序列之间的差异性;对第二部分损失函数使用均方误差函数,衡量主体与针对错误推荐客体进行推荐的主体之间的相似度,具体公式如下:loss(x
i
,y
i
)=(x
i-y
i
)2S2.6:生成器训...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。