CN103823908A - 基于用户偏好的内容推荐方法和服务器 - Google Patents

基于用户偏好的内容推荐方法和服务器 Download PDF

Info

Publication number
CN103823908A
CN103823908A CN201410108119.0A CN201410108119A CN103823908A CN 103823908 A CN103823908 A CN 103823908A CN 201410108119 A CN201410108119 A CN 201410108119A CN 103823908 A CN103823908 A CN 103823908A
Authority
CN
China
Prior art keywords
list
content item
recommendation list
recommendation
user
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.)
Granted
Application number
CN201410108119.0A
Other languages
English (en)
Other versions
CN103823908B (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 Feijiu Liutian Tech Co Ltd
Original Assignee
Beijing Feijiu Liutian Tech 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 Beijing Feijiu Liutian Tech Co Ltd filed Critical Beijing Feijiu Liutian Tech Co Ltd
Priority to CN201410108119.0A priority Critical patent/CN103823908B/zh
Publication of CN103823908A publication Critical patent/CN103823908A/zh
Application granted granted Critical
Publication of CN103823908B publication Critical patent/CN103823908B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • G06Q30/0271Personalized advertisement
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种基于用户偏好的内容推荐方法和服务器。该方法包括:(a)基于所述用户的历史偏好信息,计算所述用户的偏好指数向量;(b)基于所述偏好指数向量,从待选推荐列表中选出要推荐的内容项,以构成最终推荐列表;以及(c)向所述用户提供所述最终推荐列表。

Description

基于用户偏好的内容推荐方法和服务器
技术领域
本发明涉及内容推荐领域,更具体地涉及基于用户偏好的内容推荐方法和服务器。
背景技术
近年来,随着智能手机、平板电脑等移动终端的普及,移动互联网已经成为我们在生产、生活中不可或缺的一部分。移动终端已经不再只是一个基本通讯和信息传递的终端,而是成为了人们随身携带的娱乐应用终端。这一变化,催生了巨大的移动应用市场产业,人们在日常的学习、工作、休息时大量的使用移动终端上的各种应用(例如,app)。例如,在学习时可以通过教育类app来获得各种知识;在工作时可以通过例如金融类app获得各种重要的金融信息、新闻等或通过地图类应用获得定位/导航功能等;在休息时可以通过媒体类app欣赏电影、电视剧、音乐、图书等。
与此同时,移动终端也改变了用户的消费方式、消费习惯和消费行为。PC用户和移动终端用户在采购他们服务的时候在时间上是有显著区别的:移动终端上的消费者普遍比较没有耐心,总是希望立刻就可以找到他们想要的东西,而PC用户则相对更有耐心,愿意花时间去搜索或等待更价廉物美的商品和/或服务。
这方面的典型例子是82%的利用移动终端预定酒店房间的用户是在24小时以内决定并完成的。这几乎就相当于用户到了目的地就用手机来订酒店。与在电脑上预定酒店房间的用户相比,这些用户花的时间要短的多。移动终端用户的这种“冲动性购买”、“即时性购买”行为,其实是对传统互联网相对慢条斯理的商务模式的一种颠覆。针对这种新的变化,企业需要在极短的时间内帮助用户找到他们可能感兴趣的商品并进行推荐,以占领移动营销的先机。因此就需要一种根据已有的数据(例如,销售数据)来预测用户可能关注的商品/服务的内容推荐***。
在现有的内容推荐方案中,协同过滤算法是重要的内容推荐算法之一。GroupLens在1994年提出了基于用户的协同过滤(简称为CF-U,即Collaborative Filtering User-based)算法。该算法是最早得到应用的协同过滤算法,其主要分为三个步骤:
1)数据表述。通常首先获得一个m×n的用户-项目评分矩阵R,m行代表用户数,n列代表项目数,矩阵元素ri,j表示用户i对项目j的评分值;
2)根据用户-项目评分矩阵来计算用户的相似度,按照相似度从大到小为当前用户求得一个最近邻集合N;以及
3)产生推荐数据集。针对当前用户获得了k最近邻后,可以基于这k个邻居对任意项目的评分,来预测当前用户对该项目的评分。然后根据预测评分的高低,从所有预测了评分的项目中选择一个或多个项目作为最后的推荐结果。
在该过程中,为了要得到与当前用户评分最相似的k近邻,必须计算用户之间的相似度。传统的相似性度量方法一般为余弦相似性。用户评分被当成n维空间向量。如果用户对项目没有进行评分,则用户对该项目的评分设为0。用户a和b之间的相似度通过它们评分向量间的余弦夹角度量来如下给出:
sim ( u a , u b ) = cos ( u a , u b ) = u a * u b | u a | * | u b | = Σ j = 1 n r a , j * r b , j Σ j = 1 n r a , j 2 * Σ j = 1 n r b , j 2
其中,ua表示用户a的n维评分向量,ub表示用户b的n维评分向量,sim(ua,ub)表示ua和ub之间的相似度,cos(ua,ub)表示ua和ub之间的余弦相似度,|·|表示向量的范数,ra,j表示用户a对内容项j的评分。用传统的预测方法,预测用户a对项目j的评分,其中N为用户a的最近邻集合,是用户a的平均评分,
Figure BDA0000480172290000023
是用户b的平均评分:
pred ( a , j ′ ) = r a ‾ + Σ b ∈ N ( sim ( a , b ) * ( r b , j ′ - r b ‾ ) ) Σ b ∈ N sim ( a , b )
其中,pred(a,j′)表示预测出的用户a对项目j′的评分。
然而随着***中的数据量日益庞大,导致目前的一些推荐技术不能实时快速有效的做出推荐。与此同时,一个始终困扰着推荐***的问题是局部数据稀疏性问题。尽管***的总体数据量极大,但是平摊至每个用户,其所浏览和/或购买的商品占***中总商品数的比例实在太少,这就导致了在计算用户相似度的问题上无法做到准确有效。
例如,在向用户a做个性化推荐的时候,根据例如上述算法,用户a的个人行为特征全部由他的最近邻体现。在有充足数据的情况下,最近邻大概率地能够体现用户a的兴趣偏好。但是当数据过于稀疏的时候,根据上述算法找到的用户a的最近邻与用户a的相似度实际上很低,则由最近邻来代表用户a的行为特征的可信度自然也就大打折扣。
此外,上述算法还常常忽视用户对不同种类商品的偏好这一重要信息,从而也严重影响了推荐结果的有效性。
目前,在推荐***领域中比较成熟的应用包括Amazon和Netflix的推荐***。Amazon推荐***涉及电子商务领域,使用了混合推荐算法,一种是改进的基于项目的协同过滤技术,另一种是按照用户社交网络中好友关系,给用户推荐好友在Amazon上喜欢的物品。Netflix推荐***涉及在线影片租赁,采用的同样是一种结合了用户行为模式后改良的基于项目的协同过滤技术。这二者在不同程度上均具有以上方面的问题。而相对于这两个领域,在移动应用市场的领域中,由于其受到的关注相对较少,因此其中的用户行为特征的研究成果也不多,而且数据稀疏问题更加严重。
发明内容项
为了解决上述问题,提供了根据本发明的基于用户偏好的内容推荐方法和服务器。
根据本发明的第一方面,提供了一种基于用户偏好的内容推荐方法。该方法包括:(a)基于所述用户的历史偏好信息,计算所述用户的偏好指数向量;(b)基于所述偏好指数向量,从待选推荐列表中选出要推荐的内容项,以构成最终推荐列表;以及(c)向所述用户提供所述最终推荐列表。
在一些实施例中,所述历史偏好信息是通过统计预定时间段内所述用户下载的内容项来得到的。
在一些实施例中,所述预定时间段是1个月。
在一些实施例中,步骤(a)还包括:(a1)将统计出的用户下载的内容项分成一个或多个类别;(a2)针对所述一个或多个类别中的每个类别,计算用户下载的内容项中属于该类别的内容项的数目与用户下载的内容项的总数的比值;以及(a3)根据所述一个或多个类别中的所有类别的相应比值,构成所述用户在所述预定时间段内的偏好指数向量。
在一些实施例中,所述一个或多个类别包括以下至少一项:音频、视频、图书、主题、游戏、以及工具软件。
在一些实施例中,所述待选推荐列表是通过推荐算法针对所述用户生成的,以及所述推荐算法是以下至少一项:基于内容的推荐;基于协同过滤的推荐;基于关联规则的推荐;基于效用的推荐;基于知识的推荐;以及上述各项的任意组合。
在一些实施例中,所述基于协同过滤的推荐包括以下至少一项:基于用户的协同过滤推荐(CF-U);基于项目的协同过滤推荐(CF-I);基于模型的协同过滤推荐(CF-M);以及以上各项的任意组合。
在一些实施例中,步骤(b)包括:(b1)根据所述待选推荐列表中各个内容项的类别,将所述待选推荐列表分为一个或多个分类子列表;(b2)基于所述偏好指数向量,从相应分类子列表中选出排名靠前的内容项,以填入所述最终推荐列表;以及(b3)基于所述待选推荐列表中未被选择的内容项,调整所述最终推荐列表。
在一些实施例中,步骤(b2)包括:(b21)基于所述偏好指数向量中与各个类别相对应的偏好指数以及所述最终推荐列表的长度,计算在所述最终推荐列表中每个类别所占的预期数目;以及(b22)针对每个类别,从相应分类子列表中选出相应预期数目的排名靠前的内容项,以填入所述最终推荐列表。
在一些实施例中,步骤(b22)中的选择是以下两种方式之一:每次在一个分类子列表中选出一个当前排名第一的内容项,并针对所有分类子列表循环进行,其中,跳过已被选空的分类子列表和被选择内容项的数目达到相应预期数目的分类子列表;或者在每个分类子列表中一次性选出相应预期数目的内容项,其中,如果分类子列表中的内容项的数目小于相应预期数目,则将该分类子列表中的所有内容项全部选出。
在一些实施例中,步骤(b3)包括:(b31)如果所述分类子列表中内容项的数目小于相应的预期数目,从所述待选推荐列表中未被选择的剩余内容项中选择排名靠前的内容项,以将所述最终推荐列表补全;(b32)判断所述待选推荐列表中未被选择的剩余内容项中排名第一的内容项的评分与所述最终推荐列表中排名最后的内容项的评分之间的差值是否大于预定阈值,如果大于所述预定阈值,则交换这二者并重复步骤(b32)直到所述待选推荐列表中未被选择的剩余内容项中排名第一的内容项的评分与所述最终推荐列表中排名最后的内容项的评分之间的差值小于等于所述预定阈值,以得到所述最终推荐列表。
在一些实施例中,所述最终推荐列表中的内容项是按内容项的打分顺序由高至低排列的。
在一些实施例中,所述内容项至少包括以下各项信息:内容名称、内容类型、以及内容打分。
根据本发明的第二方面,提供了一种基于用户偏好的内容推荐服务器。所述服务器包括:偏好指数计算单元,用于基于所述用户的历史偏好信息,计算所述用户的偏好指数向量;推荐内容选择单元,用于基于所述偏好指数向量,从待选推荐列表中选出要推荐的内容项,以构成最终推荐列表;以及推荐列表提供单元,用于向所述用户提供所述最终推荐列表。
在一些实施例中,所述历史偏好信息是通过统计预定时间段内所述用户下载的内容项来得到的。
在一些实施例中,所述预定时间段是1个月。
在一些实施例中,所述偏好指数计算单元还用于:(a1)将统计出的用户下载的内容项分成一个或多个类别;(a2)针对所述一个或多个类别中的每个类别,计算用户下载的内容项中属于该类别的内容项的数目与用户下载的内容项的总数的比值;以及(a3)根据所述一个或多个类别中的所有类别的相应比值,构成所述用户在所述预定时间段内的偏好指数向量。
在一些实施例中,所述一个或多个类别包括以下至少一项:音频、视频、图书、主题、游戏、以及工具软件。
在一些实施例中,所述待选推荐列表是通过推荐算法针对所述用户生成的,以及所述推荐算法是以下至少一项:基于内容的推荐;基于协同过滤的推荐;基于关联规则的推荐;基于效用的推荐;基于知识的推荐;以及上述各项的任意组合。
在一些实施例中,所述基于协同过滤的推荐包括以下至少一项:基于用户的协同过滤推荐(CF-U);基于项目的协同过滤推荐(CF-I);基于模型的协同过滤推荐(CF-M);以及以上各项的任意组合。
在一些实施例中,所述推荐内容选择单元还用于:(b1)根据所述待选推荐列表中各个内容项的类别,将所述待选推荐列表分为一个或多个分类子列表;(b2)基于所述偏好指数向量,从相应分类子列表中选出排名靠前的内容项,以填入所述最终推荐列表;以及(b3)基于所述待选推荐列表中未被选择的内容项,调整所述最终推荐列表。
在一些实施例中,所述推荐内容选择单元还用于:(b21)基于所述偏好指数向量中与各个类别相对应的偏好指数以及所述最终推荐列表的长度,计算在所述最终推荐列表中每个类别所占的预期数目;以及(b22)针对每个类别,从相应分类子列表中选出相应预期数目的排名靠前的内容项,以填入所述最终推荐列表。
在一些实施例中,所述推荐内容选择单元从分类子列表中进行选择是以下两种方式之一:每次在一个分类子列表中选出一个当前排名第一的内容项,并针对所有分类子列表循环进行,其中,跳过已被选空的分类子列表和被选择内容项的数目达到相应预期数目的分类子列表;或者在每个分类子列表中一次性选出相应预期数目的内容项,其中,如果分类子列表中的内容项的数目小于相应预期数目,则将该分类子列表中的所有内容项全部选出。
在一些实施例中,所述推荐内容选择单元还用于:(b31)如果所述分类子列表中内容项的数目小于相应的预期数目,从所述待选推荐列表中未被选择的剩余内容项中选择排名靠前的内容项,以将所述最终推荐列表补全;(b32)判断所述待选推荐列表中未被选择的剩余内容项中排名第一的内容项的评分与所述最终推荐列表中排名最后的内容项的评分之间的差值是否大于预定阈值,如果大于所述预定阈值,则交换这二者并重复步骤(b32)直到所述待选推荐列表中未被选择的剩余内容项中排名第一的内容项的评分与所述最终推荐列表中排名最后的内容项的评分之间的差值小于等于所述预定阈值,以得到所述最终推荐列表。
在一些实施例中,所述最终推荐列表中的内容项是按内容项的打分顺序由高至低排列的。
在一些实施例中,所述内容项至少包括以下各项信息:内容名称、内容类型、以及内容打分。
通过使用本发明的方法及相应服务器,可以在推荐***算法中引入用户兴趣偏好信息,使最后的推荐列表能针对不同用户的兴趣偏好差异做出个性化推荐。此外,本发明的目标是在已有或将来开发出的推荐算法的基础之上,提供一种用于移动应用市场的推荐***的多分类(一般大于等于3)推荐列表的调整方法及服务器。它可以为现有的或将来开发出的推荐***算法服务,在几乎不增加推荐***额外负担的前提之下,使得推荐结果尽量与用户的兴趣倾向相互一致。
具体地,根据本发明的方法和服务器,具有以下若干优点:
(1)高扩展度。本发明的推荐方法/服务器可以适用于任何一个基于评分的推荐***模型。只要能给出关于商品(内容项)的分数,则不论具体技术如何实现,本发明的推荐方法/服务器都可以使用列表调整算法来改进结果。因此其能很好的满足各种商家的需求,而不需要对商家已有或将来购置的***做大规模调整;
(2)快速。在本发明的推荐方法/服务器中,可以采用离线方式来计算用户偏好(例如,偏好指数向量),从而提高了推荐商品列表的生成速度,适用于大型商家对推荐效率的需求;
(3)对用户兴趣变化反映灵敏。客户的兴趣偏好在相对较短的时间段(例如,一个或几个月)上稳定,而在相对较长的时间段(例如,一年)上会有变化。本***采用定时计算用户兴趣偏好的方式,随着时间推移,不断调整用户兴趣偏好值,以满足客户不断变更的需求;
(4)提高精度。由于引入了用户兴趣偏好的指数向量有利于消除数据稀疏带来的影响,所以调整后的推荐列表将比调整之前的推荐列表在准确性上有更大的提高。
附图说明
通过下面结合附图说明本发明的优选实施例,将使本发明的上述及其它目的、特征和优点更加清楚,其中:
图1是示出了根据本发明的内容推荐***的示例应用场景的示意图。
图2是示出了根据本发明的基于用户偏好的内容推荐的示例流程图。
图3是示出了根据本发明的基于用户偏好的内容推荐的推荐列表调整的示例。
图4是示出了根据本发明的基于用户偏好的内容推荐的推荐列表调整的另一示例。
图5是示出了根据本发明实施例的在服务器处执行的基于用户偏好的示例内容推荐方法的流程图。
图6是示出了根据本发明实施例的用于执行图5所示的方法的示例服务器的框图。
具体实施方式
在具体介绍本发明的构思之前,将先简单介绍一下本文中可能出现的术语,在本文中没有明确相反指示的情况下,这些术语应当以此处说明的含义来理解。
内容:
在推荐***领域中,推荐的内容可以是用户感兴趣的图书、音频、视频、主题、游戏、工具软件;或更一般地,可以是任何商品和/或服务等,无论其是收费的还是免费的、有形的还是无形的、实际存在的还是虚拟的。
移动应用市场:
聚集了各类手机应用开发者及其优秀应用,满足不同类型的手机用户的实时体验、下载和订购需求的综合网上商场。其通过手机客户端、wap和www网站等为用户提供工具软件、游戏、主题、视频、音频、图书等一站式服务。著名的移动应用市场有:Google Play、AppleStore等。
分类内容:
针对内容所进行的分类,总分类数为L(本申请主要涉及3类及3类以上的情况,当然,本申请也同样适用于1类或2类的情况)。例如:以播放音频为其主要传播内容的应用将其归为音频类应用(例如,音频播放器);游戏程序的应用归为游戏类应用(例如,愤怒的小鸟)等。分类的方法可以人为定义,也可以用数学方法进行划分,本发明并不受限于此。换言之,本发明适用于任何数目的分类以及任何分类方式。
推荐列表:
推荐算法针对某个用户进行推荐时,会基于其他相似用户对各个不同的内容的打分,对该用户对各个不同内容的打分进行预测。在所有能被推荐的内容中选择其中的N个内容作为最终结果一起向用户推荐,这样的集合即为推荐列表。N是列表长度,且N为自然数。推荐列表内部的推荐顺序通常不分先后,当然也可以按某种顺序进行排序,例如按评分高低等。
冗余推荐列表(或待选推荐列表):
在本发明中,在产生长度为N的最终推荐列表前,可以通过各种现有的或将来开发出的推荐算法生成一个长度为M(M≥N,且M为自然数)的冗余推荐列表,最终推荐列表由本发明所公开的相关算法调整冗余推荐列表后产生。
分类循环列表:
初始长度为L(即等于总分类数),用来记录下文中详细描述的在生成最终推荐列表的过程中进行循环填充时可选的分类的循环列表。当某一分类不满足填充条件时,将该分类从循环列表中移除。L为自然数。
最终推荐列表:
列表最终长度为N,其初始内容为空,由冗余推荐列表中的满足调整条件的内容项所填充。当列表调整完成后,将最终推荐列表的N个内容项呈现给用户。
协同过滤(CF,即Collaborative Filtering):
推荐***领域的一种常用算法。该算法具有两层含义:较狭义的含义以及较广义的含义。广义地说,CF是使用在多个机构、观点、数据源等之间的协同对信息或模式进行过滤。协同过滤的应用通常涉及非常大的数据集。其用于探矿、大面积的环境监测、金融数据、电子商务和网络应用等。
狭义地说,CF是通过收集来自很多用户的偏好或品味信息(协同)来预测(过滤)用户的关注点的方法。其底层的逻辑是:如果用户a与用户b在某一内容上具有相同的意见,则针对另一内容x,用户a比另一个(在内容x上具有随机意见的)用户c更有可能与用户b具有相同的意见。这些预测对于用户是特定的,但是实际上它们是根据来自很多其他用户的反馈所生成的。请注意:这与简单地基于所有用户对某一内容的平均意见所做出的推荐是不同的。
具体地,该算法分析用户兴趣,在用户群中找到与指定用户的相似程度最高的几个用户(最近邻),并综合这些相似用户对某一内容的打分评价,以形成***对该指定用户对此内容的打分(喜好程度)预测。通常预测分数越高则代表用户越喜爱。依据该方法,对所有能被推荐的内容都进行打分,并依据预测打分的排序,向用户推荐一个或者多个内容。打分评价收集的打分信息不一定局限于特别感兴趣的,特别不感兴趣内容的记录也相当重要,以例如将用户特别不感兴趣的内容排除在推荐列表之外。
基于用户的协同过滤(CF-U,即Collaborative FilteringUser-based):
其基于一个这样的假设“跟你喜好相似的人喜欢的东西你也很有可能喜欢”。所以基于用户的协同过滤主要的任务就是找出用户的最近邻居,从而根据最近邻居的喜好做出该用户针对未知项的评分预测。
基于项目的协同过滤(CF-I,即Collaborative FilteringItem-based):
通过用户对不同内容项目(item)的评分来评估项目之间的相似性,基于项目之间的相似性做出推荐。以项目为基础的协同过滤方法有一个基本的假设“能够引起使用者兴趣的项目,必定与其之前评分高的项目相似”,透过计算项目之间的相似性来代替使用者之间的相似性。
兴趣偏好:
一段时间内,移动互联网用户会倾向于使用某一类应用。这与个人的兴趣爱好、生活习惯都有密切的联系。
偏好指数向量:
定量地用偏好指数描述指定用户对某一种类内容的喜好程度,而由某一用户对所有L类内容(针对多种分类,L一般大于等于3)的偏好指数组成该用户的偏好指数向量。在本申请中,以六类应用为例,即L=6,用户对游戏类应用的偏好指数,即为所下载的所有应用中,游戏类应用所占比例。同理,对工具软件、图书、音频、主题、视频类应用的偏好指数,即为所下载的所有应用中,相应类别应用所占比例。再由这六大类的偏好指数组成用户的偏好指数向量。在一个示例中,偏好指数向量=(工具软件,游戏,图书,音频,主题,视频)。比如,用户A在一段时间(例如,一个月)内下载的10个应用中,工具软件类应用有3个,占比为0.3;游戏类应用有5个,占比为0.5;图书类应用有0个,占比为0.0;音频类应用有1个,占比为0.1;主题类应用有0个,占比为0.0;以及视频类应用有1个,占比为0.1。则该用户的偏好指数向量为(0.3,0.5,0.0,0.1,0.0,0.1)。然而在本发明中,内容(应用)类别的数目不限于6个,也可以更少或者更多,即偏好指数向量的维数不限于6维,也可以是更少或更多。此外,偏好指数向量中各个维度的顺序(即,内容类别的顺序)也不限于(工具软件,游戏,图书,音频,主题,视频)的顺序,而可以是任何顺序,例如(主题,视频,音频,工具软件,游戏,图书)等。
工具软件:
泛指在应用中除了音频、视频、图书、游戏和主题类之外的其他应用。例如,可以包括地图类应用、理财类应用、通讯录管理应用、购物类应用等等。有时也将其简称为“软件”。
下面参照附图对本发明的优选实施例进行详细说明,在描述过程中省略了对于本发明来说是不必要的细节和功能,以防止对本发明的理解造成混淆。以下,以本发明应用于无线移动通信***的场景为例,对本发明进行了详细描述。但本发明并不局限于此,本发明也可以应用于固定通信***、有线通信***,或者应用于无线移动通信***、固定通信***、有线通信***等的任意混合结构。就移动通信***而言,本发明并不局限于所涉及的各个移动通信终端的具体通信协议,可以包括(但不限于)2G、3G、4G、5G网络,WCDMA、CDMA2000、TDSCDMA***等,不同的移动终端可以采用相同的通信协议,也可以采用不同的通信协议。此外,本发明并不局限于移动终端的具体操作***,可以包括(但不限于)iOS、Windows Phone、Symbian(塞班)、Android(安卓)等,不同的移动终端可以采用相同的操作***,也可以采用不同的操作***。此外,本发明并不局限于服务器的具体操作***,可以包括(但不限于)各种版本的Windows、Unix、Linux、FreeBSD、Solaris等,不同的服务器可以采用相同的操作***,也可以采用不同的操作***。
图1是示出了根据本发明的内容推荐***1000的应用场景的示意图。如图1所示,***1000可以包括终端100和服务器200。为了清楚起见,图中仅示出了一个终端100、一个服务器200,但本发明并不局限于此,可以包括两个或更多数目的终端和/或服务器等等。终端100和服务器200可以通过通信网络300进行通信。通信网络300的示例可以包括(但不限于):互联网、移动通信网络、固定线路(如xDSL、光纤等)等。
在图1所示实施例中,为了在服务器200上对内容进行推荐,将根据本发明的实施例的内容推荐服务器端250(以下简称为服务器端250)安装在服务器200上。服务器端250可以由服务提供商以软件的形式自行安装在服务器200中,或者可以由生产厂商以硬件或固件的形式安装在服务器200中。在一些实施例中,服务器端250可以是例如在服务提供商购买了服务器200之后从网络中下载的专门用于本发明的应用软件。在另一些实施例中,服务器端250可以是例如由生产厂商以固件或硬件形式预先安装在服务器200中的应用程序。在又一些实施例中,服务器端250可以是由生产厂商生产的硬件模块或服务器200本身。
在该实施例中,所涉及的具体推荐内容是移动应用市场中的各种应用。当然本发明不限于此,即内容也可以是其他商品和/或服务,例如食品、药品、家电、水电费代缴服务、罚款代缴服务等。服务器200可以向用户推荐上述各种商品和/或服务。
在该实施例中,服务器200首先可以收集或以其他方式获得某一用户的应用下载历史信息。根据该历史信息中记录的该用户下载的某一内容(应用)分类数量占总下载量的百分比来描述兴趣偏好,并计算偏好指数向量。与此同时或在这之前或之后,通过传统的协同过滤算法针对特定用户进行推荐,其中,该传统协同过滤算法对每个应用进行用户的打分预测,选出打分预测最高的前M项应用程序,以构成冗余推荐列表(即,待选推荐列表)。通过本发明的调整(例如,循环填充、补充替换等)等算法,来生成最终推荐列表。进而使得最终推荐列表中的各类应用比例尽量能与用户偏好指数相一致。在调整操作全部结束后,将最终推荐列表作为最终结果推荐给用户。
在一个实施例中,如果一个用户在一段时间内(例如,1个月)下载的应用程序为10个,其中工具软件类应用有3个,占比0.3;游戏类应用有5个,占比0.5;电子图书类应用有0个,占比0.0;音频类应用有1个,占比0.1;主题类应用有0个,占比0.0;以及视频类应用有1个,占比0.1。则该用户的偏好指数向量为(0.3,0.5,0.0,0.1,0.0,0.1)。这个指数向量也就反映了用户在这一个月内的兴趣偏好。本发明的目的是希望在最终向用户的推荐列表中各类应用的比例能呈现出相同或至少相近的兴趣偏好。在例如最终推荐列表长度N等于10的情况下,最终的推荐列表应当尽可能由打分最高的3个软件类应用、5个游戏类应用、0个图书应用、1个音频类应用、0个主题类应用和1个视频类应用组成。而传统的协同过滤算法基本上无法达到这样的要求,即使最后结果符合该比率,也属于巧合,而非意图如此。所以我们需要对推荐列表进行调整。
接下来,我们将参考图2来具体描述用于内容推荐的流程。
在一个实施例中,所涉及的推荐内容是移动应用市场中的各种应用,则流程大致分为如下四个基本的执行步骤:
步骤一:生成偏好指数向量。在一个实施例中,利用用户的应用下载历史记录,计算每一个用户在最近一段时间内,针对所有类别应用的偏好指数向量。每个用户可以得到一个自身的偏好指数向量。
步骤二:产生冗余推荐列表。利用已有的或将来开发出的推荐算法关于该用户进行推荐,并产生冗余推荐列表,可以使用的推荐算法不限于上述协同过滤算法,其可以至少使用以下各项之一:基于内容的推荐、基于协同过滤的推荐、基于关联规则的推荐、基于效用的推荐、基于知识的推荐、以及前述各项的任意组合。此外,如果使用协同过滤算法,其也不限于基于用户的协同过滤算法,其还可以使用基于用户的协同过滤推荐(CF-U)、基于项目的协同过滤推荐(CF-I)、基于模型的协同过滤推荐(CF-M)、以及前述各项的任意组合。总之,在生成冗余推荐列表时,本发明不限制具体使用的初始推荐算法。
此外,冗余推荐列表中的内容项通常包括三个方面的信息:内容项(应用)名称、内容项(应用)类型、以及内容项(应用)在推荐***中的预测打分。冗余推荐列表按内容类别可分为L个分类子列表。
此处请注意:步骤一和步骤二的执行顺序并不一定是先执行步骤一,在执行步骤二,实际上也可以二者同时(或基本同时)执行,或者先执行步骤二再执行步骤一,本发明不限于此。
步骤三:生成最终推荐列表(列表调整)。根据步骤一中计算的用户偏好指数向量,以下文中详细描述的方式向最终推荐列表中填充并进行调整,使得最终推荐列表中各类别内容的分布与用户对不同种类内容的偏好程度一致或至少尽量一致。
前述调整的方法可以分为两个步骤:
(a)循环填充,依次从冗余推荐列表各分类中选取第一项(即评分最高项)向最终推荐列表中进行插序法填充,并不断在L类间进行循环。在一个实施例中,该循环可以用一个分类循环列表(长度为L)来维护。当冗余推荐列表的某一分类子列表中已无项目,或该分类子列表中已填充(选出)的内容项的数目达到了该分类的“偏好指数*N”时(N为最终推荐列表的长度),则将该分类从分类循环列表中移除,以避免再次向最终推荐列表中填充该分类的内容项。当循环列表为空(即,所有分类都已被从循环列表中移除)时,循环填充过程结束。
(b)补充替换,循环填充结束后,将冗余推荐列表中的剩余全部项目按照评分由大到小排序。当最终推荐列表未满时,依次将冗余列表中的第一项按插序法填充到最终推荐列表中直至填满(补全)。当最终推荐列表填满后,计算冗余推荐列表中当前剩余内容项中的评分第一项的评分与最终推荐列表的最末项(由于插序法填充,即最终推荐列表中当前评分最低项)的评分之间的差值。当该差值大于预设阀值时将二者进行替换。替换方法为,将最终推荐列表最末项移除,并将冗余列表中第一项用插序法填充到最终推荐列表中。之后重复计算该差值并进行替换,直至该差值不大于阀值,则调整过程完成,此时的最终推荐列表即为最终推荐列表。
在另一个实施例中,也可以不使用“循环”填充。例如,可以针对各个分类子列表,从各个分类子列表中一次性提取“偏好指数*N”个内容项填入最终推荐列表。如果某个分类子列表中的内容项数目少于“偏好指数*N”,则可以同样在后续的“补充替换”阶段中将最终推荐列表补全。
步骤四:向用户呈现最终推荐列表。例如,通过从服务器200向终端100提供该最终推荐列表,并由终端100向用户显示来提供。
此外,在上述步骤一中,还可以根据其它与用户和内容项相关的数据来计算用户的偏好指数向量。例如,可以根据用户在移动应用市场上活动所产生的一系列信息,包括下载、评分、浏览、文字点评等记录,来计算偏好指数向量。当然,这时的用户行为数据种类繁多,且并不是每一种用户信息都是我们需要的。因此,可以通过行为特征提取来筛选数据。最后,结合用户属性数据,通过行为特征转换,将具体的外部数据转换成计算机可以理解的行为特征向量。考虑到用户行为实时变化,因此,该部分操作通常可以实时进行。
此外,与应用相关的外部数据可以包括应用推荐表,其包括应用名称、所属类别、价格等一系列用户关注的信息。应用推荐表结合行为特征向量就形成了特征-内容项相关推荐。由于每隔一段时间会有新的一批应用加入,因此该部分通常可以定时更新。
一般来说,冗余推荐列表可以由传统的推荐算法来产生,并经过推荐列表调整后得到最后的推荐结果。我们需要对推荐内容进行解释,并连同推荐结果一起呈现给用户。
至此,已结合图2详细了根据本发明实施例的内容推荐流程。
接下来,结合图3和图4来分别描述根据本发明实施例的针对用户A和用户B的最终推荐列表的示例生成过程。图3和图4均示出了示例冗余推荐列表、示例最终推荐列表以及其中的示例调整过程。
用户A:
首先假定由传统协同过滤算法针对用户A生成的冗余推荐列表(图3下部)长度M为20,而我们预期生成的最终推荐列表长度N为10(图3上部),总分类数L为6,例如如上所述计算得到的用户的偏好指数向量为(0.3,0.5,0.0,0.1,0.0,0.1),分别对应(工具软件,游戏,图书,音频,主题,视频),列表调整阈值(评分差)为0.10。
(1)循环填充:
初始化分类循环列表:[工具软件,游戏,图书,音频,主题,视频]。
由于用户的图书类和主题类的偏好指数为0.0,因此将图书类和主题类从分类循环列表中移除(0.0*10=0),移除后分类循环列表中仅剩余:[工具软件,游戏,音频,视频]。依次选择工具软件类第一项1号、游戏类第一项6号、音频类第一项14号和视频类第一项18号,用插序法填充到最终推荐列表中。
填充后的音频类已填充内容项的数目为1,其大于等于0.1(音频偏好指数)*10(最终推荐列表长度)=1。视频类已填充项目数为1,其大于等于0.1*10=1。因此,将音频类和视频类从分类循环列表中移除,即仅剩余:[软件,游戏]。依次选择软件类第一项2号(此时1号已不在冗余推荐列表中,其他同理)、游戏类第一项7号,用插序法填充到最终推荐列表中。继而,依次选择软件类第一项3号、游戏类第一项8号,用插序法填充到最终推荐列表中。
此时,填充后软件类已填充项目数为3,其大于等于0.3*10=3。将软件类从分类循环列表移除,即仅剩余:[游戏]。选择游戏类第一项9号,用插序法填充到最终推荐列表中。选择游戏类第一项10号,用插序法填充到最终推荐列表中。此时,填充后游戏类已填充项目数为5大于等于0.5*10=5。将游戏类从分类循环列表移除,即仅剩余:[]。此时分类循环列表已空,循环填充过程结束。
此时,可以看到图3中下部的冗余推荐列表中以无斜线阴影指示出的10个内容项已被填入上部的最终推荐列表中。
(2)补充替换:
将冗余推荐列表中剩余的全部项目按评分由大到小排序。由于此时最终推荐列表已满,无需进行补充过程。
然后,选取冗余推荐列表中剩余内容项(未被选择的内容项)中的第一项16号与最终推荐列表的最末项18号计算评分差值为4.00-3.66=0.34,其大于0.10(阀值)。则此时移除最终推荐列表中最末项18号,将冗余推荐列表第一项16号用插序法***最终推荐列表。重复上述过程,即,选取冗余推荐列表当前第一项11号与最终推荐列表的最末项14号计算差值为3.99-3.79=0.20,其大于0.10。则此时移除最终推荐列表中最末项14号,将冗余推荐列表第一项11号用插序法***最终推荐列表。重复上述过程,即,选取冗余推荐列表当前第一项17号与最终推荐列表的最末项10号计算差值为3.88-3.81=0.07,其小于0.10,因此无需进行替换,替换过程结束。
此时,可以看到图3中下部的冗余推荐列表中以斜线阴影指示出的2个内容项已被替换到上部的最终推荐列表中,且在两个列表中间的斜线阴影指示出被替换出来的两个内容项。
在所有调整过程结束之后,此时的最终推荐列表就是要向用户推荐的最终结果。
用户B:
参见图4,同样假定由传统协同过滤算法针对用户B生成的冗余推荐列表(图4下部)长度M为20,而我们预期生成的最终推荐列表长度N为10(图4上部),总分类数L为6,例如如上所述计算得到的用户的偏好指数向量为(0.1,0.2,0.4,0.1,0.1,0.1),分别对应(工具软件,游戏,图书,音频,主题,视频),列表调整阈值(评分差)为0.10。
(1)循环填充:
初始化分类循环列表:[工具软件,游戏,图书,音频,主题,视频]。
由于所有类别的偏好指数均不为0.0,因此依次选择工具软件类第一项1号、游戏类第一项6号、图书类第一项11号、音频类第一项14号、主题类第一项16号和视频类第一项18号,用插序法填充到最终推荐列表中。
软件类、音频类、主题类和视频类的已填充内容项的数目均为1,其大于等于0.1(偏好指数)*10(最终推荐列表长度)=1。因此,将软件类、音频类、主题类和视频类从分类循环列表中移除,即仅剩余:[游戏,图书]。依次选择游戏类第一项7号(此时6号已不在冗余推荐列表中,其他同理)、图书类第一项12号,用插序法填充到最终推荐列表中。
此时,填充后游戏类已填充项目数为2,其大于等于0.2*10=2。将游戏类从分类循环列表移除,即仅剩余:[图书]。选择图书类第一项13号,用插序法填充到最终推荐列表中。此时,填充后图书类已填充项目数为3小于0.4*10=4。但由于图书类内容项已经全部被选入最终推荐列表,因此将图书类从分类循环列表移除,即仅剩余:[]。此时分类循环列表已空,循环填充过程结束。
此时,可以看到图4中下部的冗余推荐列表中以无斜线阴影指示出的9个内容项已被填入上部的最终推荐列表中。
(2)补充替换:
将冗余推荐列表中剩余的全部项目按评分由大到小排序。由于此时最终推荐列表未满,因此需要进行补充过程。在补充过程中,从冗余推荐列表中剩余内容项中选择评分最高的内容项,即软件类当前评分最高项2号,将其用插序法填充到最终推荐列表中。此时,最终推荐列表被补全,则补充过程结束。此时,可以看到图4下部中具有斜线阴影的内容项2号被补充到最终推荐列表中。
然后,选取冗余推荐列表中剩余内容项(未被选择的内容项)中的第一项8号与最终推荐列表的最末项18号计算评分差值为3.96-3.66=0.30,其大于0.10(阀值)。则此时移除最终推荐列表中最末项18号,将冗余推荐列表第一项8号用插序法***最终推荐列表。重复上述过程,即,选取冗余推荐列表当前第一项3号与最终推荐列表的最末项13号计算差值为3.89-3.68=0.21,其大于0.10。则此时移除最终推荐列表中最末项13号,将冗余推荐列表第一项3号用插序法***最终推荐列表。重复上述过程,即,选取冗余推荐列表当前第一项17号与最终推荐列表的最末项14号计算差值为3.88-3.79=0.09,其小于0.10,因此无需进行替换,替换过程结束。
此时,可以看到图4中下部的冗余推荐列表中以斜线阴影指示出的2个内容项3号和8号已被替换到上部的最终推荐列表中,且在两个列表中间的斜线阴影指示出被替换出来的两个内容项。
在所有调整过程结束之后,此时的最终推荐列表就是要向用户推荐的最终结果。
至此,已结合图3和图4详细描述了针对用户A和用户B进行内容推荐的具体示例。
图5是示出了根据本发明实施例的在服务器200中执行的内容推荐方法400的流程图。如图5所示,方法400可以包括步骤S410、S420、和S430。根据本发明,方法400的一些步骤可以单独执行或组合执行,以及可以并行执行或顺序执行,并不局限于图5所示的具体操作顺序。在一些实施例中,方法400可以由图1所示的服务器200或其上的服务器端250来执行。
图6是示出了根据本发明实施例的示例服务器200的框图。如图6所示,服务器200可以包括:偏好指数计算单元210、推荐内容选择单元220和推荐列表提供单元230。
偏好指数计算单元210可以用于基于用户的历史偏好信息,计算该用户的偏好指数向量。偏好指数计算单元210可以是服务器200的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其可以与服务器200的通信部分(例如,无线收发信机、以太网卡、xDSL调制解调器等)和/或存储部分(例如,RAM、SD卡等)相配合,基于所接收和/或存储的用户的历史偏好信息,来计算该用户的偏好指数向量。
推荐内容选择单元220可以用于基于偏好指数向量,从待选推荐列表中选出要推荐的内容项,以构成最终推荐列表。推荐内容选择单元220可以是服务器200的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其可以与服务器200的通信部分(例如,无线收发信机、以太网卡、xDSL调制解调器等)和/或存储部分(例如,RAM、SD卡等)相配合,基于偏好指数向量,从所接收和/或存储的待选推荐列表中选出要推荐的内容项,以构成最终推荐列表。
推荐列表提供单元230可以用于向用户提供最终推荐列表。推荐列表提供单元230可以是服务器200的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其可以与服务器200的输出部分(例如,显示器、打印机等)相配合,向用户提供由推荐内容选择单元220生成的最终推荐列表。
以下将结合图5和图6,对根据本发明实施例的用于在服务器200处执行的内容推荐方法400和服务器200进行详细的描述。
方法400开始于步骤S410,在步骤S410中,可以由服务器200的偏好指数计算单元210基于用户的历史偏好信息,计算该用户的偏好指数向量。
在步骤S420中,可以由服务器200的推荐内容选择单元220基于该偏好指数向量,从待选推荐列表中选出要推荐的内容项,以构成最终推荐列表。
在步骤S430中,可以由服务器200的推荐列表提供单元230向用户提供该最终推荐列表。
在一些实施例中,历史偏好信息可以是通过统计预定时间段内用户下载的内容项来得到的。
在一些实施例中,预定时间段可以是1个月。
在一些实施例中,步骤S410还可以包括由服务器200的偏好指数计算单元210将统计出的用户下载的内容项分成一个或多个类别(S412);针对一个或多个类别中的每个类别,计算用户下载的内容项中属于该类别的内容项的数目与用户下载的内容项的总数的比值(S414);以及根据一个或多个类别中的所有类别的相应比值,构成用户在预定时间段内的偏好指数向量(S416)。
在一些实施例中,一个或多个类别可以包括以下至少一项:音频、视频、图书、主题、游戏、以及工具软件。
在一些实施例中,待选推荐列表可以是通过推荐算法针对用户生成的,以及推荐算法可以是以下至少一项:基于内容的推荐;基于协同过滤的推荐;基于关联规则的推荐;基于效用的推荐;基于知识的推荐;以及上述各项的任意组合。
在一些实施例中,基于协同过滤的推荐可以包括以下至少一项:基于用户的协同过滤推荐(CF-U);基于项目的协同过滤推荐(CF-I);基于模型的协同过滤推荐(CF-M);以及以上各项的任意组合。
在一些实施例中,步骤S420可以包括由服务器200的推荐内容选择单元220根据待选推荐列表中各个内容项的类别,将待选推荐列表分为一个或多个分类子列表(S422);基于偏好指数向量,从相应分类子列表中选出排名靠前的内容项,以填入最终推荐列表(S424);以及基于待选推荐列表中未被选择的内容项,调整最终推荐列表(S426)。
在一些实施例中,步骤S424可以包括由服务器200的推荐内容选择单元220基于偏好指数向量中与各个类别相对应的偏好指数以及最终推荐列表的长度,计算在最终推荐列表中每个类别所占的预期数目(S424-1);以及针对每个类别,从相应分类子列表中选出相应预期数目的排名靠前的内容项,以填入最终推荐列表(S424-2)。
在一些实施例中,步骤S424-2中的选择可以是以下两种方式之一:每次在一个分类子列表中选出一个当前排名第一的内容项,并针对所有分类子列表循环进行,其中,跳过已被选空的分类子列表和被选择内容项的数目达到相应预期数目的分类子列表;或者在每个分类子列表中一次性选出相应预期数目的内容项,其中,如果分类子列表中的内容项的数目小于相应预期数目,则将该分类子列表中的所有内容项全部选出。
在一些实施例中,如果分类子列表中内容项的数目小于相应的预期数目,则步骤S426可以包括由服务器200的推荐内容选择单元220从待选推荐列表中未被选择的剩余内容项中选择排名靠前的内容项,
以将最终推荐列表补全:(S426-1);判断待选推荐列表中未被选择的剩余内容项中排名第一的内容项的评分与最终推荐列表中排名最后的内容项的评分之间的差值是否大于预定阈值,如果大于预定阈值,则交换这二者并重复步骤(S426-1)直到待选推荐列表中未被选择的剩余内容项中排名第一的内容项的评分与最终推荐列表中排名最后的内容项的评分之间的差值小于等于预定阈值,以得到最终推荐列表(S426-2)。
在一些实施例中,最终推荐列表中的内容项可以是按内容项的打分顺序由高至低排列的。
在一些实施例中,内容项可以至少包括以下各项信息:内容名称、内容类型、以及内容打分。
至此已经结合优选实施例对本发明进行了描述。应该理解,本领域技术人员在不脱离本发明的精神和范围的情况下,可以进行各种其它的改变、替换和添加。因此,本发明的范围不局限于上述特定实施例,而应由所附权利要求所限定。

