当前位置: 首页 > 专利查询>广州大学专利>正文

一种基于受限玻尔兹曼机的物品相似度计算方法技术

技术编号:18942893 阅读:53 留言:0更新日期:2018-09-15 11:34
本发明专利技术提供了一种基于受限玻尔兹曼机的物品相似度计算方法,包括步骤S1:收集系统中用户对物品的评分记录,建立用户‑物品评分矩阵;S2:根据计算任务设置模型的超参数,所述超参数包括物品相似度计算的角度数K和相应角度所具有特征值的个数;S3:针对每个角度构建一个受限玻尔兹曼机模型,用物品的用户评分记录向量作为模型的输入来进行受限玻尔兹曼机训练,得到各物品在各角度的特征值激活概率向量值和各角度在相似性度量中所占的权重λk;S4:根据主体物品在各角度的特征值激活概率向量值和权重λk,计算主体物品与其他物品之间的相似度。本发明专利技术提供的物品相似度计算方法从多个角度计算了物品之间的相似度,所计算的结果更准确更符合用户的需要。

A method for calculating similarity between items based on restricted Boltzmann machine

The invention provides a method for calculating item similarity based on a restricted Boltzmann machine, which comprises: (1) collecting user's score records of items in the system, and establishing a user's/item score matrix; and (2) setting the hyper-parameters of the model according to the calculation task, the hyper-parameters include the angle number K calculated by item similarity and the corresponding angle number K calculated by the item similarity. The number of eigenvalues of each angle; S3: Construct a restricted Boltzmann machine model for each angle, train the restricted Boltzmann machine with the item's user score record vector as the input of the model, get the eigenvalue activation probability vector value of each angle and the proportion of each angle in the similarity measure. Weight lambda k; S4: According to the eigenvalues of the main object at various angles to activate the probability vector value and weight lambda k, calculate the similarity between the main object and other items. The method for calculating the similarity of articles provided by the invention calculates the similarity between articles from various angles, and the calculated results are more accurate and more in line with the needs of users.

【技术实现步骤摘要】
一种基于受限玻尔兹曼机的物品相似度计算方法
本专利技术涉及的
为推荐系统,具体是关于推荐算法中一种物品相似度的计算方法。
技术介绍
现实中,每个用户对于物品都有自己的审视角度或者理解的侧重点,因此就导致站在不同的角度会将不同的物品相互关联起来,换句话说,就是物品之间的相似度存在于不同的审视角度或者理解的侧重点。举例来说,假如从性别的角度出发,电影《阿凡达》可能会和《敢死队》很相似,因为其中都具有很多打斗性的场景,因此对男性来说可能这两部电影在这个角度会更加相似一点。但是如果从整部影片的题材出发的话,电影《阿凡达》和《敢死队》就没有多大的相似性了,而《阿凡达》会和《骇客帝国》在影片的题材很相似。于是,从前面电影的例子来看,衡量物品之间的相似性可以从多个角度出发进行考虑,最后综合计算物品之间的相似度。目前,基于物品的相似度及用户行为进行推荐的协同过滤技术被广泛使用。常用的物品相似度计算有两类情况,一类是直接通过用户物品评分矩阵计算,分别有余弦相似度(cosinesimilarity)、皮尔逊系数(pearsoncorrelation)以及被Sarwar称为修正的余弦相似度(adjustcosinesimilarity)。二类是通过学习的方式来计算物品的相似度,分别有Ning等人提出的SLIM(SparseLinearMethodsforTop-NRecommenderSystems)方法,以及Christakopoulou等人提出的GLSLIM(LocalItem-ItemModelsforTop-NRecommendation)方法。2007年,Salakhutdinov等人提出将受限玻尔兹曼机应用于协同过滤推荐,这个成果证明了受限玻尔兹曼机在协同过滤上的有用性。2012年,Hinton介绍了实践中如何训练一个可用的受限玻尔兹曼机,很大程度降低了实践中训练受限玻尔兹曼机的难度。2016年Christakopoulou等人提出了针对在Top-N推荐中非常有效的SLIM算法的改进,并且实验证明了从全局用户物品评分矩阵角度出发计算物品相似度的不足,也从侧面说明了本专利技术的潜在优势。针对上述两类计算物品相似度的方法,其缺点如下:第一类计算物品相似度的方法(例如,余弦相似度、皮尔逊系数以及修正的余弦相似度)主要是依赖于用户物品-评分矩阵的重合项之间进行相似度的计算。这种计算方法有两个重要的缺点,一是对相似度的计算过于的简单,导致相似度在一定程度上不准确;二是当遇到物品的购买或评分记录比较少时,就会出现计算不正确的问题。第二类计算物品相似度的方法(例如,SLIM和GLSLIM)主要是通过学习的方式计算物品两两之间的相关性矩阵。这种计算方法的缺点是,仅从一阶的角度考虑物品之间的关系,缺乏从多个角度来对物品的相关性进行解释,并且为了计算速度的原因,这类计算相似度的方法强制物品的相似度矩阵为稀疏的,因此丢失了一部分物品之间的关系。综合已有的
技术介绍
,本专利技术提出了一种将受限玻尔兹曼机应用于物品相似度的计算方法。
技术实现思路
针对现有的技术情况,本专利技术的目的是:提供一种新的计算物品相似度的方法和思路;利用受限玻尔兹曼机的学习训练,来对物品的相似度从多个角度进行计算;通过提出的这种物品相似度的计算方法,提高基于邻域的协同过滤算法的性能。为了实现上述目的,本专利技术基于受限玻尔兹曼机,提出一种基于受限玻尔兹曼机(RestrictedBoltzmannMachine)的物品相似度计算方法,具体包括如下步骤:S1:收集系统中用户对物品的评分记录,建立用户-物品评分矩阵;S2:根据计算任务设置模型的超参数,所述超参数包括物品相似度计算的角度数K和相应角度所具有特征值的个数;S3:针对每个角度构建一个受限玻尔兹曼机模型,用物品的用户评分记录向量作为模型的输入来进行受限玻尔兹曼机训练,得到各物品在各角度的特征值激活概率向量值和各角度在相似性度量中所占的权重λk;S4:根据主体物品在各角度的特征值激活概率向量值和权重λk,计算主体物品与其他物品之间的相似度。本专利技术中,通过输入计算物品相似度的角度数K和相应计算角度所具有特征值的个数建立受限玻尔兹曼机模型,训练得到每个物品在K个角度下的特征值激活概率向量值以及每个角度在相似性度量中所占的权重λk,再通过各物品的特征值激活概率向量值和权重λk计算主体物品与其他物品之间的相似度。所计算的相似度结果全面地考虑到了各物品之间相关的多个角度,不再是单纯的一阶角度计算结果,能够更准确全面地表达用户的需要。根据本专利技术另一具体实施方式,该计算方法对受限玻尔兹曼机模型进行了参数融合。根据本专利技术另一具体实施方式,受限玻尔兹曼机的融合有两层学习过程:K个角度所代表的受限玻尔兹曼机的并行训练学习和加权参数λk学习。根据本专利技术另一具体实施方式,受限玻尔兹曼机可见层中的可见单元代表物品的用户评分向量。根据本专利技术另一具体实施方式,一个受限玻尔兹曼机模型代表一个计算物品相似度的角度,其中的隐含层通过设置不同的单元数来区分不同的角度。根据本专利技术另一具体实施方式,基于受限玻尔兹曼机的物品相似度计算方法,根据用户i对物品的评分记录xi∈{0,1},其中0代表未评分,1代表已经评分来建立模型。根据本专利技术另一具体实施方式,受限玻尔兹曼机融合模型中,隐含层中使用sigmoid函数作为网络的激活函数,sigmoid函数的形式如下:根据本专利技术另一具体实施方式,sigmoid函数为非线性函数。根据本专利技术另一具体实施方式,物品i和物品j之间的相似度计算公式为:其中,KL(Fk(i)||Fk(j))表示物品i物品j第k个角度上特征值激活概率分布的KL散度值。根据本专利技术另一具体实施方式,基于受限玻尔兹曼机的物品相似度计算公式中的KL散度值具有不对称性,因此S(i,j)≠S(j,i)。与现有技术相比,本专利技术具备如下有益效果:1、从多个角度考虑了物品之间的相似性。本专利技术利用受限玻尔兹曼机的强大学习能力,通过设置不同的隐含层单元数,来学习不同角度的特征。然后根据KL计算分布的相似性,来对不同角度特征的特征值分布进行相似性计算。通过这样的方式,相比于传统的相似度计算方法,实现了多角度计算物品之间的相似度。2、给出了物品不同层面的抽象表示。在本专利技术中,通过设置不同的隐含层的单元数,可以学习到物品在不同的特征类型空间的位置向量,因此也就给出了物品在不同的特征空间的投影。所以,利用这种方法,就可以将物品表示在不同维度的空间,给出物品不同层面的抽象。3、考虑了物品之间相似度的非线性关系。利用受限玻尔兹曼机进行物品之间依赖关系的学习,相比于传统的相似度计算方法,本模型最终计算出的物品相似度是非线性的关系,此非线性关系更接近实际情况,因此计算出来的结果会更准确。下面结合附图对本专利技术作进一步的详细说明。附图说明图1是实施例1中受限玻尔兹曼机的模型结构;图2是实施例1中从三个角度计算物品相似度示意图;图3是实施例1中三个角度的特征值激活概率向量图;图4是实施例1中K个角度的特征值激活概率向量图;图5是实施例1中基于受限玻尔兹曼机的物品相似度计算过程流程图具体实施方式实施例1本实施例提供了一种基于受限玻尔兹曼机对物品进行多个角度计算的相似度计算方法。受限玻尔兹曼机是本文档来自技高网
...

