CN102929928B - 基于多维相似度的个性化新闻推荐方法 - Google Patents
基于多维相似度的个性化新闻推荐方法 Download PDFInfo
- Publication number
- CN102929928B CN102929928B CN201210355209.0A CN201210355209A CN102929928B CN 102929928 B CN102929928 B CN 102929928B CN 201210355209 A CN201210355209 A CN 201210355209A CN 102929928 B CN102929928 B CN 102929928B
- Authority
- CN
- China
- Prior art keywords
- news
- user
- similarity
- behavior
- section
- 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.)
- Expired - Fee Related
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种基于多维相似度的个性化新闻推荐方法:先从新闻日志抽取设定时间记录,根据新闻源地址抓取新闻并抽取标题和正文,对其进行分词和提取名词,并用主题模型分析该名词序列而得到该新闻的主题特征向量;再根据新闻的主题特征向量和用户行为数据,分别构建用户模型和新闻模型;然后根据用户模型、新闻模型和时间特征分别计算用户和新闻的内容相似度与行为相似度,并据此计算最终的用户相似度和最终的新闻相似度,并分别提取最相似的多个用户和多个新闻;最后,依据最近的新闻日志记录和与设定用户最相似的多个相似用户,生成基于用户的个性化推荐结果;或依据设定用户产生行为的新闻和与该新闻最相似的多个新闻,生成基于新闻的个性化推荐结果。
Description
技术领域
本发明涉及一种基于多维相似度的个性化新闻推荐方法,特别是涉及一种融合内容相似度、行为相似度和时间特征的个性化新闻推荐方法,属于基于协同过滤的个性化新闻推荐的技术领域。
背景技术
随着互联网规模的迅速发展,人们获取信息的方式越来越多,信息呈爆炸式增长,用户逐渐由信息匮乏走向了信息过载时代——海量信息使得用户难以寻找到各自所需的信息。为了方便用户从海量信息中寻找其所需的内容,出现了很多解决方案:包括分类目录和搜索引擎。分类目录是把常用热门网站分门别类,便于用户查找信息。但是,随着互联网规模的扩大,分类目录只能覆盖少量热门网站。搜索引擎是用户只需把自己的需求转换成关键词的不同组合,再在网络中寻找其所需的信息。当用户有明确需求时,搜索引擎还是可行的,但是,用户在很多时候并不知道自己的需求。比如用户打开优酷视频网站,上面有大量视频内容信息,用户并没有明确的需求非要观看什么,这时如果推荐引擎能够自动给用户推荐一些视频,而这些视频恰好是用户所喜欢的,就能够很好地解决上述问题。著名电子商务网站Amazon销售额中的35%是来自推荐系统。由此可见,推荐系统在提高了用户的满意度的同时,也提高了网站的黏性,增加了网站访问量,为网站带来巨大的商业利益。
在用户需求模糊时,推荐引擎能够自动把用户感兴趣的内容推荐给用户,同时,过滤用户不感兴趣的大量内容,即为不同用户呈现不同的个性化内容。目前,推荐系统的实现方式很多,其中,协同过滤技术因其与内容无关,成为最为广泛使用的个性化推荐技术,被应用到电子商务、视频网站、个性化阅读、个性化广告等许多领域。
目前,应用最广泛的协同过滤个性化推荐技术有两种方式(参见图1):基于用户的协同过滤和基于项目的协同过滤。前者主要包括三个步骤:用户行为数据表示;利用用户相似度计算方法,查找与目标用户最相似的多个用户;根据该多个相似用户对项目的行为来预测目标用户对项目的行为,并进行推荐。后者也包括三个步骤:项目行为数据表示;利用项目相似度计算方法,计算项目之间的相似度;把与用户产生行为的项目最相似的项目推荐给用户。
下面详细介绍基于用户和基于项目的两种协同过滤的流程:
基于用户的协同过滤技术中,用户行为数据表示为用户-项目二维矩阵,其中每行是用户对各列中各个项目的评分,通常的评分是1~5。
用户相似度的计算是协同过滤中最关键的操作,传统的相似度的计算有下述三种:余弦相似度、修正余弦相似度和皮尔逊相似度。
余弦相似度(即cosine相似度):将用户评分看作多维项目空间上的向量,如果用户对项目没有评分,则将该用户对该项目的评分设为0;用户间相似度值是向量之间的余弦夹角值。余弦相似度的优点是:将用户没有评分的项目的评分值设为0,有效提高了计算性能。但事实上,用户对未评分项目的喜好程度不可能全都相同、且都为0。所以,在评分数据稀疏情况下,余弦相似度方法就无法准确计算用户之间的相似度和项目之间的相似度;同时,余弦相似度并未考虑用户评分尺度的问题。
修正的余弦相似度度量:将用户对项目的评分减去用户对项目的平均评分,以改善余弦相似度度量方法的缺陷,这种度量方法考虑了不同用户的评价尺度问题。与余弦相似度性类似,它也是将用户未评分项目的评分值设为0,在稀疏矩阵情况下,也不能准确地计算出用户/项目之间的相似度。
皮尔森相似度:只在用户间共同评分的项目上计算相似度,比修正的余弦相似度计算方法中直接用0来填充,具有更好的推荐质量。
推荐方法也有两种:评分预测和Top-N推荐。其中,评分预测是先计算用户对项目的预测评分,然后选择评分高的项目推荐给用户。评分预测有两种方法:第一种是简单加权平均:其中,s(u,K)为用户u的K个相似用户,ru,i和Rv,i分别为用户u及其邻居用户v对第i个项目的预测评分和实际评分。sim(u,v)为两个用户u和v的行为相似度。第二种是考虑各个用户间不同的评分尺度的用户评分偏移加权平均:
Top-N推荐是计算用户的兴趣偏好程度,选择其中最高的N个项目推荐。Top-N推荐公式是:
目前的很多研究表明,Top-N推荐优于评分预测推荐,因为向用户最终推荐的项目准确率的评判标准是用户是否查看,而不是看完以后的评价是多少分。
基于项目的协同过滤和基于用户的协同过滤的最大不同是:前者是计算出相似项目后,通过查找和目标用户产生行为的项目最相似的若干项目作为推荐。
项目行为数据是由用户的行为数据来表示,项目相似度的计算方法是把用户相似度计算公式中的用户替换成项目、项目替换成用户。
传统相似度的计算方法得到了广泛应用,但依然存在很多问题。例如:两个用户之间的相似度无法计算或计算的结果错误;随着推荐系统的规模扩大,数据稀疏性使得上述问题更加严重;而且,传统相似度计算不适用于集中评分数据,例如对于1-5的评分项目,用户的大部分评分可能集中在3-4之间。
另外,某些情况的相似度无法计算:如果共同评分项目是一个,则皮尔逊相似度就无法计算,因为其分母为0。如果用户的评分非常平稳时,比如<1,1,1,>,<3,3,3>或<4,4,4>时,皮尔逊相似度的分母也为0,同样无法计算相似度。
某些情况计算出的相似度不准确:如果两个评分向量位于同一条直线上,例如评分<1,1>、<4,4>,很显然,用户的喜好还是不同的,但是其余弦相似度为1,即很相似。如果两个用户评分是线性相关,例如v1<1,2,1,2,1>、v2<4,5,4,5,4>、v2=v1+3,那么皮尔逊相似度是1。实际上,这两个用户是显然不相同的。如果两个用户评分向量为<4,5,4,5,4>和<5,4,5,4,5>,虽然这两个评分向量很相似,但皮尔逊相似度为-1,即负相关。
目前,在数据稀疏时,共同评分的项目很少,计算结果往往不准确或无法计算。随着推荐系统的规模越来越大,用户和项目的数量都急剧扩大,因为每个用户只会选择少数项目,这样,用户间选择相同项目的可能性越来越小,使得数据稀疏性的问题越来越严重,进而导致相似度无法计算或计算结果不准确。以实验常用的数据集为例,MovieLens的稀疏度是95.5%,Netflix的稀疏度是98.8%,Delicious的稀疏度是99.954%。
为了解决数据稀疏性导致相似度无法计算或计算不准确问题,目前,已经提出了矩阵填充、矩阵降维以及其他相似度计算方法,下面简要说明之。
(一)矩阵填充-缺省填充:解决数据稀疏性问题的最简单方法是把矩阵的空位置添上数值,称为矩阵填充。
大多数情况下,缺省填充值设置为中值或稍小的数值,也可设置为用户的评分均值或项目的评分均值。但是,该填充方法的问题是:用户对项目的评分不可能完全相同,以这种方法填充的评分矩阵的可信度不高。
众数法:采用一组数据中出现频率最高的数对未评分项目进行赋值,即采用目标用户所有评分的众数作为未评分项目的预测值。但是,众数法存在“多众数”(即有两个或两个以上的评分值出现次数是最多时)和“无众数”(所有评分值的出现次数都相同)的问题,导致这种方法应用的局限性很大。
(二)矩阵填充-预测填充:通过预测评分来填充,有代表性的是基于项目评分预测的协同过滤推荐方案。该方案是:先计算经过两个用户u和v评分的项目集合的并集Puv。两个用户u和v在项目集合Puv中未评分的项目则由用户对相似项目的评分预测出来,然后,在项目集合Puv上采用修正余弦相似度或皮尔逊相似度计算这两个用户u和v之间的相似度。最后找到最相似K个用户产生推荐。
这种方法不仅有效解决相关相似度度量方法中用户共同评分数据比较少的情况,而且,有效解决余弦相似度度量方法和修正的余弦相似度度量方法中对所有未评分项目的评分均相同的问题(均为0),使得计算得到的目标用户的最近邻居比较准确。但在实际应用中,用户-项目二维表已经很庞大,对稀疏的地方进行填充,不仅增加计算量,而且消耗大量内存空间,从实际效果来看,矩阵填充技术对评分预测的准确度提高有限。
(三)矩阵降维-云模型:为解决数据稀疏性问题,提出了云模型方案:将某个用户对多个项目的评价情况进行统计,称为用户评分频度向量。根据用户评分频度向量,再利用逆向云算法可以计算用户的评分特征向量,记为q=(Ex,En,He),其中,期望Ex为用户对所有项目的平均满意度,属于偏好水平;熵En为用户打分的集中程度,反映投票偏好的离散度;He为熵的稳定度。对于两个用户云模型q1和q2,这两个云之间的相似度:就是其特征向量的余弦相似度。这样把评分矩阵转化成3个指标,解决了数据稀疏性问题,但是,因为采用了降维技术,丢失了大量相关信息,推荐效果不理想。
(四)PIP相似度计算模型:用于解决冷启动问题的PIP方法,把两个用户的每对评分都划分为三个因素来计算每对评分的相似度,最后综合所有评分的相似度,得出用户之间的相似度。PIP相似度计算方法主要由下述三部分组成:临近度(Proximity)是两个用户评分差距,影响度(Impact)是两个用户对项目喜好程度,普及度(Popularity)是目前评分与项目平均分的差距。对于任意两项的评分公式为:PIP(r1,r2)=Proximity(r1,r2)×Impact(r1,r2)×Popularity(r1,r2)。该方案在一定程度上解决了协同过滤数据稀疏性问题,但对于评分较多的两个用户,这种计算方式要计算所有可能组合的评分对,不仅计算结果不准确,而且计算工作量很大。
传统的相似度计算方法适合数据平均分散的情况,人们通过对数据集研究发现,大部分评分数据是集中的,也就是在1~5的评分中,用户更倾向于3、4的评分,很少评为1或5;比如,MovieLens数据集的评分方差在1.2,更加表明评分数据的集中性。该方案提出用户评分基本表明用户的喜好:小于3分为不喜欢,大于3分为喜欢。该方式把用户评分矩阵转换成两个列表:喜欢项目和不喜欢项目。再计算两个用户喜欢列表的Jaccard相似度和项目评分的均方位移乘积作为两个用户的相似度,则两个用户u1和u2的Jaccard相似度为:其中like(u)为用户所喜欢的项目集合。最终推荐系统准确率和召回率都有明显提高。
上述方案是先把评分矩阵转换成喜欢内容的列表,再用Jaccard相似度计算用户相似度。它较好地解决了传统相似度计算方式不适合集中性数据问题,但是,当数据稀疏时,用户选择相同项目的可能性越来越小,Jaccard相似度也很难计算出用户间相似度。
总之,协同过滤推荐作为目前推荐系统采用的主要技术,得到了广泛应用。相似度的计算作为过滤推荐系统的核心,直接决定了相似邻居计算和推荐结果的质量。然而,直至今天,仍然存在很多问题(如:数据稀疏性、冷启动等),其本质是在无评分数据或评分数据稀少时,用户之间相似度如何计算的问题。
例如:(1)传统相似度计算问题:余弦相似度、修正余弦相似度和皮尔逊相似度适用于离散分布的评分数据,然而,实际评分数据往往是集中的;同时当两个评分向量选取特定值时,会导致相似度无法计算或计算结果出现严重偏差。
(2)数据稀疏性问题:为了解决数据稀疏性问题,现有的数据填充方案主要缺陷是:数据填充不仅增加了计算量,还要占用大量内存,但对评分预测的准确率并未明显提高。数据降维方案的缺陷是:在降维过程中丢失了大量有用信息,最终推荐结果并不理想;相似度计算方式PIP也并未有效改善推荐结果。
总之,相似度的计算是基于协同过滤的推荐系统中最关键的操作步骤,目前的相似度计算方法存在的无法计算、计算准确度不高和占用大量内存等多个问题,都有待于业内科技人员尽快解决之。
发明内容
有鉴于此,本发明的目的是提供一种基于多维相似度的个性化新闻推荐方法,本发明根据新闻推荐领域的特殊性,结合新闻的内容特征、用户的行为特征和时间特征来计算用户或新闻的相似度。这样即使两个用户行为数据或新闻内容的重合度很低,但是,因新闻的内容相似,也可以计算出用户或新闻之间的相似度。同时,在相似度计算中加入时间特征,使得相似度的计算更加准确。最后,基于该相似度计算方法提供一种具有较高准确率的个性化新闻推荐方法。
为了达到上述目的,本发明提供了一种基于多维相似度的个性化新闻推荐方法,其特征在于:所述方法包括下列操作步骤:
(1)抓取新闻:根据新闻日志中记录的新闻网页地址、即统一资源定位符URL抓取每篇新闻的标题和正文,并存储于新闻数据库中;
(2)预处理新闻:从新闻数据库中取出新闻标题和正文,并使用分词系统对新闻正文进行分词、词性标注和提取其中名词,组成由新闻标识id-新闻名词序列构成的二维表,并存储于数据库中;
(3)训练主题模型:采用潜在狄利克雷分布LDA和多个主题k对从数据库中读取的新闻id-新闻名词序列表进行主题模型训练,得到每篇新闻的主题模型、即主题特征向量L=(w1,w2,...wl...,wk),且式中,自然数下标l是主题序号,其最大值为主题总个数k,wl是该新闻属于第l个主题的概率;
(4)建立由两个特征组成的新闻模型:一个是行为特征list((u1,t1),(u2,t2),(u3,t3),...),即从新闻日志中获取设定时间内对新闻产生浏览、评论、发布和推荐行为的用户u及其产生行为的时间t的序列;另一个是根据主题模型的训练结果得到每篇新闻的内容特征、即新闻主题特征向量L=(w1,w2,...wl...,wk);
(5)建立由两个特征组成的用户模型:一个是行为特征list((i1,t1),(i2,t2),(i3,t3),...),即从新闻日志中获取设定时间内用户产生行为的各个新闻i及产生行为的时间t的序列;另一个是每篇新闻的内容特征,即用户具有历史行为的所有新闻的主题特征向量的平均值、即用户的主题特征向量式中,n(u)是用户u产生行为的新闻集合,自然数下标i是新闻序号,L为新闻的主题特征向量;
(6)利用用户模型、新闻模型和时间特征分别计算设定时间内所有用户之间的相似度和所有新闻之间的相似度:这两种相似度计算又各自分为行为相似度和内容相似度的计算,再对该两种相似度数值加权求和,作为用户之间和新闻之间的最终融合相似度,然后,分别提取最相似的多个用户和多个新闻存入数据库;
(7)个性化推荐:分别依据最近的新闻日志记录,以及与设定用户最相似多个相似用户,生成基于用户的个性化推荐结果;或者依据设定用户当前产生行为新闻的最相似的多个新闻,生成基于新闻的个性化推荐结果;并实时更新推荐列表,如果当前尚未完成新闻的相似度的计算,则推荐结果维持不变。
本发明推荐方法的优点是:针对新闻领域的特殊性,在计算用户相似度和新闻相似度时,不仅考虑传统的用户行为相似度、即从用户行为数据的相似度出发,还融合新闻内容、即从新闻内容角度挖掘用户或新闻之间的相似性,以提高相似度计算的准确性。尤其在用户行为数据稀疏时,本发明方法比传统相似度算法更能挖掘用户相似性,使得推荐结果的准确率和召回率都得到明显提升。同时,本发明把时间特征引入到推荐过程中的各个环节:计算用户相似度和新闻相似度,以及Top-N推荐过程中,都考虑了时间特征,使得相似度的计算结果更加准确,推荐的新闻更具有时效性,以及最终的推荐结果准确率和召回率都得到显著提高,从而,提高了本发明基于多维相似度的个性化新闻推荐方法的推荐质量。
附图说明
图1(A)、(B)分别是基于用户和基于项目的两个协同过滤操作流程图。
图2是本发明基于多维相似度的个性化新闻推荐方法的操作步骤流程图。
图3是建立用户模型和新闻模型的操作步骤示意图。
图4是相似度计算和个性化推荐的操作步骤示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
本发明是针对新闻领域的特殊性所提出的一种融合了用户行为相似度和新闻内容相似度,并结合时间特征的多维相似度的个性化新闻推荐方法,用于提高个性化新闻推荐方法的推荐质量。
众所周知,个性化推荐新闻时,由于新闻日志系统存储的是大量隐式行为数据(包括浏览、评论、发布等),而不是显式评分数据,如何有效利用这些数据来计算用户或新闻的相似度是首先要解决的问题。目前的相似度计算方法仅仅利用用户行为数据来计算相似度,忽略了新闻的内容信息,更没有考虑时间特征。本发明方法是:先从新闻日志抽取设定时间的日志记录,根据日志记录的新闻源地址抓取新闻内容;并从该新闻内容中抽取标题和正文,对其进行分词处理和提取名词,以及采用主题模型对所得到的名词序列进行分析,得到该新闻的主题特征向量;接着,根据新闻的主题特征向量和用户行为数据,分别构建用户模型和新闻模型;根据用户模型、新闻模型和时间特征分别计算用户的内容相似度、行为相似度,以及新闻的内容相似度、行为相似度;再基于内容相似度和行为相似度计算最终的用户相似度和最终的新闻相似度,并分别提取最相似的多个用户和多个新闻;然后,分别依据最近的新闻日志记录和与设定用户最相似的多个相似用户,生成基于用户的个性化推荐结果;或者依据设定用户产生行为的新闻和与该新闻最相似的多个新闻,生成基于新闻的个性化推荐结果。
参见图2,介绍本发明方法的具体操作步骤:
步骤1,抓取新闻:根据新闻日志中记录的新闻网页地址、即统一资源定位符URL(Uniform Resource Locator)抓取每篇新闻的标题和正文,并存储于新闻数据库中。
步骤2,预处理新闻:从新闻数据库中取出新闻标题和正文,并使用中科院ICTCLAS分词系统对新闻正文进行分词、词性标注和提取其中名词,组成由新闻标识id-新闻名词序列构成的二维表,并存储于数据库中。
步骤3,训练主题模型:采用潜在狄利克雷分布LDA(Latent DirichletAllocation)和多个主题k对从数据库中读取的新闻id-新闻名词序列表进行主题模型训练,得到每篇新闻的主题模型、即主题特征向量L=(w1,w2,...wl...,wk),且式中,自然数下标l是主题序号,其最大值为主题总个数k,wl是该新闻属于第l个主题的概率。
步骤4,建立由两个特征组成的新闻模型(参见图3):一个是行为特征list((u1,t1),(u2,t2),(u3,t3),...),即从新闻日志中获取设定时间内对新闻产生浏览、评论、发布和推荐行为的用户u及其产生行为的时间t的序列;另一个是根据主题模型的训练结果得到的每篇新闻的内容特征、即新闻主题特征向量L=(w1,w2,...wl...,wk)。
步骤5,建立由两个特征组成的用户模型(参见图3):一个是行为特征list((i1,t1),(i2,t2),(i3,t3),...),即从新闻日志中获取设定时间内用户产生行为的各个新闻i及产生行为的时间t的序列;另一个是每篇新闻的内容特征,即用户具有历史行为的所有新闻的主题特征向量的平均值、即用户的主题特征向量式中,n(u)是用户u产生行为的新闻集合,自然数下标i是新闻序号,L为新闻的主题特征向量。
步骤6,利用用户模型、新闻模型和时间特征分别计算设定时间内所有用户之间的相似度和所有新闻之间的相似度(参见图4):这两种相似度计算又各自分为行为相似度和内容相似度的计算,再对该两种相似度数值加权求和,作为用户之间和新闻之间的最终融合相似度,然后,根据最终融合相似度分别提取最相似的多个用户和多个新闻存入数据库。
下面分别介绍该步骤中的用户相似度的计算和新闻相似度的计算,其中,计算用户相似度的操作包括下列内容:
(61)按照下述公式计算两个用户u和v的行为相似度sim(u,v):
式中,n(u)和n(v)分别为两个用户u和v产生过行为的新闻集合,m(i)为对第i篇新闻产生行为的用户集合;tui和tvi分别为用户u和v对第i篇新闻产生行为的时间,系数α是时间衰减因子,其数值取值范围为[0,1]。
这里先介绍两个用户n(u)和n(v)的Jaccard相似度计算公式为:本发明在计算n(u)和n(v)的Jaccard相似度的基础上,增加了两个维度:热度和时间。其中热度采用了John S.Breese提出的思想,时间特征是本发明提出的。
众所周知,John S.Breese提出两个用户对冷门物品采取过相同行为,更能说明两者兴趣的相似度。同样地,热门新闻对于用户相似度的贡献就没有冷门新闻对用户相似度的贡献大。例如,两个用户都看过伦敦奥运会开幕式的新闻,很难说明其兴趣相似;因为很多用户都会关注重大新闻事件。相反,如果两个用户都看过推荐领域最新进展的新闻,说明两个用户比较相似。用户对冷门物品有过相同行为,更能说明用户之间的相似性。因此根据John S.Breese的思想,上述用户行为相似度sim(u,v)公式对每篇新闻i赋予了惩罚处理因子:简单地说,就是新闻越热门,对用户间的相似度贡献越少。
两个用户兴趣相似,说明这两个用户喜欢的新闻内容很多是相同的,或者对很多相同新闻产生过行为。进一步说,如果两个用户在设定时间内对相同新闻产生行为,更能说明这两个用户间的相似性。因此,用户行为相似度的计算公式还引入了时间特征:这个因子是两个用户u和v阅读相同新闻的时间间隔的反函数,其表明:这两个用户的阅读时间越相近,数值越大。
(62)按照下述公式计算两个用户u和v的内容相似度、即余弦相似度cos(u,v):式中,和分别为用户u和用户v的主题特征向量;
(63)融合行为相似度sim(u,v)和内容相似度cos(u,v),按照下述公式计算两个用户u和v的最终用户相似度W(u,v):W(u,v)=βsim(u,v)+(1-β)cos(u,v);式中,系数β是由实验确定的加权因子,其数值取值范围为[0,1]。
该步骤中,计算新闻相似度操作包括下列内容:
(6A)按照下述公式计算两篇新闻i和j的行为相似度sim(i,j):
式中,m(i)和m(j)分别为对第i篇新闻和第j篇新闻产生行为的用户集合,tui和tuj分别为用户u对第i篇新闻和用户v对第j篇新闻产生行为的时间,系数α是时间衰减因子,其数值取值范围为[0,1];该公式考虑时间特征,因用户在相近时间看过两个新闻,更说明了这两个新闻间的相似性。
(6B)按照下述公式计算两篇新闻的内容相似度、即余弦相似度cos(i,j):式中,和分别为第i篇新闻和第j篇新闻的主题特征向量。
(6C)融合两篇新闻i和j的行为相似度sim(i,j)和内容相似度cos(i,j),按照下述公式计算这两篇新闻的最终新闻相似度W(i,j):W(i,j)=βsim(i,j)+(1-β)cos(i,j);式中,系数β是由实验确定的加权因子,其数值取值范围为[0,1]。
步骤7,个性化推荐(参见图4)有两种,一种是基于用户推荐:依据最近的新闻日志记录,以及与设定用户最相似多个相似用户,生成基于用户的个性化推荐结果;另一种是基于新闻推荐:依据设定用户当前产生行为新闻的最相似的多个新闻,生成基于新闻的个性化推荐结果;并且,都要实时更新推荐列表,如果当前尚未完成新闻的相似度的计算,则推荐结果维持不变。
其中基于用户的个性化推荐包括下列操作内容:
(71)实际系统中比较常用Top-N推荐,而不是评分预测。因为推荐给用户的新闻是否正确的判断标准是:用户是否喜欢,而不是其看完新闻后对该新闻的评分。本发明在传统新闻推荐基础上加入时间特征,使得推荐结果具有时效性。按照下述公式计算最近时间段内设定用户u对其未产生行为的每篇新闻的偏好程度:式中,S(u,K)为用户u的最相似的K个用户集合,m(i)为对第i篇新闻产生行为的用户集合,W(u,v)为两个用户u和v的最终用户相似度,t’为当前时间,tvi为用户v对第i篇新闻产生行为的时间,系数γ为时间衰减因子,其取值范围[0,1]。若邻居用户v对对第i篇新闻产生行为的时间越远,则该对第i篇新闻出现在推荐列表中的可能性越小。也就是邻居用户v最近产生行为的新闻对用户推荐结果影响较大。
(72)根据最近时间段内设定用户u对其未产生行为的每篇新闻的偏好程度值的大小,对这些新闻进行降序排列,再选取其中偏好值高的多个新闻作为向该设定用户u个性化推荐的新闻列表。
基于新闻的个性化推荐包括下列操作内容:实时获取设定用户当前正在产生行为的新闻,再从数据库中选择和该新闻最相似的多篇新闻向该用户推荐(比如:新闻,最相似新闻1,最相似新闻2,最相似新闻3。这里只选取前3个相似的新闻);如果该新闻的相似新闻还未计算出来,即数据库中不存在相似新闻时,则推荐列表维持不变;这样,该用户对某篇新闻产生行为后,可快速更新所推荐的新闻列表,以便实现对用户新闻兴趣偏好的即时追踪。
本发明已经进行了大量的实施试验,下面简要说明实施试验的情况:实施例中的数据集采集于抽屉网站7月份的访问记录。
1、主题模型提取:通过中科院的ICTCLAS汉语分词系统,对新闻集进行分词,过滤选取其中的名词,再删除其中词语数少于5个的新闻。选取的主题数为150,然后通过LDA方法进行主题模型训练,得到新闻的主题特征向量I=(w1,w2,w3,...,wn),其中wl是新闻I属于主题l的概率。读取用户浏览历史表,计算用户的主题特征向量其中n(u)是用户u浏览历史。
2、基于用户协同过滤推荐和基于项目协同过滤推荐:根据实验确定α=4×10-10、β=0.2、γ=4×10-9。再分别根据下述三个公式计算用户相似度: 和W(u,v)=βsim(u,v)+(1-β)cos(u,v)。
然后,再根据公式对每个用户分别计算其对所有新闻的兴趣偏好程度。最后,把兴趣偏好程度数值最高的前10篇新闻推荐到用户推荐列表中。
然后,根据下述三个公式: 和W(i,j)=βsim(i,j)+(1-β)cos(i,j)计算新闻相似度,并把其中前三个相似的新闻存储起来。当用户访问完一个新闻后,立即把该3个最相似的新闻呈现给用户。
总之,本发明的实施试验是成功的,实现了发明目的。
Claims (5)
1.一种基于多维相似度的个性化新闻推荐方法,其特征在于:所述方法包括下列操作步骤:
(1)抓取新闻:根据新闻日志中记录的新闻网页地址、即统一资源定位符URL抓取每篇新闻的标题和正文,并存储于新闻数据库中;
(2)预处理新闻:从新闻数据库中取出新闻标题和正文,并使用分词系统对新闻正文进行分词、词性标注和提取其中名词,组成由新闻标识id-新闻名词序列构成的二维表,并存储于数据库中;
(3)训练主题模型:采用潜在狄利克雷分布LDA和多个主题k对从数据库中读取的新闻id-新闻名词序列表进行主题模型训练,得到每篇新闻的主题模型、即主题特征向量L=(w1,w2,...wl...,wk),且式中,自然数下标l是主题序号,其最大值为主题总个数k,wl是该新闻属于第l个主题的概率;
(4)建立由两个特征组成的新闻模型:一个是行为特征list((u1,t1),(u2,t2),(u3,t3),...),即从新闻日志中获取设定时间内对新闻产生浏览、评论、发布和推荐行为的用户u及其产生行为的时间t的序列;另一个是根据主题模型的训练结果得到每篇新闻的内容特征、即新闻主题特征向量L=(w1,w2,...wl...,wk);
(5)建立由两个特征组成的用户模型:一个是行为特征list((i1,t1),(i2,t2),(i3,t3),...),即从新闻日志中获取设定时间内用户产生行为的各个新闻i及产生行为的时间t的序列;另一个是每篇新闻的内容特征,即用户具有历史行为的所有新闻的主题特征向量的平均值、即用户的主题特征向量式中,n(u)是用户u产生行为的新闻集合,自然数下标i是新闻序号,L为新闻的主题特征向量;
(6)利用用户模型、新闻模型和时间特征分别计算设定时间内所有用户之间的相似度和所有新闻之间的相似度:这两种相似度计算又各自分为行为相似度和内容相似度的计算,再对该两种相似度数值加权求和,作为用户之间和新闻之间的最终融合相似度,然后,分别提取最相似的多个用户和多个新闻存入数据库;
(7)个性化推荐:分别依据最近的新闻日志记录,以及与设定用户最相似多个相似用户,生成基于用户的个性化推荐结果;或者依据设定用户当前产生行为新闻的最相似的多个新闻,生成基于新闻的个性化推荐结果;并实时更新推荐列表,如果当前尚未完成新闻的相似度的计算,则推荐结果维持不变。
2.根据权利要求1所述的方法,其特征在于:所述步骤(6)中,计算用户相似度包括下列操作内容:
(61)按照下述公式计算两个用户u和v的行为相似度sim(u,v):
式中,n(u)和n(v)分别为用户u和v产生过行为的新闻集合,m(i)为对第i篇新闻产生行为的用户集合;tui和tvi分别为用户u和v对第i篇新闻产生行为的时间,系数α是时间衰减因子,其数值取值范围为[0,1];
(62)按照下述公式计算两个用户u和v的内容相似度、即余弦相似度cos(u,v):式中,和分别为用户u和用户v的主题特征向量;
(63)按照下述公式计算两个用户u和v的最终用户相似度W(u,v):
W(u,v)=βsim(u,v)+(1-β)cos(u,v);式中,sim(u,v)为该两个用户u和v的行为相似度,cos(u,v)为该两个用户u和v的内容相似度,系数β是由实验确定的加权因子,其数值取值范围为[0,1]。
3.根据权利要求1所述的方法,其特征在于:所述步骤(6)中,计算新闻相似度包括下列操作内容:
(6A)按照下述公式计算两篇新闻i和j的行为相似度sim(i,j):
式中,m(i)和m(j)分别为对第i篇新闻和第j篇新闻产生过行为的用户集合,tui和tuj分别为用户u对第i篇新闻和用户v对第j篇新闻产生行为的时间,系数α是时间衰减因子,其数值取值范围为[0,1];
(6B)按照下述公式计算两篇新闻的内容相似度、即余弦相似度cos(i,j):式中,和分别为第i篇新闻和第j篇新闻的主题特征向量;
(6C)按照下述公式计算两篇新闻i和j的最终新闻相似度W(i,j):
W(i,j)=βsim(i,j)+(1-β)cos(i,j);式中,sim(i,j)为两篇新闻i和j的行为相似度,cos(i,j)为两篇新闻i和j的内容相似度,系数β是由实验确定的加权因子,其数值取值范围为[0,1]。
4.根据权利要求1所述的方法,其特征在于:所述步骤(7)中,基于用户的个性化推荐包括下列操作内容:
(71)按照下述公式计算最近时间段内设定用户u对其未产生行为的每篇新闻的偏好程度:式中,S(u,K)为用户u的最相似的K个用户集合,m(i)为对第i篇新闻产生行为的用户集合,W(u,v)为两个用户u和v的最终用户相似度,t’为当前时间,tvi为用户v对第i篇新闻产生行为的时间,系数γ为时间衰减因子,其取值范围[0,1];
(72)根据最近时间段内设定用户u对其未产生行为的每篇新闻的偏好程度值的大小,对这些新闻进行降序排列,再选取其中偏好值高的多个新闻作为向该设定用户u个性化推荐的新闻列表。
5.根据权利要求1所述的方法,其特征在于:所述步骤(7)中,基于新闻的个性化推荐包括下列操作内容:实时获取设定用户当前正在产生行为的新闻,再从数据库中选择和该新闻最相似的多篇新闻向该用户推荐;如果该新闻的相似新闻还未计算出来,即数据库中不存在相似新闻时,则推荐列表维持不变;也就是,该用户对某篇新闻产生行为后,快速更新所推荐的新闻列表,以便实现对用户新闻兴趣偏好的即时追踪。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210355209.0A CN102929928B (zh) | 2012-09-21 | 2012-09-21 | 基于多维相似度的个性化新闻推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210355209.0A CN102929928B (zh) | 2012-09-21 | 2012-09-21 | 基于多维相似度的个性化新闻推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102929928A CN102929928A (zh) | 2013-02-13 |
CN102929928B true CN102929928B (zh) | 2015-04-22 |
Family
ID=47644726
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210355209.0A Expired - Fee Related CN102929928B (zh) | 2012-09-21 | 2012-09-21 | 基于多维相似度的个性化新闻推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102929928B (zh) |
Families Citing this family (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104111925B (zh) * | 2013-04-16 | 2017-11-03 | 中国移动通信集团公司 | 项目推荐方法和装置 |
CN103207917B (zh) * | 2013-04-25 | 2017-03-08 | 百度在线网络技术(北京)有限公司 | 标注多媒体内容的方法、生成推荐内容的方法及系统 |
CN104572766B (zh) * | 2013-10-25 | 2018-03-09 | 华为技术有限公司 | 一种社交网络的用户状态识别方法及装置 |
CN103544623B (zh) * | 2013-11-06 | 2016-07-13 | 武汉大学 | 一种基于用户偏好特征建模的Web 服务推荐方法 |
CN103577579B (zh) * | 2013-11-08 | 2015-01-21 | 南方电网科学研究院有限责任公司 | 基于用户潜在需求的资源推荐方法及系统 |
WO2015096146A1 (en) * | 2013-12-27 | 2015-07-02 | Yahoo! Inc. | Systems and methods for a unified audience targeting solution |
CN104053023B (zh) * | 2014-06-13 | 2018-11-30 | 海信集团有限公司 | 一种确定视频相似度的方法及装置 |
CA2963516C (en) * | 2014-10-17 | 2023-01-17 | Thomson Reuters Global Resources | On-demand video news programming |
CN104572855A (zh) * | 2014-12-17 | 2015-04-29 | 深圳先进技术研究院 | 一种新闻推荐方法及装置 |
CN108363815B (zh) * | 2015-07-20 | 2021-08-24 | 阿里巴巴(中国)有限公司 | 一种网页页面的预读取方法、装置及智能终端设备 |
CN105117443B (zh) * | 2015-08-12 | 2018-07-20 | 华南理工大学 | 一种基于多关系网络的推荐算法 |
CN106484745B (zh) * | 2015-09-01 | 2019-08-30 | 腾讯科技(深圳)有限公司 | 一种歌曲数据处理方法和装置 |
EP3139327A1 (en) * | 2015-09-03 | 2017-03-08 | Huawei Technologies Co., Ltd. | Random index pattern matching based email relations finder system |
CN105468668B (zh) * | 2015-10-13 | 2019-09-20 | 清华大学 | 一种官方媒体新闻中话题的推送方法及装置 |
CN105282616A (zh) * | 2015-11-13 | 2016-01-27 | 云南大学 | 一种组合协同过滤iptv节目推荐方法 |
CN105718579B (zh) * | 2016-01-22 | 2018-12-18 | 浙江大学 | 一种基于上网日志挖掘和用户活动识别的信息推送方法 |
CN105786979B (zh) * | 2016-02-07 | 2020-03-17 | 重庆邮电大学 | 一种基于隐链接的用户参与热点话题行为分析方法及系统 |
CN105868334B (zh) * | 2016-03-28 | 2020-10-30 | 云南财经大学 | 一种基于特征递增型的电影个性化推荐方法及系统 |
CN106095960A (zh) * | 2016-06-16 | 2016-11-09 | 广州杰赛科技股份有限公司 | 一种网络服务推荐方法及装置 |
CN106202394B (zh) | 2016-07-07 | 2021-03-19 | 腾讯科技(深圳)有限公司 | 文本资讯的推荐方法及系统 |
CN105975641A (zh) * | 2016-07-15 | 2016-09-28 | 合网络技术(北京)有限公司 | 视频推荐方法及装置 |
CN107038184B (zh) * | 2016-10-14 | 2019-11-08 | 厦门大学 | 一种基于分层隐变量模型的新闻推荐方法 |
CN107977196B (zh) * | 2016-10-21 | 2020-11-20 | 腾讯科技(北京)有限公司 | 一种文本生成方法及服务器 |
CN106649686B (zh) * | 2016-12-16 | 2018-05-04 | 天翼爱音乐文化科技有限公司 | 基于多层潜在特征的用户兴趣分群方法及系统 |
CN108255840B (zh) * | 2016-12-28 | 2021-04-02 | 北京酷我科技有限公司 | 一种歌曲的推荐方法和系统 |
CN107103049A (zh) * | 2017-03-31 | 2017-08-29 | 努比亚技术有限公司 | 一种推荐方法及网络设备 |
CN106997397A (zh) * | 2017-04-17 | 2017-08-01 | 山东辰华科技信息有限公司 | 基于大数据的科技信息个性化定制推送系统 |
CN107357847B (zh) * | 2017-06-26 | 2020-07-31 | 北京京东尚科信息技术有限公司 | 数据处理方法及其装置 |
CN107463645A (zh) * | 2017-07-21 | 2017-12-12 | 雷锤智能科技南京有限公司 | 基于用户属性评分导向的个性化推荐系统及其推荐方法 |
CN107688658A (zh) * | 2017-09-05 | 2018-02-13 | 北京奇艺世纪科技有限公司 | 一种异常数据的定位方法及装置 |
CN107423453A (zh) * | 2017-09-12 | 2017-12-01 | 正方软件股份有限公司 | 一种数据信息显示方法及其系统 |
CN107766446A (zh) * | 2017-09-22 | 2018-03-06 | 北京网众共创科技有限公司 | 资讯信息的推送方法、装置、存储介质及处理器 |
CN110019802B (zh) * | 2017-12-08 | 2021-09-03 | 北京京东尚科信息技术有限公司 | 一种文本聚类的方法和装置 |
CN108269122B (zh) * | 2017-12-29 | 2021-08-06 | 阿里巴巴(中国)有限公司 | 广告的相似度处理方法和装置 |
CN108596815A (zh) * | 2018-04-08 | 2018-09-28 | 深圳市和讯华谷信息技术有限公司 | 基于移动终端的用户行为相似度识别方法、系统及装置 |
CN108763400B (zh) * | 2018-05-22 | 2021-09-14 | 合肥工业大学 | 基于对象行为和主题偏好的对象划分方法及装置 |
CN108845560B (zh) * | 2018-05-30 | 2021-07-13 | 国网浙江省电力有限公司宁波供电公司 | 一种电力调度日志故障分类方法 |
CN108876457B (zh) * | 2018-06-15 | 2021-05-18 | 赣州柏朗科技有限公司 | 一种用于解决数据稀疏的新闻推荐方法 |
CN109062999B (zh) * | 2018-07-06 | 2020-11-10 | 无锡众创未来科技应用有限公司 | 一种基于用户行为的个性化新闻推荐方法及装置 |
CN109241415B (zh) * | 2018-08-20 | 2023-04-14 | 平安科技(深圳)有限公司 | 项目推荐方法、装置、计算机设备及存储介质 |
CN109271592B (zh) * | 2018-09-30 | 2021-02-23 | 东软集团股份有限公司 | 一种物品推荐方法、装置、存储介质及程序产品 |
CN110162690B (zh) * | 2018-10-23 | 2023-04-18 | 腾讯科技(深圳)有限公司 | 确定用户对物品的兴趣度的方法与装置、设备和存储介质 |
CN109508421B (zh) * | 2018-11-26 | 2020-11-13 | 中国电子科技集团公司第二十八研究所 | 一种基于词向量的文献推荐方法 |
CN109710875A (zh) * | 2018-12-11 | 2019-05-03 | 广州市西美信息科技有限公司 | 一种基于用户操作日志数据的行为分析方法 |
CN109657153B (zh) * | 2018-12-28 | 2020-10-13 | 丹翰智能科技(上海)有限公司 | 一种用于确定用户的关联财经信息的方法与设备 |
CN109993649A (zh) * | 2019-03-13 | 2019-07-09 | 王亚萍 | 一种先导式纳税咨询服务推送方法 |
CN109933730A (zh) * | 2019-03-29 | 2019-06-25 | 沈阳师范大学 | 一种中小学教育的名师优课推荐资源应用方法及系统 |
CN111831890B (zh) * | 2019-04-17 | 2024-02-13 | 腾讯科技(深圳)有限公司 | 用户相似度生成方法、装置、存储介质和计算机设备 |
CN110458420A (zh) * | 2019-07-18 | 2019-11-15 | 平安科技(深圳)有限公司 | 一种分值评估方法、装置及存储介质 |
CN111026956B (zh) * | 2019-11-20 | 2021-03-23 | 拉扎斯网络科技(上海)有限公司 | 数据列表处理方法、装置、电子设备及计算机存储介质 |
CN111401040B (zh) * | 2020-03-17 | 2021-06-18 | 上海爱数信息技术股份有限公司 | 一种适用于word文本的关键词提取方法 |
CN112286978A (zh) * | 2020-03-27 | 2021-01-29 | 尹兵 | 基于云计算的数据推送方法及电子设备 |
CN111601164A (zh) * | 2020-05-21 | 2020-08-28 | 广州欢网科技有限责任公司 | 一种智能电视新闻推送方法及系统 |
CN111738768A (zh) * | 2020-06-24 | 2020-10-02 | 江苏云柜网络技术有限公司 | 广告推送方法及系统 |
CN111753208B (zh) * | 2020-06-30 | 2021-08-31 | 贝壳找房(北京)科技有限公司 | 确定用户可比属性收敛度的方法、装置、介质和电子设备 |
CN112182351A (zh) * | 2020-09-28 | 2021-01-05 | 哈尔滨工业大学(深圳) | 一种基于多特征融合的新闻推荐方法及装置 |
CN112613296A (zh) * | 2020-12-07 | 2021-04-06 | 深圳价值在线信息科技股份有限公司 | 新闻的重要程度获取方法、装置、终端设备及存储介质 |
CN112231593B (zh) * | 2020-12-15 | 2021-03-12 | 上海朝阳永续信息技术股份有限公司 | 一种金融资讯智能推荐系统 |
CN112685643B (zh) * | 2021-01-12 | 2021-10-22 | 上海观察者信息技术有限公司 | 一种新闻信息的推送方法、装置、介质及电子设备 |
CN113656708B (zh) * | 2021-10-20 | 2021-12-24 | 北京搜狐新媒体信息技术有限公司 | 一种确定物品相似度的方法及系统 |
CN117251643B (zh) * | 2023-08-29 | 2024-05-07 | 海南大学 | 基于协同过滤和概率语言术语集的新闻推荐方法及系统 |
CN117641004B (zh) * | 2023-11-22 | 2024-05-14 | 北京风平智能科技有限公司 | 一种短视频推荐方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5867799A (en) * | 1996-04-04 | 1999-02-02 | Lang; Andrew K. | Information system and method for filtering a massive flow of information entities to meet user information classification needs |
CN101174273A (zh) * | 2007-12-04 | 2008-05-07 | 清华大学 | 基于元数据分析的新闻事件检测方法 |
CN102376063A (zh) * | 2011-11-29 | 2012-03-14 | 北京航空航天大学 | 一种基于社会化标签的个性化推荐系统优化方法 |
-
2012
- 2012-09-21 CN CN201210355209.0A patent/CN102929928B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5867799A (en) * | 1996-04-04 | 1999-02-02 | Lang; Andrew K. | Information system and method for filtering a massive flow of information entities to meet user information classification needs |
CN101174273A (zh) * | 2007-12-04 | 2008-05-07 | 清华大学 | 基于元数据分析的新闻事件检测方法 |
CN102376063A (zh) * | 2011-11-29 | 2012-03-14 | 北京航空航天大学 | 一种基于社会化标签的个性化推荐系统优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102929928A (zh) | 2013-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102929928B (zh) | 基于多维相似度的个性化新闻推荐方法 | |
CN104899273B (zh) | 一种基于话题和相对熵的网页个性化推荐方法 | |
CN104166668B (zh) | 基于folfm模型的新闻推荐系统及方法 | |
Philip et al. | Application of content-based approach in research paper recommendation system for a digital library | |
CN102033883B (zh) | 一种提高网站数据传输速度的方法、装置及系统 | |
CN105022827B (zh) | 一种面向领域主题的Web新闻动态聚合方法 | |
CN101923545B (zh) | 一种个性化信息推荐的方法 | |
CN101641697B (zh) | 对网页的相关搜索查询及其应用 | |
CN103049440B (zh) | 一种相关文章的推荐处理方法和处理系统 | |
CN105426528A (zh) | 一种商品数据的检索排序方法及系统 | |
CN103455487B (zh) | 一种搜索词的提取方法及装置 | |
CN105045931A (zh) | 一种基于Web挖掘的视频推荐方法和系统 | |
CN104866554B (zh) | 一种基于社会化标注的个性化搜索方法及系统 | |
CN101482884A (zh) | 一种基于用户偏好评分分布的协作推荐系统 | |
Lu et al. | Scalable news recommendation using multi-dimensional similarity and Jaccard–Kmeans clustering | |
CN101256596A (zh) | 一种站内导航的方法及系统 | |
CN104462336A (zh) | 信息推送方法和装置 | |
CN105023178B (zh) | 一种基于本体的电子商务推荐方法 | |
CN103839169A (zh) | 一种基于频率矩阵和文本相似度的个性化商品推荐方法 | |
CN104484431A (zh) | 一种基于领域本体的多源个性化新闻网页推荐方法 | |
CN103049528A (zh) | 基于用户兴趣向量的个性化网页搜索排序方法 | |
CN103064903A (zh) | 图片检索方法和装置 | |
CN103942285A (zh) | 一种针对页面动态元素的推荐方法和系统 | |
Liu et al. | Query sensitive dynamic web video thumbnail generation | |
CN109670909A (zh) | 一种基于概率矩阵分解和特征融合的旅游产品推荐方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150422 Termination date: 20210921 |
|
CF01 | Termination of patent right due to non-payment of annual fee |