Claims (26)

1.一种基于用户偏好的内容推荐方法,包括:
(a)基于所述用户的历史偏好信息,计算所述用户的偏好指数向量;
(b)基于所述偏好指数向量,从待选推荐列表中选出要推荐的内容项,以构成最终推荐列表;以及
(c)向所述用户提供所述最终推荐列表。
2.根据权利要求1所述的方法,其中,所述历史偏好信息是通过统计预定时间段内所述用户下载的内容项来得到的。
3.根据权利要求2所述的方法,其中,所述预定时间段是1个月。
4.根据权利要求3所述的方法,其中,步骤(a)还包括:
(a1)将统计出的用户下载的内容项分成一个或多个类别;
(a2)针对所述一个或多个类别中的每个类别,计算用户下载的内容项中属于该类别的内容项的数目与用户下载的内容项的总数的比值;以及
(a3)根据所述一个或多个类别中的所有类别的相应比值,构成所述用户在所述预定时间段内的偏好指数向量。
5.根据权利要求4所述的方法,其中,所述一个或多个类别包括以下至少一项:音频、视频、图书、主题、游戏、以及工具软件。
6.根据权利要求1所述的方法,其中,所述待选推荐列表是通过推荐算法针对所述用户生成的,以及所述推荐算法是以下至少一项:
基于内容的推荐;
基于协同过滤的推荐;
基于关联规则的推荐;
基于效用的推荐;
基于知识的推荐;以及
上述各项的任意组合。
7.根据权利要求6所述的方法,其中,所述基于协同过滤的推荐包括以下至少一项:
基于用户的协同过滤推荐(CF-U);
基于项目的协同过滤推荐(CF-I);
基于模型的协同过滤推荐(CF-M);以及
以上各项的任意组合。
8.根据权利要求1所述的方法,其中,步骤(b)包括:
(b1)根据所述待选推荐列表中各个内容项的类别,将所述待选推荐列表分为一个或多个分类子列表;
(b2)基于所述偏好指数向量,从相应分类子列表中选出排名靠前的内容项,以填入所述最终推荐列表;以及
(b3)基于所述待选推荐列表中未被选择的内容项,调整所述最终推荐列表。
9.根据权利要求8所述的方法,其中,步骤(b2)包括:
(b21)基于所述偏好指数向量中与各个类别相对应的偏好指数以及所述最终推荐列表的长度,计算在所述最终推荐列表中每个类别所占的预期数目;以及
(b22)针对每个类别,从相应分类子列表中选出相应预期数目的排名靠前的内容项,以填入所述最终推荐列表。
10.根据权利要求9所述的方法,其中,步骤(b22)中的选择是以下两种方式之一:
每次在一个分类子列表中选出一个当前排名第一的内容项,并针对所有分类子列表循环进行,其中,跳过已被选空的分类子列表和被选择内容项的数目达到相应预期数目的分类子列表;或者
在每个分类子列表中一次性选出相应预期数目的内容项,其中,如果分类子列表中的内容项的数目小于相应预期数目,则将该分类子列表中的所有内容项全部选出。
11.根据权利要求9所述的方法,其中,步骤(b3)包括:
(b31)如果所述分类子列表中内容项的数目小于相应的预期数目,从所述待选推荐列表中未被选择的剩余内容项中选择排名靠前的内容项,以将所述最终推荐列表补全;
(b32)判断所述待选推荐列表中未被选择的剩余内容项中排名第一的内容项的评分与所述最终推荐列表中排名最后的内容项的评分之间的差值是否大于预定阈值,如果大于所述预定阈值,则交换这二者并重复步骤(b32)直到所述待选推荐列表中未被选择的剩余内容项中排名第一的内容项的评分与所述最终推荐列表中排名最后的内容项的评分之间的差值小于等于所述预定阈值,以得到所述最终推荐列表。
12.根据权利要求1所述的方法,其中,所述最终推荐列表中的内容项是按内容项的打分顺序由高至低排列的。
13.根据权利要求1所述的方法,其中,所述内容项至少包括以下各项信息:内容名称、内容类型、以及内容打分。
14.一种基于用户偏好的内容推荐服务器,包括:
偏好指数计算单元,用于基于所述用户的历史偏好信息,计算所述用户的偏好指数向量;
推荐内容选择单元,用于基于所述偏好指数向量,从待选推荐列表中选出要推荐的内容项,以构成最终推荐列表;以及
推荐列表提供单元,用于向所述用户提供所述最终推荐列表。
15.根据权利要求14所述的服务器,其中,所述历史偏好信息是通过统计预定时间段内所述用户下载的内容项来得到的。
16.根据权利要求15所述的服务器,其中,所述预定时间段是1个月。
17.根据权利要求16所述的服务器,其中,所述偏好指数计算单元还用于:
(a1)将统计出的用户下载的内容项分成一个或多个类别;
(a2)针对所述一个或多个类别中的每个类别,计算用户下载的内容项中属于该类别的内容项的数目与用户下载的内容项的总数的比值;以及
(a3)根据所述一个或多个类别中的所有类别的相应比值,构成所述用户在所述预定时间段内的偏好指数向量。
18.根据权利要求17所述的服务器,其中,所述一个或多个类别包括以下至少一项:音频、视频、图书、主题、游戏、以及工具软件。
19.根据权利要求14所述的服务器,其中,所述待选推荐列表是通过推荐算法针对所述用户生成的,以及所述推荐算法是以下至少一项:
基于内容的推荐;
基于协同过滤的推荐;
基于关联规则的推荐;
基于效用的推荐;
基于知识的推荐;以及
上述各项的任意组合。
20.根据权利要求19所述的服务器,其中,所述基于协同过滤的推荐包括以下至少一项:
基于用户的协同过滤推荐(CF-U);
基于项目的协同过滤推荐(CF-I);
基于模型的协同过滤推荐(CF-M);以及
以上各项的任意组合。
21.根据权利要求14所述的服务器,其中,所述推荐内容选择单元还用于:
(b1)根据所述待选推荐列表中各个内容项的类别,将所述待选推荐列表分为一个或多个分类子列表;
(b2)基于所述偏好指数向量,从相应分类子列表中选出排名靠前的内容项,以填入所述最终推荐列表;以及
(b3)基于所述待选推荐列表中未被选择的内容项,调整所述最终推荐列表。
22.根据权利要求21所述的服务器,其中,所述推荐内容选择单元还用于:
(b21)基于所述偏好指数向量中与各个类别相对应的偏好指数以及所述最终推荐列表的长度,计算在所述最终推荐列表中每个类别所占的预期数目;以及
(b22)针对每个类别,从相应分类子列表中选出相应预期数目的排名靠前的内容项,以填入所述最终推荐列表。
23.根据权利要求22所述的方法,其中,所述推荐内容选择单元从分类子列表中进行选择是以下两种方式之一:
每次在一个分类子列表中选出一个当前排名第一的内容项,并针对所有分类子列表循环进行,其中,跳过已被选空的分类子列表和被选择内容项的数目达到相应预期数目的分类子列表;或者
在每个分类子列表中一次性选出相应预期数目的内容项,其中,如果分类子列表中的内容项的数目小于相应预期数目,则将该分类子列表中的所有内容项全部选出。
24.根据权利要求22所述的服务器,其中,所述推荐内容选择单元还用于:
(b31)如果所述分类子列表中内容项的数目小于相应的预期数目,从所述待选推荐列表中未被选择的剩余内容项中选择排名靠前的内容项,以将所述最终推荐列表补全;
(b32)判断所述待选推荐列表中未被选择的剩余内容项中排名第一的内容项的评分与所述最终推荐列表中排名最后的内容项的评分之间的差值是否大于预定阈值,如果大于所述预定阈值,则交换这二者并重复步骤(b32)直到所述待选推荐列表中未被选择的剩余内容项中排名第一的内容项的评分与所述最终推荐列表中排名最后的内容项的评分之间的差值小于等于所述预定阈值,以得到所述最终推荐列表。
25.根据权利要求14所述的服务器,其中,所述最终推荐列表中的内容项是按内容项的打分顺序由高至低排列的。
26.根据权利要求14所述的服务器,其中,所述内容项至少包括以下各项信息:内容名称、内容类型、以及内容打分。
CN201410108119.0A 2014-03-21 2014-03-21 基于用户偏好的内容推荐方法和服务器 Expired - Fee Related CN103823908B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410108119.0A CN103823908B (zh) 2014-03-21 2014-03-21 基于用户偏好的内容推荐方法和服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410108119.0A CN103823908B (zh) 2014-03-21 2014-03-21 基于用户偏好的内容推荐方法和服务器

