CN102609523B - 基于物品分类和用户分类的协同过滤推荐方法 - Google Patents

基于物品分类和用户分类的协同过滤推荐方法 Download PDF

Info

Publication number
CN102609523B
CN102609523B CN201210030236.0A CN201210030236A CN102609523B CN 102609523 B CN102609523 B CN 102609523B CN 201210030236 A CN201210030236 A CN 201210030236A CN 102609523 B CN102609523 B CN 102609523B
Authority
CN
China
Prior art keywords
mrow
article
msub
user
munderover
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
CN201210030236.0A
Other languages
English (en)
Other versions
CN102609523A (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.)
SHANGHAI STARTEK INFORMATION TECHNOLOGY Co Ltd
Original Assignee
SHANGHAI STARTEK INFORMATION TECHNOLOGY Co Ltd
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 SHANGHAI STARTEK INFORMATION TECHNOLOGY Co Ltd filed Critical SHANGHAI STARTEK INFORMATION TECHNOLOGY Co Ltd
Priority to CN201210030236.0A priority Critical patent/CN102609523B/zh
Publication of CN102609523A publication Critical patent/CN102609523A/zh
Application granted granted Critical
Publication of CN102609523B publication Critical patent/CN102609523B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种协同过滤算法,具体地说是一种基于物品分类和用户分类的协同过滤推荐算法,其特征在于采用如下步骤:A、物品的聚类与分类步骤;B、用户的聚类与分类步骤;C、物品聚类与用户聚类的融合步骤;D、排序推荐步骤。本发明同现有技术相比,用改进的KMEANS算法完成数据的聚类,方法简单,增加了可扩展性,同时解决了稀疏性问题、冷启动问题。

Description

基于物品分类和用户分类的协同过滤推荐方法
技术领域
本发明涉及一种协同过滤算法,具体地说是一种基于物品分类和用户分类的协同过滤推荐算法。
背景技术
当今社会,网络信息浩如烟海,且每年都会有大量的新作加入,观众如何寻找到自己喜爱的信息呢?当前,搜索引擎是用户查找信息的重要手段之一,但这并不是问题的答案。因为搜索引擎存在下述致命缺点:1.传统的搜索算法为所有用户呈现完全一样的搜索排序结果、无法针对不同用户的个性化特征提供相应的服务;2.针对一个搜索关键字,搜索引擎会返回数以万计的信息条目,而这其中仅仅极少一部分才是用户真正需要或感兴趣的;3.搜索的前提是用户知道他/她需要什么,如果连用户自己都不知道自己能得到什么或想要得到什么的时候,搜索就无能为力了。
目前的解决方法是引入智能推荐算法及系统,通过推荐的方法来帮助用户发现自己需要/喜欢的个性化内容。近年来个性化推荐的研究与应用发展迅猛,这源于Web2.0技术的成熟使得用户从被动的网络信息浏览者进化为网络交互的主动参与者。准确、高效的推荐系统可以挖掘用户潜在的消费倾向,为众多的用户提供个性化服务。在当今日趋激烈的竞争环境下,个性化推荐系统已经不仅仅是一种商业营销手段,更重要的是可以增进用户的黏着性。个性化推荐系统已经为电子商务等领域带来巨大的商业利益。目前的推荐算法有基于内容的过滤推荐、协同过滤推荐算法、基于人口统计学的推荐算法、基于知识的推荐算法以及混合推荐算法,其中协同过滤算法是目前应用最为成功的推荐算法之
目前协同过滤推荐算法主要分为两类:1.基于用户的协同过滤算法:用户对物品的评分比较相似,则他们对其他物品的评分也比较相似,从而找到具有相似兴趣的最近邻,形成推荐;2.基于物品的协同过滤算法根据用户对不同物品评分的相似性来估计该用户对某个物品的评分,以此进行推荐。协同过滤算法主要不足有三个方面:一是稀疏性问题,即当推荐系统中数据量很大而用户的显式评分数据又很少时,难以计算相似性,而无法推荐;二是冷启动问题,当新物品刚进入系统时,没有用户对其评价,造成协同过滤无法推荐该资源。三是可扩展性问题,推荐系统中的用户和资源会随时间快速的增长,而协同过滤算法的复杂度和数据量呈线性关系增长,严重影响了执行效率,从而导致可扩展性较差。
发明内容
本发明的目的是克服现有技术的不足,提供是一种同时基于物品和用户的协同过滤推荐算法,能解决一般协同过滤算法中存在的稀疏性问题、冷启动问题以及可扩展性问题。
为了达到上述目的,本发明设计了一种基于物品分类和用户分类的协同过滤推荐算法,其特征在于采用如下步骤:
A、物品的聚类与分类步骤:
首先,采用PCA分析方法鉴别物品的主要特征,即对整个物品集合所张成的特征空间进行主轴定位,并得到PCA空间映射矩阵;
其次,采用KMEANS算法完成数据的聚类,即对每个物品都定义一个特征向量,该特征向量涵盖了物品的上述主要特征标签,通过余弦距离度量公式计算每两个物品之间的相似度,其公式如下:
其中,V1,V2表示物品的特征向量:V1=(v11,v12,...,v1n),Vs=(v21,v22,...,v2n);
根据应用的不同,给每个特征项赋予一定的权重以表示该特征的重要程度,即:V1=(v11,w11;v12,w12;...;v1n,w1n),Vs=(v21,w21;v22,w22;...;v2nw2n);
最后,在完成对物品的聚类后,记录每个类的类中心,当有新的物品加入时即可在PCA空间进行距离计算,把新物品分类到离它最近的类中心所代表的那个类别;
B、用户的聚类与分类步骤:当系统积累的用户数据量足够时,即可根据用户的类别消费特征向量来为用户进行聚类和分类,其过程和上述物品的聚类与分类步骤是一样的;
C、物品聚类与用户聚类的融合步骤:每个物品有了分类信息后,用户对物品的消费记录就可以转化为对类别的消费记录,从而使得用户消费特征的维度与类别的总数一致;
D、排序推荐步骤:按照类内按相似度排序来进行推荐,或者按照用户的消费历史根据类别排序后再按比例进行相关类内物品排序来进行推荐,或者按照用户的类别来进行推荐,把同类其他用户的消费物品推荐给该用户。
在步骤A中,在度量相似度时给特征赋予不同权重,特征的权重根据各个特征在分类中的作用设定,即根据鉴别的主要特征设定。
在步骤A中,所述的PCA分析方法为主成分分析算法,即Principal ComponentAnalysis,其为降维统计方法,通过正交变换,将分量相关的原表征向量转化成分量不相关的新表征向量,其方法如下:
定义物品的加权特征向量为V=(v1,w1;v2,w2;...;vK,wK)T,其具备K个维度;现在取出n个物品:Vi=(vi1,wi1;vi2,wi2;...;viK,wiK)T,其中1≤i≤n;
定义矩阵:
计算物品在每个维度即属性上的均值:
计算每个物品离开均值的距离,该距离相当于坐标轴原点平移:这里的I=(1,...,1)是一个长度为n列的行向量;
计算这n个物品的协方差矩阵:
计算矩阵C的特征向量和特征值:A-1CA=D,其中,D表示C的特征值对角阵;A表示C的特征向量矩阵;
对D和A按降序排列其中的特征值和特征向量,特征值的大小表征了该轴向上的物品属性的分离度,选取其中的前L个特征值和对应的特征向量:0≤L≤K,满足:
对应的,选取A的前L个特征向量:B=[Ai1,Ai2,...,AiL],其中,Aik(1≤k≤L)表示特征向量矩阵的某一列;
对于任何一个新到的样本,通过下面的公式计算其在给定PCA空间中的新坐标,即新特征向量:Vn+1=BT(vn+,1,wn+1,1;vn+1,2,wn+1,2;...;vn+1,K,wn+1,K)T
在步骤A中,所述的KMEANS算法为K均值算法,其方法如下:
定义一组物品集合(x1,x2,...,xn),其中每个物品都通过一个D维的特征描述向量来表征,将这n个物品聚类成k个不同的类别,其中k≤n,C={C1,C2,...,Ck},并最小化类内数据与类均值之间差值的平方和:其中,μi是数据类Si的均值,对差值的定义为余弦距离:其中,xj表示物品j的特征描述向量,μi表示类别i的类中心,即所有属于类别i的物品的特征描述向量的均值,n表示特征描述向量的维度;
定义一组初始均值μ={μ1,μ2,...,μk},算法反复迭代下述两个步骤直到收敛为止:(1)物品归类步骤:将每个物品归类到距离其最近的均值所在的类别:(2)更新物品类均值步骤:定义收敛的条件为:k个类中的物品不再发生变化。
本发明同现有技术相比,用改进的KMEANS算法完成数据的聚类,方法简单,增加了可扩展性,同时解决了稀疏性问题、冷启动问题。
附图说明
现结合附图对本发明作进一步说明。
图1为本发明的算法框图。
具体实施方式
如图1,本发明采用如下步骤:
A、物品的聚类与分类:
首先,采用PCA分析方法鉴别物品的主要特征,即对整个物品集合所张成的特征空间进行主轴定位,并得到PCA空间映射矩阵,增强了物品的可鉴别度,同时降低了后续特征距离计算的强度,这就有效解决了稀疏性问题和冷启动问题,即使没有用户评价,新物品也能根据其特征标签找到可靠的同类物品,从而实现精准的推荐;
其次,采用改进的KMEANS算法完成数据的聚类,即对每个物品都定义一个特征向量,该特征向量涵盖了物品的上述主要特征标签,通过余弦距离度量公式计算每两个物品之间的相似度,其公式如下:
其中,V1,V2表示物品的特征向量:V1=(v11,v12,...,v1n),Vs=(v21,v22,...,v2n);
根据应用的不同,给每个特征项赋予一定的权重以表示该特征的重要程度,即:V1=(v11,w11;v12,w12;...;v1n,w1n),Vs=(v21,w21;v22,w22;...;v2nw2n);
最后,在完成对物品的聚类后,记录每个类的类中心,当有新的物品加入时即可在PCA空间进行距离计算,把新物品分类到离它最近的类中心所代表的那个类别,这就解决了物品增加所带来的可扩展性问题;
B、用户的聚类与分类:当系统积累的用户数据量足够时,即可根据用户的类别消费特征向量来为用户进行聚类和分类,其过程和上述物品的聚类与分类过程是一样的;
C、物品聚类与用户聚类的融合:每个物品有了分类信息后,用户对物品的消费记录就可以转化为对类别的消费记录,从而使得用户消费特征的维度不再与物品的数量呈线性关系而只与类别的总数相关,由于类别的总数是可控的,而且在通常情况下远远小于物品的数量,所以融合了物品聚类结果的基于用户的协同过滤计算过程的复杂度不会随着物品数据量的增长而增加;
D、排序推荐:可以按照类内按相似度排序来进行推荐,或者按照用户的消费历史根据类别排序后再按比例进行相关类内物品排序来进行推荐,或者按照用户的类别来进行推荐,把同类其他用户的消费物品推荐给该用户。
在步骤A中,在度量相似度时给特征赋予不同权重,特征的权重根据各个特征在分类中的作用设定,即根据鉴别的主要特征设定。
在步骤A中,所述的PCA分析方法为主成分分析算法,即Principal ComponentAnalysis,这是一种降维的统计方法,通过正交变换,将分量相关的原表征向量转化成分量不相关的新表征向量,其方法如下:
定义物品的加权特征向量为V=(v1,w1;v2,w2;...;vK,wK)T,具备K个维度。现在取出n个物品:Vi=(vi1,wi1;vi2,wi2;...;viK,wiK)T,其中1≤i≤n,
定义矩阵:计算物品在每个维度属性上的均值:
计算每个物品离开均值的距离,相当于坐标轴原点平移,这里的I=(1,...,1)是一个长度为n列的行向量;
计算这n个物品的协方差矩阵:
计算矩阵C的特征向量和特征值A-1CA=D,这里的D表示C的特征值对角阵;这里的A表示C的特征向量矩阵;
对D和A按降序排列其中的特征值和特征向量,特征值的大小表征了该轴向上的物品属性的分离度,选取其中的前L个特征值和对应的特征向量:0≤L≤K,满足:
对应的,选取A的前L个特征向量。B=[Ai1,Ai2,...,AiL],其中Aik(1≤k≤L)表示特征向量矩阵的某一列;
对于任何一个新到的样本,可以通过下面的公式计算其在给定PCA空间中的新坐标,即新特征向量:Vn+1=BT(vn+1,1,wn+1,1;vn+1,2,wn+1,2;...;vn+1,K,wn+1,K)T
在步骤A中,KMEANS算法即K均值算法,是一种非监督实时聚类算法。其基本原理如下:
定义一组物品集合(x1,x2,...,xn),其中每个物品都通过一个D维的特征描述向量来表征。KMEANS就是将这n个物品聚类成k个不同的类别,k≤n, C={C1,C2,...,Ck}并最小化类内数据与类均值之间差值的平方和:
这里的μi是数据类Si的均值。
这里对差值的定义为余弦距离而不是通常的欧几里德距离:
其中xj表示物品j的特征描述向量;μi表示类别i的类中心,即所有属于类别i的物品的特征描述向量的均值,n表示特征描述向量的维度。
而传统的KMEANS算法基于欧基里德距离来计算相似度,公式为:
这种计算距离的度量标准造成了KMEANS 算法对噪声特征非常敏感,而本发明中改进的KMEANS算法对噪声特征的敏感度不强。
算法的基本步骤如下:
定义一组初始均值μ={μ1,μ2,...,μk},算法反复迭代下述两个步骤直到收敛为止:
(1)物品归类步骤:将每个物品归类到距离其最近的均值所在的类别:
(2)更新物品类均值步骤:
定义收敛的条件为:k个类中的物品不再发生变化。
现在以下述视频数据为实施例进行说明:
定义类型集合为{动作,喜剧,爱情,战争,剧情,动画,科幻,奇幻,传记,恐怖,惊悚,古装,纪录,警匪,冒险,悬疑,艺术,灾难,魔幻,犯罪,歌舞,伦理,历史,家庭,戏曲,军事,系列,科教},这就决定了电影的特征描述向量是28个维度的。
于是得到上述七部视频的特征描述向量为:
定义权重向量为:
{1.0:1.0:1.0:1.0:1.0:1.0:1.0:1.0:1.0:1.0:1.0:1.0:1.0:1.0:1.0:1.0 :1.0:1.0:1.0:1.0:1.0:1.0:1.0:1.0:1.0:1.0:1.0:1.0}
将上述数据代入PCA过程中的公式进行计算,得到降维后的维度为16,上述七部视频降维后的特征描述向量为:
再用KMEANS算法对这七部视频进行聚类计算,聚类计算时代入公式的是降维后的特征描述向量,并定义类别数为3,那么就可以得到下属聚类结果:
C1={1787,252,2044};
C2={6656,6657,6663};
C3={11787};
即:ID为1787,252,2044的三部影片被聚成一类;ID为6656,6657, 6663的三部影片被聚成一类;ID为11787的影片单独形成一类。这样的聚类结果是合理的。用户聚类的过程与此一致。
本算法适合大数据量情况下的计算,比如视频数量可以达到1万以上,用户数量达到10万以上。
本发明中,算法推荐将分为两个阶段,第一阶段用户对物品的消费记录还比较少,无法进行用户聚类;第二阶段,用户消费记录比较丰富,可以进行用户聚类。在第一阶段,推荐主要有两种方法,第一种方法是进行类内按相似度排序的推荐,第二种方法是根据用户的消费历史按类别排序后再按比例进行相关类内物品的推荐,第一种方法对于非登陆用户也是适用的。在第二阶段,推荐主要根据用户的类别来进行推荐,把同类其他用户的消费物品推荐给该用户。
本发明中排序推荐的一种实施方式如下:
从不同维度进行排序。以视频为例,可以提供按收录时间、按上映时间、按评分、按播放次数、按微博的关注度,按朋友的兴趣等维度分别进行排序和呈现,具体如下:
a)按收录时间:按照物品被收录到本系统数据库中的时间进行排序;
b)按上市/上映时间:按照物品进入市场销售渠道的时间进行排序,如果是电影,就是该影片被公映的时间,并按照公映时间进行排序;
c)按评分:按照消费者对物品的评价指数进行排序;由于评分是有时效的,所以可以取某一个时间段的评分作为排序的依据,比如一天,一周,一月等;
d)按消费/播放次数:按照物品在市场上的销售量进行排序,如果是视频,就是该视频被点击播放的次数,并按照播放次数进行排序;由于消费/播放次数是有时效的,所以可以取某一个时间段的消费/播放次数作为排序的依据,比如一天,一周,一月等;
e)按微博的关注度:按照物品在微博上的被关注度进行排序。由于微博上的关注度是有时效的,所以可以取某一个时间段内物品在微博上的被关注度作为排序的依据,比如一天,一周,一月等;
f)按朋友的兴趣:这里的朋友可以是系统内自建的好友圈中的朋友,也可以是系统之外的好友圈中的朋友,比如微博中的好友等;按照朋友对物品的是否感兴趣进行排序;所谓感兴趣定义为朋友消费/正面评价过该物品;在此基础上再以对该物品感兴趣的好友数进行排序。
本发明采用改进的KMEANS算法完成数据的聚类,方法简单,增加了可扩展性,同时解决了稀疏性问题、冷启动问题。

