具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的影视相关信息的评分方法及装置。
图1是根据本发明一个实施例的影视相关信息的评分方法的流程图。如图1所示,该影视相关信息的评分方法可以包括:
S101,获取影视相关信息,并获取与影视相关信息相关的外部信息,其中,影视相关信息包括影片、影人。
需要说明的是,在本发明的实施例中,影片为电视剧、电影、纪录片、动漫、综艺等的统称;影人为主演、导演、编剧、演员、主持人、制片人、制品人等的统称。
其中,在本发明的实施例中,外部信息可包括但不限于豆瓣评分值、影片的信源、影片的历史记录、影人的历史记录、影片的获奖信息和影人的获奖信息等中的一种或多种。其中,影片的历史记录可包括但不限于影片的搜索次数和/或影片的点击浏览次数和/或所述影片的播放次数等;影人的历史记录可包括但不限于影人的搜索次数和/或影人的点击浏览次数等。其中,影片的信源可以理解为影片的来源,即该影片来自哪个互联网网站。
具体地,可通过抓取工具从互联网的网页中抓取各种影人(即影视人物)和影片,并抓取与影人、影片相关的外部信息,如影片的豆瓣评分值、影片的信源、影片的获奖信息、影片的搜索次数、影片的点击浏览次数、影片的播放次数、影人的获奖信息、影人的搜索次数、影人的点击浏览次数等。
S102,根据影视相关信息和外部信息建立影视领域本体库。
具体而言,在本发明的实施例中,可先建立影视中的概念,并根据概念定义对应的多个类别以及多个类别之间的关系。之后,可根据多个类别以及多个类别之间的关系通过本体构建工具Protégé搭建影视领域框架。最后,根据影视领域框架、影视相关信息和外部信息通过语义网开发工具Jena建立影视领域本体库。也就是说,可先抽象出影视领域中的概念,之后根据该概念定义好类别(如电视剧类别、电影类别、动漫类别、综艺类别、主演类别、导演类别、演员类别、主持人类别、制片人类别、奖项类别等),并整理各个类别之间的关系,利用本体构建工具Protégé搭建影视领域框架,之后可通过语义网开发工具Jena将影视相关信息作为影视领域本体库的实体,并将与影视相关信息相关的外部信息作为对应实体的属性,以填充该影视领域框架,从而完成影视领域本体库的建立。
S103,获取影视领域本体库中的多个实体,并根据影视领域本体库建立多个实体之间的关系图。
具体而言,在本发明的实施例中,可根据影视领域本体库中的多个类别之间的关系建立多个实体之间的关系图。
更具体地,可先获取影视领域本体库中的多个实体,之后可根据影视领域本体库中各个类别之间的关系,来构建这些实体之间的关系图。例如,可获取到的影视相关信息为“神雕侠侣”、“武媚娘传奇”、“奔跑吧”,影人为“刘德华”、“范冰冰”、“于正”、“邓超”,可以理解可将“神雕侠侣”、“武媚娘传奇”、“奔跑吧”、“刘德华”、“范冰冰”、“于正”、“邓超”为影视领域本体库中的实体,可根据影视领域本体库中各个类别(如奖项、电视剧、电影、动漫、综艺、导演、主演、演员、编剧等)之间的关系,构建这些实体之间的关系图。
其中,在本发明的实施例中,关系图可包括多个实体节点、多个实体节点之间的关系弧和多个实体节点之间的关系权重。例如,如图2(a)所示,关系图中可具有实体节点“影片A”、“影片B”、“影人C”、“影人D”和“影人E”,实体节点“影片A”与实体节点“影人C”、“影人D”和“影人E”的关系弧、及每个关系弧上的关系权重(如均为0.3),实体节点“影片B”与实体节点“影人D”和“影人E”的关系弧、及每个关系弧上的权重(如均为0.5)。如图2(a)所示,可以理解,关系弧可以是入弧也可以是出弧,如“影片A”与“影人C”之间的关系弧对于实体节点“影人C”来说,是“影人C”的入弧,而对于“影片A”来说,该关系弧是“影片A”的出弧。
需要说明的是,多个实体节点之间的关系权重为预先人工按一定比例设定,可以是等比比例设定,例如,假设实体节点的出弧数量为4,则将每个出弧上的权重分别设定为0.25。应当理解,关系权重还可以按其他比例设定,可以理解由于奖项具有高低之分,所以奖项会影响影片的权重或影人的权重,可按照奖项的高低来设定权重,奖项高的实体节点,其所占的权重比例大些,奖项低的实体节点,其所占的权重比例小些,例如,影人A主演B影片获得了奥斯卡奖,且影人A参演了C影片,获得了金马奖,由于奥斯卡奖项相对金马奖项高,那么对影人A影响的权重B相对C要高些。
还需要说明的是,为了解决旧的影片或者影人比新的影片或者影人等级高的缺点,在本发明的实施例中,在建立多个实体之间的关系图的过程中,还可增加系列剧、新片排行榜单关系,例如哈利波特系列剧、各大互联网网站的新片排行榜信息。也就是说,在建立多个实体之间的关系图的过程中,还可考虑系列剧、新片排行榜单关系对关系权重的影响,例如,以新片排行榜单为例,假设实体节点“神雕侠侣”在新片排行榜单中排序第一,则实体节点“神雕侠侣”对应的关系权重也会相应的增大。
还需要说明的是,还可对多个实体节点之间的关系权重进行归一化处理,即:主要针对有区别对待的实体,例如一部影片有多个导演,那么认为第一导演对该影片的重要性比其他导演要高。其中,以实体B和实体A之间的关系权重为例,可通过以下公式对计算实体B接收实体A的权重进行归一化:实体B接收实体A的权重=A->B的传出权重*B->A的接收权重。
举例而言,如图2(b)所示,其中:w1表分配给导演属性的权重,w2表示分配给编剧实体的权重,w1+w2=1;w11和w12分别表示分配给第一导演和其他导演的权重,w11+w12=1;w21和w22分别表示分配给第一编剧和其他编剧的权重,w21+w22=1。假设每个影视实体传出权重之和为1,以计算该影视实体->每个其他导演实体的链接权重Weight为例,链接权重Weight可通过如下公式获得:Weight=Wout*Win;其中,Wout表示影视实体给每个其他导演实体的传出权重,其可由如下式子计算得到:1*w1*w12/其他导演实体个数=w1*w12/2;Win表示每个其他导演实体从该影视实体接收到的权重,因此,这里将该影视实体链接到的每个其他导演实体的链接权重进行归一化,计算如下:w1*w12*(1+2+1+1)/(w1*w11*1+w1*w12*2+w2*w21*1+w2*w22*1)。
S104,根据关系图进行迭代计算,得到影片和影人的评分。
需要说明的是,首先在根据关系图进行迭代计算之前,可分别对关系图中的实体数量和实体质量进行前提假设:在多个实体之间的关系图中,假设影片或者影人实体节点接受到其他实体指向的关系弧节点数量越多,那么这个实体越重要;由于指向实体A的节点质量不同,所以,假设质量高的实体节点通过关系弧向其他实体传递更多的权重,所以,越是质量高的实体节点指向实体A,则说明实体A越重要。
进一步的,为了使得评分结果更加准确,且增加评分依据,在本发明的一个实施例中,该影视相关信息的评分方法还可包括:对外部信息进行归一化处理以获取外部信息对应的外部信息得分。应当理解,在本发明的实施例中,归一化处理为现有技术中的归一化算法。具体地,由于外部信息中信息也会影响对影片和影人的评分,所以基于归一化算法,可将与影视相关信息相关的外部信息归一化到一个标准上,如统一归一到[0,1]这个区间,即得到影片对应的外部信息得分和影人对应的外部信息得分。
具体而言,在本发明的实施例中,如图3所示,根据关系图进行迭代计算,得到影片和影人的评分可包括如下步骤:
S301,对关系图中的每个实体节点赋予初始值。
例如,当实体节点有对应的豆瓣评分值时,可将该豆瓣评分值作为该实体节点的初始值;当实体节点无评分时,可将该实体节点的初始值设为1.0。
S302,根据关系弧、关系权重和每个实体节点的初始值计算每个实体节点的得分。
具体地,可根据关系权重、每个实体节点的入弧数量和出弧数量及每个实体节点的初始值计算每个实体节点的得分。举例而言,假设如图2(a)中所示的实体节点“电影A”的初始值为9.0,“电影B”的初始值为8.6,“影人C”、“影人D”和“影人E”的初始值均为1.0,例如,从图2(a)中可以看出,“影人C”的入弧数量为1,即“影人C”与“电影A”之间具有关系弧,且该入弧的关系权重为0.3,则“影人C”的得分为3.7=9.0*0.3+1.0;又如,从图2(a)中可以看出,“影人D”的入弧数量为2,即“影人D”与“电影A”之间具有关系弧、“影人D”与“电影B”之间具有关系弧,且这两个入弧的关系权重分别为0.3和0.5,则“影人D”的得分为8.0=9.0*0.3+8.6*0.5+1.0,同理,“影人E”的得分为8.0=9.0*0.3+8.6*0.5+1.0。
S303,根据外部信息得分和每个实体节点的得分获取每个实体节点的迭代分值。
需要说明的是,在本发明的实施例中,还可在多个实体之间的关系图中引入虚拟节点,并将上述获得的归一化的外部信息得分作为虚拟节点的得分,可以理解这些节点分别影响着实体节点的得分。
具体地,可将上述步骤S302中得到的每个实体节点的得分加上与实体节点对应的外部信息得分,得到每个实体节点的迭代分值。
S304,根据每个实体节点的迭代分值通过误差公式进行计算,得到多个实体节点的误差总值,并判断误差总值是否大于预设阀值。
其中,在本发明的实施例中,误差公式可为:
其中,Error为误差总值,N为关系图中实体节点的总个数,Sj(ei)为在第j次计算第i个实体节点时得到的第i个实体节点的迭代分值,Sj+1(ei)为在第j+1次计算第i个实体节点时得到的第i个实体节点的迭代分值。其中,j可从0开始,当j为0时,每个实体节点的迭代分值可理解为每个实体节点的初始值。
例如,假设当前得到了第二次计算后每个实体节点的迭代分值,针对每个实体节点,可将第二次计算后得到的实体节点的迭代分值减去第一次计算后得到的实体节点的迭代分值,得到这两次计算后实体节点的迭代分值的差值,之后可将每个实体节点迭代分值的差值的绝对值进行相加以得到误差总值,最后可对该误差总值进行判断,判断其是否大于预设阈值。
S305,如果判断误差总值大于预设阈值,则将迭代分值作为每个实体节点的初始值,并重复执行步骤S302-S304。
具体地,当判断误差总值大于预设阈值时,可将每个实体节点的迭代分值作为其对应的初始值,并重复执行上述步骤S302-S304。
S306,如果判断误差总值小于或等于预设阈值,则将每个实体节点的迭代分值分别作为影片和影人的评分。
也就是说,当多个实体之间的迭代分值趋于稳定时,可将每个实体节点的迭代分值作为对应的影片的评分和对应的影人的评分。例如,以图2(a)中的实体节点“影人C”为例,假设当图2(a)中的实体节点“电影A”、“电影B”、“影人C”、“影人D”和“影人E”的误差总值小于或等于预设阈值时,实体节点“影人C”的迭代分值3.7即为影人C的评分。
根据本发明实施例的影视相关信息的评分方法,可先获取影视相关信息,并获取与影视相关信息相关的外部信息,其中,影视相关信息包括影片、影人,之后可根据影视相关信息和外部信息建立影视领域本体库,并获取影视领域本体库中的多个实体,并根据影视领域本体库建立多个实体之间的关系图,以及对多个实体之间的关系图进行迭代计算,得到影片和影人的评分,在增加了给出对影人的评价功能的同时,在整个评分过程中,增加了与影片、影人相关的外部信息(如获奖信息、搜索次数、浏览次数、播放次数、影片的信源等)对评价结果影响因素,使得评价结果更加客观,且提高了准确性。
与上述几种实施例提供的影视相关信息的评分方法相对应,本发明的一种实施例还提供一种影视相关信息的评分装置,由于本发明实施例提供的影视相关信息的评分装置与上述几种实施例提供的影视相关信息的评分方法相对应,因此在前述影视相关信息的评分方法的实施方式也适用于本实施例提供的影视相关信息的评分装置,在本实施例中不再详细描述。图4是根据本发明一个实施例的影视相关信息的评分装置的结构示意图。如图4所示,该影视相关信息的评分装置可包括:第一获取模块10、第一建立模块20、第二建立模块30和计算模块40。
具体地,第一获取模块10可用于获取影视相关信息,并获取与影视相关信息相关的外部信息,其中,影视相关信息包括影片、影人。
其中,在本发明的实施例中,外部信息可包括但不限于豆瓣评分值、影片的信源、影片的历史记录、影人的历史记录、影片的获奖信息和影人的获奖信息等中的一种或多种。其中,影片的历史记录可包括但不限于影片的搜索次数和/或影片的点击浏览次数和/或所述影片的播放次数等;影人的历史记录可包括但不限于影人的搜索次数和/或影人的点击浏览次数等。
第一建立模块20可用于根据影视相关信息和外部信息建立影视领域本体库。具体而言,在本发明的一个实施例中,如图5所示,该第一建立模块20可包括定义单元21、构建单元22和建立单元23。具体地,定义单元21可用于建立影视中的概念,并根据概念定义对应的多个类别以及多个类别之间的关系。
构建单元22可用于根据多个类别以及多个类别之间的关系通过本体构建工具Protégé搭建影视领域框架。
建立单元23可用于根据影视领域框架、影视相关信息和外部信息通过语义网开发工具Jena建立影视领域本体库。
第二建立模块30可用于获取影视领域本体库中的多个实体,并根据影视领域本体库建立多个实体之间的关系图。具体而言,在本发明的实施例中,第二建立模块30可根据影视领域本体库中的多个类别之间的关系建立多个实体之间的关系图,其中,关系图包括多个实体节点、多个实体节点之间的关系弧和多个实体节点之间的关系权重。
计算模块40可用于根据关系图进行迭代计算,得到影片和影人的评分。
进一步的,在本发明的一个实施例中,如图6所示,该影视相关信息的评分装置还可包括第二获取模块50,第二获取模块50可用于对外部信息进行归一化处理以获取外部信息对应的外部信息得分。
具体而言,在本发明的实施例中,计算模块40根据关系图进行迭代计算,得到影片和影人的评分的具体实现过程可包括如图3所示中的步骤:首先,对关系图中的每个实体节点赋予初始值(S301)。之后,根据关系弧、关系权重和每个实体节点的初始值计算每个实体节点的得分(S302)。之后,根据外部信息得分和每个实体节点的得分获取每个实体节点的迭代分值(S303)。然后,根据每个实体节点的迭代分值通过误差公式进行计算,得到多个实体节点的误差总值,并判断误差总值是否大于预设阀值(S304)。如果判断误差总值大于预设阈值,则将迭代分值作为每个实体节点的初始值,并重复执行步骤S302-S304(S305);如果判断误差总值小于或等于预设阈值,则将每个实体节点的迭代分值分别作为影片和影人的评分(S306)。
其中,在本发明的实施例中,误差公式可为:
其中,Error为误差总值,N为关系图中实体节点的总个数,Sj(ei)为在第j次计算第i个实体节点时得到的第i个实体节点的迭代分值,Sj+1(ei)为在第j+1次计算第i个实体节点时得到的第i个实体节点的迭代分值。其中,j可从0开始,当j为0时,每个实体节点的迭代分值可理解为每个实体节点的初始值。
根据本发明实施例的影视相关信息的评分装置,可通过第一获取模块获取影视相关信息,并获取与影视相关信息相关的外部信息,其中,影视相关信息包括影片、影人,第一建立模块根据影视相关信息和外部信息建立影视领域本体库,第二建立模块获取影视领域本体库中的多个实体,并根据影视领域本体库建立多个实体之间的关系图,计算模块对多个实体之间的关系图进行迭代计算,得到影片和影人的评分,在增加了给出对影人的评价功能的同时,在整个评分过程中,增加了与影片、影人相关的外部信息(如获奖信息、搜索次数、浏览次数、播放次数、影片的信源等)对评价结果影响因素,使得评价结果更加客观,且提高了准确性。
在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行***、装置或设备(如基于计算机的***、包括处理器的***或其他可以从指令执行***、装置或设备取指令并执行指令的***)使用,或结合这些指令执行***、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行***、装置或设备或结合这些指令执行***、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。