Publications (2)

Publication Number Publication Date
CN103823908A true CN103823908A (zh) 2014-05-28
CN103823908B CN103823908B (zh) 2017-07-14

Family

ID=50758972

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410108119.0A Expired - Fee Related CN103823908B (zh) 2014-03-21 2014-03-21 基于用户偏好的内容推荐方法和服务器

Country Status (1)

Country Link
CN (1) CN103823908B (zh)

Cited By (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104168433A (zh) * 2014-08-28 2014-11-26 广州华多网络科技有限公司 一种媒体内容处理方法及***
CN104301323A (zh) * 2014-10-23 2015-01-21 中国科学院大学 均衡第三方应用个性化服务和用户隐私信息安全的方法
CN104378659A (zh) * 2014-10-31 2015-02-25 四川长虹电器股份有限公司 基于智能电视的个性化推荐方法
CN104394439A (zh) * 2014-11-20 2015-03-04 合一网络技术(北京)有限公司 基于动态配置的视频推荐分流的***
CN104462560A (zh) * 2014-12-25 2015-03-25 广东电子工业研究院有限公司 一种个性化推荐***及其推荐方法
CN104580385A (zh) * 2014-12-16 2015-04-29 腾讯科技(深圳)有限公司 一种拓展用户关系链的方法及装置
CN104683458A (zh) * 2015-02-12 2015-06-03 广东欧珀移动通信有限公司 一种壁纸推荐的方法及服务器
CN104994431A (zh) * 2015-07-06 2015-10-21 无锡天脉聚源传媒科技有限公司 一种网站视频关注度的处理方法和装置
CN105404687A (zh) * 2015-12-11 2016-03-16 重庆市科学技术研究院 学习行为的个性化推荐方法及***
CN105635210A (zh) * 2014-10-30 2016-06-01 腾讯科技(武汉)有限公司 网络信息的推荐方法及装置、阅读***
CN105630474A (zh) * 2014-11-06 2016-06-01 中兴通讯股份有限公司 一种提醒方法和装置
CN105975522A (zh) * 2016-04-29 2016-09-28 清华大学深圳研究生院 一种多领域内容推荐方法及服务器
CN105989056A (zh) * 2015-02-06 2016-10-05 北京中搜网络技术股份有限公司 一种汉语新闻推荐***
WO2016191959A1 (zh) * 2015-05-29 2016-12-08 深圳市汇游智慧旅游网络有限公司 一种时变的协同过滤推荐方法
CN106383907A (zh) * 2016-09-30 2017-02-08 北京小米移动软件有限公司 应用推荐方法和装置
CN106649733A (zh) * 2016-12-23 2017-05-10 中山大学 一种基于无线接入点情境分类与感知的在线视频推荐方法
CN106687953A (zh) * 2014-09-17 2017-05-17 索尼公司 信息处理设备、信息处理方法以及计算机程序
WO2017124263A1 (zh) * 2016-01-18 2017-07-27 杨瑛 推荐书籍时的信息推送方法以及图书推荐***
CN107305559A (zh) * 2016-04-21 2017-10-31 ***通信集团广东有限公司 一种应用推荐方法和装置
CN107506488A (zh) * 2017-09-21 2017-12-22 程丹秋 一种智能音乐推荐***
WO2018027737A1 (zh) * 2016-08-11 2018-02-15 王志远 根据商品价格变动推送信息的方法和推送***
CN107730336A (zh) * 2016-08-12 2018-02-23 苏宁云商集团股份有限公司 一种在线交易中的商品推送方法及装置
CN108090211A (zh) * 2017-12-29 2018-05-29 百度在线网络技术(北京)有限公司 热点新闻推送方法和装置
CN108108998A (zh) * 2017-12-14 2018-06-01 百度在线网络技术(北京)有限公司 广告展现方法和装置、服务器、存储介质
CN108197219A (zh) * 2017-12-28 2018-06-22 北京奇虎科技有限公司 推送信息的方法及装置
CN108256018A (zh) * 2018-01-09 2018-07-06 北京奇艺世纪科技有限公司 一种物品推荐方法及装置
CN108701313A (zh) * 2015-12-11 2018-10-23 万事达卡国际股份有限公司 使用数据语料库生成推荐的***和方法
WO2018218858A1 (zh) * 2017-06-02 2018-12-06 深圳正品创想科技有限公司 一种商品呈现方法、装置及无人售货柜
CN109088999A (zh) * 2017-06-13 2018-12-25 中兴通讯股份有限公司 一种播放回铃音的方法、装置及计算机可读存储介质
CN109145221A (zh) * 2018-09-10 2019-01-04 北京点网聚科技有限公司 内容推荐方法及装置、电子设备、可读存储介质
CN109389168A (zh) * 2018-09-29 2019-02-26 国信优易数据有限公司 项目推荐模型训练方法、项目推荐方法以及装置
CN109919728A (zh) * 2019-03-12 2019-06-21 贵州大学 一种微商城的商品推荐方法
CN110008974A (zh) * 2018-11-23 2019-07-12 阿里巴巴集团控股有限公司 行为数据预测方法、装置、电子设备及计算机存储介质
TWI674544B (zh) * 2016-12-29 2019-10-11 第一商業銀行股份有限公司 智能產品行銷方法及系統
CN110837813A (zh) * 2019-11-14 2020-02-25 爱驰汽车有限公司 环境设备控制方法、装置、电子设备、存储介质
CN110969222A (zh) * 2018-09-29 2020-04-07 西门子股份公司 信息提供方法和***
TWI715079B (zh) * 2019-06-26 2021-01-01 台達電子工業股份有限公司 網路教學系統及其網路教學方法
CN112765467A (zh) * 2021-01-19 2021-05-07 北京嘀嘀无限科技发展有限公司 一种服务推荐方法、装置、电子设备以及存储介质
WO2022111095A1 (zh) * 2020-11-30 2022-06-02 中移(苏州)软件技术有限公司 一种产品推荐方法、装置、计算机存储介质及***
US11688295B2 (en) 2019-06-26 2023-06-27 Delta Electronics, Inc. Network learning system and method thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1756336A (zh) * 2004-09-29 2006-04-05 松下电器产业株式会社 电视频道推荐***及推荐方法
CN101431485A (zh) * 2008-12-31 2009-05-13 深圳市迅雷网络技术有限公司 一种自动推荐互联网上信息的方法及***
CN102789462A (zh) * 2011-05-18 2012-11-21 阿里巴巴集团控股有限公司 一种项目推荐方法及***
US20130086082A1 (en) * 2011-09-29 2013-04-04 Postech Academy-Industry Foundation Method and system for providing personalization service based on personal tendency

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1756336A (zh) * 2004-09-29 2006-04-05 松下电器产业株式会社 电视频道推荐***及推荐方法
CN101431485A (zh) * 2008-12-31 2009-05-13 深圳市迅雷网络技术有限公司 一种自动推荐互联网上信息的方法及***
CN102789462A (zh) * 2011-05-18 2012-11-21 阿里巴巴集团控股有限公司 一种项目推荐方法及***
US20130086082A1 (en) * 2011-09-29 2013-04-04 Postech Academy-Industry Foundation Method and system for providing personalization service based on personal tendency

Cited By (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104168433A (zh) * 2014-08-28 2014-11-26 广州华多网络科技有限公司 一种媒体内容处理方法及***
CN104168433B (zh) * 2014-08-28 2018-02-09 广州华多网络科技有限公司 一种媒体内容处理方法及***
CN106687953A (zh) * 2014-09-17 2017-05-17 索尼公司 信息处理设备、信息处理方法以及计算机程序
CN104301323B (zh) * 2014-10-23 2017-10-31 中国科学院大学 均衡第三方应用个性化服务和用户隐私信息安全的方法
CN104301323A (zh) * 2014-10-23 2015-01-21 中国科学院大学 均衡第三方应用个性化服务和用户隐私信息安全的方法
CN105635210A (zh) * 2014-10-30 2016-06-01 腾讯科技(武汉)有限公司 网络信息的推荐方法及装置、阅读***
CN104378659A (zh) * 2014-10-31 2015-02-25 四川长虹电器股份有限公司 基于智能电视的个性化推荐方法
CN105630474B (zh) * 2014-11-06 2021-05-18 中兴通讯股份有限公司 一种提醒方法和装置
CN105630474A (zh) * 2014-11-06 2016-06-01 中兴通讯股份有限公司 一种提醒方法和装置
CN104394439A (zh) * 2014-11-20 2015-03-04 合一网络技术(北京)有限公司 基于动态配置的视频推荐分流的***
CN104394439B (zh) * 2014-11-20 2016-04-20 合一网络技术(北京)有限公司 基于动态配置的视频推荐分流的***
CN104580385A (zh) * 2014-12-16 2015-04-29 腾讯科技(深圳)有限公司 一种拓展用户关系链的方法及装置
CN104462560A (zh) * 2014-12-25 2015-03-25 广东电子工业研究院有限公司 一种个性化推荐***及其推荐方法
CN104462560B (zh) * 2014-12-25 2018-01-05 广东电子工业研究院有限公司 一种个性化推荐***的推荐方法
CN105989056A (zh) * 2015-02-06 2016-10-05 北京中搜网络技术股份有限公司 一种汉语新闻推荐***
CN105989056B (zh) * 2015-02-06 2019-05-24 北京中搜云商网络技术有限公司 一种汉语新闻推荐***
CN104683458A (zh) * 2015-02-12 2015-06-03 广东欧珀移动通信有限公司 一种壁纸推荐的方法及服务器
CN104683458B (zh) * 2015-02-12 2018-07-06 广东欧珀移动通信有限公司 一种壁纸推荐的方法及服务器
CN106471491A (zh) * 2015-05-29 2017-03-01 深圳市汇游智慧旅游网络有限公司 一种时变的协同过滤推荐方法
WO2016191959A1 (zh) * 2015-05-29 2016-12-08 深圳市汇游智慧旅游网络有限公司 一种时变的协同过滤推荐方法
CN104994431A (zh) * 2015-07-06 2015-10-21 无锡天脉聚源传媒科技有限公司 一种网站视频关注度的处理方法和装置
CN104994431B (zh) * 2015-07-06 2018-07-24 无锡天脉聚源传媒科技有限公司 一种网站视频关注度的处理方法和装置
US11790431B2 (en) 2015-12-11 2023-10-17 Mastercard International Incorporated Systems and methods for generating recommendations using a corpus of data
CN105404687A (zh) * 2015-12-11 2016-03-16 重庆市科学技术研究院 学习行为的个性化推荐方法及***
CN108701313A (zh) * 2015-12-11 2018-10-23 万事达卡国际股份有限公司 使用数据语料库生成推荐的***和方法
WO2017124263A1 (zh) * 2016-01-18 2017-07-27 杨瑛 推荐书籍时的信息推送方法以及图书推荐***
CN107305559A (zh) * 2016-04-21 2017-10-31 ***通信集团广东有限公司 一种应用推荐方法和装置
CN105975522B (zh) * 2016-04-29 2019-06-21 清华大学深圳研究生院 一种多领域内容推荐方法及服务器
CN105975522A (zh) * 2016-04-29 2016-09-28 清华大学深圳研究生院 一种多领域内容推荐方法及服务器
WO2018027737A1 (zh) * 2016-08-11 2018-02-15 王志远 根据商品价格变动推送信息的方法和推送***
CN107730336A (zh) * 2016-08-12 2018-02-23 苏宁云商集团股份有限公司 一种在线交易中的商品推送方法及装置
CN106383907A (zh) * 2016-09-30 2017-02-08 北京小米移动软件有限公司 应用推荐方法和装置
CN106649733A (zh) * 2016-12-23 2017-05-10 中山大学 一种基于无线接入点情境分类与感知的在线视频推荐方法
CN106649733B (zh) * 2016-12-23 2020-04-10 中山大学 一种基于无线接入点情境分类与感知的在线视频推荐方法
TWI674544B (zh) * 2016-12-29 2019-10-11 第一商業銀行股份有限公司 智能產品行銷方法及系統
WO2018218858A1 (zh) * 2017-06-02 2018-12-06 深圳正品创想科技有限公司 一种商品呈现方法、装置及无人售货柜
CN109088999A (zh) * 2017-06-13 2018-12-25 中兴通讯股份有限公司 一种播放回铃音的方法、装置及计算机可读存储介质
CN109088999B (zh) * 2017-06-13 2021-04-06 中兴通讯股份有限公司 一种播放回铃音的方法、装置及计算机可读存储介质
CN107506488A (zh) * 2017-09-21 2017-12-22 程丹秋 一种智能音乐推荐***
CN108108998A (zh) * 2017-12-14 2018-06-01 百度在线网络技术(北京)有限公司 广告展现方法和装置、服务器、存储介质
CN108197219A (zh) * 2017-12-28 2018-06-22 北京奇虎科技有限公司 推送信息的方法及装置
CN108090211A (zh) * 2017-12-29 2018-05-29 百度在线网络技术(北京)有限公司 热点新闻推送方法和装置
CN108090211B (zh) * 2017-12-29 2022-09-09 百度在线网络技术(北京)有限公司 热点新闻推送方法和装置
CN108256018A (zh) * 2018-01-09 2018-07-06 北京奇艺世纪科技有限公司 一种物品推荐方法及装置
CN109145221A (zh) * 2018-09-10 2019-01-04 北京点网聚科技有限公司 内容推荐方法及装置、电子设备、可读存储介质
CN110969222A (zh) * 2018-09-29 2020-04-07 西门子股份公司 信息提供方法和***
CN109389168A (zh) * 2018-09-29 2019-02-26 国信优易数据有限公司 项目推荐模型训练方法、项目推荐方法以及装置
CN110008974A (zh) * 2018-11-23 2019-07-12 阿里巴巴集团控股有限公司 行为数据预测方法、装置、电子设备及计算机存储介质
CN109919728A (zh) * 2019-03-12 2019-06-21 贵州大学 一种微商城的商品推荐方法
TWI715079B (zh) * 2019-06-26 2021-01-01 台達電子工業股份有限公司 網路教學系統及其網路教學方法
US11688295B2 (en) 2019-06-26 2023-06-27 Delta Electronics, Inc. Network learning system and method thereof
CN110837813A (zh) * 2019-11-14 2020-02-25 爱驰汽车有限公司 环境设备控制方法、装置、电子设备、存储介质
CN110837813B (zh) * 2019-11-14 2023-01-03 爱驰汽车有限公司 环境设备控制方法、装置、电子设备、存储介质
WO2022111095A1 (zh) * 2020-11-30 2022-06-02 中移(苏州)软件技术有限公司 一种产品推荐方法、装置、计算机存储介质及***
CN112765467A (zh) * 2021-01-19 2021-05-07 北京嘀嘀无限科技发展有限公司 一种服务推荐方法、装置、电子设备以及存储介质

Also Published As

Publication number Publication date
CN103823908B (zh) 2017-07-14

Similar Documents

Publication Publication Date Title
CN103823908A (zh) 基于用户偏好的内容推荐方法和服务器
CN106651542B (zh) 一种物品推荐的方法及装置
CN111461841B (zh) 物品推荐方法、装置、服务器及存储介质
US10409821B2 (en) Search result ranking using machine learning
CN103678518A (zh) 一种推荐列表调整方法和装置
EP2304619B1 (en) Correlated information recommendation
JP5984834B2 (ja) ウェブサイト横断情報を表示する方法およびシステム
US10210536B1 (en) Predictive recommendation system using price boosting
CN109658206A (zh) 信息推荐方法和装置
TW201737176A (zh) 業務對象的分時推薦方法和系統
CN101482884A (zh) 一种基于用户偏好评分分布的协作推荐***
Ershov The effect of consumer search costs on entry and quality in the mobile app market
KR20140056731A (ko) 구매추천 시스템 및 방법
CN111429203A (zh) 基于用户行为数据的商品推荐方法和装置
US11200593B2 (en) Predictive recommendation system using tiered feature data
US11810151B2 (en) Predictive recommendation system using tiered feature data
KR20150066644A (ko) 개인행동기반 관심 대상 및 선호 분야 분석시스템 및 그 방법
CN114885185A (zh) 直播间推荐方法、内容推荐方法、终端及存储介质
CN111127074A (zh) 一种数据推荐方法
CN103765460A (zh) 广告定制
CN110727863A (zh) 一种基于复杂网络协同过滤的项目推荐方法
KR102576123B1 (ko) 제품 공동구매 연계 시스템 및 방법
Baron et al. Instagram as a new promotion and sales channel
Sibarani Digital Marketing Implementation on Development and Prospective Digital Business (case Study on Marketplace in Indonesia)
CN113781171A (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
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170714

Termination date: 20210321

CF01 Termination of patent right due to non-payment of annual fee