Claims (3)

1.一种基于物品分类和用户分类的协同过滤推荐方法,其特征在于采用如下步骤:
A、物品的聚类与分类步骤:
首先,采用PCA分析方法鉴别物品的主要特征,即对整个物品集合所成的特征空间进行主轴定位,并得到PCA空间映射矩阵;
其次,采用KMEANS算法完成数据的聚类,即对每个物品都定义一个特征向量,该特征向量涵盖了物品的主要特征标签,通过余弦距离度量公式计算每两个物品之间的相似度,其公式如下:
<mrow> <mi>S</mi> <mi>i</mi> <mi>m</mi> <mrow> <mo>(</mo> <msub> <mi>V</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>V</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mi>cos</mi> <mi>&amp;alpha;</mi> <mo>=</mo> <mfrac> <mrow> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mrow> <mn>1</mn> <mi>k</mi> </mrow> </msub> <mo>&amp;times;</mo> <msub> <mi>w</mi> <mrow> <mn>1</mn> <mi>k</mi> </mrow> </msub> <mo>&amp;times;</mo> <msub> <mi>v</mi> <mrow> <mn>2</mn> <mi>k</mi> </mrow> </msub> <mo>&amp;times;</mo> <msub> <mi>w</mi> <mrow> <mn>2</mn> <mi>k</mi> </mrow> </msub> <mo>)</mo> </mrow> </mrow> <msqrt> <mrow> <mo>(</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <mo>(</mo> <mrow> <msub> <mi>v</mi> <mrow> <mn>1</mn> <mi>k</mi> </mrow> </msub> <mo>&amp;times;</mo> <msub> <mi>w</mi> <mrow> <mn>1</mn> <mi>k</mi> </mrow> </msub> </mrow> <mo>)</mo> <mo>)</mo> <mo>(</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <mo>(</mo> <mrow> <msub> <mi>v</mi> <mrow> <mn>2</mn> <mi>k</mi> </mrow> </msub> <mo>&amp;times;</mo> <msub> <mi>w</mi> <mrow> <mn>2</mn> <mi>k</mi> </mrow> </msub> </mrow> <mo>)</mo> <mo>)</mo> </mrow> </msqrt> </mfrac> <mo>;</mo> </mrow>
其中,V1,V2表示物品的特征向量:V1=(v11,v12,...,v1n),V2=(v21,v22,...,v2n);根据应用的不同,给每个特征项赋予一定的权重以表示该特征的重要程度,即:V1=(v11,w11;v12,w12;...;v1n,w1n),V2=(v21,w21;v22,w22;...;v2n,w2n);
最后,在完成对物品的聚类后,记录每个类的类中心,当有新的物品加入时即可在PCA空间进行距离计算,把新物品分类到离它最近的类中心所代表的那个类别;
B、用户的聚类与分类步骤:当系统积累的用户数据量足够时,即可根据用户的类别消费特征向量来为用户进行聚类和分类,其过程和上述物品的聚类与分类步骤是一样的;
C、物品聚类与用户聚类的融合步骤:每个物品有了分类信息后,用户对物品的消费记录就可以转化为对类别的消费记录,从而使得用户消费特征的维度与类别的总数一致;
D、排序推荐步骤:按照类内按相似度排序来进行推荐,或者按照用户的消费历史根据类别排序后再按比例进行相关类内物品排序来进行推荐,或者按照用户的类别来进行推荐,把同类其他用户的消费物品推荐给该用户;
在步骤A中,所述的PCA分析方法为主成分分析算法,即PrincipalComponentAnalysis,其为降维统计方法,通过正交变换,将分量相关的原表征向量转化成分量不相关的新表征向量,其方法如下:
定义物品的加权特征向量为V=(v1,w1;v2,w2;...;vK,wK)T,其具备K个维度;现在取出n个物品:Vi=(vi1,wi1;vi2,wi2;...;viK,wiK)T,其中1≤i≤n;
定义矩阵:
计算物品在每个维度即属性上的均值:
<mrow> <mover> <mi>V</mi> <mo>&amp;OverBar;</mo> </mover> <mo>=</mo> <mfrac> <mn>1</mn> <mi>n</mi> </mfrac> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <msub> <mi>V</mi> <mi>i</mi> </msub> <mo>=</mo> <msup> <mrow> <mo>(</mo> <mfrac> <mn>1</mn> <mi>n</mi> </mfrac> <mo>(</mo> <mrow> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <mrow> <mo>(</mo> <mrow> <msub> <mi>v</mi> <mrow> <mi>i</mi> <mn>1</mn> </mrow> </msub> <msub> <mi>w</mi> <mrow> <mi>i</mi> <mn>1</mn> </mrow> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mo>)</mo> <mo>,</mo> <mfrac> <mn>1</mn> <mi>n</mi> </mfrac> <mo>(</mo> <mrow> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <mrow> <mo>(</mo> <mrow> <msub> <mi>v</mi> <mrow> <mi>i</mi> <mn>2</mn> </mrow> </msub> <msub> <mi>w</mi> <mrow> <mi>i</mi> <mn>2</mn> </mrow> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mo>)</mo> <mo>,</mo> <mn>...</mn> <mo>,</mo> <mfrac> <mn>1</mn> <mi>n</mi> </mfrac> <mo>(</mo> <mrow> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <mrow> <mo>(</mo> <mrow> <msub> <mi>v</mi> <mrow> <mi>i</mi> <mi>k</mi> </mrow> </msub> <msub> <mi>w</mi> <mrow> <mi>i</mi> <mi>k</mi> </mrow> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mi>T</mi> </msup> </mrow>
计算每个物品离开均值的距离,该距离相当于坐标轴原点平移:这里的I=(1,...,1)是一个长度为n列的行向量;
计算这n个物品的协方差矩阵:
计算矩阵C的特征向量和特征值:A-1CA=D,其中,D表示C的特征值对角阵;
A表示C的特征向量矩阵;
对D和A按降序排列其中的特征值和特征向量,特征值的大小表征了主轴轴向上的物品属性的分离度,选取其中的前L个特征值和对应的特征向量:0≤L≤K,满足:
<mrow> <mfrac> <mrow> <msubsup> <mi>&amp;Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </msubsup> <msub> <mi>&amp;lambda;</mi> <mrow> <mi>i</mi> <mi>i</mi> </mrow> </msub> </mrow> <mrow> <msubsup> <mi>&amp;Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>K</mi> </msubsup> <msub> <mi>&amp;lambda;</mi> <mrow> <mi>i</mi> <mi>i</mi> </mrow> </msub> </mrow> </mfrac> <mo>&amp;GreaterEqual;</mo> <mn>95</mn> <mi>%</mi> </mrow>
对应的,选取A的前L个特征向量:B=[Ai1,Ai2,...,AiL],其中,Aik(1≤k≤L)表示特征向量矩阵的某一列;
对于任何一个新到的样本,通过下面的公式计算其在给定PCA空间中的新坐标,即新特征向量:Vn+1=BT(vn+1,1,wn+1,1;vn+1,2,wn+1,2;...;vn+1,K,wn+1,K)T
2.根据权利要求1所述的基于物品分类和用户分类的协同过滤推荐方法,其特征在于:在步骤A中,在度量相似度时给特征赋予不同权重,特征的权重根据各个特征在分类中的作用设定,即根据鉴别的主要特征设定。
3.根据权利要求1-2中任一项所述的基于物品分类和用户分类的协同过滤推荐方法,其特征在于,在步骤A中,所述的KMEANS算法为K均值算法,其方法如下:
定义一组物品集合(x1,x2,...,xn),其中每个物品都通过一个D维的特征描述向量来表征,将这n个物品聚类成k个不同的类别,其中k≤n,C={C1,C2,...,Ck},并最小化类内数据与类均值之间差值的平方和:其中,μi是数据类Si的均值,对差值的定义为余弦距离:其中,xj表示物品j的特征描述向量,μi表示类别i的类中心,即所有属于类别i的物品的特征描述向量的均值,n表示特征描述向量的维度;
定义一组初始均值μ={μ1,μ2,...,μk},算法反复迭代下述两个步骤直到收敛为止:(1)物品归类步骤:将每个物品归类到距离其最近的均值所在的类别: (2)更新物品类均值步骤:定义收敛的条件为:k个类中的物品不再发生变化。
CN201210030236.0A 2012-02-10 2012-02-10 基于物品分类和用户分类的协同过滤推荐方法 Active CN102609523B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210030236.0A CN102609523B (zh) 2012-02-10 2012-02-10 基于物品分类和用户分类的协同过滤推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210030236.0A CN102609523B (zh) 2012-02-10 2012-02-10 基于物品分类和用户分类的协同过滤推荐方法

Publications (2)

Publication Number Publication Date
CN102609523A CN102609523A (zh) 2012-07-25
CN102609523B true CN102609523B (zh) 2018-03-06

Family

ID=46526895

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210030236.0A Active CN102609523B (zh) 2012-02-10 2012-02-10 基于物品分类和用户分类的协同过滤推荐方法

Country Status (1)

Country Link
CN (1) CN102609523B (zh)

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577486A (zh) * 2012-08-02 2014-02-12 北京千橡网景科技发展有限公司 一种对搜索结果进行排序的方法和设备
CN103077228B (zh) * 2013-01-02 2016-03-02 北京科技大学 一种基于集合特征向量的快速聚类方法和装置
CN103093376B (zh) * 2013-01-16 2020-02-14 北京邮电大学 基于奇异值分解算法的聚类协同过滤推荐系统
CN103150349B (zh) * 2013-02-07 2017-02-08 华为软件技术有限公司 一种样本属性的分析方法、装置和设备
CN104111946B (zh) * 2013-04-19 2018-08-07 腾讯科技(深圳)有限公司 基于用户兴趣的聚类方法和装置
CN103279552A (zh) * 2013-06-06 2013-09-04 浙江大学 一种基于用户兴趣分组的协同过滤推荐方法
CN104252465B (zh) * 2013-06-26 2018-10-12 南宁明江智能科技有限公司 一种利用代表向量过滤信息的方法和装置
CN103559622A (zh) * 2013-07-31 2014-02-05 焦点科技股份有限公司 基于特征的协同过滤推荐方法
CN103412948B (zh) * 2013-08-27 2017-10-24 北京交通大学 基于聚类的协同过滤的商品推荐方法及系统
CN103500228A (zh) * 2013-10-23 2014-01-08 苏州大学 一种协同过滤推荐算法中改进的相似性度量方法
CN104579912B (zh) * 2013-10-29 2020-04-07 深圳市腾讯计算机系统有限公司 数据推送的方法及装置
CN103678672B (zh) * 2013-12-25 2017-05-24 北京中兴通德网络科技有限公司 一种信息推荐方法
CN103995839A (zh) * 2014-04-30 2014-08-20 兴天通讯技术(天津)有限公司 基于协同过滤的商品推荐优化方法和系统
CN105095256B (zh) * 2014-05-07 2019-06-11 阿里巴巴集团控股有限公司 基于用户之间相似度进行信息推送的方法及装置
CN103970858A (zh) * 2014-05-07 2014-08-06 百度在线网络技术(北京)有限公司 推荐内容确定系统和方法
CN105335390A (zh) * 2014-07-09 2016-02-17 阿里巴巴集团控股有限公司 对象的分类方法、业务的推送方法及服务器
CN104239450A (zh) * 2014-09-01 2014-12-24 百度在线网络技术(北京)有限公司 搜索推荐方法和装置
CN105354720B (zh) * 2014-09-18 2019-04-09 中南大学 一种基于可视聚类对消费地点进行混合推荐的方法
CN104268761A (zh) * 2014-09-29 2015-01-07 深圳市百科在线科技发展有限公司 基于消费特征的后台产品推荐辅助决策方法及系统
CN104281964A (zh) * 2014-09-29 2015-01-14 深圳市百科在线科技发展有限公司 基于实时人体模型的服饰产品推荐辅助决策方法及系统
CN104504578A (zh) * 2014-11-15 2015-04-08 温州大学 一种网购环境下基于偏好度关联的童鞋主动推荐方法
CN104394231B (zh) * 2014-12-10 2018-03-20 合肥城市云数据中心有限公司 一种基于智能终端与云数据技术的数据交互处理方法
CN105786860B (zh) 2014-12-23 2020-07-07 华为技术有限公司 一种数据建模中的数据处理方法及装置
CN104809626A (zh) * 2015-03-17 2015-07-29 徐邑江 一种基于用户信用评估的个性化商品推荐方法
CN106294342A (zh) * 2015-05-12 2017-01-04 阿里巴巴集团控股有限公司 一种推送信息的生成方法和设备
CN106294410A (zh) * 2015-05-22 2017-01-04 苏宁云商集团股份有限公司 一种个性化信息推送时间的确定方法及确定系统
CN104915391A (zh) * 2015-05-25 2015-09-16 南京邮电大学 一种基于信任关系的物品推荐方法
CN106295673B (zh) * 2015-06-25 2019-12-13 阿里巴巴集团控股有限公司 物品信息处理方法及处理装置
US20180226144A1 (en) * 2015-08-12 2018-08-09 Yaegaki Bio-Industry, Inc. Information processing apparatus, information processing method, and non-transitory computer readable storage medium
CN105447126A (zh) * 2015-11-17 2016-03-30 苏州蜗牛数字科技股份有限公司 一种游戏道具个性化推荐方法
CN105872780A (zh) * 2016-03-30 2016-08-17 乐视控股(北京)有限公司 一种关联信息的推荐方法和系统
CN106095974B (zh) * 2016-06-20 2019-12-24 上海理工大学 基于网络结构相似性的推荐系统评分预测与推荐算法
CN107665451B (zh) * 2016-07-29 2021-09-21 百度在线网络技术(北京)有限公司 一种基于客户特征数据进行产品推送的方法及装置
CN108268519B (zh) * 2016-12-30 2022-05-24 阿里巴巴集团控股有限公司 一种推荐网络对象的方法和装置
CN107103488B (zh) * 2017-03-02 2021-05-18 江苏省烟草公司常州市公司 基于协同过滤算法和聚类算法的卷烟消费研判方法
CN106951489A (zh) * 2017-03-13 2017-07-14 杭州师范大学 一种用于稀疏大数据的个性化推荐方法和装置
CN107193932B (zh) * 2017-05-18 2020-06-30 北京京东尚科信息技术有限公司 信息推送方法和装置
CN109033103A (zh) * 2017-06-09 2018-12-18 华为技术有限公司 内容推荐方法和系统
JP6611998B2 (ja) 2017-07-19 2019-11-27 三菱電機株式会社 レコメンド装置
CN107679114B (zh) * 2017-09-15 2021-03-16 四川智库慧通电力科技有限公司 一种基于使用情况的电力系统绝缘工具智能推荐方法
CN107492036B (zh) * 2017-09-15 2020-12-01 大连丰泰保险信息咨询有限公司 一种保险保单托管系统
CN107506495B (zh) * 2017-09-28 2020-05-01 北京京东尚科信息技术有限公司 信息推送方法和装置
CN107818491A (zh) * 2017-09-30 2018-03-20 平安科技(深圳)有限公司 电子装置、基于用户上网数据的产品推荐方法及存储介质
CN107784285B (zh) * 2017-10-26 2020-06-09 中国电子科技集团公司第五十四研究所 一种光学遥感影像舰船目标的军民属性自动判别方法
CN107862022B (zh) * 2017-10-31 2020-12-11 中国科学院自动化研究所 文化资源推荐系统
CN107944487B (zh) * 2017-11-20 2020-01-24 北京信息科技大学 一种基于混合协同过滤算法的作物育种品种推荐方法
CN108108399B (zh) * 2017-12-05 2020-07-28 华南理工大学 一种混合高斯建模改进的协同过滤推荐方法
CN108320176A (zh) * 2017-12-26 2018-07-24 爱品克科技(武汉)股份有限公司 一种基于社会化关系用户分类及推荐方法
CN108154396A (zh) * 2017-12-26 2018-06-12 成都生命基线科技有限公司 一种生物科研实验平台中的试剂耗材智能推送方法
CN108108453A (zh) * 2017-12-28 2018-06-01 北京奇虎科技有限公司 应用信息的推荐方法及装置
CN108109058B (zh) * 2018-01-11 2021-06-29 合肥工业大学 一种融合人格特质和物品标签的单分类协同过滤方法
CN109032591B (zh) * 2018-06-21 2021-04-09 北京航空航天大学 一种基于元学习的众包软件开发者推荐方法
CN108985898B (zh) * 2018-07-12 2022-02-15 广东工业大学 一种场所评分方法、装置和计算机可读存储介质
CN109064285B (zh) * 2018-08-02 2021-02-02 西北大学 一种获得商品推荐序列及商品推荐方法
CN109474703B (zh) * 2018-12-24 2021-08-31 浙江鲸腾网络科技有限公司 个性化产品组合推送方法、装置及系统
CN111914159B (zh) * 2019-05-10 2024-03-12 招商证券股份有限公司 一种信息推荐方法及终端
CN110245687B (zh) * 2019-05-17 2021-06-04 腾讯科技(上海)有限公司 用户分类方法以及装置
CN110188273B (zh) * 2019-05-27 2022-02-22 北京字节跳动网络技术有限公司 资讯内容的通知方法、装置、服务器及可读介质
CN112712222A (zh) * 2019-10-24 2021-04-27 北京沃东天骏信息技术有限公司 物品调度方法和系统
CN110992215B (zh) * 2019-12-10 2023-10-13 浙江力石科技股份有限公司 基于语义分析的旅游服务推荐系统、数据库和推荐方法
CN111241360B (zh) * 2020-01-09 2023-03-21 深圳市雅阅科技有限公司 一种信息推荐方法、装置、设备及存储介质
CN111259263B (zh) * 2020-01-15 2023-04-18 腾讯云计算(北京)有限责任公司 一种物品推荐方法、装置、计算机设备及存储介质
CN111445304A (zh) * 2020-02-26 2020-07-24 平安科技(深圳)有限公司 信息推荐方法、装置、计算机设备及存储介质
CN111429070A (zh) * 2020-04-02 2020-07-17 冯希 一种易于分类记录的仓储管理系统
CN113298587A (zh) * 2020-05-25 2021-08-24 阿里巴巴集团控股有限公司 店铺商品信息的展示方法、电子设备和客户端
CN111859166B (zh) * 2020-07-28 2022-11-25 重庆邮电大学 一种基于改进的图卷积神经网络的物品评分预测方法
CN112579889B (zh) * 2020-12-07 2022-05-03 北京百度网讯科技有限公司 物品推荐方法、装置、电子设备及存储介质
CN112559866A (zh) * 2020-12-16 2021-03-26 郑州工程技术学院 大学图书阅读推荐方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101329683A (zh) * 2008-07-25 2008-12-24 华为技术有限公司 推荐系统及方法
CN102231166A (zh) * 2011-07-12 2011-11-02 浙江大学 基于社会上下文的协同推荐方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101685458B (zh) * 2008-09-27 2012-09-19 华为技术有限公司 一种基于协同过滤的推荐方法和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101329683A (zh) * 2008-07-25 2008-12-24 华为技术有限公司 推荐系统及方法
CN102231166A (zh) * 2011-07-12 2011-11-02 浙江大学 基于社会上下文的协同推荐方法

Also Published As

Publication number Publication date
CN102609523A (zh) 2012-07-25

Similar Documents

Publication Publication Date Title
CN102609523B (zh) 基于物品分类和用户分类的协同过滤推荐方法
CN110162706B (zh) 一种基于交互数据聚类的个性化推荐方法及系统
CN103902538B (zh) 基于决策树的信息推荐装置及方法
WO2018014759A1 (zh) 一种聚类数据表的展现方法、装置和系统
Phorasim et al. Movies recommendation system using collaborative filtering and k-means
CN107633430A (zh) 一种基于群体社区的商品推荐方法
Wang et al. Local probabilistic models for link prediction
CN107122980B (zh) 识别商品所属类目的方法和装置
US20130166564A1 (en) Providing information recommendations based on determined user groups
Nguyen et al. SLINT: a schema-independent linked data interlinking system.
KR20190108838A (ko) 미술 작품 추천 큐레이션 방법 및 시스템
CN103116588A (zh) 一种个性化推荐方法及系统
US20090198593A1 (en) Method and apparatus for comparing entities
CN103559622A (zh) 基于特征的协同过滤推荐方法
CN106934071A (zh) 基于异构信息网络和贝叶斯个性化排序的推荐方法及装置
CN107256513A (zh) 一种对象的搭配推荐方法及装置
CN103577472B (zh) 个人信息获得、推定、商品的分类、检索方法及系统
CN108874916A (zh) 一种层叠组合协同过滤推荐方法
CN111651678A (zh) 一种基于知识图谱的个性化推荐方法
CN109977299A (zh) 一种融合项目热度和专家系数的推荐算法
Huang et al. A novel topic-based framework for recommending long tail products
Liu et al. Fast recommendation on latent collaborative relations
Tahir et al. E-commerce platform based on Machine Learning Recommendation System
CN106919647B (zh) 一种基于聚类的网络结构相似性推荐方法
Kim et al. Diversity of recommendation with considering data similarity among different types of

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant