一种基于耦合主题模型的协同滤波方法技术

技术编号:15302807 阅读:100 留言:0更新日期:2017-05-15 00:57
本发明专利技术公开了一种基于耦合主题模型的协同滤波方法,用于在推荐系统中有效结合历史评分信息与用户生成内容(User‑generated Content,简称UGC),通过进行评分预测进行有效推荐。该方法包括以下步骤:1)获取用户生成内容的记录;2)获取用户对产品的评分记录;3)提取用户文档和产品文档;4)利用耦合主题模型学习用户特征向量和产品特征向量;5)根据特征向量计算目标用户对不同产品的评分,来进行相应的产品推荐。本发明专利技术引入对用户生成内容信息的分析,能够直接的显式的发现用户兴趣和产品属性,而且有效解决了评分矩阵的稀疏问题,获得比基于用户评分信息的预测更准确的效果。

A collaborative filtering method based on coupled topic model

The present invention discloses a collaborative filtering method based on topic model for coupling, effective combination of historical information and scores of user generated content in recommender systems (User generated Content, referred to as UGC), predicted by effective recommendation score. The method comprises the following steps: 1) to obtain user generated content records; 2) access to the user of the product evaluation records; 3) extraction of user documentation and product documentation; 4) using the user feature vector and product feature vector coupling learning topic model; 5) according to the feature vector calculation of the target user products of different score. To carry out the corresponding product recommendation. The present invention is introduced into the analysis of information of user generated content, can directly find explicit user interest and product attributes, and effectively solve the problem of sparse rating matrix, obtain more accurate prediction than the results based on user rating information.

