一种基于递归神经网络的推荐方法及系统技术方案

技术编号:12900834 阅读:52 留言:0更新日期:2016-02-24 11:09
本发明专利技术提供一种基于递归神经网络的推荐方法和系统,其采用递归神经网络模型对用户行为建模并用于推荐系统,通过结合BP算法原理和本发明专利技术的神经网络结构,构建针对推荐系统的递归神经网络模型学习方法,根据推荐系统的特点对递归神经网络进行训练,建立独有神经网络结构,从而根据新的神经网络结构为不同用户生成与其兴趣爱好相对应的推荐列表。所述推荐方法和系统通过采用递归神经网络从用户历史行为中学习用户偏好,并据此为用户提供推荐服务。通过递归神经网络特有的递归结构,能够基于时间序列对不同类型的用户行为进行统一表示;且递归神经网络在时间上展开后形成一个深度神经网络结构,能够更精确的表示具有较大随机性的用户行为。

【技术实现步骤摘要】

本专利技术涉及系统推荐
,具体涉及一种基于递归神经网络的推荐方法及系 统。
技术介绍
当前,网络服务商为用户提供了诸如新闻、商品、图片、视频、音频、文档等(以下 统一简称为物品)的在线服务。为了更好的为用户提供服务,服务提供商会记录用户的历 史行为,例如记录用户购买(使用)过哪些物品、对物品的评价、点击、转发、评论等。根据 用户的历史行为,为用户提供准确的推荐,是推荐系统面临的重大挑战,其主要表现在: 第一,虽然用户历史行为对了解用户偏好,进而为用户推荐物品,提供了重要信 息。但是多样的用户行为具有诸多不同的含义。例如,要根据评论的内容才能知道用户是 否喜欢一个物品。此特点给有效利用多种用户行为带来了困难。 第二,就表达的用户偏好而言,用户行为表现出巨大的不确定性。例如,点击、转发 等行为不能很明确的说明用户是否喜欢该物品。而用户给予较高评分的物品,多数情况下 是用户比较喜欢的。 第三,用户行为发生的时间顺序反映了用户偏好的变化过程,也是推荐系统需要 考虑的重要因素,需要加以合理利用。 因此,如何有效的利用记录的多种用户行为,为用户提供准确的推荐,是本领域人 员急待解决的问题。
技术实现思路
有鉴于此,有必要提供一种能够有效的利用记录的多种用户行为从而为用户提供 准确的推荐的推荐方法及系统。 -种基于递归神经网络的推荐方法,所述基于递归神经网络的推荐方法包括以 下步骤: S1、收集用户对物品的历史行为,并建立递归神经网络; S2、按照行为发生时间对每一个用户记录的历史行为进行先后排序;并针对每一 个用户生成相应的训练样本; S3、根据训练样本对递归神经网络进行训练,确定递归神经网络中的权重矩阵; S4、根据训练后的递归神经网络为每一个用户生成推荐列表。 -种基于递归神经网络的推荐系统,所述基于递归神经网络的推荐系统包括以下 功能t吴块: 用户行为收集模块,用于收集用户对物品的历史行为,并建立递归神经网络; 训练样本生成模块,用于按照行为发生时间对每一个用户记录的历史行为进行先 后排序;并针对每一个用户生成相应的训练样本; 权重矩阵确定模块,用于根据训练样本对递归神经网络进行训练,确定递归神经 网络中的权重矩阵; 推荐列表生成模块,用于根据训练后的递归神经网络为每一个用户生成推荐列 表。 本专利技术提供基于递归神经网络的推荐方法和系统,其采用递归神经网络模型对用 户行为建模并用于推荐系统,通过结合BP算法原理和本专利技术的神经网络结构,构建针对推 荐系统的递归神经网络模型学习方法,根据推荐系统的特点对递归神经网络进行训练,建 立独有神经网络结构,从而根据新的神经网络结构为不同用户生成与其兴趣爱好相对应的 推荐列表。所述推荐方法和系统通过采用递归神经网络从用户历史行为中学习用户偏好, 并据此为用户提供推荐服务。通过递归神经网络特有的递归结构,能够基于时间序列对不 同类型的用户行为进行统一表示;且递归神经网络在时间上展开后形成一个深度神经网络 结构,能够更精确的表示具有较大随机性的用户行为。【附图说明】 图1是本专利技术所述基于递归神经网络的推荐方法的流程图; 图2是本专利技术所述基于递归神经网络的推荐方法的递归神经网络推荐模型; 图3是图1中步骤S3的子流程图; 图4为图1中步骤S33的子流程图; 图5是本专利技术所述基于递归神经网络的推荐系统的结构框图; 图6是图5中权重矩阵确定模块的子结构框图; 图7是图5中网络训练子模块的子结构框图。【具体实施方式】 为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本专利技术进行进一步详细说明,应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并 不用于限定本专利技术。 如图1所示,本专利技术实施例提供一种基于递归神经网络的推荐方法,所述基于递 归神经网络的推荐方法包括以下步骤: S1、收集用户对物品的历史行为,并建立递归神经网络; S2、按照行为发生时间对每一个用户记录的历史行为进行先后排序;并针对每一 个用户生成相应的训练样本; S3、根据训练样本对递归神经网络进行训练,确定递归神经网络中的权重矩阵; S4、根据训练后的递归神经网络为每一个用户生成推荐列表。 其中,所述递归神经网络包括输入层、隐藏层以及输出层,所述输入层的输入包括 用户信息U、用户t时刻的行为信息A(t)以及用户t时刻行为的目标物品信息I (t),所述 隐藏层的输出包括t时刻隐藏层的输出S (t)以及t-Ι时刻隐藏层的输出S (t-1),所述输出 层的输出包括t时刻输出层的输出0(t)。 具体的,在一个网络推荐系统中,设U为递归神经网络输入层的一个输入向量,用 于表示用户信息,对于有m个用户的推荐系统,设第i个用户有m个元素,其中第i个元素 为1,其它元素为0 ; A (t)为输入层的一个输入向量,用于表示用户t时刻的行为,对于能够处理1种用 户行为的推荐系统,第j种用户行为表示为一个有1个元素的向量,其中第j个元素为1,其 它元素为〇 ; I(t)是输入层的一个输入向量,用于表示用户t时刻行为的目标物品,对于有η个 物品的推荐系统,第k个物品表示为一个有η个元素的向量,其中第k个元素为1,其它元 素为〇 ; S(t-l)是输入层的一个有h个元素输入向量,用于表不t-Ι时刻隐藏层的输出,h 为隐藏层维数;优选的,隐藏层维数h取值为中的整数。 S(t)是一个hX 1的向量,表不t时刻隐藏层的输出。 进一步的,所述输入层的输入与隐藏层的输出之间存在下列函数关系: S(t) = f (VI(t)+ffA(t)+XS(t-l)+TU) 其中,V,W,X,T分别表示输入层I (t)、A(t)、S(t-l)、U连接到隐藏层的权重矩阵; 函数f是sigma函数 所述隐藏层的输出S(t)与输出层的输出0(t)之间存在下列函数关系: 其中,Y是隐藏层连接到输出层的权重矩阵,g是softmax函数, 其中,如图3所示,步骤S3包括以下分步骤: 331、随机生成权重矩阵1\¥、¥3、¥、2; S32、检查收敛条件,即检查迭代次数是否达到上限;或目标函数的值是否不再减 小;如果不满足收敛条件,则进入步骤S33 ;反之则确定了递归神经网络中的权重矩阵; S33、根据每一个用户的训练样本对递归神经网络进行训练; 所述迭代次数上限为K彡100。 并采用交叉熵(Cross entropy)做为待优化的目标函数,即: 其中,E为目标函数,h是第t时刻的训练样本中的物品编号,s是训练样本数量; 步骤S3中采用BP(back propagation)算法学习图1中的递归神经网络,从而确定 特征1-4中的权重矩阵T,V,W,X和特征1-5中的权重矩阵Y ;如图4所示,具体步骤如下: S331、计算输出层梯度 计算输出层的梯度E0(t) = I (t)-〇(t); S332、更新隐藏层到输出层的权重矩阵 更新权重矩阵Y义』(t+1) = Yi』(t) + a Sj (t) EOi⑴-β Yi j⑴ 其中,α是学习率,β是正规化参数。且优选的,学习率α的取值为0.001,正规 化参数β的取值为le 6; S333、计算隐藏层梯度 计算隐藏层的梯度 ES(t) = YE0(t) Θ (S(t) (l-S(t))本文档来自技高网...

【技术保护点】
一种基于递归神经网络的推荐方法,其特征在于,所述基于递归神经网络的推荐方法包括以下步骤:S1、收集用户对物品的历史行为,并建立递归神经网络;S2、按照行为发生时间对每一个用户记录的历史行为进行先后排序;并针对每一个用户生成相应的训练样本;S3、根据训练样本对递归神经网络进行训练,确定递归神经网络中的权重矩阵;S4、根据训练后的递归神经网络为每一个用户生成推荐列表。

【技术特征摘要】

【专利技术属性】
技术研发人员:刘俊涛王军伟邓德位
申请(专利权)人:中国船舶重工集团公司第七零九研究所
类型:发明
国别省市:湖北;42

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

1