CN108334592B - 一种基于内容与协同过滤相结合的个性化推荐方法 - Google Patents

一种基于内容与协同过滤相结合的个性化推荐方法 Download PDF

Info

Publication number
CN108334592B
CN108334592B CN201810088955.5A CN201810088955A CN108334592B CN 108334592 B CN108334592 B CN 108334592B CN 201810088955 A CN201810088955 A CN 201810088955A CN 108334592 B CN108334592 B CN 108334592B
Authority
CN
China
Prior art keywords
user
new
matrix
article
virtual
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
Application number
CN201810088955.5A
Other languages
English (en)
Other versions
CN108334592A (zh
Inventor
施沈池
蒋琳
王玉峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing University of Posts and Telecommunications
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing University of Posts and Telecommunications filed Critical Nanjing University of Posts and Telecommunications
Priority to CN201810088955.5A priority Critical patent/CN108334592B/zh
Publication of CN108334592A publication Critical patent/CN108334592A/zh
Application granted granted Critical
Publication of CN108334592B publication Critical patent/CN108334592B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于内容与协同过滤相结合的个性化推荐方法,分为训练和个性化推荐两个阶段:训练阶段通过采集数据信息形成已有用户‑新物品预推荐矩阵,个性化推荐阶段完成对新用户的物品推荐及用户产生评分后的进一步推荐。本发明相比于传统的个性化推荐方法能够解决冷启动问题,对新加入的物品进行预测,推荐给用户,在预推荐之后使用协同过滤推荐,提高了推荐物品的多样性和准确度。并且,通过聚类算法生成虚拟用户大大降低了矩阵维数,同时降低了计算的复杂度。

Description

一种基于内容与协同过滤相结合的个性化推荐方法
技术领域
本发明涉及大数据的个性化推荐技术领域,尤其涉及一种基于内容和协同过滤相结合的个性化推荐方法。
背景技术
信息时代,信息也成为了一种资源。信息时代的迅猛发展加快了整个世界的进步,加快了人们生活的节奏,时间利用的有效性成为了关键。而与此相违背的爆炸性的数据量又是一个亟待解决的问题。在此背景下,推荐系统的产生和发展的合理性也就众所周知。为用户在较短时间内选择到针对他的喜好物品是推荐系统的目标。
已有的基于内容和协同过滤的推荐算法都存在着各自的缺陷,特别是协同过滤的冷启动问题以及基于内容的推荐单一性问题都不能使这两种推荐系统达到预想的推荐效果。
发明内容
本发明所要解决的技术问题是针对背景技术中所涉及到的缺陷,提供一种基于内容和协同过滤相结合的个性化推荐方法,使用基于内容的方式解决冷启动问题,又用协同过滤来提高推荐的精确度和推荐物品的多样性,从而改善了系统推荐的效果。
本发明为解决上述技术问题采用以下技术方案:
一种基于内容和协同过滤相结合的个性化推荐方法。具体的技术方案,包括训练和个性化推荐两个阶段:
步骤1:训练:
步骤1-1:平台采集已有用户的用户数据,所述用户数据包括用户的个人信息及其历史行为特征、以及用户对物品的评分数据,形成用户评分矩阵Rm×n,其中,m表示已有用户的数量,n表示平台中已有物品的数量;
步骤1-2:根据采集的用户数据对用户进行聚类,使用聚类算法将用户划分为M个聚类,并设定和所述M个聚类一一对应的M个虚拟用户;
步骤1-3:在每个聚类中,根据用户的历史行为特征分析已有用户对已有物品特征属性的喜好程度,喜欢以1表示、不喜欢以-1表示、不关心以0表示,形成已有用户-物品特征属性矩阵DC×K,并针对每一个特征属性取所有用户喜好程度的平均值以此作为该聚类的虚拟用户对该特征属性的喜好程度,形成虚拟用户-物品特征属性矩阵PM×K,其中,C为一个聚类中已有用户的个数,K为已有物品的所有特征属性的数量;
步骤1-4:根据提取的已有物品的所有特征属性,对每个新物品进行判断,新物品具备的特征属性以1表示,新物品不具备的特征属性以0表示,得到新物品-物品特征属性矩阵 QN×K,其中,N为新物品的数量;
步骤1-5:将矩阵PM×K与矩阵QN×K的转置做内积运算,得到虚拟用户-新物品预推荐矩阵FM×N,矩阵中每一元素即代表虚拟用户对于相应新物品的预评分;
步骤1-6:筛选出矩阵FM×N每列向量的最高预评分对应的虚拟用户,对以这些虚拟用户为代表的用户进行预推荐;
步骤1-7:根据用户对新物品的反馈,采集评分,更新用户评分矩阵Rm×n
步骤1-8:将更新的用户评分矩阵Rm×n进行矩阵分解,获得用户评分矩阵Rm×n中物品未得到的用户评分;
步骤2:个性化推荐:
步骤2-1:采集新用户个人信息,进行数据预处理;
步骤2-2:将采集的新用户数据量化,由相似性公式分别计算新用户与M个聚类的相似性,选取相似度最高的聚类为新用户的所属聚类,且新用户能够用其所属聚类对应的虚拟用户表示;
步骤2-3:根据新用户所属聚类对应的虚拟用户及虚拟用户-新物品预推荐矩阵FM×N,向新用户进行新物品推荐;
步骤2-4:新用户在得到物品推荐、产生历史行为特征、更新用户评分矩阵后,通过对用户评分矩阵Rm×n进行矩阵分解以预测用户对其未评分物品的评价,通过预测的评分高低将高评分的物品推荐给用户,使用户获得更多物品推荐。
进一步,步骤1-1中个人信息指的是能够用于用户相似性聚类的用户信息,一般为性别,年龄,职业等,用户行为特征一般是对某件物品浏览的次数,驻留时间,加入关注,购买等行为。然后将抽取的特征并量化,比如用户信息可以量化为向量 U=[gender,age1…age10,profession1,profession2…,professionn],若性别为男, gender为1,反之为0;若0<age<=10,age1=1,反之为0;若10<age<=20,age2=1,反之为 0;若age>90,age10=1,反之为0;用户属于某个职业professioni,professioni=1,反之为0;得到向量U后可直接用于计算用户相似性或者用户相似性聚类.比如考虑用户浏览物品的驻留时间和频率,用户行为特征可以量化为,B1=[freq1,freq2,…,freqn],freqj=(用户浏览物品j的次数)/(用户对所有商品浏览的总次数);B2=[t1,t2,…,tn],tj=(在一次会话中浏览物品j的时间)/(在一次会话中浏览物品的总时间);B=B1+B2,B[j]的值越大,代表用户越喜欢该物品j,向量可直接用于计算用户相似性或者用户相似性聚类;比如用户评价信息可以这样量化:5星评价对应1-5分,形成用户评分矩阵Rm×n
Figure BDA0001563147380000031
m表示用户的数量,n表示物品的数量,rij表示用户i对物品j的评价。R[i]代表用户i对所有商品的评价(评价矩阵的第i行)。
进一步,步骤1-2中根据用户的个人信息,行为特征,对用户相似性聚类,其中,提取用户自身的个人信息,通常为性别,年龄,职业等,并量化为用户特征属性向量U= [u1,u2,…,ul],l为用户属性维度;提取用户的行为特征,通常为浏览物品,购买物品等行为,并量化为用户行为特征向量B=[b1,b2,…,bs],s为用户行为特征维度;提取用户i对物品的评价向量R[i]=[ri1,ri2,…,rin],n为物品数量;一般主要以U,B,R[i]向量作为用户相似性度量进行聚类。若用户Usera的特征属性向量分别为Ua,Ba,R[a],用户Userb的特征属性向量分别为Ub,Bb,R[b],用户Usera,Userb之间的相似性Sim(Usera,Userb)=αSim(Ua,Ub)+ βSim(Ba,Bb)+γSim(R[a],R[b]),其中,α+β+γ=1,相似性度量Sim()值的获取可采用余弦相似性度量、调整余弦相似性度量、Peason相关系数度量三种度量方法中的一种;由用户相似性度量Sim(Usera,Userb)作为相似距离,根据聚类算法将用户聚类,得到M个用户聚类U1,U2,…,UM,聚类算法可以采用KMeans.Sim(Usera,Userb)的计算方法影响聚类结果,继而影响基于用户聚类的预测模型对未评价物品的预测精度,训练阶段调节α,β,γ使得预测误差最小。
进一步,步骤1-3中在每个聚类中,根据用户的历史行为特征分析已有用户对已有物品属性的喜好程度,喜欢以1表示、不喜欢以-1表示、不关心以0表示。比如物品为电影,对于提取出的特征属性如电影演员、导演、上映时间、电影风格等进行喜好考察;若该用户喜欢actor1,则actor1=1;若该用户不关心actor1,则actor1=0;若该用户讨厌actor1,则actor1=-1。形成已有用户-物品特征属性矩阵DC×K
Figure BDA0001563147380000032
K表示特征属性的数量,C表示一个聚类中已有用户的个数,dck表示已有用户c对k这个特征属性的喜好程度。D[c]代表已有用户c对所有属性的喜好程度(已有用户-物品特征属性矩阵的第c行)。
针对每一个属性取所有用户喜好程度的平均值pvk以此作为该聚类的虚拟用户v对该属性 k的喜好程度,形成虚拟用户-物品特征属性矩阵PM×K
Figure BDA0001563147380000041
其中
Figure BDA0001563147380000042
K表示特征属性的数量,M表示虚拟用户的数量, pvk表示虚拟用户v是否喜欢k这个特征属性。P[v]代表虚拟用户v对所有属性的喜好程度 (虚拟用户-物品特征属性矩阵的第v行)。
进一步,步骤1-4中根据提取的已有物品的所有特征属性,对每个新物品进行判断,新物品具备的特征属性以1表示,新物品不具备的特征属性以0表示。比如物品为电影,则通常提取电影演员、导演、上映时间、电影风格等K个特征属性,考察N个电影的特征属性,若该电影有actor1出演,则actor1=1,反之为0;若该电影由director1导演,则director1=1,反之为0,形成新物品-物品特征属性矩阵QN×K
Figure BDA0001563147380000043
K表示特征属性的数量,N表示新物品的数量,qgk表示新物品g是否具备k这个特征属性。Q[g]代表新物品g具备的所有属性(新物品-物品特征属性矩阵的第g行)。
进一步,步骤1-5中将矩阵PM×K与矩阵QN×K的转置做内积运算,得到虚拟用户-新物品预推荐矩阵FM×N:
Figure BDA0001563147380000051
M表示虚拟用户的数量,N表示新物品的数量,fvg表示虚拟用户v对新物品g的喜好程度。F[v]代表虚拟用户v对所有新物品的喜好程度(虚拟用户-新物品预推荐矩阵的第v行)。
进一步,步骤1-6中筛选出矩阵FM×N每列向量的最高预评分对应的虚拟用户,对以这些虚拟用户为代表的用户进行预推荐;
进一步,步骤1-7中用户在得到新物品推荐后,对新物品产生了评分,由此更新用户评分矩阵Rm×n
进一步,步骤1-8中对更新后的用户评分矩阵Rm×n进行矩阵分解,常用奇异值分解(SVD) 的方法:
Figure BDA0001563147380000052
其中
Figure BDA0001563147380000053
代表预测评级,μ代表所有物品的平均评分,bi和bj分别代表用户和物品在平均水平上的个性化偏差,qj T代表物品向量,R(i)表示用户i评过分的商品集合,N(i)表示用户i浏览过但没有评过分的商品集合,xk和yk分别是用户评过分的商品属性和用户浏览尚未评分的商品属性;
这里为了防止模型的过度拟合,为参数加上正则化惩罚:
Figure BDA0001563147380000054
其中SSE=∑i,jeij 2,
Figure BDA0001563147380000055
λ代表正则化系数。
进一步,步骤2-1中提取的新用户数据需要量化,量化方法可以与步骤1-2相同,可以得到用户自身的特征属性向量U=[u1,u2,…,ul]。
进一步,步骤2-2中判断用户所属聚类,即能够被某一虚拟用户代表的方法进一步说明如下,有M个聚类核心(U1,U2,…,UM),计算用户U与每一个聚类核心的相似度Sim(U,Uv), v=1,2,3…M;有Max(Sim(U,Uv)),则用户U属于第v个聚类,可由第v个虚拟用户代表。
进一步,步骤2-3中根据新用户所属聚类以及虚拟用户-新物品预推荐矩阵将新物品推荐给新用户。
进一步,步骤2-4中新物品被推荐给新用户后,新用户产生了历史行为特征,用户评分 矩阵更新后,以此为基础进行矩阵分解,推荐更多的物品给新用户。
本发明采用以上技术方案与现有技术相比,具有以下技术效果:
本发明采用基于内容与协同过滤相结合的方法,有效解决了协同过滤方法带来的冷启动问题,对于新加入的物品进行预推荐,可以得到用户对于新物品的评分,由此更新用户评分矩阵,与此同时,结合协同过滤,采用奇异值分解(SVD)的方法,弥补所缺省的用户对物品的评价,丰富了推荐物品的种类,也提高了推荐的精确度。其中,通过聚类算法生成虚拟用户大大降低了矩阵维数,同时降低了计算的复杂度。本发明对于新加入的物品来说,拥有更大的被推荐的可能性,这也符合大众对于新事物的关注需求。
附图说明
图1是本发明的流程示意图。
具体实施方式
下面结合附图对本发明的技术方案做进一步的详细说明:
如图1所示,一种基于内容和协同过滤相结合的个性化推荐方法。该方法分为训练和个性化推荐两个阶段。
训练阶段,包含数据采集及预处理、已有用户的相似度聚类、得到虚拟用户-特征属性矩阵、新物品-特征属性矩阵、虚拟用户-新物品预推荐矩阵、新物品预推荐、新物品评分采集、矩阵分解八个子步骤。
在数据采集及预处理部分,平台采集用户个人信息,个人信息通常为性别,年龄,职业等。用户行为特征,通常为浏览物品,购买物品等行为,以及用户对物品的评价形成评价矩阵Rm×n等数据
Figure BDA0001563147380000061
rij用户i对物品j的评价;m为用户数量;n为物品数量。
在用户相似性聚类部分,提取用户自身的个人信息,通常为性别,年龄,职业等,并量化为用户特征属性向量U=[u1,u2,…,ul],l为用户属性维度;
提取用户的行为特征,通常为浏览物品,购买物品等行为,并量化为用户行为特征向量 B=[b1,b2,…,bs],s为用户行为特征维度;
提取用户对物品的评价并量化为用户评价向量R[i]=[ri1,ri2,…,rin],n为物品数量;
一般主要以U,B,R[i]向量作为用户相似性度量进行聚类。若用户Usera的特征属性向量分别为Ua,Ba,R[a],用户Userb的特征属性向量分别为Ub,Bb,R[b],用户Usera,Userb之间的相似性Sim(Usera,Userb)=αSim(Ua,Ub)+βSim(Ba,Bb)+γSim(R[a],R[b]),α+β+ γ=1。
相似性度量Sim()值的获取可采用余弦相似性度量,调整余弦相似性度量,Peason相关系数度量三种度量方法中的一种。
由用户相似性度量Sim(Usera,Userb)作为相似距离,根据聚类算法将用户聚类,聚类算法可以采用KMeans.Sim(Usera,Userb)的计算方法影响聚类结果,继而影响基于用户聚类的预测模型对未评价物品的预测精度,训练阶段调节α,β,γ使得预测误差最小。
需要进一步说明,需要将抽取的用户信息量化,比如用户信息可以量化为向量 U=[gender,age1…age10,profession1,profession2…,professionn],若性别为男, gender为1,反之为0;若0<age<=10,age1=1,反之为0;若10<age<=20,age2=1,反之为 0;若age>90,age10=1,反之为0;用户属于某个职业professioni,professioni=1,反之为0;得到向量U后可直接用于计算用户相似性或者用户相似性聚类。
比如考虑用户浏览物品的驻留时间和频率,用户行为特征可以量化为,B1=[freq1,freq2,…,freqn],freqj=(用户浏览物品j的次数)/(用户对所有商品浏览的总次数);B2=[t1,t2,…,tn],tj=(在一次会话中浏览物品j的时间)/(在一次会话中浏览物品的总时间);B=B1+B2,B[j]的值越大,代表用户越喜欢该物品j,向量可直接用于计算用户相似性或者用户相似性聚类;比如用户评价信息可以这样量化:若评价为5星评价对应1-5分,若评价为好评差评对应0和1,用户评价矩阵Rm×n,m代表用户的数量, n代表物品的数量,R[i][j]代表用户i对物品j的评价。
若R[i]代表用户i对所有商品的评价(评价矩阵的第i行),给出相似评价的用户具有相似性,R[i]可直接用于用户相似性计算或者相似性聚类。以上亦可使用其他的信息量化的方法。在这里,综合用户的特征向量U,B,R[i]计算相似性及聚类。
在得到虚拟用户-特征属性矩阵PM×K部分,在每个聚类中根据用户历史行为特征分析已有用户对已有物品属性的喜好程度,喜欢则以1表示,不喜欢则以-1表示,不关心则以0表示,比如物品为电影,对于提取出的特征属性如电影演员、导演、上映时间、电影风格等进行喜好考察;若该用户喜欢actor1,则actor1=1;若该用户不关心actor1,则actor1=0;若该用户讨厌actor1,则actor1=-1。形成已有用户-物品特征属性矩阵DC×K
Figure BDA0001563147380000081
K表示特征属性的数量,C表示一个聚类中已有用户的个数,dck表示已有用户c对k这个特征属性的喜好程度。D[c]代表已有用户c对所有属性的喜好程度(已有用户-物品特征属性矩阵的第c行)。
针对每一个属性取所有用户喜好程度的平均值pvk以此作为该聚类的虚拟用户v对该属性 k的喜好程度,形成虚拟用户-物品特征属性矩阵PM×K
Figure BDA0001563147380000082
其中
Figure BDA0001563147380000083
K表示特征属性的数量,M表示虚拟用户的数量, pvk表示虚拟用户v是否喜欢k这个特征属性。P[v]代表虚拟用户v对所有属性的喜好程度(虚拟用户-物品特征属性矩阵的第v行)。
在得到新物品-物品特征属性矩阵QN×K部分,根据提取的已有物品的所有特征属性,对N 个新物品进行一一考察是否具备此特征,具备此特征则以1表示,否则以0表示,比如物品为电影,则通常提取电影演员、导演、上映时间、电影风格等K个特征属性,考察N个电影的特征属性,若该电影有actor1出演,则actor1=1,反之为0;若该电影由director1导演,则 director1=1,反之为0,形成新物品-物品特征属性矩阵QN×K
Figure BDA0001563147380000084
K表示特征属性的数量,N表示新物品的数量,qgk表示新物品g是否具备k这个特征属性。Q[g]代表新物品g具备的所有属性(新物品-物品特征属性矩阵的第g行)。
在得到虚拟用户-新物品预推荐矩阵部分,将得到的用户-物品特征属性矩阵PM×K与新物品-物品特征属性矩阵QN×K的转置做内积运算,得到用户-新物品预推荐矩阵FM×N:
Figure BDA0001563147380000091
M表示虚拟用户的数量,N表示新物品的数量,fvg表示虚拟用户v对新物品g的喜好程度。F[v]代表虚拟用户v对所有新物品的喜好程度(用户-新物品预推荐矩阵的第v行)。
在预推荐部分,根据虚拟用户-新物品预推荐矩阵FM×N,考察每列向量(对应每个新物品),选取最高预评分对应的虚拟用户,对以该虚拟用户为代表的一系列用户进行预推荐。
在新物品评分采集部分,通过对用户的预推荐,新物品产生了评分,由此更新用户评分矩阵Rm×n
在矩阵分解部分,对更新后的用户评分矩阵Rm×n进行矩阵分解,常用奇异值分解(SVD) 的方法:
Figure BDA0001563147380000092
其中
Figure BDA0001563147380000093
代表预测评级,μ代表所有物品的平均评分,bi和bj分别代表用户和物品在平均水平上的个性化偏差,qj T代表物品向量,R(i)表示用户i评过分的商品集合,N(i)表示用户i浏览过但没有评过分的商品集合,xk和yk是商品的属性。
这里为了防止模型的过度拟合,为参数加上正则化惩罚:
Figure BDA0001563147380000094
其中SSE=∑i,jeij 2,
Figure BDA0001563147380000095
λ代表正则化系数。
个性化推荐阶段,包含新用户数据采集及预处理、基于用户属性判定所属聚类、基于协同过滤向新用户推荐新物品、基于矩阵分解扩大推荐物品范围。
在新用户数据采集及预处理部分,提取用户自身的特征属性并量化为向量U=[u1,u2,…,ul],收集用户的行为特征并量化为向量B=[b1,b2,…,bs]。
在基于用户属性判定所属聚类部分,有M个聚类核心(U1,U2,…,UM),计算用户U 与每一个聚类核心的相似度Sim(U,Uv),v=1,2,3…M;有Max(Sim(U,Uv)),则用户U属于第v个聚类,可由第v个虚拟用户代表。
在向新用户推荐新物品部分,根据新用户所属聚类以及虚拟用户-新物品预推荐矩阵将新物品推荐给新用户。
在基于协同过滤扩大推荐物品范围部分,新物品被推荐给新用户后,新用户产生了历史行为特征,以此为基础使用奇异值分解(SVD)算法进行协同过滤推荐
Figure BDA0001563147380000101
其中
Figure BDA0001563147380000102
代表预测评级,μ代表所有物品的平均评分,bi和bj分别代表用户和物品在平均水平上的个性化偏差,qj T代表物品向量,R(i)表示用户i评过分的商品集合,N(i)表示用户i浏览过但没有评过分的商品集合,xk和yk分别是用户评过分的商品属性和用户浏览尚未评分的商品属性;
这里为了防止模型的过度拟合,为参数加上正则化惩罚:
Figure BDA0001563147380000103
其中SSE=∑i,jeij 2,
Figure BDA0001563147380000104
λ代表正则化系数。
以便推荐更多的物品给用户。
本技术领域技术人员可以理解的是,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种基于内容和协同过滤相结合的个性化推荐方法,其特征在于,包含以下步骤:
步骤1:训练:
步骤1-1:平台采集已有用户的用户数据,所述用户数据包括用户的个人信息和其历史行为特征、以及用户对物品的评分数据,形成用户评分矩阵Rm×n,其中,m表示已有用户的数量,n表示平台中已有物品的数量;
步骤1-2:根据采集的用户数据对用户进行聚类,使用聚类算法将用户划分为M个聚类,并设定和所述M个聚类一一对应的M个虚拟用户;
步骤1-3:在每个聚类中,根据用户的历史行为特征分析已有用户对已有物品特征属性的喜好程度,喜欢以1表示、不喜欢以-1表示、不关心以0表示,形成已有用户-物品特征属性矩阵DC×K,并针对每一个特征属性取所有用户喜好程度的平均值以此作为该聚类的虚拟用户对该特征属性的喜好程度,形成虚拟用户-物品特征属性矩阵PM×K,其中,C为一个聚类中已有用户的个数,K为已有物品的所有特征属性的数量;
步骤1-4:根据提取的已有物品的所有特征属性,对每个新物品进行判断,新物品具备的特征属性以1表示,新物品不具备的特征属性以0表示,得到新物品-物品特征属性矩阵QN×K,其中,N为新物品的数量;
步骤1-5:将矩阵PM×K与矩阵QN×K的转置做内积运算,得到虚拟用户-新物品预推荐矩阵FM×N,矩阵中每一元素即代表虚拟用户对于相应新物品的预评分;
步骤1-6:筛选出矩阵FM×N每列向量的最高预评分对应的虚拟用户,对以这些虚拟用户为代表的用户进行预推荐;
步骤1-7:根据用户对新物品的反馈,采集评分,更新用户评分矩阵Rm×n
步骤1-8:采用奇异值分解的方法将更新的用户评分矩阵Rm×n进行矩阵分解:
Figure FDA0003238913650000011
其中,
Figure FDA0003238913650000012
代表预测评级,μ代表所有物品的平均评分,bi、bj分别代表用户和物品在平均水平上的个性化偏差,qj T代表物品向量,R(i)表示用户i评过分的商品集合,N(i)表示用户i浏览过但没有评过分的商品集合,xk、yk分别是用户评过分的商品属性和用户浏览尚未评分的商品属性;
为了防止模型的过度拟合,为参数加上正则化惩罚:
Figure FDA0003238913650000013
其中,
Figure FDA0003238913650000021
λ代表正则化系数,获得用户评分矩阵Rm×n中物品未得到的用户评分;
步骤2:个性化推荐:
步骤2-1:采集新用户个人信息,进行数据预处理;
步骤2-2:将采集的新用户数据量化,由相似性公式分别计算新用户与M个聚类的相似性,选取相似度最高的聚类新用户的所属聚类,且新用户能够用其所属聚类对应的虚拟用户表示;
步骤2-3:根据新用户所属聚类对应的虚拟用户及虚拟用户-新物品预推荐矩阵FM×N,向新用户进行新物品推荐;
步骤2-4:新用户在得到物品推荐、产生历史行为特征、更新用户评分矩阵后,通过对用户评分矩阵Rm×n进行矩阵分解以预测用户对其未评分物品的评价,通过预测的评分高低将高评分的物品推荐给用户,使用户获得更多物品推荐。
2.根据权利要求1所述的基于内容和协同过滤相结合的个性化推荐方法,其特征在于,步骤1-1中所述用户的个人信息为能够用于用户相似性聚类的用户信息,包含性别、年龄和职业;
所述用户的历史行为特征包含用户对物品浏览的次数、驻留时间、是否加入关注、以及是否购买;
所述用户评分矩阵Rm×n如下:
Figure FDA0003238913650000022
其中rij为用户i对物品j的评价,R[i]代表用户i对所有商品的评价,i、j均为大于0的自然数。
3.根据权利要求2所述的基于内容和协同过滤相结合的个性化推荐方法,其特征在于,步骤1-2的详细步骤如下:
步骤1-2-1:提取用户的个人信息,量化为用户特征属性向量U=[u1,u2,…,ul],l为用户属性维度;
步骤1-2-2:提取用户的历史行为特征,量化为用户的历史行为特征向量B=[b1,b2,…,bs],s为用户行为特征维度;
步骤1-2-3:提取用户对物品的评价向量R[i]=[ri1,ri2,…,rin],n为物品数量;
步骤1-2-4:以U,B,R[i]向量作为用户相似性度量进行聚类;
步骤1-2-4-1:根据以下公式计算用户之间的相似性:
Sim(Usera,Userb)=αSim(Ua,Ub)+βSim(Ba,Bb)+γSim(R[a],R[b])
其中,Ua,Ba,R[a]分别为用户Usera的特征属性向量、历史行为特征向量和其对物品的评价向量,Ub,Bb,R[b]分别为用户Userb的特征属性向量、历史行为特征向量和其对物品的评价向量;α、β、γ均为系数,且α+β+γ=1;相似性度量Sim()值的获取采用余弦相似性度量、调整余弦相似性度量、Peason相关系数度量三种度量方法中的一种;
步骤1-2-4-1:将用户之间的相似性度量Sim(Usera,Userb)作为相似距离,根据聚类算法将用户聚类,得到M个用户聚类U1,U2,...,UM
4.根据权利要求3所述的基于内容和协同过滤相结合的个性化推荐方法,其特征在于,步骤1-3中所述已有用户-物品特征属性矩阵DC×K的公式如下:
Figure FDA0003238913650000031
其中,dck为已有用户c对k这个特征属性的喜好程度;D[c]为已有用户-物品特征属性矩阵的第c行,代表已有用户c对各个特征属性的喜好程度;
所述虚拟用户-物品特征属性矩阵PM×K的公式如下:
Figure FDA0003238913650000032
其中,
Figure FDA0003238913650000033
表示虚拟用户v是否喜欢k这个特征属性;P[v]为虚拟用户-物品特征属性矩阵的第v行,代表虚拟用户v对所有属性的喜好程度。
5.根据权利要求4所述的基于内容和协同过滤相结合的个性化推荐方法,其特征在于,步骤1-4中,所述新物品-物品特征属性矩阵QN×K的公式如下:
Figure FDA0003238913650000041
其中,qgk表示新物品g是否具备k这个特征属性;Q[g]为新物品-物品特征属性矩阵的第g行,代表新物品g具备的所有属性。
6.根据权利要求5所述的基于内容和协同过滤相结合的个性化推荐方法,其特征在于,步骤1-5中虚拟用户-新物品预推荐矩阵FM×N的公式如下:
Figure FDA0003238913650000042
其中,fvg表示虚拟用户v对新物品g的喜好程度;F[v]为虚拟用户-新物品预推荐矩阵的第v行,代表虚拟用户v对所有新物品的喜好程度。
CN201810088955.5A 2018-01-30 2018-01-30 一种基于内容与协同过滤相结合的个性化推荐方法 Active CN108334592B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810088955.5A CN108334592B (zh) 2018-01-30 2018-01-30 一种基于内容与协同过滤相结合的个性化推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810088955.5A CN108334592B (zh) 2018-01-30 2018-01-30 一种基于内容与协同过滤相结合的个性化推荐方法

Publications (2)

Publication Number Publication Date
CN108334592A CN108334592A (zh) 2018-07-27
CN108334592B true CN108334592B (zh) 2021-11-02

Family

ID=62926726

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810088955.5A Active CN108334592B (zh) 2018-01-30 2018-01-30 一种基于内容与协同过滤相结合的个性化推荐方法

Country Status (1)

Country Link
CN (1) CN108334592B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109064285B (zh) * 2018-08-02 2021-02-02 西北大学 一种获得商品推荐序列及商品推荐方法
CN109255680A (zh) * 2018-09-04 2019-01-22 浙江经济职业技术学院 一种面向农产品大数据的精准个性化推荐方法
CN109754316B (zh) * 2018-12-29 2022-07-29 深圳Tcl新技术有限公司 产品推荐方法、产品推荐系统及存储介质
CN109739768B (zh) * 2018-12-29 2021-03-30 深圳Tcl新技术有限公司 搜索引擎评测方法、装置、设备以及可读存储介质
CN109740064B (zh) * 2019-01-18 2021-08-17 北京化工大学 一种融合矩阵分解和挖掘用户项目信息的cf推荐方法
CN110413880B (zh) * 2019-07-10 2021-09-14 合肥工业大学 基于用户人格分层结构的单分类协同过滤方法
CN110689410B (zh) * 2019-09-29 2021-09-03 京东数字科技控股有限公司 数据处理方法、装置、设备及存储介质
CN110851707B (zh) * 2019-10-11 2021-06-04 筑客网络技术(上海)有限公司 一种用于建材招投标平台的智能推荐方法
CN111538913B (zh) * 2020-04-26 2023-07-11 电子科技大学 一种艾滋病防控知识宣教的个性化推荐方法
CN111625704A (zh) * 2020-05-11 2020-09-04 镇江纵陌阡横信息科技有限公司 一种用户意图与数据协同的非个性化推荐算法模型

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103093376A (zh) * 2013-01-16 2013-05-08 北京邮电大学 基于奇异值分解算法的聚类协同过滤推荐系统
CN104850645A (zh) * 2015-05-28 2015-08-19 苏州大学张家港工业技术研究院 一种基于矩阵分解的主动学习评分引导方法及系统
CN106127506A (zh) * 2016-06-13 2016-11-16 浙江大学 一种基于主动学习解决商品冷启动问题的推荐方法
CN106326351A (zh) * 2016-08-05 2017-01-11 天津大学 一种基于用户反馈的推荐系统冷启动解决方法
CN106651546A (zh) * 2017-01-03 2017-05-10 重庆邮电大学 一种面向智慧社区的电子商务信息推荐方法
CN106897911A (zh) * 2017-01-10 2017-06-27 南京邮电大学 一种基于用户和物品的自适应个性化推荐方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103093376A (zh) * 2013-01-16 2013-05-08 北京邮电大学 基于奇异值分解算法的聚类协同过滤推荐系统
CN104850645A (zh) * 2015-05-28 2015-08-19 苏州大学张家港工业技术研究院 一种基于矩阵分解的主动学习评分引导方法及系统
CN106127506A (zh) * 2016-06-13 2016-11-16 浙江大学 一种基于主动学习解决商品冷启动问题的推荐方法
CN106326351A (zh) * 2016-08-05 2017-01-11 天津大学 一种基于用户反馈的推荐系统冷启动解决方法
CN106651546A (zh) * 2017-01-03 2017-05-10 重庆邮电大学 一种面向智慧社区的电子商务信息推荐方法
CN106897911A (zh) * 2017-01-10 2017-06-27 南京邮电大学 一种基于用户和物品的自适应个性化推荐方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于内容和协同过滤的混合算法在推荐系统中的应用研究;何佳知;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160515;论文第三、四章 *

Also Published As

Publication number Publication date
CN108334592A (zh) 2018-07-27

Similar Documents

Publication Publication Date Title
CN108334592B (zh) 一种基于内容与协同过滤相结合的个性化推荐方法
CN110162706B (zh) 一种基于交互数据聚类的个性化推荐方法及系统
CN110110181B (zh) 一种基于用户风格和场景偏好的服装搭配推荐方法
CN104063481B (zh) 一种基于用户实时兴趣向量的电影个性化推荐方法
US9275116B2 (en) Evaluation predicting device, evaluation predicting method, and program
CN103544216B (zh) 一种结合图像内容和关键字的信息推荐方法及系统
CN109189904A (zh) 个性化搜索方法及系统
CN109241203B (zh) 一种融合时间因素的用户偏好和距离加权的聚类方法
CN103955464B (zh) 一种基于情境融合感知的推荐方法
CN112667899A (zh) 基于用户兴趣迁移的冷启动推荐方法、装置及存储设备
Tewari et al. Sequencing of items in personalized recommendations using multiple recommendation techniques
CN106599226A (zh) 一种内容推荐方法及内容推荐系统
CN109034960B (zh) 一种基于用户节点嵌入的多属性推断的方法
CN108334558A (zh) 一种结合标签和时间因素的协同过滤推荐方法
WO2021139415A1 (zh) 数据处理方法、装置、计算机可读存储介质及电子设备
CN110246011A (zh) 可解释时尚服装个性化推荐方法
US11663661B2 (en) Apparatus and method for training a similarity model used to predict similarity between items
CN108268464A (zh) 一种基于协同过滤与logistic回归的个性化推荐方法及装置
Liu et al. Using collaborative filtering algorithms combined with Doc2Vec for movie recommendation
CN108920521A (zh) 基于伪本体的用户画像-项目推荐系统及方法
CN108389113B (zh) 一种协同过滤推荐方法和系统
Wen et al. Personalized clothing recommendation based on knowledge graph
CN116805023B (zh) 一种基于大语言模型的外卖推荐方法
CN110059257B (zh) 基于评分修正的项目推荐方法
CN116523597A (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