CN104951956A - 一种电影排名方法和装置 - Google Patents
一种电影排名方法和装置 Download PDFInfo
- Publication number
- CN104951956A CN104951956A CN201410125046.6A CN201410125046A CN104951956A CN 104951956 A CN104951956 A CN 104951956A CN 201410125046 A CN201410125046 A CN 201410125046A CN 104951956 A CN104951956 A CN 104951956A
- Authority
- CN
- China
- Prior art keywords
- film
- user
- matrix
- native
- time
- 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.)
- Pending
Links
Abstract
本发明公开了一种电影排名方法和装置,根据多部电影及所述多部电影的多个电影属性生成电影属性矩阵;以及根据多个用户及所述多个用户对所述多部电影的评分生成用户评分矩阵;对所述电影属性矩阵和用户评分矩阵分别进行归一化处理;根据电影时间衰减因子和评分时间衰减因子分别进行衰减;采用HITS算法对衰减后的电影属性矩阵和用户评分矩阵进行矩阵迭代运算确定所述多部电影的权威值排名,再根据所述多部电影的权威值排名确定电影排名;使得年代久远的电影和用户对电影较老的评分都会随时间推移而影响力不断减小,近期热播的电影在最终排名中会比原先有所提升,考虑时间因素、体现了当下用户对电影的关注度和期望。
Description
技术领域
本发明涉及网络信息分析领域,尤其涉及的是一种电影排名方法和装置。
背景技术
随着互联网技术的日新月异和电影产业的不断发展,越来越多的电影网站和电影信息网站诞生。多数电影信息网站提供了与电影相关的众多信息,例如演员、导演、地区、内容介绍等等。电影范围不仅包括当下在影院上映的电影,也涵盖已经出品多年早已经下架的经典电影。有些电影信息网站还会提供用户分享、评论和评分的功能,用户可以根据其他用户对一部电影的评分值和评论来评判这部电影的优劣和喜欢程度。为了能给用户提供更多的电影信息,协助用户找到广受好评的优质电影,大部分电影信息网站都提供了分门别类的电影相关排名,例如电影排名、演员排名、导演排名等等。根据这些分类排名用户可以更加清晰的了解当下广受好评的电影,以及优秀的演员和导演等。
电影相关排名之后的排名算法也是多种多样,但是绝大部分排名算法都是简单的多种参考指标的加权平均,例如对于电影的排名列表,参考指标包括用户的在线评分、分享、收藏或者喜欢这部电影的用户数量、以及这部电影的票房数量等;对于演员的排名列表,参考指标包括演员参演的电影数量和电影评分,用户对演员的评分以及喜欢这位演员的用户数量等。互联网电影数据库(IMDB) 是目前全球互联网中最大的电影资料库,里面包括了几乎所有上映电影的资料,用户在IMDB网站可以对电影评分,IMDB根据用户的评分采用贝叶斯加权平均公式给每部电影算出分值,并且按照此分值的大小降序排列给出前250部电影的排名列表。豆瓣电影是中国最大与最权威的在线电影分享与评论社区,收录了百万部电影和电影人的资料。豆瓣用户可以对在线电影给出评分,豆瓣电影根据用户的评分并参考IMDB的贝叶斯加权平均公式,改进了算法并给出每部电影的分值,依照此分值不仅给出前250部电影排名(豆瓣250),并且给出了分门别类的电影排行榜,例如豆瓣新片榜、本周口碑榜、北美票房榜等。
大部分电影相关排名算法仅仅考虑了电影信息和用户对电影的评分,但没有充分考虑以电影为核心的网络的构造以及其随时间演变的过程。经典的老电影因为收到过多的用户反馈而在排行榜中居高不下,然而因为电影过于陈旧,并不适合在当下或者将来推荐给用户观看。与之相反,近几年出品的比较受好评的电影因为至今没有收到足够的用户反馈,在电影排行榜中排名过低,甚至没有登上排行榜。电影排行榜应该是一个随时间变化的列表,过于陈旧的电影随着时间的增长会收到越来越少的用户关注和评分,这样的电影应该逐渐退出电影排名,而近期热播的电影更应该进入电影排行榜,因为用户对最新的热播的电影比老电影更有兴趣。因此这个动态的电影排行榜应该不仅能登出那些经久不衰的经典电影,更应该随时间变化登出当下最受欢迎最受好评的新电影。
因此,现有技术还有待于改进和发展。
发明内容
本发明要解决的技术问题在于,提供一种电影排名方法和装置,旨在解决现有的电影排名方法没有考虑时间因素、不能体现当下用户对电影的关注度和期望的问题。
本发明解决技术问题所采用的技术方案如下:
一种电影排名方法,其中,包括以下步骤:
S1、根据多部电影及所述多部电影的多个电影属性生成电影属性矩阵;以及根据多个用户及所述多个用户对所述多部电影的评分生成用户评分矩阵;
S2、对所述电影属性矩阵和用户评分矩阵分别进行归一化处理;
S3、根据所述多部电影的发布时间长短及预定的电影时间衰减因子α对归一化处理后的电影属性矩阵进行衰减;以及根据所述多个用户给所述多部电影评分的时间先后及预定的评分时间衰减因子β对归一化处理后的用户评分矩阵进行衰减;
S4、采用HITS算法对衰减后的电影属性矩阵和用户评分矩阵进行矩阵迭代运算确定所述多部电影的权威值排名,再根据所述多部电影的权威值排名确定电影排名。
所述的电影排名方法,其中,所述步骤S1具体包括:
以所述多部电影的数量作为列宽,以所述多个电影属性的数量作为行长,生成所述电影属性矩阵;其中,所述电影属性矩阵用A来表示,所述电影属性矩阵A中的元素Amf为: ;其中,M表示所述多部电影的集合,m表示所述集合M中的某部电影,F表示所述多个电影属性的集合,f表示所述集合F中的某个电影属性,Amf表示电影属性f∈F是否为电影m∈M的属性,如果是,则Amf值为1,否则为0;
以所述多个用户的数量作为列宽,以所述多部电影的数量作为行长,生成所述用户评分矩阵;其中,所述用户评分矩阵用B来表示,所述用户评分矩阵B中的元素Bum为:;其中,U表示所述多个用户的集合,u表示所述集合U的某个用户,Bum表示用户u∈U给电影m∈M的评分值,rum为用户u给电影m的评分值,若用户u没有给电影m评分,则评分值为0。
所述的电影排名方法,其中,所述步骤S2具体包括:
对所述电影属性矩阵A采用公式:进行归一化处理,其中, 表示所述电影属性矩阵A经归一化处理后的元素;
对所述用户评分矩阵B采用公式:进行归一化处理,其中,表示所述用户评分矩阵B经归一化处理后的元素。
所述的电影排名方法,其中,所述步骤S3具体包括:
根据所述电影时间衰减因子α和所述多部电影的发布时间长短,确定所述多部电影的电影时间因子;其中,所述电影时间因子表示为,且,T表示当前时间,tm表示电影m的发布时间;
根据所述电影时间因子对归一化处理后的电影属性矩阵对应衰减;其中,衰减后的电影属性矩阵的元素为:;
根据所述评分时间衰减因子β和所述多个用户给所述多部电影评分的时间先后,确定所述评分时间因子;其中,所述评分时间因子表示为,且,T表示当前时间,tum表示用户u给电影m评分时的时间;
根据所述评分时间因子对归一化处理后的用户评分矩阵进行衰减;其中,衰减后的用户评分矩阵的元素为。
所述的电影排名方法,其中,所述步骤S4具体包括:
在HITS算法中,以Y表示所述多个电影属性的枢纽值向量,以Z表示所述多个用户的枢纽值向量,电影对应于权威页面,以X表示所述多部电影的权威值向量;所述多部电影的权威值向量X与所述多个电影属性的枢纽值向量Y和所述多个用户的枢纽值向量Z之间的关系为:
;其中,表示衰减后的电影属性矩阵,表示衰减后的用户评分矩阵,为的转置矩阵;为的转置矩阵;
对衰减后的电影属性矩阵和用户评分矩阵通过上述关系式进行矩阵迭代运算确定所述多部电影的权威值向量X的权威值排名,根据所述多部电影的权威值排名确定所述多部电影的排名。
一种电影排名装置,其中,包括:
矩阵生成模块,用于根据多部电影及所述多部电影的多个电影属性生成电影属性矩阵;以及根据多个用户及所述多个用户对所述多部电影的评分生成用户评分矩阵;
数据处理模块,用于对所述电影属性矩阵和用户评分矩阵分别进行归一化处理;
时间衰减模块,用于根据所述多部电影的发布时间长短及预定的电影时间衰减因子α对归一化处理后的电影属性矩阵进行衰减;以及根据所述多个用户给所述多部电影评分的时间先后及预定的评分时间衰减因子β对归一化处理后的用户评分矩阵进行衰减;
排名计算模块,用于采用HITS算法对衰减后的电影属性矩阵和用户评分矩阵进行矩阵迭代运算确定所述多部电影的权威值排名,再根据所述多部电影的权威值排名确定电影排名。
所述的电影排名装置,其中,所述矩阵生成模块包括:
电影属性矩阵生成单元,用于以所述多部电影的数量作为列宽,以所述多个电影属性的数量作为行长,生成所述电影属性矩阵;其中,所述电影属性矩阵用A来表示,所述电影属性矩阵A中的元素Amf为:;其中,M表示所述多部电影的集合,m表示所述集合M中的某部电影,F表示所述多个电影属性的集合,f表示所述集合F中的某个电影属性,Amf表示电影属性f∈F是否为电影m∈M的属性,如果是,则Amf值为1,否则为0;
用户评分矩阵生成单元,用于以所述多个用户的数量作为列宽,以所述多部电影的数量作为行长,生成所述用户评分矩阵;其中,所述用户评分矩阵用B来表示,所述用户评分矩阵B中的元素Bum为:;其中,U表示所述多个用户的集合,u表示所述集合U的某个用户,Bum表示用户u∈U给电影m∈M的评分值,rum为用户u给电影m的评分值,若用户u没有给电影m评分,则评分值为0。
所述的电影排名装置,其中,所述数据处理模块包括:
电影属性归一化单元,用于对所述电影属性矩阵A采用公式:进行归一化处理,其中, 表示所述电影属性矩阵A经归一化处理后的元素;
用户评分归一化单元,用于对所述用户评分矩阵B采用公式:进行归一化处理,其中,表示所述用户评分矩阵B经归一化处理后的元素。
所述的电影排名装置,其中,所述时间衰减模块包括:
电影时间因子计算单元,用于根据所述电影时间衰减因子α和所述多部电影的发布时间长短,确定所述多部电影的电影时间因子;其中,所述电影时间因子表示为,且,T表示当前时间,tm表示电影m的发布时间;
电影属性矩阵衰减单元,用于根据所述电影时间因子对归一化处理后的电影属性矩阵对应衰减;其中,衰减后的电影属性矩阵的元素为:;
评分时间因子计算单元,用于根据所述评分时间衰减因子β和所述多个用户给所述多部电影评分的时间先后,确定所述评分时间因子;其中,所述评分时间因子表示为,且,T表示当前时间,tum表示用户u给电影m评分时的时间;
用户评分矩阵衰减单元,用于根据所述评分时间因子对归一化处理后的用户评分矩阵进行衰减;其中,衰减后的用户评分矩阵的元素为。
所述的电影排名装置,其中,所述排名计算模块包括:
关系计算单元,用于在HITS算法中,以Y表示所述多个电影属性的枢纽值向量,以Z表示所述多个用户的枢纽值向量,电影对应于权威页面,以X表示所述多部电影的权威值向量;所述多部电影的权威值向量X与所述多个电影属性的枢纽值向量Y和所述多个用户的枢纽值向量Z之间的关系为:
;其中,表示衰减后的电影属性矩阵,表示衰减后的用户评分矩阵,为的转置矩阵;为的转置矩阵;
迭代计算单元,用于对衰减后的电影属性矩阵和用户评分矩阵通过上述关系式进行矩阵迭代运算确定所述多部电影的权威值向量X的权威值排名,根据所述多部电影的权威值排名确定所述多部电影的排名。
本发明所提供的一种电影排名方法和装置,有效地解决了现有的电影排名方法没有考虑时间因素、不能体现当下用户对电影的关注度和期望的问题,通过根据多部电影及所述多部电影的多个电影属性生成电影属性矩阵;以及根据多个用户及所述多个用户对所述多部电影的评分生成用户评分矩阵;对所述电影属性矩阵和用户评分矩阵分别进行归一化处理;根据所述多部电影的发布时间长短及预定的电影时间衰减因子α对归一化处理后的电影属性矩阵进行衰减;以及根据所述多个用户给所述多部电影评分的时间先后及预定的评分时间衰减因子β对归一化处理后的用户评分矩阵进行衰减;采用HITS算法对衰减后的电影属性矩阵和用户评分矩阵进行矩阵迭代运算确定所述多部电影的权威值排名,再根据所述多部电影的权威值排名确定所述多部电影的排名;通过时间衰减因子的衰减作用,使得年代久远的电影和用户对电影较老的评分都会随时间推移而影响力不断减小,因此最终年代久远的电影不会因为评分人数多而在排名中居高不下,而会受到时间衰减的影响,其权威值有所下降,因此其最终排名也会随之下降;与之相反,近期热播的电影虽然评分人数较少,但是它受时间衰减的影响较小,因此在最终排名中会比原先有所提升,本发明通过改进HITS算法,使其能在充分考虑到以电影为中心的异质结构网络的内部构造之后给出具有时效性的更权威的电影排名,以及与之相关的属性排名,带来了大大的方便。
附图说明
图1为本发明提供的电影排名方法较佳实施例的流程图。
图2为采用本发明提供的电影排名方法与现有的电影排名方法的实验结果对比表。
图3为本发明提供的电影排名装置较佳实施例的结构框图。
具体实施方式
本发明提供一种电影排名方法和装置,为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,图1为本发明提供的电影排名方法较佳实施例的流程图,如图所示,所述方法包括以下步骤:
步骤S100、根据多部电影及所述多部电影的多个电影属性生成电影属性矩阵;以及根据多个用户及所述多个用户对所述多部电影的评分生成用户评分矩阵;
步骤S200、对所述电影属性矩阵和用户评分矩阵分别进行归一化处理;
步骤S300、根据所述多部电影的发布时间长短及预定的电影时间衰减因子α对归一化处理后的电影属性矩阵进行衰减;以及根据所述多个用户给所述多部电影评分的时间先后及预定的评分时间衰减因子β对归一化处理后的用户评分矩阵进行衰减;
步骤S400、采用HITS算法对衰减后的电影属性矩阵和用户评分矩阵进行矩阵迭代运算确定所述多部电影的权威值排名,再根据所述多部电影的权威值排名确定电影排名。
下面结合具体的实施例对上述步骤进行详细的描述。
在HITS (Hyperlink-Induced Topic Search)排名算法中,每个页面都有两个值,一种是枢纽值(Hub Scores),指的是页面上所有导出链接指向页面的权威值之和,另一种是权威值(Authority Scores),是指所有导入链接所在的页面中枢纽之和,两种值互相依存、互相影响。某些页面充当枢纽的角色,其本身的内容与用户的查询语句没有太大关系,但是有足够多的外链指向了与查询语句相关的权威页面;有些页面虽然没有足够多的外链,但其本身的内容与查询有很大的相关性,这样的页面作为权威页面,好的枢纽页面具有较多的外链,好的权威页面可以由较多其他的页面链接过来。
根据HITS算法的枢纽和权威值的概念,对应到以电影为中心的异质结构网络中,电影对应于权威页面,因为整个网络是以电影为中心而建立起来,再者,用户的兴趣点就是电影,至于电影的相关属性以及其他用户对这部电影的评价,都是协助用户更好的了解电影本身。而给电影评分的用户以及电影的相关属性可以对应为枢纽页面,因为用户的需求就是找到优质的电影,电影属性和其他用户评分本身并不是用户关注的重点,只是作为用户的参考以协助用户找到更好的电影,所以将电影属性和用户评分对应于枢纽页面。根据上述HITS算法与以电影为中心的异质结构网络的对应关系,本发明的电影排名方法通过改进的HITS算法,充分考虑以电影为中心的异质结构网络的内部构造之后给出具有时效性的更权威的电影排名,以及与之相关的电影属性排名。
在步骤S100中,根据多部电影及所述多部电影的多个电影属性生成电影属性矩阵;以及根据多个用户及所述多个用户对所述多部电影的评分生成用户评分矩阵。具体来说,本发明是提取电影网站的数据库里面的数据,包括多个用户、及每个用户对多部电影的评分情况、以及评分时间等,还包括多部电影、每部电影的上映时间以及里面的导演、演员等等电影属性。在以电影为中心的异质结构网络由电影属性网和用户评分网组成,因此而生成两个矩阵:电影属性矩阵和用户评分矩阵。
其中,生成电影属性矩阵具体为:以所述多部电影的数量作为列宽,以所述多个电影属性的数量作为行长,生成所述电影属性矩阵;其中,所述电影属性矩阵用A来表示,所述电影属性矩阵A中的元素Amf为:;其中,M表示所述多部电影的集合,m表示所述集合M中的某部电影,F表示所述多个电影属性的集合,f表示所述集合F中的某个电影属性,Amf表示电影属性f∈F是否为电影m∈M的属性,如果是,则Amf值为1,否则为0。
即以电影网站的多部电影的电影数量作为列宽,以多部电影对应的多个电影属性为行长,生成对应的电影属性矩阵。所述多个电影属性即为所有的电影中包含的电影属性,譬如多部电影中包含多个演员,但由于演员参演了不同的电影,若多部电影总共包含有100个演员,那么这个电影属性的就为100。所述电影属性矩阵A里面的元素为不同的电影对应多个电影属性的值,若该某部电影m包含某个电影属性,则在所述电影属性矩阵A中对应的元素值为1,否则元素值为0,它是一个二元矩阵。举例说明如下:若所述集合M包含电影《卧虎藏龙》,则该部电影在电影属性矩阵中对应某一行的元素,也就是对应电影属性集合F中的每个电影属性,根据不同的电影属性,进行取值,以演员来说,在电影属性为周润发时,电影属性矩阵中对应的元素为1,电影属性为汤姆汉克斯时,电影属性矩阵中对应的元素为0。需要说明的是,此处是以1和 0为例来表达电影属性矩阵A的元素值,在实际应用时,还可以用其它数值代替。
其中,生成所述用户评分矩阵具体为:以所述多个用户的数量作为列宽,以所述多部电影的数量作为行长,生成所述用户评分矩阵;其中,所述用户评分矩阵用B来表示,所述用户评分矩阵B中的元素Bum为:;其中,U表示所述多个用户的集合,u表示所述集合U的某个用户,Bum表示用户u∈U给电影m∈M的评分值,rum为用户u给电影m的评分值,若用户u没有给电影m评分,则评分值为0。
以多个用户的用户数量为列宽,以多部电影的电影数量为行长,生成对应的用户评分矩阵;在所述用户评分矩阵中,若某个用户有对某部电影评分,则在所述用户评分矩阵中对应元素的值为用户对该电影的评分值,即rum为用户u对电影m的评分;若该用户没有对该电影评分,则对应元素Bum的值为0。所述评分rum为用户u对电影m的评分,这是电影网站上对电影的评分值,一般来说满分为10,当然也可以根据需要进行设定,譬如满分100等。也就是说,所述用户评分矩阵B为多个用户对多部电影的评分情况,当然在实际应用时,每个用户难以对所有的电影都评分,若用户对某电影评分了,则以该评分值为所述用户评分矩阵B中对应元素的值,若没有评分,则用户评分矩阵B中对应元素的值为0。举例说明如下:若集合U包含某个用户,则该用户在用户评分矩阵B中对应某一行的元素,也就是说该用户对电影集合M中每一个电影的评分值,若该用户只评论了其中10部电影,则对应这10部电影的评分值为用户评分矩阵B中对应的元素值,其余则为0。
在步骤S200中,对所述电影属性矩阵和用户评分矩阵分别进行归一化处理。具体来说,电影属性矩阵和用户评分矩阵都需要进行数据预处理。对所述电影属性矩阵A采用公式:进行归一化处理,其中, 表示所述电影属性矩阵A中元素Amf经归一化处理后对应的元素。在所述电影属性矩阵中,以每一部电影对应电影属性集合F中每一个电影属性的元素值为被除数,以该部电影对应在电影属性集合F中每一个电影属性的元素值的平方和的平方根为除数,对该部电影对应美国一电影属性的元素值进行归一化处理;依次类推,对所有电影集合M里面的每一个电影m对应的属性都进行归一化处理,则可得到归一化处理后的电影属性矩阵。
对所述用户评分矩阵B采用公式:进行归一化处理,其中,表示所述用户评分矩阵B中元素Bum经归一化处理后对应的元素。在所述用户评分矩阵中,以每一个用户对所述电影集合M中的每部电影的评分对应的评分值为被除数,以该用户对所述电影集合M中的每部电影的评分值的平方和的平方根为除数,对该用户对所述电影集合M中的每部电影的评分值进行归一化处理;依次类推,对所有用户集U里面的每一个用户对所述电影集合M中的每部电影的评分值都进行归一化处理,则可得到归一化处理后的用户评分矩阵。
在步骤S300中,根据所述多部电影的发布时间长短及预定的电影时间衰减因子α对归一化处理后的电影属性矩阵进行衰减;以及根据所述多个用户给所述多部电影评分的时间先后及预定的评分时间衰减因子β对归一化处理后的用户评分矩阵进行衰减。
具体来说,传统的HITS算法是仅仅对一个矩阵进行迭代计算,在以电影为中心的异质结构网络中,我们把电影属性和用户评分都对应为枢纽页面,但是因为它们的不同特性,这两者不能简单的合二为一来进行矩阵迭代运算,所以我们把电影属性和用户评分分开来看成是两个不同的枢纽来源。以Y表示所述多个电影属性的枢纽值向量,以f表示电影属性,其中,代表电影属性f的枢纽值;同理Z表示所述多个用户的枢纽值向量,其中代表用户u的枢纽值,u表示所述集合U的某个用户,其中,代表用户u的枢纽值。电影对应于权威页面,用X表示所述多部电影的权威值向量,因此在拓展HITS算法中,所述多部电影的权威值向量X与所述多个电影属性的枢纽值向量Y和所述多个用户的枢纽值向量Z之间有如下关系:,该拓展HITS算法通过迭代最终得到的权威值向量X中的权威值和枢纽值向量Z中的枢纽值没有考虑到异质结构网络的时效性,本发明对该拓展HITS算法加以改进,引入时间衰减因子。
对于归一化后的电影属性矩阵,根据所述电影时间衰减因子α和所述多部电影的发布时间长短,确定所述不多电影的电影时间因子;其中,所述电影时间因子表示为,且,T表示当前时间,m表示所述集合M中的某部电影,tm表示电影m的发布时间,α为电影时间衰减因子。
根据所述电影时间因子对归一化处理后的电影属性矩阵的元素进行对应衰减;其中,衰减后的电影属性矩阵的元素为:,表示所述电影属性矩阵A中归一化后的元素经衰减后的元素。
对于归一化后的用户评分矩阵,根据所述评分时间衰减因子β和所述多个用户给所述多个电影评分的时间先后,确定所述评分时间因子;其中,所述评分时间因子表示为,且,T表示当前时间,tum表示用户u给电影m评分时的时间,β为评分时间衰减因子。
根据所述评分时间因子对归一化处理后的用户评分矩阵的元素进行对应的衰减;其中,衰减后的用户评分矩阵的元素为,表示所述用户评分矩阵B归一化处理后的元素经衰减后的元素。
具体来说,对于每一部电影都有发布时间,随着时间的推移,电影的影响力会逐渐降低,因此本发明在预处理之后的电影属性矩阵中加入了电影时间因子。以T表示当前时间,tm代表电影m的发布时间,α为电影时间衰减因子,得出电影时间因子为如下表达式:,由此表达式可见电影时代越久远,它在当今的影响力就越小。然后,根据所述电影时间因子对归一化处理后的电影属性矩阵的每一个元素对应衰减,衰减后的电影属性矩阵的元素为:。具体来说,就是根据每部电影的发布时间和当前时间,对在电影属性矩阵中每部电影对应的元素值进行衰减。
同理,用户对电影的评分也有时间的标签,随着时间的推移,用户的评分具有的参考价值就越小,因此本发明在预处理的用户评分矩阵中也加入了时间因子,以代表用户u给电影m的评分的时间特性。以T代表当今时间,tum代表用户u给电影m评分的时间,β为评分时间衰减因子,得到评分时间因子为如下表达式:;该表达式表明,用户的评分动作越久远,它在当今的参考价值就越小。然后根据所述评分时间因子对归一化处理后的用户评分矩阵的每一个元素对应衰减,衰减后的用户评分矩阵的元素为。在实际应用时,所述电影时间衰减因子α和评分时间衰减因子β乃根据需求设置的参数,此处不做详细说明。
在步骤S400中,采用HITS算法对衰减后的电影属性矩阵和用户评分矩阵进行矩阵迭代运算确定所述多部电影的权威值排名,再根据所述多部电影的权威值排名确定电影排名。
具体来说,在HITS算法中,以Y表示所述多个电影属性的枢纽值向量,以Z表示所述多个用户的枢纽值向量,电影对应于权威页面,以X表示所述多部电影的权威值向量;所述多部电影的权威值向量X与所述多个电影属性的枢纽值向量Y和所述多个用户的枢纽值向量Z之间的关系为:
;其中,表示衰减后的电影属性矩阵,表示衰减后的用户评分矩阵,为的转置矩阵;为的转置矩阵。
对衰减后的电影属性矩阵和用户评分矩阵通过上述关系式进行矩阵迭代运算确定所述多部电影的权威值向量X的权威值排名,根据所述多部电影的权威值排名确定所述多部电影的排名。通过具有时效性的拓展HITS算法进行迭代,知道X、Y、Z值都收敛,此时得到的电影权威值向量X中的权威值排名就能充分代表次异质结构网络在考虑了时间衰减因素之后的最终电影排名。
本发明提供的电影排名方法在时间衰减因子的作用下,年代久远的电影和用户对电影较老的评分都会随时间推移而影响力不断减小,因此最终年代久远的电影不会因为评分人数多而在排名中居高不下,而会收到时间衰减的影响,其权威值有所下降,因此其最终排名也会随之下降。与之相反,近期热播的电影虽然评分人数较少,但是它受时间衰减的影响较小,因此在最终排名中会比原先有所提升。本发明提供的电影排名方法不仅可以应用于电影排名,也可以应用于其它领域,均在本发明的保护范围之内。
进一步地,本发明提供的拓展的HITS算法能同时给出所述多部电影的权威值和所述多个电影属性的枢纽值,因此枢纽值也是电影的属性重要性的量化表征。若某个电影属性的枢纽值高,表明该电影属性更具有参考价值,或者更有可能连接到优质的电影,因此本发明还可以对所述多个电影属性的枢纽值向量Y中的枢纽值进行排名,其结果也能充分反映多个电影属性的重要性且具有时效性的排名。
以下以一具体的实验数据来对本发明进行举例说明。
本次实验从豆瓣电影网站抓取了从2002年到2012年在豆瓣电影网站上架的电影及其相关的电影属性和用户评分,总共收录了50953部电影、24506项电影属性、26020位用户参与电影评分、265311个电影属性记录以及4956133个用户评分记录。因此在的电影属性矩阵中有265311个非零元素,在的用户评分矩阵中有4956133个非零元素。
对以上的数据集做了两次实验,每次都是得到两个排名,前20的电影排名和前20的演员排名。第一次实验是用拓展的HITS算法,不加入时间因子,通过进行矩阵迭代运算。第二次实验是用具有时效性的HITS算法,加入了时间因子,进行矩阵迭代运算。有时效性的HITS算法有三个参数:电影时间衰减因子α、评分时间衰减因子β和当今时间T,排名结果会随着这三个参数的取值不同而有所变化,电影时间衰减因子α和评分时间衰减因子β根据需要进行设置,图2是两次实验的结果对比。
由图2可知,在电影排名中,无时效性的排名中比较靠前的大部分都是经典老电影,因为时代比较久远,受到了过多用户的关注和好评,因此排名比较靠前,而那些最近几年才上映的好电影,例如《机器人总动员》、《贫民窟的百万富翁》等,虽然在豆瓣电影网站上广受好评,只是由于电影比较新,没有足够的用户关注和评价,所以排名比较靠后。而在有时效性的电影排名中,经典老电影因为受到时间衰减的影响,使得他们的排名比较靠后,而最近的新片《盗梦空间》不仅广受好评,而且不受时间衰减的影响,成为排行榜中最佳电影。其他新片例如《机器人总动员》、《黑天鹅》、《那些年,我们一起追的女孩》等,也因此排名比之前有所提升。
在电影的属性排名,譬如演员排名中,无时效性的排名中比较靠前的大部分都是家喻户晓的老牌明星,而参演电影相对较少但是很有影响力的年轻演员例如周迅、安妮·海瑟薇,因为参演的电影不够多,得到用户的累积关注没有老牌演员多,因此排名比较靠后。在有时效性的排名中,年轻演员的排名大都有所提升,这是因为他们参演的电影大都比较新,没有收到时间衰减的影响,所以才有所提前,而那些老牌演员因为参演的电影大都年代久远,受时间衰减而因此排名靠后。
由此可见,本发明采用的具有时效性的HITS算法给出的电影和演员排名不仅充分考虑了用户的在线反馈,更是考虑了时间的因素,使得排名更能体现出当下用户对电影的关注度和期望。
基于上述电影排名方法,本发明实施例还提供了一种电影排名装置,如图3所示,所述装置包括:
矩阵生成模块10,用于根据多部电影及所述多部电影的多个电影属性生成电影属性矩阵;以及根据多个用户及所述多个用户对所述多部电影的评分生成用户评分矩阵;具体如步骤S100所述;
数据处理模块20,用于对所述电影属性矩阵和用户评分矩阵分别进行归一化处理;具体如步骤S200所述;
时间衰减模块30,用于根据所述多部电影的发布时间长短及预定的电影时间衰减因子α对归一化处理后的电影属性矩阵进行衰减;以及根据所述多个用户给所述多部电影评分的时间先后及预定的评分时间衰减因子β对归一化处理后的用户评分矩阵进行衰减;具体如步骤S300所述;
排名计算模块40,用于采用HITS算法对衰减后的电影属性矩阵和用户评分矩阵进行矩阵迭代运算确定所述多部电影的权威值排名,再根据所述多部电影的权威值排名确定电影排名;具体如步骤S400所述。
进一步地,所述矩阵生成模块10包括:
电影属性矩阵生成单元,用于以所述多部电影的数量作为列宽,以所述多个电影属性的数量作为行长,生成所述电影属性矩阵;其中,所述电影属性矩阵用A来表示,所述电影属性矩阵A中的元素Amf为:;其中,M表示所述多部电影的集合,m表示所述集合M中的某部电影,F表示所述多个电影属性的集合,f表示所述集合F中的某个电影属性,Amf表示电影属性f∈F是否为电影m∈M的属性,如果是,则Amf值为1,否则为0;
用户评分矩阵生成单元,用于以所述多个用户的数量作为列宽,以所述多部电影的数量作为行长,生成所述用户评分矩阵;其中,所述用户评分矩阵用B来表示,所述用户评分矩阵B中的元素Bum为:;其中,U表示所述多个用户的集合,u表示所述集合U的某个用户,Bum表示用户u∈U给电影m∈M的评分值,rum为用户u给电影m的评分值,若用户u没有给电影m评分,则评分值为0。
进一步地,所述数据处理模块20包括:
电影属性归一化单元,用于对所述电影属性矩阵A采用公式:进行归一化处理,其中, 表示所述电影属性矩阵A经归一化处理后的元素;
用户评分归一化单元,用于对所述用户评分矩阵B采用公式:进行归一化处理,其中,表示所述用户评分矩阵B经归一化处理后的元素。
进一步地,所述时间衰减模块30包括:
电影时间因子计算单元,用于根据所述电影时间衰减因子α和所述多部电影的发布时间长短,确定所述多部电影的电影时间因子;其中,所述电影时间因子表示为,且,T表示当前时间,tm表示电影m的发布时间;
电影属性矩阵衰减单元,用于根据所述电影时间因子对归一化处理后的电影属性矩阵对应衰减;其中,衰减后的电影属性矩阵的元素为:;
评分时间因子计算单元,用于根据所述评分时间衰减因子β和所述多个用户给所述多部电影评分的时间先后,确定所述评分时间因子;其中,所述评分时间因子表示为,且,T表示当前时间,tum表示用户u给电影m评分时的时间;
用户评分矩阵衰减单元,用于根据所述评分时间因子对归一化处理后的用户评分矩阵进行衰减;其中,衰减后的用户评分矩阵的元素为。
进一步地,所述排名计算模块40包括:
关系计算单元,用于在HITS算法中,以Y表示所述多个电影属性的枢纽值向量,以Z表示所述多个用户的枢纽值向量,电影对应于权威页面,以X表示所述多部电影的权威值向量;所述多部电影的权威值向量X与所述多个电影属性的枢纽值向量Y和所述多个用户的枢纽值向量Z之间的关系为:
;其中,表示衰减后的电影属性矩阵,表示衰减后的用户评分矩阵,为的转置矩阵;为的转置矩阵。
综上所述,本发明实施例提供的一种电影排名方法和装置,通过时间衰减因子的衰减作用,年代久远的电影和用户对电影较老的评分都会随时间推移而影响力不断减小,因此最终年代久远的电影不会因为评分人数多而在排名中居高不下,而会受到时间衰减的影响,其权威值有所下降,因此其最终排名也会随之下降;与之相反,近期热播的电影虽然评分人数较少,但是它受时间衰减的影响较小,因此在最终排名中会比原先有所提升,本发明通过改进HITS算法,使其能在充分考虑到以电影为中心的异质结构网络的内部构造之后给出具有时效性的更权威的电影排名,以及与之相关的属性排名,带来了大大的方便。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (10)
1. 一种电影排名方法,其特征在于,包括以下步骤:
S1、根据多部电影及所述多部电影的多个电影属性生成电影属性矩阵;以及根据多个用户及所述多个用户对所述多部电影的评分生成用户评分矩阵;
S2、对所述电影属性矩阵和用户评分矩阵分别进行归一化处理;
S3、根据所述多部电影的发布时间长短及预定的电影时间衰减因子α对归一化处理后的电影属性矩阵进行衰减;以及根据所述多个用户给所述多部电影评分的时间先后及预定的评分时间衰减因子β对归一化处理后的用户评分矩阵进行衰减;
S4、采用HITS算法对衰减后的电影属性矩阵和用户评分矩阵进行矩阵迭代运算确定所述多部电影的权威值排名,再根据所述多部电影的权威值排名确定电影排名。
2.根据权利要求1所述的电影排名方法,其特征在于,所述步骤S1具体包括:
以所述多部电影的数量作为列宽,以所述多个电影属性的数量作为行长,生成所述电影属性矩阵;其中,所述电影属性矩阵用A来表示,所述电影属性矩阵A中的元素Amf为: ;其中,M表示所述多部电影的集合,m表示所述集合M中的某部电影,F表示所述多个电影属性的集合,f表示所述集合F中的某个电影属性,Amf表示电影属性f∈F是否为电影m∈M的属性,如果是,则Amf值为1,否则为0;
以所述多个用户的数量作为列宽,以所述多部电影的数量作为行长,生成所述用户评分矩阵;其中,所述用户评分矩阵用B来表示,所述用户评分矩阵B中的元素Bum为:;其中,U表示所述多个用户的集合,u表示所述集合U的某个用户,Bum表示用户u∈U给电影m∈M的评分值,rum为用户u给电影m的评分值,若用户u没有给电影m评分,则评分值为0。
3.根据权利要求2所述的电影排名方法,其特征在于,所述步骤S2具体包括:
对所述电影属性矩阵A采用公式:进行归一化处理,其中, 表示所述电影属性矩阵A经归一化处理后的元素;
对所述用户评分矩阵B采用公式:进行归一化处理,其中,表示所述用户评分矩阵B经归一化处理后的元素。
4.根据权利要求3所述的电影排名方法,其特征在于,所述步骤S3具体包括:
根据所述电影时间衰减因子α和所述多部电影的发布时间长短,确定所述多部电影的电影时间因子;其中,所述电影时间因子表示为,且,T表示当前时间,tm表示电影m的发布时间;
根据所述电影时间因子对归一化处理后的电影属性矩阵对应衰减;其中,衰减后的电影属性矩阵的元素为:;
根据所述评分时间衰减因子β和所述多个用户给所述多部电影评分的时间先后,确定所述评分时间因子;其中,所述评分时间因子表示为,且,T表示当前时间,tum表示用户u给电影m评分时的时间;
根据所述评分时间因子对归一化处理后的用户评分矩阵进行衰减;其中,衰减后的用户评分矩阵的元素为。
5.根据权利要求4所述的电影排名方法,其特征在于,所述步骤S4具体包括:
在HITS算法中,以Y表示所述多个电影属性的枢纽值向量,以Z表示所述多个用户的枢纽值向量,电影对应于权威页面,以X表示所述多部电影的权威值向量;所述多部电影的权威值向量X与所述多个电影属性的枢纽值向量Y和所述多个用户的枢纽值向量Z之间的关系为:
;其中,表示衰减后的电影属性矩阵,表示衰减后的用户评分矩阵,为的转置矩阵;为的转置矩阵;
对衰减后的电影属性矩阵和用户评分矩阵通过上述关系式进行矩阵迭代运算确定所述多部电影的权威值向量X的权威值排名,根据所述多部电影的权威值排名确定所述多部电影的排名。
6.一种电影排名装置,其特征在于,包括:
矩阵生成模块,用于根据多部电影及所述多部电影的多个电影属性生成电影属性矩阵;以及根据多个用户及所述多个用户对所述多部电影的评分生成用户评分矩阵;
数据处理模块,用于对所述电影属性矩阵和用户评分矩阵分别进行归一化处理;
时间衰减模块,用于根据所述多部电影的发布时间长短及预定的电影时间衰减因子α对归一化处理后的电影属性矩阵进行衰减;以及根据所述多个用户给所述多部电影评分的时间先后及预定的评分时间衰减因子β对归一化处理后的用户评分矩阵进行衰减;
排名计算模块,用于采用HITS算法对衰减后的电影属性矩阵和用户评分矩阵进行矩阵迭代运算确定所述多部电影的权威值排名,再根据所述多部电影的权威值排名确定电影排名。
7.根据权利要求6所述的电影排名装置,其特征在于,所述矩阵生成模块包括:
电影属性矩阵生成单元,用于以所述多部电影的数量作为列宽,以所述多个电影属性的数量作为行长,生成所述电影属性矩阵;其中,所述电影属性矩阵用A来表示,所述电影属性矩阵A中的元素Amf为:;其中,M表示所述多部电影的集合,m表示所述集合M中的某部电影,F表示所述多个电影属性的集合,f表示所述集合F中的某个电影属性,Amf表示电影属性f∈F是否为电影m∈M的属性,如果是,则Amf值为1,否则为0;
用户评分矩阵生成单元,用于以所述多个用户的数量作为列宽,以所述多部电影的数量作为行长,生成所述用户评分矩阵;其中,所述用户评分矩阵用B来表示,所述用户评分矩阵B中的元素Bum为:;其中,U表示所述多个用户的集合,u表示所述集合U的某个用户,Bum表示用户u∈U给电影m∈M的评分值,rum为用户u给电影m的评分值,若用户u没有给电影m评分,则评分值为0。
8.根据权利要求7所述的电影排名装置,其特征在于,所述数据处理模块包括:
电影属性归一化单元,用于对所述电影属性矩阵A采用公式:进行归一化处理,其中, 表示所述电影属性矩阵A经归一化处理后的元素;
用户评分归一化单元,用于对所述用户评分矩阵B采用公式:进行归一化处理,其中,表示所述用户评分矩阵B经归一化处理后的元素。
9.根据权利要求8所述的电影排名装置,其特征在于,所述时间衰减模块包括:
电影时间因子计算单元,用于根据所述电影时间衰减因子α和所述多部电影的发布时间长短,确定所述多部电影的电影时间因子;其中,所述电影时间因子表示为,且,T表示当前时间,tm表示电影m的发布时间;
电影属性矩阵衰减单元,用于根据所述电影时间因子对归一化处理后的电影属性矩阵对应衰减;其中,衰减后的电影属性矩阵的元素为:;
评分时间因子计算单元,用于根据所述评分时间衰减因子β和所述多个用户给所述多部电影评分的时间先后,确定所述评分时间因子;其中,所述评分时间因子表示为,且,T表示当前时间,tum表示用户u给电影m评分时的时间;
用户评分矩阵衰减单元,用于根据所述评分时间因子对归一化处理后的用户评分矩阵进行衰减;其中,衰减后的用户评分矩阵的元素为。
10.根据权利要求9所述的电影排名装置,其特征在于,所述排名计算模块包括:
关系计算单元,用于在HITS算法中,以Y表示所述多个电影属性的枢纽值向量,以Z表示所述多个用户的枢纽值向量,电影对应于权威页面,以X表示所述多部电影的权威值向量;所述多部电影的权威值向量X与所述多个电影属性的枢纽值向量Y和所述多个用户的枢纽值向量Z之间的关系为:
;其中,表示衰减后的电影属性矩阵,表示衰减后的用户评分矩阵,为的转置矩阵;为的转置矩阵;
迭代计算单元,用于对衰减后的电影属性矩阵和用户评分矩阵通过上述关系式进行矩阵迭代运算确定所述多部电影的权威值向量X的权威值排名,根据所述多部电影的权威值排名确定所述多部电影的排名。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410125046.6A CN104951956A (zh) | 2014-03-31 | 2014-03-31 | 一种电影排名方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410125046.6A CN104951956A (zh) | 2014-03-31 | 2014-03-31 | 一种电影排名方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104951956A true CN104951956A (zh) | 2015-09-30 |
Family
ID=54166592
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410125046.6A Pending CN104951956A (zh) | 2014-03-31 | 2014-03-31 | 一种电影排名方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104951956A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107145541A (zh) * | 2017-04-24 | 2017-09-08 | 安徽师范大学 | 基于超图结构的社交网络推荐模型构建方法 |
CN107886357A (zh) * | 2017-11-06 | 2018-04-06 | 北京希格斯科技发展有限公司 | 基于用户行为数据判定内容价值的方法和系统 |
CN109034573A (zh) * | 2018-07-12 | 2018-12-18 | 北京猫眼文化传媒有限公司 | 一种艺人流行度获取方法及装置 |
CN112365447A (zh) * | 2020-10-20 | 2021-02-12 | 四川长虹电器股份有限公司 | 一种多维度影视评分方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110302193A1 (en) * | 2010-06-07 | 2011-12-08 | Microsoft Corporation | Approximation framework for direct optimization of information retrieval measures |
CN103440329A (zh) * | 2013-09-04 | 2013-12-11 | 北京邮电大学 | 权威作者和高质量论文推荐系统和推荐方法 |
CN103546773A (zh) * | 2013-08-15 | 2014-01-29 | Tcl集团股份有限公司 | 电视节目的推荐方法及其系统 |
CN103559206A (zh) * | 2013-10-10 | 2014-02-05 | Tcl集团股份有限公司 | 一种信息推荐方法及系统 |
-
2014
- 2014-03-31 CN CN201410125046.6A patent/CN104951956A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110302193A1 (en) * | 2010-06-07 | 2011-12-08 | Microsoft Corporation | Approximation framework for direct optimization of information retrieval measures |
CN103546773A (zh) * | 2013-08-15 | 2014-01-29 | Tcl集团股份有限公司 | 电视节目的推荐方法及其系统 |
CN103440329A (zh) * | 2013-09-04 | 2013-12-11 | 北京邮电大学 | 权威作者和高质量论文推荐系统和推荐方法 |
CN103559206A (zh) * | 2013-10-10 | 2014-02-05 | Tcl集团股份有限公司 | 一种信息推荐方法及系统 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107145541A (zh) * | 2017-04-24 | 2017-09-08 | 安徽师范大学 | 基于超图结构的社交网络推荐模型构建方法 |
CN107145541B (zh) * | 2017-04-24 | 2020-07-28 | 安徽师范大学 | 基于超图结构的社交网络推荐模型构建方法 |
CN107886357A (zh) * | 2017-11-06 | 2018-04-06 | 北京希格斯科技发展有限公司 | 基于用户行为数据判定内容价值的方法和系统 |
CN109034573A (zh) * | 2018-07-12 | 2018-12-18 | 北京猫眼文化传媒有限公司 | 一种艺人流行度获取方法及装置 |
CN112365447A (zh) * | 2020-10-20 | 2021-02-12 | 四川长虹电器股份有限公司 | 一种多维度影视评分方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Billion-scale commodity embedding for e-commerce recommendation in alibaba | |
Chen et al. | POG: personalized outfit generation for fashion recommendation at Alibaba iFashion | |
CN110825876B (zh) | 电影评论观点情感倾向性分析方法 | |
CN104615767B (zh) | 搜索排序模型的训练方法、搜索处理方法及装置 | |
CN109983455A (zh) | 在在线社交网络上多样化媒体搜索结果 | |
CN102495860B (zh) | 基于语言模型的专家推荐方法 | |
CN111582509B (zh) | 一种基于知识图谱表示学习和神经网络的协同推荐方法 | |
CN103678329B (zh) | 推荐方法及装置 | |
CN102163234A (zh) | 一种基于纠错相关度对查询序列进行纠错的设备和方法 | |
CN102163228B (zh) | 用于确定资源候选项的排序结果的方法、装置及设备 | |
CN106504011A (zh) | 一种业务对象的展示方法和装置 | |
CN103678668A (zh) | 相关搜索结果的提示方法、服务器及系统 | |
CN104462327B (zh) | 语句相似度的计算、搜索处理方法及装置 | |
CN102789449B (zh) | 对评论文本进行评价的方法和装置 | |
CN110059220A (zh) | 一种基于深度学习与贝叶斯概率矩阵分解的电影推荐方法 | |
CN104951956A (zh) | 一种电影排名方法和装置 | |
CN105338408B (zh) | 基于时间因子的视频推荐方法 | |
CN112464100B (zh) | 信息推荐模型训练方法、信息推荐方法、装置及设备 | |
CN106776528A (zh) | 一种信息处理方法及装置 | |
Ragone et al. | Schema-summarization in linked-data-based feature selection for recommender systems | |
CN109993583A (zh) | 信息推送方法和装置、存储介质及电子装置 | |
CN104102819A (zh) | 一种用户自然属性的确定方法和装置 | |
CN110019650A (zh) | 提供搜索联想词的方法、装置、存储介质及电子设备 | |
CN106294418A (zh) | 检索方法和检索系统 | |
CN103020712A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150930 |