[发明专利]一种基于生成对抗网络的双向动态推荐系统有效
申请号: | 202011101268.6 | 申请日: | 2020-10-15 |
公开(公告)号: | CN112395494B | 公开(公告)日: | 2022-10-14 |
发明(设计)人: | 房笑宇;夏彬;曹陈涵;韩悦 | 申请(专利权)人: | 南京邮电大学 |
主分类号: | G06F16/9535 | 分类号: | G06F16/9535;G06N3/04;G06N3/08 |
代理公司: | 南京苏高专利商标事务所(普通合伙) 32204 | 代理人: | 柏尚春 |
地址: | 210009 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 生成 对抗 网络 双向 动态 推荐 系统 | ||
1.一种基于生成对抗网络的双向动态推荐方法,其特征在于:包括有以下步骤:
S1:收集推荐系统双方主体客体之间的历史相互选择数据,分别对其进行重新分配分组,即针对主体推荐客体的行为中,采用数据处理模块,构建以主体为中心的通用数据集;针对客体推荐主体的行为中,采用数据处理模块,构建以客体为中心的通用数据集;
其中采用数据处理模块分别构建以主体为中心的通用数据集和以客体为中心的通用数据集的具体构建步骤如下:
S1.1:采集主体客体双方之间的历史选择信息,以此作为模型学习的样本,并对原始信息进行格式化处理;
S1.2:分别对主体客体按照排列次序进行数字化编码,将字符形式的名称转换为模型可读取的数字化格式;
S1.3:若主体的数量为u,客体的数量为v,分别以主体为中心构建u*v维和以客体为中心构建v*u维矩阵,在u*v维的矩阵中,第零行依次存放每个主体,第零列依次存放每个客体,矩阵中第(i,j)位置的数据表示第i个主体对第j个客体的偏好权重;
S1.4:在v*u维矩阵中,第零行依次放置每个客体,第零列以此放置每个主体;假若主体和客体之间并没有历史选择记录,那么在各自的矩阵中对应位置权重值为0;
S2:对抗网络中设置有两个生成器,训练对抗网络中的一个生成器,利用通用数据集学习主体选择客体的偏好;训练生成对抗网络中的另一个生成器,利用通用数据集学习客体选择主体的偏好;
S3:使用两个判别器分别对两个生成器生成的数据进行判别后,分别得到具有推荐合适主体的生成器和具有推荐合适客体的生成器;
S4:训练得到已经收敛的生成对抗网络,并使用两个可利用的生成器为主客体分别进行生成推荐。
2.根据权利要求1所述的一种基于生成对抗网络的双向动态推荐方法,其特征在于:所述S2中生成器包括有三个输入,以主体为中心分别为:被推荐主体;前一个推荐客体;以前一个推荐客体为中心进行推荐主体的序列;
以客体为中心分别为:被推荐客体;前一个推荐主体;以前一个推荐主体为中心进行推荐客体的序列。
3.根据权利要求1所述的一种基于生成对抗网络的双向动态推荐方法,其特征在于:所述S2中生成器模型为一个三层的循环神经网络,训练过程如下:
S2.1:将原始主体样本及以客体为中心的生成器中生成的主体样本分别编码成128维数组形式的数据信息作为网络的输入;
S2.2:将编码后的数据输入到第一层长短期记忆神经网络中,用于提取特征信息;
S2.3:对S2.2中的两个特征向量进行融合,将融合后的特征向量输入到第二层的长短期记忆神经网络中,提取更深层的特征信息;
S2.4:在以主体为中心的生成器中,第三层网络接入一个线性回归模型,输出维度为客体的数目,最终使用sigmoid函数进行推荐排序;同样的,以客体为中心的生成器与之类似,第三层网络接入一个线性回归模型,输出维度为主体的数目,最终使用sigmoid函数进行推荐排序;
S2.5:生成器的损失函数包括两部分组成,对第一部分的损失函数使用交叉熵函数,衡量生成推荐序列与真实序列之间的差异性;对第二部分损失函数使用均方误差函数,衡量主体与针对错误推荐客体进行推荐的主体之间的相似度,具体公式如下:
loss(xi,yi)=(xi-yi)2
S2.6:生成器训练完毕,获得推荐模型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京邮电大学,未经南京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011101268.6/1.html,转载请声明来源钻瓜专利网。