【技术实现步骤摘要】
一种基于耦合主题模型的协同滤波方法
本专利技术涉及互联网产品的信息推荐领域,特别针对网站系统中同时存在用户生成内容信息以及用户评分信息,如何有效利用用户生成内容并同时结合历史评分信息,准确分析用户偏好和产品属性,为目标用户进行个性化信息产品推荐。
技术介绍
随着互联网技术与web2.0的深入发展,用户生成内容(User-generatedContent,简称UGC)逐渐成为一种新型的主流网络信息资源。用户生成内容泛指以任何形式在网络上发表的由用户创作的文字、图片、音频、视频等内容,本专利技术主要针对推荐系统的用户生成内容进行分析,即特定用户对特定产品的UGC,比如推荐系统中用户对产品的标签或评论。近年来,矩阵分解方法在推荐系统中得到了比较广泛的应用。矩阵分解对每个用户和产品学习一个相应的特征向量,来分别表征用户偏好和产品属性。然后利用学习到的特征向量进行产品推荐。但是传统矩阵分解方法只考虑了对历史评分信息进行分析,并未挖掘文本内容相关的信息,因此学习到的特征向量可解释性较差。主题模型(比如PLSA、LDA等)是一种在文档集上进行主题挖掘的方法。主题模型可以将高维BOW表征的文档映射到K维主题空间,每个文档用一个K维主题向量来表示。本专利技术提出了一种耦合主题模型,其结合矩阵分解与主题模型的优势,同时挖掘历史评分信息与用户生成内容进行个性化产品推荐。本专利技术学习到的特征向量可以用主题来更好的解释,同时解决了评分信息的稀疏问题。
技术实现思路
为了解决现有技术存在的问题,本专利技术的目的是提供一种基于耦合主题模型的协同滤波方法。所述基于耦合主题模型的协同滤波方法包括以下步骤:步骤S1,获取用户生成内容记录,每个用户生成内容对应特定的用户和产品;步骤S2,获取用户对产品的历史评分信息,将部分历史评分信息作为训练集,剩下的作为测试集,分别构建不完全观测评分矩阵,即根据部分用户对部分产品的评分构建不完全观测评分矩阵,得到的训练集评分矩阵R作为耦合主题模型的评分输入;步骤S3,根据用户生成内容,提取用户文档dU和产品文档dV,其中,所述用户文档dU为与用户有关的用户生成内容,所述产品文档dV为与产品有关的用户生成内容,每个文档使用其包括的单词的词频来表示,并将每个文档的词袋表达向量WU和WV建模为可见单元,作为耦合主题模型的内容输入;步骤S4,结合所述步骤S2得到的训练集评分矩阵R和所述步骤S3得到的用户文档dU、产品文档dV,利用耦合主题模型学习得到用户特征向量ηU和产品特征向量ηV;步骤S5,根据步骤S4得到的用户特征向量ηU和产品特征向量ηV,利用计算用户对不同产品的评分,然后将得到的预测评分与测试集评分进行对比,衡量所述耦合主题模型的可靠性,最后针对特定用户,根据预测评分的高低得到推荐产品列表,从而进行产品推荐。本专利技术引入了对用户生成内容信息的分析,能够直接的显式的发现用户兴趣和产品属性,而且有效地解决了评分矩阵的稀疏问题,获得比基于用户评分信息的预测更准确的效果。附图说明图1是本专利技术基于耦合主题模型的协同滤波方法的流程图。图2是用于协同滤波的耦合主题模型的生成示意图。图3是以电影推荐系统为例,介绍用户生成内容的示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本专利技术进一步详细说明。本专利技术基于矩阵分解与主题模型,提出了耦合主题模型。通过将用户和产品映射到隐含主题空间,对每个用户和产品学习一个K维特征向量η,通过引入逻辑斯谛正态先验替代狄利克雷先验,使得学习到主题向量θ(K为主题向量的数量)的同时,可以学习到更加灵活的特征向量η,所述特征向量η不再受限于相应的单纯形(一个K维的向量θ如果满足那么就称该向量分布在K-1的单纯性上),这样不仅使得特征向量的表达性更好,而且用于矩阵分解进行评分预测也更加灵活。图1是本专利技术基于耦合主题模型的协同滤波方法的流程图,如图1所示,所述方法包括以下步骤:步骤S1,获取用户生成内容记录,每个用户生成内容对应特定的用户和产品,所述用户生成内容比如可以为用户标签,每个标签对应特定的用户和产品;步骤S2,获取用户对产品的历史评分信息,将部分历史评分信息作为训练集,剩下的作为测试集,分别构建不完全观测评分矩阵,即根据部分用户对部分产品的评分构建不完全观测评分矩阵,得到的训练集评分矩阵R作为耦合主题模型的评分输入;步骤S3,根据用户生成内容,提取用户文档dU和产品文档dV,其中,所述用户文档dU为与用户有关的用户生成内容,所述产品文档dV为与产品有关的用户生成内容,每个文档使用其包括的单词的词频来表示,并将每个文档的词袋表达向量(即WU和WV)建模为可见单元,作为耦合主题模型的内容输入;其中,用户文档反映了用户的偏好信息,产品文档则反映了产品的属性信息。用户文档与产品文档都来自于用户生成内容,这也保证了用户文档与产品文档共享同一词典,使得两者可以映射到同一主题空间。与用户i相关的所有用户生成内容构成用户i的文档dU,i,与产品j相关的所有用户生成内容构成产品j的文档dV,j,如果用di,j表示用户i对产品j的用户生成内容文档,那么用户i的文档dU,i中单词w的词频表示为:其中,M代表产品数,同样,产品j的文档dV,j中单词w的词频表示为:其中N代表用户数。步骤S4,结合所述步骤S2得到的训练集评分矩阵R和所述步骤S3得到的用户文档dU、产品文档dV,利用耦合主题模型学习得到用户特征向量ηU和产品特征向量ηV;图2是用于协同滤波的耦合主题模型的示意图,该模型观测变量(R,WU,WV)的生成过程如下:1)对每个用户i:a)从K元正态分布N(μU,∑U)中采样一个K维向量作为用户i的特征向量ηU,i,其中,ηU,i为用户i的特征向量,μU,∑U为正态分布参数;b)对用户文档dU,i中的每个单词WU,i,t;I)从多项分布Mult(θU,i)中采样一个值作为单词WU,i,t的主题分配zU,i,t,其中,zU,i,t为单词WU,i,t的主题分配,θU,i为多项分布参数,且θU,i=π(ηU,i)=exp{ηU,i}/∑kexp{ηU,i,k};II)把采样得到的zU,i,t作为选择器,选择第zU,i,t个主题,根据多项分布采样得到单词WU,i,t,其中,WU,i,t为用户i的文档中第t个单词,为多项分布参数;2)对每个产品j:a)从K元正态分布N(μV,∑V)采样一个K维向量作为产品j的特征向量ηV,j,其中,ηV,j为产品j的特征向量,μV,∑V为正态分布参数;b)对用户文档dV,j中的每个单词WV,j,t;I)从多项分布Mult(θV,j)中采样一个值作为单词WV,j,t的主题分配zV,j,t,其中,zV,j,t为单词WV,j,t的主题分配,θV,j为多项分布参数,且θV,j=π(ηV,j)=exp{ηV,j}/∑kexp{ηV,j,k};II)把采样得到的zV,j,t作为选择器,选择第zV,j,t个主题,根据多项分布采样得到单词wV,j,t,其中,wV,j,t为产品j的文档中第t个单词,为多项分布参数;3)从正态分布中采样得到用户i对产品j的评分Ri,j,其中,该正态分布是以为均值,σ2为方差;其中,π(η)是一个映射函数,它将特征向量η映射到主题本文档来自技高网...
一种基于耦合主题模型的协同滤波方法

【技术保护点】

【技术特征摘要】
1.一种基于耦合主题模型的协同滤波方法,其特征在于,该方法包括以下步骤:步骤S1,获取用户生成内容记录,每个用户生成内容对应特定的用户和产品;步骤S2,获取用户对产品的历史评分信息,将部分历史评分信息作为训练集,剩下的作为测试集,分别构建不完全观测评分矩阵,即根据部分用户对部分产品的评分构建不完全观测评分矩阵,得到的训练集评分矩阵R作为耦合主题模型的评分输入;步骤S3,根据用户生成内容,提取用户文档dU和产品文档dV,其中,所述用户文档dU为与用户有关的用户生成内容,所述产品文档dV为与产品有关的用户生成内容,每个文档使用其包括的单词的词频来表示,并将每个文档的词袋表达向量WU和WV建模为可见单元,作为耦合主题模型的内容输入;步骤S4,结合所述步骤S2得到的训练集评分矩阵R和所述步骤S3得到的用户文档dU、产品文档dV,利用耦合主题模型学习得到用户特征向量ηU和产品特征向量ηV;步骤S5,根据步骤S4得到的用户特征向量ηU和产品特征向量ηV,利用计算用户对不同产品的评分,然后将得到的预测评分与测试集评分进行对比,衡量所述耦合主题模型的可靠性,最后针对特定用户,根据预测评分的高低得到推荐产品列表,从而进行产品推荐;其中,所述耦合主题模型观测变量(R,WU,WV)的生成过程为:1)对每个用户i:a)从K元正态分布N(μU,∑U)中采样一个K维向量作为用户i的特征向量ηU,i,其中,ηU,i为用户i的特征向量,μU,∑U为正态分布参数;b)对用户文档dU,i中的每个单词WU,i,t;I)从多项分布Mult(θU,i)中采样一个值作为单词WU,i,t的主题分配zU,i,t,其中,zU,i,t为单词WU,i,t的主题分配,θU,i为多项分布参数,且θU,i=π(ηU,i)=exp{ηU,i}/∑kexp{ηU,i,k};II)把采样得到的zU,i,t作为选择器,选择第zU,i,t个主题,根据多项分布采样得到单词WU,i,t,其中,WU,i,t为用户i的文档中第t个单词,为多项分布参数;2)对每个产品j:a)从K元正态分布N(μV,∑V)采样一个K维向量作为产品j的特征向量ηV,j,其中,ηV,j为产品j的特征向量,μV,∑V为正态分布参数;b)对用户文档dV,j中的每个单词WV,j...

【专利技术属性】
技术研发人员:王亮吴书徐松
申请(专利权)人:中国科学院自动化研究所
类型:发明
国别省市:北京,11

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

1