CN103345517B - 模拟tf-idf相似性计算的协同过滤推荐算法 - Google Patents

模拟tf-idf相似性计算的协同过滤推荐算法 Download PDF

Info

Publication number
CN103345517B
CN103345517B CN201310288955.7A CN201310288955A CN103345517B CN 103345517 B CN103345517 B CN 103345517B CN 201310288955 A CN201310288955 A CN 201310288955A CN 103345517 B CN103345517 B CN 103345517B
Authority
CN
China
Prior art keywords
user
article
similarity
value
scoring
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
CN201310288955.7A
Other languages
English (en)
Other versions
CN103345517A (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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing 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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201310288955.7A priority Critical patent/CN103345517B/zh
Publication of CN103345517A publication Critical patent/CN103345517A/zh
Application granted granted Critical
Publication of CN103345517B publication Critical patent/CN103345517B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

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

Abstract

本文提出了一种推荐领域中全新的计算用户相似性的方法,该方法模拟搜索技术中常用的词频‑反文档频率(TF‑IDF)的统计方法,无需多次计算目标用户与邻居用户共同评分项值以及用户对物品的具体评分值,便可计算出用户之间的相似性。然后再利用得到的相似性,求出用户对物品的预测评分,最终做出推荐。该方法可以有效提高推荐的准确率与实时性,并且增加了推荐系统的可扩展性。

Description

模拟TF-IDF相似性计算的协同过滤推荐算法
技术领域
本发明属于电子商务推荐系统领域,具体涉及信息检索技术与统计方法等,实现一种全新的相似度计算方法,该方法模拟信息检索中著名的词频-反文档频率(TF-IDF)统计方法,计算推荐算法中的用户或物品间的相似度,从而做出推荐的一种相似性计算方法。
背景技术
近年来,随着互联网技术的迅猛发展,电子商务已经成为一种新的时尚,在近些年形成飞速增长的趋势。电子商务,它是IT技术与商务行为结合所产生的一种新的商务交易过程,是21世纪市场经济商务运行的主要模式,通过电子商务平台,人们可以享受足不出户选购商品的快捷与方便。随着电子商务平台交易规模的扩大,人们通过浏览器无法在短时间内快速的浏览所有的商品,并且也缺少现实交易中售货员对顾客进行的一些产品介绍,因此人们面临了电子商务时代特有的“信息超载”问题。
针对于“信息超载”问题,推荐系统在20世纪90年代应运而生,如Google的新闻推荐、Email过滤等等。目前几乎所有的电子商务系统,都将推荐技术作为网上销售的必然组成部分,如Amazon,Netflix,豆瓣,淘宝等等。推荐系统的主要作用有:(1)诱导新客户,也就是向一个潜在的新客户推荐产品,将浏览者变成购买者;(2)鼓励老客户,也就是在客户已买的东西的基础上推荐更多产品,提高网络的交叉销售能力;(3)提升顾客对网站的忠诚度。准确率,可扩展性,实时性是评价一个推荐系统好坏与否的重要因素。传统推荐技术中一般利用余弦相似度、皮尔逊相似度等方法来计算用户相似度,而这些方法有一个共同的特点,就是需要逐个计算目标用户与每个邻居共同评分项的值,并且需要通过具体的评分值来计算用户间的相似度,因此需要耗费较多的时间,如今大多数推荐系统面临“数据过载”问题,这就使得推荐的实时性受到了挑战。而随着推荐系统的日益普及,需要应用到推荐系统的领域越来越多,传统的推荐系统无法很好的满足于其他领域。
本专利提出了一种全新的计算用户相似性的方法,该方法模拟搜索技术中常用的词频-反文档频率(TF-IDF)的统计方法,无需多次计算目标用户与邻居用户共同评分项值以及用户对物品的具体评分值,便可计算出用户之间的相似性。然后再利用得到的相似性,求出用户对物品的预测评分,最终做出推荐。该方法可以有效提高推荐的准确率与实时性,并且增加了推荐系统的可扩展性。
发明内容
本发明提出通过模拟搜索技术中常用的词频-反文档频率(TF-IDF)的统计方法,来提出一种全新的用户相似度计算方法。词频-反文档频率方法通常用在目前主流的搜索技术中去,首先计算某个词在某个文档中出现的频率,然后再找到该词在所有文档中出现的频率,用来过滤一些无意义词语如的,而且之类的助词。将二者相乘,得到最终的词语在指定文档的重要性,从而得出推荐顺序。而本发明发现推荐技术中用户相似度计算方法与搜索某个特定关键词有很大的相似性。首先计算二个用户之间共同评分的物品占二者全部评分物品的比例,之后计算邻居用户评分项目占全部物品的比例,如果该用户评分物品越多,那说明该用户对于目标用户的重要性就越低,计算二者的乘积从而得到最后二者之间的相似性。传统推荐技术中一般利用余弦相似度、皮尔逊相似度等方法来计算用户相似度,而这些方法有一个共同的特点,就是需要逐个计算目标用户与每个邻居共同评分项的值,因此需要耗费较多的时间,如今大多数推荐系统面临“数据过载”问题,这就使得推荐的实时性受到了挑战。同时随着推荐系统的日益普及,需要应用到推荐系统的领域越来越多,传统的推荐系统无法很好的满足于其他领域。本发明通过模拟TF-IDF的用户相似性算法可以无需多次计算目标用户与邻居用户共同评分项值以及用户对物品的具体评分值,便可计算出用户之间的相似性。从而可以降低推荐的计算复杂度,提高推荐的实时性和推荐领域的可扩展性。
本发明技术方案分为如下几个基本的执行步骤:
步骤一:正如经典TF-IDF方法所述,词频TF是指在一个网页中某个词出现的次数占该网页中所有词语总数的比例,若该词语所占比例越高,说明该词语在该网页中重要性越高,越能用这个词语来作为该网页的关键词。同理,在该发明中,对于目标用户i而言,与某个邻居用户j共同评分的物品数越多,同时他们各自评分的物品数越少,就说明邻居用户j对目标用户i的影响越大,相似性越高,该方法类似于TF-IDF中的TF算法。首先找出目标用户i与邻居目标用户j之间共同评分的项目,并且记录二者分别评分产品数,算出共同评分项目占二者所有评分产品数的总和的比例,且可以忽略用户对物品的具体评分值;
步骤二:正如经典TF-IDF方法所述,反文档频率IDF是指在某个关键词出现在的网页个数占整个网页数目比例的倒数,并且取对数。若出现该关键词的网页个数越多,说明该关键词的可区分度越低,如一些没用的助词如而且、的、但是这些词语在每个网页中几乎都存在,因此这些词就没有太大的意义。同理,在该发明中,对于某个邻居用户j而言,若该用户评分的物品越多,占据系统中所有物品的比例越大,说明该用户对每个用户的重要性越低,因为该用户没有很好的爱好区分度。该方法类似于TF-IDF中的IDF算法。计算邻居用户j所评分的物品占系统中所有产品的比例的倒数,并且将这个值取对数;
步骤三:根据步骤一计算出的共同评分物品频率CIF来估算两个用户之间的相似度,而通过步骤二中计算出的邻居用户反评分频率INIF,来进一步计算邻居用户的对推荐的重要程度。最终将步骤一与步骤二中的数值相乘,得到最终用户i与用户j之间的相似性。该发明的各个步骤都没有涉及到用户对物品的具体评分,使算法实现更加容易,推荐速度更快,并且可以有效的将该方法运用到一些需要推荐,却无法获得显示评分项的领域中去;
本发明有以下一些技术特征:
(1)步骤1所述的公式是模拟词频-反文档频率中的词频计算方法,在本发明中提出了一种适用于推荐系统的公式,通过目标用户与邻居用户共同评分物品占二者所有评分商品中的比例,来计算出共同评分物品频率CIF;
(2)步骤2所述的公式是模拟词频-反文档频率中的反文档频率计算方法,在本发明中提出了一种适用于推荐系统的公式,计算邻居用户评分物品占系统中所有物品的比例的倒数的对数,来计算出邻居用户反评分频率INIF;
(3)步骤3所述的过程其实就是将步骤1与步骤2中所得到的数值乘积,得到最终的目标用户i与邻居用户j的相似性。
附图说明
图1为传统的协同过滤算法和本文改进算法的MAE比较图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下将举实例对本发明做进一步详细地说明。
1.词频-反文档频率(TF-IDF)统计方法
TF-IDF(term frequency–inverse document frequency)是一种用于资讯检索与资讯探勘的常用加权技术。TF-IDF是一种统计方法,用以评估某个字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。TF-IDF加权的各种形式常被搜索引擎应用,作为文件与用户查询之间相关程度的度量或评级。
TF-IDF的主要思想是:如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。TF-IDF实际上是:TF*IDF,TF词频(Term Frequency),IDF反文档频率(Inverse DocumentFrequency)。 TF表示词条在文档d中出现的频率。IDF的主要思想是:如果包含词条t的文档越少,也就是n越小,IDF越大,则说明词条t具有很好的类别区分能力。如果某一类文档C中包含词条t的文档数为m,而其它类包含t的文档总数为k,显然所有包含t的文档数n=m+k,当m大的时候,n也大,按照IDF公式得到的IDF的值会小,就说明该词条t类别区分能力不强。但是实际上,如果一个词条在一个类的文档中频繁出现,则说明该词条能够很好代表这个类的文本的特征,这样的词条应该给它们赋予较高的权重,并选来作为该类文本的特征词以区别与其它类文档。这就是IDF的不足之处。
2.模拟TF-IDF的相似度计算算法
正如上文中提到的TF-IDF方法一样,推荐系统中用户之间的相似度也可以通过两个用户之间共同评分物品,以及邻居用户评分项占系统中所有物品的比例来计算。
本文提出公式
sim(i,j)=CIFij×INIFj (1)
其中
其中sum(i,j)表示用户i与用户j的相似度;CIFij表示用户i与用户j共同评分物品所占二者全部评分项的比例,若用户i与用户j所有评分物品均相同,则CIFij达到最大值1;INIFj表示用户j评分物品占所有物品比例,用户评分项越少,则证明用户j对用户i的影响力越大,若用户j只评价了一个物品,则INIFj达到最大值1。
在公式2和公式3中,Iij表示用户i和用户j共同评分的物品数;Ii表示用户i评分的物品数;Ij表示用户j评分的物品数;N表示系统中所有商品数。
举例说明,如表1所示,表1是一个用户对产品的评分矩阵;由表1中的评分得出ICF的数值,如表2所示,该矩阵是对称的;再通过表1中的数值计算出INIF的数值,如表3所示,其中的INIFu4之所以为0,是由于本例子中,该用户购买过所有的物品,因此该用户对其他用户不存在任何个性化的推荐,因此值为0,当然在现实系统中,这种情况几乎是不可能出现的;由表2和表3中的数值得出最终的用户相似性矩阵,如表4所示,该矩阵式非对称的。
表1 用户对产品的评分矩阵
表2 ICF数值对称矩阵
表3 INIF数值矩阵
表4 用户相似性数值矩阵
其中计算CIF数值中分母中的2是为了保证CIF的归一化,同样的,计算INIF中的分母也是如此。这样就能保证计算出的相似度在0到1之间,与传统的相似度计算数值保持一致,并且在接下来的预测未购买物品评分公式中得到准确的推荐值。
通过以上公式与例子不难看出,本文提出的算法在计算用户间相似度的时候,可以不考虑用户对产品的具体评分,而本文的计算公式也相对于传统的相似度计算方法要简单的多,这样可以有效的将该方法应用到其他的推荐领域中去,提高了推荐的可扩展性。
本文采用MovieLens上提供的100K的实验数据集,它包含943个用户对1682个电影做出的约100000个评分。其中该数据集分为Users(用户表)、Items(项目表)和Rating(评分表)这三个数据表。
我们将该数据集中评分表中的100000条评分记录利用随机函数分为10份,并且将每份中的记录利用随机函数分为80%/20%的训练集与测试集的比例,通过利用训练集中的记录预 测测试集中用户对物品的评分,将已知评分与预测评分求MAE值,最终得到10组MAE值取平均数,即能计算出该算法的准确性。
利用KNN算法,对于不同的邻居数K,我们将本文提出的基于TF-IDF相似度计算算法的评分MAE值与传统的基于用户协同过滤算法的MAE值进行比较,比较结果如附图1所示。黑色曲线是通过传统相似度计算方法进行推荐的MAE值,其中灰色的曲线为通过本发明提出的STI算法计算用户间相似度后得到推荐的MAE值,通过数据表明,两者都在去邻居用户数为60的时候达到MAE最小值,而本发明提出的STI算法得到的MAE值低于传统算法的MAE值,说明本发明提出的算法在提升系统推荐准确率方面有一定有效性。

Claims (1)

1.模拟TF-IDF相似度计算的协同过滤推荐方法,其特征在于,提出了一种计算用户相似度的方法,该方法模拟搜索技术中常用的词频-反文档频率(TF-IDF)的统计方法,无需多次计算目标用户与邻居用户共同评分项值以及用户对物品的具体评分值,便可计算出用户之间的相似性;然后再利用得到的相似性,求出用户对物品的预测评分,最终做出推荐;该方法可以有效提高推荐的准确率与实时性,并且增加了推荐系统的可扩展性;
其中,实现方案共分为两个步骤,计算用户间共同评分物品的比例CIFij和邻居用户j所评分项目占系统中所有项目比例的反评分频率INIFj;通过以上两个步骤所得结果的乘积,可以有效判断邻居用户j与目标用户i的相似程度,该方法不同于传统的包括余弦相似度、皮尔逊相似度的相似度计算方法,可以忽略用户对物品具体的评分值;提出了一种计算用户间相似度的算法,利用该方法可以在保证系统推荐准确率的同时,提高了推荐系统可以利用的领域与扩展性;
共同评分物品比例CIFIJ是模拟词频-反文档频率(TF-IDF)中的词频(TF)计算公式来实现的,具体公式为即计算目标用户i与邻居用户j之间共同评分物品占二者评分物品总和的比例;通过CIFij的值,初步得出用户i和j之间的相似度,即共同评分的物品越多,相似度越高;公式中分子中的数字2保证了CIFij的值在0-1之间;
邻居用户j所评分项目占系统中所有项目比例的反评分频率INIFj是模拟词频-反文档频率(TF-IDF)中的反文档频率(IDF)计算公式来实现的,具体公式为即计算邻居用户j已有评分物品占系统中所有商品的反评分;通过INIFj的值,可以看出,评分越多的邻居用户相对于目标用户来说,其个性化特征越少,因此对目标用户的重要性就越差,公式中分母中的lgN同样保证了INIFj的值在0-1之间;因此二者乘积的值也必然在0-1之间,这样就与传统相似性计算公式的值相匹配,可以有效的用于后续的推荐中,而不产生影响。
CN201310288955.7A 2013-07-10 2013-07-10 模拟tf-idf相似性计算的协同过滤推荐算法 Active CN103345517B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310288955.7A CN103345517B (zh) 2013-07-10 2013-07-10 模拟tf-idf相似性计算的协同过滤推荐算法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310288955.7A CN103345517B (zh) 2013-07-10 2013-07-10 模拟tf-idf相似性计算的协同过滤推荐算法

Publications (2)

Publication Number Publication Date
CN103345517A CN103345517A (zh) 2013-10-09
CN103345517B true CN103345517B (zh) 2019-03-26

Family

ID=49280312

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310288955.7A Active CN103345517B (zh) 2013-07-10 2013-07-10 模拟tf-idf相似性计算的协同过滤推荐算法

Country Status (1)

Country Link
CN (1) CN103345517B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103810255A (zh) * 2014-01-21 2014-05-21 南京理工大学 关键字推荐方法及服务器
US20150310392A1 (en) * 2014-04-24 2015-10-29 Linkedin Corporation Job recommendation engine using a browsing history
CN104992181A (zh) * 2015-06-29 2015-10-21 昆明理工大学 一种根据图书馆用户习惯的实时图书推荐方法
CN105426550B (zh) * 2015-12-28 2020-02-07 Tcl集团股份有限公司 一种基于用户质量模型的协同过滤标签推荐方法及系统
CN106201465B (zh) * 2016-06-23 2020-08-21 扬州大学 面向开源社区的软件项目个性化推荐方法
CN108108380B (zh) * 2016-11-25 2022-05-31 阿里巴巴集团控股有限公司 搜索排序方法、搜索排序装置、搜索方法和搜索装置
CN109087177B (zh) * 2018-08-21 2021-05-25 北京京东尚科信息技术有限公司 向目标用户推荐商品的方法、装置及计算机可读存储介质
CN109242036A (zh) * 2018-09-25 2019-01-18 艾凯克斯(嘉兴)信息科技有限公司 一种基于tf-idf思想计算产品结构相似性的方法
CN109241203B (zh) * 2018-09-27 2021-08-31 天津理工大学 一种融合时间因素的用户偏好和距离加权的聚类方法
CN110175289B (zh) * 2019-05-24 2023-04-07 西安电子科技大学 基于余弦相似度协同过滤的混合推荐方法
CN113627152B (zh) * 2021-07-16 2023-05-16 中国科学院软件研究所 一种基于自监督学习的无监督机器阅读理解训练方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101329683A (zh) * 2008-07-25 2008-12-24 华为技术有限公司 推荐系统及方法
CN101482884A (zh) * 2009-01-21 2009-07-15 华东师范大学 一种基于用户偏好评分分布的协作推荐系统
CN101986301A (zh) * 2010-10-31 2011-03-16 华南理工大学 一种基于逆邻分析的协作过滤推荐系统及方法
CN102915307A (zh) * 2011-08-02 2013-02-06 腾讯科技(深圳)有限公司 一种个性化信息推荐的方法、装置及信息处理系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101329683A (zh) * 2008-07-25 2008-12-24 华为技术有限公司 推荐系统及方法
CN101482884A (zh) * 2009-01-21 2009-07-15 华东师范大学 一种基于用户偏好评分分布的协作推荐系统
CN101986301A (zh) * 2010-10-31 2011-03-16 华南理工大学 一种基于逆邻分析的协作过滤推荐系统及方法
CN102915307A (zh) * 2011-08-02 2013-02-06 腾讯科技(深圳)有限公司 一种个性化信息推荐的方法、装置及信息处理系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A Similarity Calculating Approach Simulated from TF-IDF in Collaborative Filtering Recommendation,;Qilong Ba 等;《Proceedings of the 2013 Fifth International Conference on Multimedia Information Networking and Security》;20131103;738-741

Also Published As

Publication number Publication date
CN103345517A (zh) 2013-10-09

Similar Documents

Publication Publication Date Title
CN103345517B (zh) 模拟tf-idf相似性计算的协同过滤推荐算法
Zhao et al. A personalized hashtag recommendation approach using LDA-based topic model in microblog environment
Cheng et al. Personalized click prediction in sponsored search
JP5540080B2 (ja) 検索結果を生成する方法および情報検索のためのシステム
JP5913736B2 (ja) キーワードの推薦
Liang et al. Connecting users and items with weighted tags for personalized item recommendations
CN103870973B (zh) 基于电子信息的关键词提取的信息推送、搜索方法及装置
CN108763362A (zh) 基于随机锚点对选择的局部模型加权融合Top-N电影推荐方法
Oh et al. Personalized news recommendation using classified keywords to capture user preference
Guo et al. Personalized ranking with pairwise factorization machines
Wilson et al. Improving collaborative filtering based recommenders using topic modelling
CN105023178B (zh) 一种基于本体的电子商务推荐方法
WO2013120373A1 (zh) 搜索方法、装置及存储介质
Duan et al. A probabilistic mixture model for mining and analyzing product search log
Lin et al. A consumer review-driven recommender service for web e-commerce
CN109446402B (zh) 一种搜索方法及装置
JP2007264718A (ja) ユーザ興味分析装置、方法、プログラム
Hong et al. Advertising object in web videos
Al-Dhelaan et al. Graph summarization for hashtag recommendation
Zhang et al. Estimating online review helpfulness with probabilistic distribution and confidence
CN110825967B (zh) 一种提高推荐系统多样性的推荐列表重排名方法
Yumoto et al. Finding rare web pages by relevancy and atypicality in a category
Kim et al. Exploiting knowledge structure for proximity-aware movie retrieval model
JP2011198393A (ja) ユーザ興味分析装置、方法、プログラム
Nguyen et al. Applying hidden topics in ranking social update streams on Twitter

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