CN108108399B - 一种混合高斯建模改进的协同过滤推荐方法 - Google Patents
一种混合高斯建模改进的协同过滤推荐方法 Download PDFInfo
- Publication number
- CN108108399B CN108108399B CN201711267674.8A CN201711267674A CN108108399B CN 108108399 B CN108108399 B CN 108108399B CN 201711267674 A CN201711267674 A CN 201711267674A CN 108108399 B CN108108399 B CN 108108399B
- Authority
- CN
- China
- Prior art keywords
- user
- users
- item
- score
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Other Investigation Or Analysis Of Materials By Electrical Means (AREA)
Abstract
本发明公开了一种混合高斯建模改进的协同过滤推荐方法,包括步骤:1)对用户‑物品评分矩阵的各个物品的评分分布建立混合高斯模型;2)利用EM算法计算出每个物品评分分布的混合高斯模型参数;3)根据每个物品评分的混合高斯模型计算每个用户的惊异度向量;4)根据用户的惊异度向量计算用户之间的相似度;5)根据用户之间的相似度进行协同过滤推荐。本发明通过对物品评分分布进行混合高斯建模,计算出所有用户的惊异度向量,在此基础上计算用户的相似度,最后进行协同过滤推荐,缓解数据的稀疏性问题,有效的提高推荐效果。
Description
技术领域
本发明涉及数据挖掘的协同过滤推荐的技术领域,尤其是指一种混合高斯建模改进的协同过滤推荐方法。
背景技术
随着信息技术和互联网的发展,人们逐渐从信息匮乏时代走入了信息过载的时代,信息生产者希望自己生产的内容能够在海量的信息中脱颖而出,信息消费者希望从浩瀚的信息海洋中寻找到自己感兴趣的内容。当用户的信息需求十分明确时,分类目录和搜索引擎提供了一种迅速寻找到用户所需要信息的方式,但是分类目录往往只能够覆盖少量的类别信息且相比于用户具体的需求来说较为抽象,而搜索引擎虽然能够针对用户的搜索关键字返回相关的结果,但是要求用户能够用关键词来准确的描述自己所希望寻找的信息,否则搜索引擎所返回的信息也不是用户所希望获取的。推荐系统在信息过载以及用户需求不明确的情况下,通过分析用户的历史行为对用户的兴趣建模,从而主动给用户推荐能够满足他们兴趣的信息,从信息的角度来说,推荐系统能够更好的发掘信息的长尾,从而帮助非热门的信息提供给感兴趣的用户。
协同过滤推荐算法是目前使用最广泛且发展成熟的个性化推荐算法。对协同过滤算法来说,核心在于计算用户之间的相似度。一般的用户相似度是找到两个用户评过分的公共物品,计算这些物品对应评分向量的余弦相似度。这种用户相似度的计算方法没有挖掘出用户之间更深入的相似信息,不能够取得比较好的推荐效果。根据信息检索领域的经典模型TF-IDF(词频-倒排文档频率)的思想,对于一个物品的评分越是远离主流的评分范围,说明该评分越能够提供更多关于该用户的信息,反之,越是在主流评分范围内说明该评分越是不具有好的区分能力和代表性,因此对评分进行建模并对用户评分所包含的信息量进行刻画是一种改善用户相似度度量效果的途径。
本发明提供的一种混合高斯建模改进的协同过滤推荐方法,对物品的评分分布进行混合高斯建模,得到用户的惊异度向量,在此基础上计算用户的相似度,然后进行协同过滤推荐。它发掘出评分中更具代表性和区分性的信息,缓解了协同过滤的稀疏性问题,提高了推荐效果。
发明内容
本发明的目的在于克服现有技术的缺点与不足,提出了一种混合高斯建模改进的协同过滤推荐方法,改善用户之间的相似度度量准确性,缓解了传统协同过滤的数据稀疏性问题,通过混合高斯模型挖掘出用户评分中具有代表性和区分性的信息,获得更好的推荐效果。
为实现上述目的,本发明所提供的技术方案为:一种混合高斯建模改进的协同过滤推荐方法,包括以下步骤:
1)对用户-物品评分矩阵的各个物品的评分分布建立混合高斯模型;
2)利用EM算法即期望最大化算法估算每个物品评分分布的混合高斯模型参数;
3)根据每个物品评分的混合高斯模型计算每个用户的惊异度向量;
4)根据用户的惊异度向量计算用户之间的相似度;
5)根据用户之间的相似度进行协同过滤推荐。
在步骤1)中,所述用户-物品评分矩阵是指M个用户对N个物品进行评分后得到的矩阵TM×N,如下式所示:
式中,ri,j表示第i个用户对第j个物品的评分值,i=1,2,...,M,j=1,2,...,N;所述的对物品的评分分布建立混合高斯模型,是指对矩阵TM×N中第j个物品的评分分布通过混合高斯模型进行刻画,即第i个用户对第j个物品的评分值ri,j在矩阵TM×N中第j列评分中出现的概率f(ri,j)表示为下式:
式中aj,1,aj,2表示高斯混合参数,满足如下关系:
aj,1+aj,2=1,0≤aj,1,aj,2≤1
式中μj,k表示用于描述第j个物品评分分布的第k个高斯分布的均值,k=1,2;式中σj,k表示用于描述第j个物品评分分布的第k个高斯分布的标准差;
在步骤2)中,利用EM算法估算每个物品评分分布的混合高斯模型的参数aj,k,μj,k,σj,k,k=1,2,包括以下步骤:
2.4)计算参数aj,k,μj,k,σj,k更新前后变化量的绝对值大小,分别记为Δaj,k,Δμj,k,Δσj,k,计算方式如下:
2.5)根据参数值更新量绝对值的大小Δaj,k,Δμj,k,Δσj,k判断是否继续进行参数的迭代计算,如果max(Δaj,k,Δμj,k,Δσj,k)≤0.0001,式中max()表示取最大值运算,则停止参数迭代计算,输出本轮迭代计算得到的参数值,即作为最终对混合高斯模型参数的估计值,分别记为否则继续计算步骤2.2)-2.5);
在步骤3)中,所述用户的惊异度向量是指第i个用户所对应的长度为N的向量Si,计算方式如下:
Si=(si,1,si,2,…,si,N)
在步骤4)中,所述的用户的相似度是指任意两个用户p和q对应的惊异度向量Sp,Sq之间的相似度,记为wp,q,计算如下:
式中sp,j表示第p个用户的惊异度向量中第j个元素,sq,j表示第q个用户的惊异度向量中第j个元素,rp,j表示第p个用户对第j个物品的评分值,rq,j表示第q个用户对第j个物品的评分值。
在步骤5)中,假设用户之间的兴趣偏好具有相似度,在估计一个用户对于一个物品的评分时,从所有对于该物品进行过评分的用户中,寻找出与该用户最相似的K个其他用户,记这K个用户的下标i,(i∈{1,2,...,M})构成的集合为UK,然后根据这K个相似用户对该物品的评分以及跟该用户的相似度来估计该用户
式中,i表示属于集合UK中的第i,(i∈{1,2,...,M})个用户,wd,i表示第d个用户和第i个用户之间的相似度,ri,g表示第i个用户对于第g个物品的评分值。
本发明与现有技术相比,具有如下优点与有益效果:
1、本发明首次对物品的用户评分进行混合高斯建模,发掘出用户评分中具有区分度的信息,丰富了用户评分所传递的信息。
2、本发明首次将混合高斯模型下的用户评分值转换为用户的惊异度向量,并作为衡量用户之间相似度的基础,改善了用户相似性度量的准确性问题。
3、本发明通过将基于惊异度向量上的用户相似度信息融入基于用户的协同过滤推荐算法中,缓解了协同过滤的稀疏性问题,提高了协同过滤的推荐效果。
4、本发明通过将混合高斯模型下的用户评分转换为惊异度向量,并建立用户之间的相似度度量方式,能够与传统的用户相似度度量方式相结合,且用户评分的建模模型可以更换,可扩展性和灵活性强。
5、本发明方法在有较多用户评分数据的推荐系统中具有广泛的使用空间,只需要周期性的计算每个物品对应的混合高斯模型的参数,运算简单、可扩展性强,能得到更好的推荐效果。
附图说明
图1是本发明方法计算的基本流程图。
图2是本发明中对物品评分进行混合高斯建模的示意图。横轴表示某一物品的评分值,纵轴表示该物品评分值出现的概率值,实线表示建模后实际的混合高斯模型对应的概率密度曲线,虚线表示用于构建混合高斯模型的两个基本高斯分布,其中μj,k表示第k(k=1,2)个基本高斯分布的均值参数。
具体实施方式
下面结合具体实施例对本发明作进一步说明。
如图1所示,本实施例所提供的混合高斯建模改进的协同过滤推荐方法,是通过对物品的评分分布进行混合高斯建模,在此基础上计算得到所有用户的惊异度向量,通过用户之间的惊异度向量计算用户之间的相似度,然后进行协同过滤推荐,其包含以下步骤:
1)获取M个用户对N个物品的评分数据,构建成如下形式的用户-物品评分矩阵TM×N。
其中,ri,j表示第i(i=1,2,...,M)个用户对第j(j=1,2,...,N)个物品的评分值。
2)对所有物品的评分建立混合高斯模型,即:对于矩阵TM×N中第j(j=1,2,...,N)个物品的评分分布(即第j列的所有评分值)通过混合高斯模型进行刻画。混合高斯建模过程示意图如图2所示,建模之后,第i(i=1,2,...,M)个用户对第j个物品的评分值ri,j在矩阵TM×N中第j列评分中出现的概率f(ri,j)可以表示为:
式中aj,1,aj,2表示高斯混合参数,满足如下关系:
aj,1+aj,2=1,0≤aj,1,aj,2≤1
式中μj,k表示用于描述第j(j=1,2,...,N)个物品评分分布的第k(k=1,2)个高斯分布的均值;式中σj,k表示用于描述第j(j=1,2,...,N)个物品评分分布的第k(k=1,2)个高斯分布的标准差;
式中的参数aj,k,μj,k,σj,k,(k=1,2)称为混合高斯模型的参数,需要通过EM算法估算出这些参数的值才能计算f(ri,j)。
3)通过利用EM算法估算每个物品评分分布的混合高斯模型的参数aj,k,μj,k,σj,k,(k=1,2;j=1,2,...,N),包括以下步骤:
3.4)计算参数aj,k,μj,k,σj,k更新前后变化量的绝对值大小,分别记为Δaj,k,Δμj,k,Δσj,k,计算方式如下:
3.5)根据参数变化量绝对值的大小Δaj,k,Δμj,k,Δσj,k判断是否继续进行参数的迭代更新计算。如果max(Δaj,k,Δμj,k,Δσj,k)≤0.0001(式中max()表示取最大值运算),则停止参数迭代计算,输出本轮迭代计算得到的参数值,即作为最终对混合高斯模型参数的估计值,分别记为否则继续计算步骤3.2)-3.5),直到满足停止迭代更新计算的条件为止。
再计算出f(ri,j),i=1,2,...,M,j=1,2,...,N后,在此基础上为所有用户构建各自的惊异度向量Si,(i=1,2,...,M),惊异度向量计算方式如下:
Si=(si,1,si,2,…,si,N),i=1,2,...,M
I(ri,j)=-ln(f(ri,j))
对M个用户的惊异度向量计算完成后,得到如下形式的矩阵:
其中第i(i=1,2,...,M)行代表第i个用户的惊异度向量Si。
5)在获得所有用户的惊异度向量之后,任意两个用户p和q之间的相似度便可以通过对应的惊异度向量Sp,Sq来度量,记它们之间的相似度为wp,q,计算方式如下:
式中,sp,j表示第p个用户的惊异度向量中第j个元素,sq,j表示第q个用户的惊异度向量中第j个元素,rp,j表示第p个用户对第j个物品的评分值,rq,j表示第q个用户对第j个物品的评分值。列下标的范围{j|rp,j,rq,j≠0}是为了保证用户p和用户q对于第j个物品的评分均为有效的评分(0分为无效的评分)。
6)在建立了用户之间的相似度度量方式之后,根据协同过滤推荐算法便可以估计用户对于物品的评分值。假设选择最相似用户的个数为K,需要估计第d个用户(记为用户d)对于第g个物品(记为物品g)的评分值,计算步骤如下:
6.1)找出物品g中除用户d外所有给g评过分(即评分不为0)的用户,记这些用户的下标构成的集合为Uall;
6.2)计算用户d与集合Uall中各个用户的相似度wd,i,(i∈Uall)
6.3)根据相似度wd,i,(i∈Uall)找出K个最大的wd,i值所对应的用户,记这些用户的下标i,(i∈{1,2,...,M})构成的集合为UK;
式中i表示属于集合UK中的第i,(i∈{1,2,...,M})个用户,wd,i表示第d个用户和第i个用户之间的相似度,ri,g表示第i个用户对于第g个物品的评分值。
综上所述,在采用以上方案后,本发明为协同过滤推荐算法提供了新的评分建模方法,对物品的评分分布进行混合高斯建模,将建模之后的信息量化为惊异度向量,在用户惊异度向量的基础上对用户之间的相似度进行度量,能够有效地发掘出用户评分中具有代表性和区分度的信息,改善用户之间的相似度度量准确性,缓解数据稀疏性问题,具有实际推广价值,值得推广。
以上所述实施例只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。
Claims (3)
1.一种混合高斯建模改进的协同过滤推荐方法,其特征在于,包括以下步骤:
1)对用户-物品评分矩阵的各个物品的评分分布建立混合高斯模型;其中,所述用户-物品评分矩阵是指M个用户对N个物品进行评分后得到的矩阵TM×N,如下式所示:
式中,ri,j表示第i个用户对第j个物品的评分值,i=1,2,...,M,j=1,2,...,N;所述的对物品的评分分布建立混合高斯模型,是指对矩阵TM×N中第j个物品的评分分布通过混合高斯模型进行刻画,即第i个用户对第j个物品的评分值ri,j在矩阵TM×N中第j列评分中出现的概率f(ri,j)表示为下式:
式中aj,1,aj,2表示高斯混合参数,满足如下关系:
aj,1+aj,2=1,0≤aj,1,aj,2≤1
式中μj,k表示用于描述第j个物品评分分布的第k个高斯分布的均值,k=1,2;式中σj,k表示用于描述第j个物品评分分布的第k个高斯分布的标准差;
2)利用EM算法即期望最大化算法估算每个物品评分分布的混合高斯模型的参数aj,k,μj,k,σj,k,k=1,2,包括以下步骤:
2.4)计算参数aj,k,μj,k,σj,k更新前后变化量的绝对值大小,分别记为Δaj,k,Δμj,k,Δσj,k,计算方式如下:
2.5)根据参数值更新量绝对值的大小Δaj,k,Δμj,k,Δσj,k判断是否继续进行参数的迭代计算,如果max(Δaj,k,Δμj,k,Δσj,k)≤0.0001,式中max()表示取最大值运算,则停止参数迭代计算,输出本轮迭代计算得到的参数值,即作为最终对混合高斯模型参数的估计值,分别记为否则继续计算步骤2.2)-2.5);
3)根据每个物品评分的混合高斯模型计算每个用户的惊异度向量;其中,所述用户的惊异度向量是指第i个用户所对应的长度为N的向量Si,计算方式如下:
Si=(si,1,si,2,…,si,N)
4)根据用户的惊异度向量计算用户之间的相似度;
5)根据用户之间的相似度进行协同过滤推荐。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711267674.8A CN108108399B (zh) | 2017-12-05 | 2017-12-05 | 一种混合高斯建模改进的协同过滤推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711267674.8A CN108108399B (zh) | 2017-12-05 | 2017-12-05 | 一种混合高斯建模改进的协同过滤推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108108399A CN108108399A (zh) | 2018-06-01 |
CN108108399B true CN108108399B (zh) | 2020-07-28 |
Family
ID=62208947
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711267674.8A Active CN108108399B (zh) | 2017-12-05 | 2017-12-05 | 一种混合高斯建模改进的协同过滤推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108108399B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110717100B (zh) * | 2019-09-30 | 2021-09-28 | 杭州电子科技大学 | 基于高斯嵌入表示技术的上下文感知推荐方法 |
CN113158074A (zh) * | 2021-03-26 | 2021-07-23 | 广东工业大学 | 一种基于多交互维度的简历岗位匹配方法、系统和设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010130460A (ja) * | 2008-11-28 | 2010-06-10 | Renesas Electronics Corp | フィルタ係数計算方法及びフィルタ係数計算装置 |
US9336315B2 (en) * | 2010-01-19 | 2016-05-10 | Ebay Inc. | Personalized recommendation of a volatile item |
CN102609523B (zh) * | 2012-02-10 | 2018-03-06 | 上海视畅信息科技有限公司 | 基于物品分类和用户分类的协同过滤推荐方法 |
CN103970873B (zh) * | 2014-05-14 | 2018-02-13 | 中国联合网络通信集团有限公司 | 一种音乐推荐方法和系统 |
CN104636496A (zh) * | 2015-03-04 | 2015-05-20 | 重庆理工大学 | 基于高斯分布和距离相似度的混合聚类的推荐方法 |
CN106600557B (zh) * | 2016-12-19 | 2019-09-17 | 辽宁工程技术大学 | 基于混合高斯模型与稀疏约束的psf估计方法 |
-
2017
- 2017-12-05 CN CN201711267674.8A patent/CN108108399B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108108399A (zh) | 2018-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107506480B (zh) | 一种基于评论挖掘与密度聚类的双层图结构推荐方法 | |
CN105005589B (zh) | 一种文本分类的方法和装置 | |
CN107833117B (zh) | 一种考虑标签信息的贝叶斯个性化排序推荐方法 | |
CN108334592B (zh) | 一种基于内容与协同过滤相结合的个性化推荐方法 | |
CN109299380B (zh) | 在线教育平台中基于多维特征的习题个性化推荐方法 | |
CN104935963B (zh) | 一种基于时序数据挖掘的视频推荐方法 | |
CN108563690B (zh) | 一种基于面向对象聚类的协同过滤推荐方法 | |
Lin et al. | Heterogeneous knowledge-based attentive neural networks for short-term music recommendations | |
CN105678590B (zh) | 一种面向社交网络基于云模型的topN推荐方法 | |
CN110705612A (zh) | 一种混合多特征的句子相似度计算方法、存储介质及系统 | |
CN106886601A (zh) | 一种基于子空间混合超图学习的交叉模态检索算法 | |
CN111222847B (zh) | 基于深度学习与非监督聚类的开源社区开发者推荐方法 | |
CN111782833B (zh) | 基于多模型网络的细粒度跨媒体检索方法 | |
CN107885778A (zh) | 一种基于动态临近点谱聚类的个性化推荐方法 | |
CN108509517B (zh) | 一种面向实时新闻内容的流式话题演化跟踪方法 | |
CN108804577B (zh) | 一种资讯标签兴趣度的预估方法 | |
CN103488713A (zh) | 一种可直接度量不同模态数据间相似性的跨模态检索方法 | |
CN106844620B (zh) | 一种基于视图的特征匹配三维模型检索方法 | |
CN109816015B (zh) | 一种基于材料数据的推荐方法及系统 | |
CN110083764A (zh) | 一种协同过滤算法冷启动问题的解决方法 | |
CN116541607B (zh) | 基于商品检索数据分析的智能推荐方法 | |
CN104615722B (zh) | 基于密度搜索与快速划分的混合数据聚类方法 | |
CN108108399B (zh) | 一种混合高斯建模改进的协同过滤推荐方法 | |
CN111681084A (zh) | 一种基于社交关系影响因素的电商平台推荐方法 | |
CN114741603A (zh) | 基于用户聚类和商品聚类的混合协同过滤推荐算法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |