CN106126669B - 基于标签的用户协同过滤内容推荐方法及装置 - Google Patents
基于标签的用户协同过滤内容推荐方法及装置 Download PDFInfo
- Publication number
- CN106126669B CN106126669B CN201610490710.6A CN201610490710A CN106126669B CN 106126669 B CN106126669 B CN 106126669B CN 201610490710 A CN201610490710 A CN 201610490710A CN 106126669 B CN106126669 B CN 106126669B
- Authority
- CN
- China
- Prior art keywords
- user
- label
- content
- recommended
- similarity
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于标签的用户协同过滤内容推荐方法,该方法包括:获取多个待推荐内容的标签信息;根据标签信息之间的相似度,对标签信息进行聚类,得到多个标签簇;根据标签信息、标签簇得到多个用户的兴趣向量;根据各个用户的兴趣向量,以及各个用户的第一浏览记录得到各个用户之间的相似度,并根据各个用户之间的相似度,确定与目标用户相关的用户;第一浏览记录包括:所述用户浏览过的内容的集合,以及对所述集合中的内容浏览的时间;根据所目标用户和与目标用户相关的用户之间的相似度,以及与目标用户相关的用户的第一浏览记录,得到目标用户对应的各个待推荐内容的推荐度,并根据推荐度对目标用户进行内容推荐。本发明推荐的准确度较高。
Description
技术领域
本发明涉及内容推荐技术领域,尤其涉及一种基于标签的用户协同过滤内容推荐方法及装置。
背景技术
随着互联网技术的飞速发展,互联网上的信息呈指数级数增长,随之而产生的信息垃圾也越来越多,使得用户很难准确、快速地在海量的信息中搜索到符合自己要求的信息内容。如何快速,准确地获取自己所需要的信息成为人们的迫切需求。推荐系统因其具备解决信息过载问题的能力,帮助用户从大量的信息中定位到其所需要的信息而被广泛研究和应用。
目前推荐系统最常用的推荐技术有协同过滤推荐技术。该推荐技术是通过分析用户的历史行为,在用户群中找到指定用户的相似用户,综合这些相似用户对某一内容的喜好程度,形成对该指定用户对此内容的喜好程度预测,进而决定是否推荐给该指定用户。但是,上述推荐技术的问题是,仅仅通过分析用户的历史行为,得到相似用户,并根据相似用户的喜好程度推测该指定用户的喜好,会导致推荐的内容不一定是用户真正感兴趣的,因此会使得推荐不够准确。
发明内容
本发明提供一种基于标签的用户协同过滤内容推荐方法及装置,以克服现有技术中推荐不够准确的问题。
第一方面,本发明提供一种基于标签的用户协同过滤内容推荐方法,包括:
获取多个待推荐内容的标签信息;
根据所述标签信息之间的相似度,对所述标签信息进行聚类,得到多个标签簇;
根据所述标签信息、所述标签簇得到多个用户的兴趣向量;所述多个用户包括目标用户;
根据各个所述用户的兴趣向量,以及各个所述用户的第一浏览记录得到各个所述用户之间的相似度,并根据各个所述用户之间的相似度,确定与所述目标用户相关的用户;所述第一浏览记录包括:所述用户浏览过的内容的集合,以及对所述集合中的内容浏览的时间;
根据所述目标用户和与所述目标用户相关的用户之间的相似度,以及与所述目标用户相关的用户的第一浏览记录,得到所述目标用户对应的各个所述待推荐内容的推荐度,并根据所述推荐度对所述目标用户进行内容推荐。
第二方面,本发明提供一种基于标签的用户协同过滤内容推荐装置,包括:
获取模块,用于获取多个待推荐内容的标签信息;
聚类模块,用于根据所述标签信息之间的相似度,对所述标签信息进行聚类,得到多个标签簇;
兴趣向量计算模块,用于根据所述标签信息、所述标签簇得到多个用户的兴趣向量;所述多个用户包括目标用户;
相似度计算模块,用于根据各个所述用户的兴趣向量,以及各个所述用户的第一浏览记录得到各个所述用户之间的相似度,并根据各个所述用户之间的相似度,确定与所述目标用户相关的用户;所述第一浏览记录包括:所述用户浏览过的内容的集合,以及对所述集合中的内容浏览的时间;
推荐模块,用于根据所述目标用户和与所述目标用户相关的用户之间的相似度,以及与所述目标用户相关的用户的第一浏览记录,得到所述目标用户对应的各个所述待推荐内容的推荐度,并根据所述推荐度对所述目标用户进行内容推荐。
本发明基于标签的用户协同过滤内容推荐方法及装置,通过对获取的多个待推荐内容的标签信息进行聚类,得到多个标签簇;根据所述标签信息、所述标签簇得到多个用户的兴趣向量;进一步的,根据各个所述用户的兴趣向量,以及各个所述用户的第一浏览记录得到各个所述用户之间的相似度,并根据各个所述用户之间的相似度,确定与所述目标用户相关的用户;根据所述目标用户和与所述目标用户相关的用户之间的相似度,以及与所述目标用户相关的用户的第一浏览记录,得到所述目标用户对应的各个所述待推荐内容的推荐度,并根据所述推荐度对所述目标用户进行内容推荐,由于充分利用待推荐内容的标签信息的可聚类性,且在计算相似度时引入更多上下文信息,使得推荐结果更精确。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明基于标签的用户协同过滤内容推荐方法一实施例的流程示意图;
图2为本发明基于标签的用户协同过滤内容推荐装置一实施例的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明基于标签的用户协同过滤内容推荐方法一实施例的流程示意图,如图1所示,本实施例的方法包括:
步骤101、获取多个待推荐内容的标签信息;
本发明实施例的方法适用于各种网络内容推荐场景,比如:新闻推荐、在线小说推荐、微博推荐等。以下实施例中以新闻推荐为例进行说明。
具体的,可以通过网络爬虫获取多个待推荐内容的标签信息。
例如,根据待推荐新闻获取其相应的标签信息。将新闻的统一资源定位符(Uniform Resource Locator,简称URL)作为参数发送超文本传输协议(HyperTextTransfer Protocol,简称HTTP)请求到获取标签信息的应用程序编程接口(ApplicationProgramming Interface,简称API),爬取该新闻的多个标签信息。
例如,待推荐新闻有5条,其中一条的标签信息包括新华网、体育、羽毛球,一条的标签信息包括网易、娱乐、范冰冰,则可以得到多个待推荐新闻的多个标签信息。
步骤102、根据所述标签信息之间的相似度,对所述标签信息进行聚类,得到多个标签簇;
具体的,聚类之前先将步骤101中得到的多个标签信息去重。
根据所述标签信息之间的相似度,对所述标签信息进行聚类,具体可以是由下往上的层次聚类:首先得到初始的标签簇,每个标签簇包括一个标签信息,然后根据标签簇之间的相似度,进行合并,将相似度大于预设阈值的标签簇进行合并,直至标签簇的个数为预设个数。
其中相似度的度量依据为:1)若两个标签信息在同一则新闻中出现,则相似度较高;2)若两个标签信息在同一则新闻中出现,距离越近的标签相似度越高。
该聚类算法的特点是既能根据最终的标签簇的个数进行限制,还能根据相似度的预设阈值进行限制,通过使用双重限制让用户能较全面地控制聚类结果。
步骤103、根据所述标签信息、所述标签簇得到多个用户的兴趣向量;
本发明实施例中,需要对目标用户进行内容推荐,上述多个用户包括该目标用户。
可选地,该步骤可以分为以下两个步骤来实现:
分别将每个所述待推荐内容的各个所述标签信息映射到所述标签簇中,得到每个所述待推荐内容对应的话题向量;
根据所述待推荐内容对应的话题向量以及与各个所述用户的第二浏览记录对应的权重,得到各个所述用户的兴趣向量;所述第二浏览记录包括所述用户对所述待推荐内容的浏览时长。
具体的,首先,将每个待推荐内容的各个标签信息映射到所述标签簇中,首先可以确定待推荐内容的各个标签信息归属的标签簇,将归属于第n个标签簇的标签信息的个数作为待推荐内容对应的话题向量的第n个元素;其中,n的取值范围为大于0,且n小于等于所述标签簇的个数。
例如,将该待推荐新闻的各个标签信息映射到聚类得到的标签簇中,得到一个向量,将其表示为该待推荐新闻的话题向量。比如聚类结果为K个标签簇,对标签簇依次编号为0~K-1,那么该待推荐新闻的话题向量的维度就为K,将新闻的各个标签信息映射到标签簇中,若有标签信息归属于编号为n的簇,那么该待推荐新闻的话题向量就在第n维的地方加一;话题向量的元素初始化为0。同理,每当有标签信息映射到某个标签簇,那么新闻话题向量的对应维度值就加一。如上所述,可求得各个待推荐新闻的话题向量。
然后,将各个所述待推荐内容对应的话题向量的加权和作为所述用户的兴趣向量;其中,话题向量对应的权重为根据用户对所述待推荐内容的第二浏览记录以及所述待推荐内容的热门度确定的。
具体的,为了较精确的刻画用户兴趣模型,本步骤中可以引入更多的上下文信息,比如用户对内容的浏览时长、内容的热门度等等。以下仅以新闻进行举例说明。
本发明实施例充分考虑了新闻热门度对用户兴趣模型的影响,将新闻划分为了热门新闻、冷门新闻和普通新闻三种类型,根据用户对三类新闻的不同操作设定不同的权重,能较精确地反映出用户的兴趣偏好。因此需要计算用户对新闻的平均浏览时长,参考此值来设定浏览时长的阈值,用来评判用户对新闻的喜好程度。并且对新闻进行热门度排序。
然后进行用户的兴趣向量的计算。用户的兴趣向量为用户浏览的待推荐新闻的话题向量乘上权重之和。
具体的,当t≤T1,rank≤R1时,权重为a1,t表示用户对新闻的浏览时长,T1表示用户对兴趣低的新闻的浏览时长的第一阈值(即当用户对新闻的浏览时长小于该值时默认为用户对该新闻的兴趣度较低);当t≥T2,rank≥R2时,权重为a3,T2表示用户对兴趣高的新闻的浏览时长的第二阈值(即当用户对新闻的浏览时长大于该值时默认为用户对该新闻的兴趣度较高);当t为其余情况时,权重为a2;rank表示新闻按照热门度排序的序号(即该值越低新闻的热门度越高,该值越高新闻的热门度越低);R1表示按照热门度排序的热门新闻的第一序号阈值,即小于该序号的新闻都认为是热门度高的新闻;R2表示按照热门度排序的非热门新闻的第二序号阈值,即大于该序号的新闻都认为是热门度低的新闻。
本发明实施例中假设无论用户对新闻的兴趣度高低,只要对新闻有操作就是表示有兴趣,因此权重a1、a2、a3假设为正数取1、2、3,当用户对新闻的浏览时长小于浏览时长的第一阈值并且该新闻热门度较高,则权重为1;当用户对该新闻的浏览时长大于浏览时长的第二阈值并且该新闻热门度较低,则权重为3;其余情况权重为2。
步骤104、根据各个所述用户的兴趣向量,以及各个所述用户的第一浏览记录得到各个所述用户之间的相似度,并根据各个所述用户之间的相似度,确定与目标用户相关的用户;所述第一浏览记录包括:所述用户浏览过的内容的集合,以及对所述集合中的内容浏览的时间;
具体的,基于各个所述用户的兴趣向量可以初步计算得到的一个用户间的初始相似度,然后根据初始相似度以及各个所述用户的第一浏览记录得到各个所述用户之间的相似度。
初始相似度可以是基于各个所述用户的兴趣向量的余弦相似度。
根据各个所述用户的第一浏览记录得到各个所述用户之间的相似度即为采用传统的基于用户的协同过滤推荐算法。
根据得到的多个用户之间的相似度,确定出与目标用户相关的用户,如与目标用户相似度最大的k个用户。
步骤105、根据所述目标用户和与所述目标用户相关的用户之间的相似度,以及与所述目标用户相关的用户的第一浏览记录,得到所述目标用户对应的各个所述待推荐内容的推荐度,并根据所述推荐度对所述目标用户进行内容推荐。
具体的,根据上个步骤中得到目标用户与相关的用户之间的相似度,以及相关的用户的第一浏览记录,得到该目标用户对应的各个待推荐内容的推荐度,例如可以将推荐度较大的几个待推荐内容推荐给目标用户。
本发明实施例在现有的推荐技术基础上,充分利用待推荐内容的标签信息的可聚类性,且在网络内容推荐场景特征中引入更多上下文信息,扩充推荐背景信息,提供一种基于标签的用户协同过滤内容推荐方法,使得推荐结果更精确。标签信息能较好的反映待推荐内容,并且其可聚类的特征能有效地将待推荐内容进行分类,将待推荐内容自身信息考虑到推荐系统中有助于更扩充推荐系统背景信息,同时引入更多的上下文信息能针对网络内容推荐场景进行更加精准的推荐。
本实施例提供的方法,通过对获取的多个待推荐内容的标签信息进行聚类,得到多个标签簇;根据所述标签信息、所述标签簇得到多个用户的兴趣向量;进一步的,根据各个所述用户的兴趣向量,以及各个所述用户的第一浏览记录得到各个所述用户之间的相似度,并根据各个所述用户之间的相似度,确定与所述目标用户相关的用户;根据所述目标用户和与所述目标用户相关的用户之间的相似度,以及与所述目标用户相关的用户的第一浏览记录,得到所述目标用户对应的各个所述待推荐内容的推荐度,并根据所述推荐度对所述目标用户进行内容推荐,由于充分利用待推荐内容的标签信息的可聚类性,且在计算相似度时引入更多上下文信息,使得推荐结果更精确。
在上述实施例的基础上,本实施例中,步骤102具体可以通过如下方式实现:
a、将所有的标签信息分别作为一个标签簇;
b、计算所述标签簇两两之间的相似度,确定相似度最大的两个标签簇,若所述相似度大于预设阈值,则将所述两个标签簇进行合并;
c、判断合并后的标签簇的个数是否等于预设个数,若否,则重复所述b,直至标签簇的个数等于预设个数。
具体的,根据所述标签信息之间的相似度,对所述标签信息进行聚类,具体可以是由下往上的层次聚类:首先得到初始的标签簇,每个标签簇包括一个标签信息,然后根据标签簇之间的相似度,进行合并,将相似度大于预设阈值的标签簇进行合并,直至标签簇的个数为预设个数。若步骤b中相似度若小于或等于预设阈值,则停止进行聚类,不再执行循环操作。
标签簇之间的相似度,可以根据两个标签簇之间所有标签信息的平均相似度得到,比如标签簇A里面有新华网、体育;标签簇B里面有羽毛球、乒乓球,则标签簇A和标签簇B的相似度为{(新华网和羽毛球之间的相似度)+(新华网和乒乓球之间的相似度)+(体育和羽毛球之间的相似度)+(体育和乒乓球之间的相似度)}/4。
在上述实施例的基础上,由于标签信息之间并不是彼此独立的,因此可选地,步骤102之后,还可以进行如下操作:
计算所述标签簇的中心和半径,并根据所述标签簇的中心和半径确定相交的标签簇;
将所述相交的标签簇中位于相交区域内的标签信息,放入所述相交的标签簇中不包含所述标签信息的标签簇中。
具体的,本发明实施例中可以采用双层聚类,在第一层聚类的基础上进行第二层聚类。求得第一层聚类的标签簇的半径和中心。将相交部分的标签信息分别归属到相交的两个标签簇里面。
计算标签簇的中心的方法:假设标签簇中有M个标签信息,则遍历M个标签信息,依次将其作为中心,计算这个中心到其他所有标签信息的相似度并求和,找到相似度和值最大的中心,将此时的标签作为中心。
计算标签簇的半径的方法:假设标签簇中有M个标签信息,且已经得到该标签簇的中心,则遍历中心之外的M-1个标签信息m,依次将其作为半径参考点,计算该标签信息m到中心的相似度的倒数,假设其值为Sj,然后再遍历其余的M-2个标签信息j,计算其到中心的相似度的倒数,假设其值为Sm,找到M-2个|Sj-Sm|之和最小的情况,即此时各标签信息到中心的距离差异最小,则此时的Sj即为半径。
在上述实施例的基础上,步骤104具体可以通过如下的方式实现:
根据如下公式(1)确定各个所述用户之间的相似度;
其中,Wuv表示用户u和用户v的相似度,N(u)表示用户u浏览过的内容集合,N(v)表示用户v浏览过的内容集合,Tui表示用户u浏览第i个内容的时间点,Tvi表示用户v浏览第i个内容的时间点,|N(u)|和|N(v)|分别表示N(u)和N(v)包含的元素个数;表示用户u的兴趣向量和用户v的兴趣向量的相似度;β为权重因子;α为预设的时间因子。
其中,|N(u)|∪|N(v)|表示N(u)和N(v)包含的元素个数之和;α代表时间因子,其值越大,则时间对相似度的影响越大,即两用户对同一新闻的浏览时间间隔对用户相似度的影响越大。
具体的,由于余弦相似度相比其它相似度计算方法,其注重两个向量在方向上的差异,这和本发明方法的两个用户在话题上的兴趣度差异相吻合。并且余弦相似度的取值范围在[-1,+1],这种归一化的结果有利于提高推荐的精度、覆盖率以及多样性。
因此,本步骤中将在用户兴趣建模的基础上进行两两用户的余弦相似度计算,得到用户间的初始的相似度。使用计算公式如(3)所示,即余弦相似度的计算方法。
然后根据上述公式(1)计算最终的用户之间的相似度。
公式(1)中的前半部分为根据传统的基于用户的协同过滤推荐算法的相似度计算过程。β为根据经验值得到的权重因子。
在上述实施例的基础上,步骤105具体可以通过如下的方式实现:
根据如下公式(2)得到所述目标用户对应的各个所述待推荐内容的推荐度
其中,P(u,i)表示目标用户u对应的第i个待推荐内容的推荐度。S(u,k)表示和目标用户u相似度最大的k个用户的集合,Wuv表示目标用户u和与目标用户相关的用户v的相似度,Rvi表示用户v对第i个待推荐内容的兴趣值,若用户v浏览过第i个待推荐内容,则Rvi为1;若用户没有浏览过第i个待推荐内容,则Rvi为0;To表示当前时间,Tvi表示用户v对第i个待推荐内容的浏览时间点;α为预设的时间因子。
α的值会决定时间因素的影响权重。由用户自定义。其值越大,则时间对推荐度的影响越大。
上述具体实施方式的实现原理和技术效果请参见图1所示实施例,此处不再赘述。
图2为本发明基于标签的用户协同过滤内容推荐装置一实施例的结构示意图。如图2所示,本实施例的基于标签的用户协同过滤内容推荐装置,包括:
获取模块,用于获取多个待推荐内容的标签信息;
聚类模块,用于根据所述标签信息之间的相似度,对所述标签信息进行聚类,得到多个标签簇;
兴趣向量计算模块,用于根据所述标签信息、所述标签簇得到多个用户的兴趣向量;所述多个用户包括目标用户;
相似度计算模块,用于根据各个所述用户的兴趣向量,以及各个所述用户的第一浏览记录得到各个所述用户之间的相似度,并根据各个所述用户之间的相似度,确定与所述目标用户相关的用户;所述第一浏览记录包括:所述用户浏览过的内容的集合,以及对所述集合中的内容浏览的时间;
推荐模块,用于根据所述目标用户和与所述目标用户相关的用户之间的相似度,以及与所述目标用户相关的用户的第一浏览记录,得到所述目标用户对应的各个所述待推荐内容的推荐度,并根据所述推荐度对所述目标用户进行内容推荐。
可选地,作为一种可实施的方式,聚类模块,具体用于执行以下步骤:
a、将所有的标签信息分别作为一个标签簇;
b、计算所述标签簇两两之间的相似度,确定相似度最大的两个标签簇,若所述相似度大于预设阈值,则将所述两个标签簇进行合并;
c、判断合并后的标签簇的个数是否等于预设个数,若否,则重复所述b,直至标签簇的个数等于预设个数。
可选地,作为一种可实施的方式,聚类模块,还用于:
计算所述标签簇的中心和半径,并根据所述标签簇的中心和半径确定相交的标签簇;
将所述相交的标签簇中位于相交区域内的标签信息,放入所述相交的标签簇中不包含所述标签信息的标签簇中。
可选地,作为一种可实施的方式,所述兴趣向量计算模块,包括:
话题向量计算单元,用于分别将每个所述待推荐内容的各个所述标签信息映射到所述标签簇中,得到每个所述待推荐内容对应的话题向量;
兴趣向量计算单元,用于根据所述待推荐内容对应的话题向量以及与各个所述用户的第二浏览记录对应的权重,得到各个所述用户的兴趣向量;所述第二浏览记录包括所述用户对所述待推荐内容的浏览时长。
可选地,作为一种可实施的方式,话题向量计算单元,具体用于:
确定所述待推荐内容的各个所述标签信息归属的标签簇,将归属于第n个标签簇的标签信息的个数作为所述待推荐内容对应的话题向量的第n个元素;
其中,n的取值范围为大于0,且n小于等于所述标签簇的个数。
可选地,作为一种可实施的方式,兴趣向量计算单元,具体用于:
将各个所述待推荐内容对应的话题向量的加权和作为所述用户的兴趣向量;
其中,所述话题向量对应的权重为根据所述用户对所述待推荐内容的第二浏览记录以及所述待推荐内容的热门度确定的。
可选地,作为一种可实施的方式,相似度计算模块,具体用于:
根据如下公式(1)确定各个所述用户之间的相似度;
其中,Wuv表示用户u和用户v的相似度,N(u)表示用户u浏览过的内容集合,N(v)表示用户v浏览过的内容集合,Tui表示用户u浏览第i个内容的时间点,Tvi表示用户v浏览第i个内容的时间点,|N(u)|和|N(v)|分别表示N(u)和N(v)包含的元素个数;表示用户u的兴趣向量和用户v的兴趣向量的相似度;β为权重因子;α为预设的时间因子。
可选地,作为一种可实施的方式,推荐模块,具体用于:
根据如下公式(2)得到所述目标用户对应的各个所述待推荐内容的推荐度
其中,P(u,i)表示目标用户u对应的第i个待推荐内容的推荐度。S(u,k)表示和目标用户u相似度最大的k个用户的集合,Wuv表示目标用户u和与目标用户相关的用户v的相似度,Rvi表示用户v对第i个待推荐内容的兴趣值,若用户v浏览过第i个待推荐内容,则Rvi为1;若用户没有浏览过第i个待推荐内容,则Rvi为0;To表示当前时间,Tvi表示用户v对第i个待推荐内容的浏览时间点;α为预设的时间因子。
本实施例的装置,可以用于执行如图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (9)
1.一种基于标签的用户协同过滤内容推荐方法,其特征在于,包括:
获取多个待推荐内容的标签信息;
根据所述标签信息之间的相似度,对所述标签信息进行聚类,得到多个标签簇;
根据所述标签信息、所述标签簇得到多个用户的兴趣向量;所述多个用户包括目标用户;
根据各个所述用户的兴趣向量,以及各个所述用户的第一浏览记录得到各个所述用户之间的相似度,并根据各个所述用户之间的相似度,确定与所述目标用户相关的用户;所述第一浏览记录包括:所述用户浏览过的内容的集合,以及对所述集合中的内容浏览的时间;
根据所述目标用户和与所述目标用户相关的用户之间的相似度,以及与所述目标用户相关的用户的第一浏览记录,得到所述目标用户对应的各个所述待推荐内容的推荐度,并根据所述推荐度对所述目标用户进行内容推荐;
根据所述标签信息之间的相似度,对所述标签信息进行聚类,得到多个标签簇之后,还包括:
计算所述标签簇的中心和半径,并根据所述标签簇的中心和半径确定相交的标签簇;
将所述相交的标签簇中位于相交区域内的标签信息,放入所述相交的标签簇中不包含所述标签信息的标签簇中。
2.根据权利要求1所述的方法,其特征在于,根据所述标签信息之间的相似度,对所述标签信息进行聚类,得到多个标签簇,包括:
a、将所有的标签信息分别作为一个标签簇;
b、计算所述标签簇两两之间的相似度,确定相似度最大的两个标签簇,若所述相似度大于预设阈值,则将所述两个标签簇进行合并;
c、判断合并后的标签簇的个数是否等于预设个数,若否,则重复所述b,直至标签簇的个数等于预设个数。
3.根据权利要求1或2所述的方法,其特征在于,根据所述标签信息、所述标签簇得到多个用户的兴趣向量,包括:
分别将每个所述待推荐内容的各个所述标签信息映射到所述标签簇中,得到每个所述待推荐内容对应的话题向量;
根据所述待推荐内容对应的话题向量以及与各个所述用户的第二浏览记录对应的权重,得到各个所述用户的兴趣向量;所述第二浏览记录包括所述用户对所述待推荐内容的浏览时长。
4.根据权利要求3所述的方法,其特征在于,分别将每个所述待推荐内容的各个所述标签信息映射到所述标签簇中,得到每个所述待推荐内容对应的话题向量,包括:
确定所述待推荐内容的各个所述标签信息归属的标签簇,将归属于第n个标签簇的标签信息的个数作为所述待推荐内容对应的话题向量的第n个元素;
其中,n的取值范围为大于0,且n小于等于所述标签簇的个数。
5.根据权利要求3所述的方法,其特征在于,根据所述待推荐内容对应的话题向量以及与各个所述用户的第二浏览记录对应的权重,得到各个所述用户的兴趣向量,包括:
将各个所述待推荐内容对应的话题向量的加权和作为所述用户的兴趣向量;
其中,所述话题向量对应的权重为根据所述用户对所述待推荐内容的第二浏览记录以及所述待推荐内容的热门度确定的。
6.根据权利要求1或2所述的方法,其特征在于,根据各个所述用户的兴趣向量,以及所述用户的浏览记录得到各个所述用户之间的相似度,包括:
根据如下公式(1)确定各个所述用户之间的相似度;
其中,Wuv表示用户u和用户v的相似度,N(u)表示用户u浏览过的内容集合,N(v)表示用户v浏览过的内容集合,Tui表示用户u浏览第i个内容的时间点,Tvi表示用户v浏览第i个内容的时间点,|N(u)|和|N(v)|分别表示N(u)和N(v)包含的元素个数;表示用户u的兴趣向量和用户v的兴趣向量的相似度;β为权重因子;α为预设的时间因子。
7.根据权利要求1或2所述的方法,其特征在于,根据所述目标用户和与所述目标用户相关的用户之间的相似度,以及与所述目标用户相关的用户的第一浏览记录,得到所述目标用户对应的各个所述待推荐内容的推荐度,包括:
根据如下公式(2)得到所述目标用户对应的各个所述待推荐内容的推荐度
其中,P(u,i)表示目标用户u对应的第i个待推荐内容的推荐度,S(u,k)表示和目标用户u相似度最大的k个用户的集合,Wuv表示目标用户u和与目标用户相关的用户v的相似度,Rvi表示用户v对第i个待推荐内容的兴趣值,若用户v浏览过第i个待推荐内容,则Rvi为1;若用户没有浏览过第i个待推荐内容,则Rvi为0;To表示当前时间,Tvi表示用户v对第i个待推荐内容的浏览时间点;α为预设的时间因子。
8.一种基于标签的用户协同过滤内容推荐装置,其特征在于,包括:
获取模块,用于获取多个待推荐内容的标签信息;
聚类模块,用于根据所述标签信息之间的相似度,对所述标签信息进行聚类,得到多个标签簇;
兴趣向量计算模块,用于根据所述标签信息、所述标签簇得到多个用户的兴趣向量;所述多个用户包括目标用户;
相似度计算模块,用于根据各个所述用户的兴趣向量,以及各个所述用户的第一浏览记录得到各个所述用户之间的相似度,并根据各个所述用户之间的相似度,确定与所述目标用户相关的用户;所述第一浏览记录包括:所述用户浏览过的内容的集合,以及对所述集合中的内容浏览的时间;
推荐模块,用于根据所述目标用户和与所述目标用户相关的用户之间的相似度,以及与所述目标用户相关的用户的第一浏览记录,得到所述目标用户对应的各个所述待推荐内容的推荐度,并根据所述推荐度对所述目标用户进行内容推荐;
所述聚类模块还用于:
计算所述标签簇的中心和半径,并根据所述标签簇的中心和半径确定相交的标签簇;
将所述相交的标签簇中位于相交区域内的标签信息,放入所述相交的标签簇中不包含所述标签信息的标签簇中。
9.根据权利要求8所述的装置,其特征在于,所述兴趣向量计算模块,包括:
话题向量计算单元,用于分别将每个所述待推荐内容的各个所述标签信息映射到所述标签簇中,得到每个所述待推荐内容对应的话题向量;
兴趣向量计算单元,用于根据所述待推荐内容对应的话题向量以及与各个所述用户的第二浏览记录对应的权重,得到各个所述用户的兴趣向量;所述第二浏览记录包括所述用户对所述待推荐内容的浏览时长。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610490710.6A CN106126669B (zh) | 2016-06-28 | 2016-06-28 | 基于标签的用户协同过滤内容推荐方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610490710.6A CN106126669B (zh) | 2016-06-28 | 2016-06-28 | 基于标签的用户协同过滤内容推荐方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106126669A CN106126669A (zh) | 2016-11-16 |
CN106126669B true CN106126669B (zh) | 2019-07-16 |
Family
ID=57284808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610490710.6A Active CN106126669B (zh) | 2016-06-28 | 2016-06-28 | 基于标签的用户协同过滤内容推荐方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106126669B (zh) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108319622B (zh) * | 2017-01-18 | 2022-11-11 | 腾讯科技(北京)有限公司 | 一种媒体内容推荐方法及装置 |
CN107483595B (zh) * | 2017-08-23 | 2023-11-21 | 北京百度网讯科技有限公司 | 信息推送方法和装置 |
CN110555155B (zh) * | 2017-08-30 | 2023-04-07 | 腾讯科技(北京)有限公司 | 物品信息推荐方法、设备和存储介质 |
CN108038120A (zh) * | 2017-11-01 | 2018-05-15 | 平安科技(深圳)有限公司 | 协同过滤推荐方法、电子设备及计算机可读存储介质 |
CN109934648A (zh) * | 2017-12-15 | 2019-06-25 | 中国移动通信集团公司 | 一种基于信息协同过滤算法的集团产品推荐方法及装置 |
CN108090206A (zh) * | 2017-12-28 | 2018-05-29 | 北京小米移动软件有限公司 | 评论信息的排序方法及装置、电子设备 |
CN110555134A (zh) * | 2018-03-29 | 2019-12-10 | 优酷网络技术(北京)有限公司 | 内容聚类方法及装置 |
CN108765051B (zh) * | 2018-04-16 | 2022-03-22 | 达而观信息科技(上海)有限公司 | 物品推荐方法和装置 |
CN109101553B (zh) * | 2018-07-11 | 2020-11-27 | 政采云有限公司 | 用于购买方非受益方的行业的采购用户评价方法和系统 |
CN109218769B (zh) * | 2018-09-30 | 2021-01-01 | 武汉斗鱼网络科技有限公司 | 一种直播间的推荐方法以及相关设备 |
CN109766913A (zh) * | 2018-12-11 | 2019-05-17 | 东软集团股份有限公司 | 用户分群方法、装置、计算机可读存储介质及电子设备 |
CN109740056A (zh) * | 2018-12-28 | 2019-05-10 | 丹翰智能科技(上海)有限公司 | 一种用于向用户提供定制财经信息的方法与设备 |
CN111611469A (zh) * | 2019-02-22 | 2020-09-01 | 北京京东尚科信息技术有限公司 | 标识信息确定方法及装置、电子设备和存储介质 |
CN109978607A (zh) * | 2019-03-05 | 2019-07-05 | 平安科技(深圳)有限公司 | 广告推荐方法、装置及计算机可读存储介质 |
CN111694951B (zh) * | 2019-03-15 | 2023-08-01 | 百度在线网络技术(北京)有限公司 | 兴趣主题生成方法、装置、设备及存储介质 |
CN109960763B (zh) * | 2019-03-21 | 2020-12-22 | 湖南大学 | 基于用户细粒度摄影偏好的摄影社区个性化好友推荐方法 |
CN110990711B (zh) * | 2019-05-13 | 2023-05-12 | 国家计算机网络与信息安全管理中心 | 基于机器学习的微信公众号推荐方法及系统 |
CN112395487B (zh) * | 2019-08-14 | 2024-04-26 | 腾讯科技(深圳)有限公司 | 信息推荐方法、装置、计算机可读存储介质及电子设备 |
CN111027838B (zh) * | 2019-12-04 | 2024-03-26 | 杨剑峰 | 一种众包任务推送方法、装置、设备及其存储介质 |
CN111046300A (zh) * | 2019-12-17 | 2020-04-21 | 智者四海(北京)技术有限公司 | 确定用户的人群属性的方法及装置 |
CN111782954A (zh) * | 2020-06-30 | 2020-10-16 | 深圳前海微众银行股份有限公司 | 一种异常数据搜索模型的确定方法及装置 |
CN111931041A (zh) * | 2020-07-03 | 2020-11-13 | 武汉卓尔数字传媒科技有限公司 | 一种标签推荐方法、装置、电子设备及存储介质 |
CN111814153A (zh) * | 2020-07-10 | 2020-10-23 | 辽东学院 | 一种基于大数据的商业网站安全维护方法 |
CN111931059A (zh) * | 2020-08-19 | 2020-11-13 | 创新奇智(成都)科技有限公司 | 一种对象的确定方法、装置及存储介质 |
CN112052402B (zh) * | 2020-09-02 | 2024-03-01 | 北京百度网讯科技有限公司 | 信息推荐方法、装置、电子设备及存储介质 |
CN112685640A (zh) * | 2020-12-31 | 2021-04-20 | 上海掌门科技有限公司 | 推荐阅读内容的方法、电子设备和计算机可读存储介质 |
CN113159855B (zh) * | 2021-04-30 | 2023-01-13 | 青岛檬豆网络科技有限公司 | 一种直播推荐方法 |
CN114880580A (zh) * | 2022-06-15 | 2022-08-09 | 北京百度网讯科技有限公司 | 信息推荐方法及装置、电子设备和介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102819575A (zh) * | 2012-07-20 | 2012-12-12 | 南京大学 | 一种用于Web服务推荐的个性化搜索方法 |
US8533236B1 (en) * | 2007-11-01 | 2013-09-10 | Google Inc. | Video-related recommendations using link structure |
CN103412948A (zh) * | 2013-08-27 | 2013-11-27 | 北京交通大学 | 基于聚类的协同过滤的商品推荐方法及系统 |
CN104462383A (zh) * | 2014-12-10 | 2015-03-25 | 山东科技大学 | 一种基于用户多种行为反馈的电影推荐方法 |
CN104750856A (zh) * | 2015-04-16 | 2015-07-01 | 天天艾米(北京)网络科技有限公司 | 一种多维协同推荐的系统与方法 |
CN104965889A (zh) * | 2015-06-17 | 2015-10-07 | 腾讯科技(深圳)有限公司 | 内容推荐方法及装置 |
-
2016
- 2016-06-28 CN CN201610490710.6A patent/CN106126669B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8533236B1 (en) * | 2007-11-01 | 2013-09-10 | Google Inc. | Video-related recommendations using link structure |
CN102819575A (zh) * | 2012-07-20 | 2012-12-12 | 南京大学 | 一种用于Web服务推荐的个性化搜索方法 |
CN103412948A (zh) * | 2013-08-27 | 2013-11-27 | 北京交通大学 | 基于聚类的协同过滤的商品推荐方法及系统 |
CN104462383A (zh) * | 2014-12-10 | 2015-03-25 | 山东科技大学 | 一种基于用户多种行为反馈的电影推荐方法 |
CN104750856A (zh) * | 2015-04-16 | 2015-07-01 | 天天艾米(北京)网络科技有限公司 | 一种多维协同推荐的系统与方法 |
CN104965889A (zh) * | 2015-06-17 | 2015-10-07 | 腾讯科技(深圳)有限公司 | 内容推荐方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106126669A (zh) | 2016-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106126669B (zh) | 基于标签的用户协同过滤内容推荐方法及装置 | |
Reddy et al. | Content-based movie recommendation system using genre correlation | |
CN111177575B (zh) | 一种内容推荐方法、装置、电子设备和存储介质 | |
Zhou et al. | Userrec: A user recommendation framework in social tagging systems | |
US9405746B2 (en) | User behavior models based on source domain | |
CN104809154B (zh) | 用于资讯推荐的方法及装置 | |
CN105005589B (zh) | 一种文本分类的方法和装置 | |
CN108287864B (zh) | 一种兴趣群组划分方法、装置、介质及计算设备 | |
CN110532479A (zh) | 一种信息推荐方法、装置及设备 | |
CN110097412A (zh) | 物品推荐方法、装置、设备以及存储介质 | |
CN105723402A (zh) | 用于确定社交数据网络中的影响者的系统和方法 | |
CN104102819B (zh) | 一种用户自然属性的确定方法和装置 | |
US10534823B1 (en) | Social media recommendation engine | |
CN106610970A (zh) | 基于协同过滤的内容推荐系统与方法 | |
Khater et al. | Personalized recommendation for online social networks information: Personal preferences and location-based community trends | |
CN108415913A (zh) | 基于不确定邻居的人群定向方法 | |
CN106951471A (zh) | 一种基于svm的标签发展趋势预测模型的构建方法 | |
CN110413894A (zh) | 内容推荐模型的训练方法、内容推荐的方法及相关装置 | |
CN105930507A (zh) | 一种获得用户的Web浏览兴趣的方法及装置 | |
CN108629010A (zh) | 一种基于主题和服务组合信息的web服务推荐方法 | |
CN105718566A (zh) | 一种智能音乐推荐系统 | |
Ji et al. | Attention based meta path fusion for heterogeneous information network embedding | |
CN112163149A (zh) | 推荐消息的方法及装置 | |
Zheng | Multi level recommendation system of college online learning resources based on multi intelligence algorithm | |
CN106250378A (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 |