【技术保护点】
1.一种基于受限玻尔兹曼机的物品相似度计算方法,其特征在于,具体包括如下步骤:S1:收集系统中用户对物品的评分记录,建立用户-物品评分矩阵;S2:根据计算任务设置模型的超参数,所述超参数包括物品相似度计算的角度数K和相应角度所具有特征值的个数;S3:针对每个角度构建一个受限玻尔兹曼机模型,用物品的用户评分记录向量作为模型的输入来进行受限玻尔兹曼机训练,得到各物品在各角度的特征值激活概率向量值和各角度在相似性度量中所占的权重λk;S4:根据主体物品在各角度的特征值激活概率向量值和权重λk,计算主体物品与其他物品之间的相似度。

【技术特征摘要】
1.一种基于受限玻尔兹曼机的物品相似度计算方法,其特征在于,具体包括如下步骤:S1:收集系统中用户对物品的评分记录,建立用户-物品评分矩阵;S2:根据计算任务设置模型的超参数,所述超参数包括物品相似度计算的角度数K和相应角度所具有特征值的个数;S3:针对每个角度构建一个受限玻尔兹曼机模型,用物品的用户评分记录向量作为模型的输入来进行受限玻尔兹曼机训练,得到各物品在各角度的特征值激活概率向量值和各角度在相似性度量中所占的权重λk;S4:根据主体物品在各角度的特征值激活概率向量值和权重λk,计算主体物品与其他物品之间的相似度。2.根据权利要求1所述的物品相似度计算方法,其特征在于,所述方法对受限玻尔兹曼机模型进行了参数化融合。3.根据权利要求2所述的受限玻尔兹曼机融合模型,其特征在于,所述受限玻尔兹曼机的融合有两层学习过程:K个角度所代表的受限玻尔兹曼机的并行训练学习和加权参数λk学习。4.根据权利要求3所述的受限玻尔兹曼机融合模型,其特征在于,所述受限玻尔兹曼机可见层中的可见单元代...

【专利技术属性】
技术研发人员:王国军龙益农刘湘勇邢萧飞
申请(专利权)人:广州大学
类型:发明
国别省市:广东,44

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

1