视频推荐方法、电子设备及计算机可读存储介质与流程

文档序号:18267732发布日期:2019-07-27 09:19阅读:211来源:国知局
视频推荐方法、电子设备及计算机可读存储介质与流程

本发明实施例涉及信息处理技术领域,特别涉及一种视频推荐方法、电子设备及计算机可读存储介质。



背景技术:

目前,新兴互联网方式不断兴起,社会性网络服务社区也在不断发展壮大,多媒体内容发展态势迅猛。其中,互联网视频处于开拓性媒体发展中,但如何保持用户规模增长,如何深耕存量客户将成为行业下一阶段发展的关键。因此,视频平台致力于主动向用户推荐视频。现有技术中视频平台向用户推荐视频的方式主要有两种,第一种为随机推荐,即向用户随机推荐视频;第二种为精准推荐,即根据用户观看的视频的类型,向用户推荐同类型的视频。

然而,本发明的发明人发现,随机推荐的方法虽然推荐的视频的种类较为丰富,但推荐的大部分视频并不是用户所喜爱的视频;而精准推荐的方法虽然可以向用户推荐其喜爱的视频,但简单的喜好累加会导致推荐内容越来越单一。



技术实现要素:

本发明实施方式的目的在于提供一种视频推荐方法、电子设备及计算机可读存储介质,使得在丰富推荐视频种类的同时,向用户推荐其所喜爱的视频。

为解决上述技术问题,本发明的实施方式提供了一种视频推荐方法,包括,获取各个视频的多个视频标签、并计算各个所述视频标签的视频标签分数,所述视频标签分数用于表征所述视频标签的准确度;获取用户观看的至少一个历史视频的视频标签作为所述用户的用户标签,根据所述视频标签分数计算所述用户标签所对应的用户标签分数,所述用户标签分数用于表征所述用户标签的准确度;根据所述用户所对应的用户标签和所述用户标签分数、获取与所述用户标签匹配的视频作为预推荐视频;选取至少部分所述预推荐视频推荐给所述用户。

本发明的实施方式还提供了一种电子设备,包括,至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如前述的视频推荐方法。

本发明的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现如前述的视频推荐方法。

与现有技术相比,本发明实施方式所提供的视频推荐方法中,由于各个视频对应有多个视频标签,因此各个用户对应有多个用户标签,利用多个用户标签可以表征用户的多个喜好点,从而从多个不同的角度向用户推荐视频,丰富推荐视频的种类。此外,计算各个视频标签的视频标签分数、以及各个用户标签的用户标签分数,通过视频标签分数和用户标签分数分别表征视频标签和用户标签的准确度,根据用户标签分数选取至少部分视频为预推荐视频,可以使得预推荐视频为用户喜爱的视频,将至少部分预推荐视频推荐给用户,使得向用户推荐的视频为用户喜爱的视频。

另外,所述计算所述用户标签所对应的用户标签分数后,还包括:当检测到所述用户观看视频时,更新所述用户所对应的用户标签、以及所述用户标签分数。

另外,所述更新所述用户所对应的用户标签、以及所述用户标签分数后,还包括:记录各个所述用户标签的最近更新时刻;所述获取与所述用户标签匹配的视频作为预推荐视频,具体包括:将所述用户标签分为包括第一用户标签和第二用户标签的至少两类用户标签,其中,所述第二用户标签的最近更新时刻早于所述第一用户标签的最近更新时刻;获取第一数量的所述第一用户标签作为第一预推荐用户标签;获取第二数量的所述第二用户标签作为第二预推荐用户标签;获取与所述第一预推荐用户标签匹配的视频、以及所述第二预推荐用户标签匹配的视频作为所述预推荐视频。根据各个用户标签的最近更新时刻,将用户标签分为至少两类用户标签,两类用户标签分别表征用户在不同的时间段喜爱的点,从第一用户标签中选取第一预推荐用户标签,从第二用户标签中选取第二预推荐用户标签,从而从时间维度上丰富预推荐用户标签的选取。

另外,所述计算各个所述视频标签的视频标签分数,具体包括:根据视频的平均播放完成度以及有效点击量计算所述视频的视频分数;根据所述视频分数和各个所述视频标签的标签点击率、计算得到各个所述视频标签的视频标签分数。提供了一种视频标签分数的具体计算方法。

另外,所述根据视频的平均播放完成度以及有效点击量计算所述视频的视频分数,具体包括:获取所述视频的平均播放时长t0,所述视频的总时长l,根据下述公式,计算得到所述视频的平均播放完成度cratio,

按照下述公式计算得到所述视频在t1时长内的有效点击量click,

其中,t为半衰周期,nt为第t天的实际点击量,t=0,1,2,3……t1;根据所述有效点击量对待推荐的视频进行排序,获取第一预设位置的视频作为标准化视频;计算各个所述视频的有效点击量与所述标准化视频的有效点击量的比值,将所述比值作为所述视频的标准化有效点击量click1,将大于1的所述标准化有效点击量设为1;根据下述公式计算所述视频的视频分数score,

score=cratio*n1+click1*n2;

其中,所述n1、n2为常数。将第一预设位置的视频作为标准化视频,将大于1的标准化有效点击量设为1,从而防止出现传统算法中将最大值作为标准化值时出现的、某一数据异常导致出现与其他数据差距过大、使得其他数据的标准化值过小、区分度小的问题。

另外,所述根据所述视频分数和各个所述视频标签的标签点击率、计算得到各个所述视频标签的视频标签分数,具体包括:计算所述视频分数与各个所述视频标签的标签点击率的乘积,将所述乘积作为所述视频标签的视频标签分数。

另外,所述选取至少部分所述预推荐视频推荐给所述用户,具体包括:选取视频分数大于预设阈值的预推荐视频推荐给所述用户。视频分数越高,说明视频被播放的次数越多、且在被播放时的完成度越高,则说明该视频越受欢迎,则该视频被用户喜爱的可能性也越高,从而向用户推荐其所喜爱的视频。

另外,所述计算所述用户标签所对应的用户标签分数,具体包括:获取所述用户标签对应的视频的个数m、并对m个所述视频进行排序;根据下述公式计算所述用户标签所对应的用户标签分数score_k,

其中,f(x)为逻辑斯蒂分布函数,x为所述用户标签对应的视频的序号,vv_tx为所述用户标签对应的第x个视频的观看时长,tx为所述用户标签对应的第x个视频的视频时长,scorex为与所述用户标签相同的视频标签在第x个视频中的视频标签分数。采用逻辑斯蒂分布函数f(x)将原本开放式增长的喜好度得分归一化为可用于概率选择策略的分值,有效的避免由于个别用户标签得分过高造成推荐结果集中于该用户标签。

另外,所述获取各个视频的视频标签,具体包括:对各个视频进行信息提取,获取打标签所需字段;对所述字段进行切词,获取所述视频的关键字;将所述关键词作为所述视频标签。

另外,所述将所述关键词作为所述视频标签前,还包括:设置视频标签黑名单;去除所述关键词中属于所述视频标签黑名单的部分关键词、并将剩余的所述关键词作为所述视频标签。由于不适合用于推荐的标签会对视频标签的准确性产生影响,设置黑名单,去除视频标签中不适合用于推荐的标签,从而减少这部分不适合用于推荐的标签产生的负面影响,从整体上提升视频标签的准确性。

附图说明

图1是本发明第一实施方式所提供的视频推荐方法的流程图;

图2是本发明第一实施方式所提供的视频推荐方法中获取视频标签的流程图;

图3是本发明第一实施方式所提供的视频推荐方法中计算视频标签分数的流程图;

图4是本发明第一实施方式所提供的视频推荐方法中逻辑斯蒂分布函数的函数图像;

图5是本发明第二实施方式所提供的视频推荐方法的流程图;

图6是本发明第二实施方式所提供的视频推荐方法中获取预推荐视频的流程图;

图7是本发明第三实施方式所提供的电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本发明而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本发明所要求保护的技术方案。

本发明的第一实施方式涉及一种视频推荐方法,如图1所示,包括以下步骤:

步骤101:获取各个视频的多个视频标签、并计算各个视频标签的视频标签分数。

具体的,在本步骤中,已有视频组成视频数据库,从视频数据库中获取各个待推荐的视频。视频标签用于表征视频的部分特征,例如视频标签可以是表征该视频的种类、总时长等特征,也可以是表征视频标题及台词中出现的词语等,还可以是视频中演员的名字等。下面,对本实施方式中获取视频标签的方法进行举例说明,如图2所示,包括以下步骤:

步骤201:对各个视频进行信息提取,获取打标签所需字段。

具体的,在本步骤中,打标签所需字段可以是与视频相关的任何字段,例如视频标题、内容简介、演员姓名等。

步骤202:对字段进行切词,获取视频的关键词。

具体的,对字段进行切词,可以有效的增加关键词的数量,从而防止由于视频的信息较少导致关键词数量较少。

步骤203:将关键词作为视频标签。

可以理解的是,上述仅为本实施方式中获取视频标签的方法的一种举例,并不构成限定,在实际应用过程中,也可以是通过其他的方法获取视频标签,在此不进行一一列举。

另外,在本实施方式的另一个举例中,在步骤203之前,还包括:设置视频标签黑名单,去除关键词中属于视频标签黑名单的部分关键词。将剩余的关键词作为视频标签。由于关键词通过切词获取,因此,可能导致部分关键词不适合作为视频标签,通过人为的设置视频标签黑名单过滤掉部分不适合作为视频标签的关键词,从而增加视频标签的有效性。

进一步的,在本步骤中,如图3所示,计算各个视频标签的视频标签分数的具体步骤包括:

步骤301:根据视频的平均播放完成度以及有效点击量计算所述视频的视频分数。

具体的,在本步骤中,平均播放完成度和有效点击量可以从一定程度上反应该视频的受欢迎程度和视频质量,从而使得视频分数也可以表征该视频的受欢迎程度,并从一定程度上体现视频的质量。下面,对视频分数的计算方法进行具体说明,可以理解的是,下述仅为本实施方式中的一种举例说明,并不构成限定,在本发明的其他实施方式中,视频分数也可以是通过其他的方法计算得到。

获取视频的平均播放时长t0,视频的总时长l,根据下述公式,计算得到所述视频的平均播放完成度cratio,

按照下述公式计算得到所述视频在t1时长内的有效点击量click,其中,t为半衰周期,nt为第t天的实际点击量,t=0,1,2,3……t1。由于视频的有效点击量的具有一定的时效性,有效点击量占实际点击量的比例会随着发布天数的增加而逐渐减小,因此可以采用半衰期算法对有效点击量进行计算。

根据所述有效点击量对所述视频数据库中的视频进行排序,获取第一预设位置的视频作为标准化视频;计算各个所述视频的有效点击量与所述标准化视频的有效点击量的比值,将所述比值作为所述视频的标准化有效点击量click1,将大于1的所述标准化有效点击量设为1。为了便于分析,在本例中,采用改进的“min-max”优化方法对有效点击量进行归一化处理。传统的“min-max”优化方法中将最大值max作为1,当出现某一个视频的有效点击量远大于其他视频的有效点击量时,这种方法会导致其他视频的标准化有效点击量过小、区分度低、效果较差。而在本例中,选取排序中处于第一预设位置的视频作为标准化视频,其标准化有效点击量设为1,将大于1的标准化有效点击量均设为1,从而避免上述问题,提升效果。

根据下述公式计算所述视频的视频分数score,score=cratio*n1+click1*n2;其中,所述n1、n2为常数。n1、n2分别为视频分数中播放完成度和有效点击量的权重,其可以根据实际需要进行设定。

步骤302:根据所述视频分数和各个所述视频标签的标签点击率、计算得到各个所述视频标签的视频标签分数。

具体的,在本步骤中,直接获取视频分数和视频标签的标签点击率的乘积,将该乘积作为视频标签分数。可以理解的是,将乘积作为视频标签分数仅为本实施方式中的一种具体的举例说明,并不构成限定。

步骤102:获取用户观看的至少一个历史视频,获取历史视频的视频标签作为该用户的用户标签。

具体的,在本步骤中,历史视频即为用户观看过的视频,可以是用户完整观看的视频,也可以是用户部分观看的视频。每个历史视频对应有多个视频标签,获取用户观看的所有历史视频所对应的所用的视频标签,将这些视频标签作为该用户的用户标签。

步骤103:根据视频标签分数计算用户标签的用户标签分数。

具体的,在本步骤中,根据下述公式计算用户标签所对应的用户标签分数score_k,

其中,m为用户所观看的历史视频的说个数,f(x)为逻辑斯蒂分布函数,x为所述用户标签对应的视频的序号,vv_tx为所述用户标签对应的第x个视频的观看时长,tx为所述用户标签对应的第x个视频的视频时长,scorex为与所述用户标签相同的视频标签在第x个视频中的视频标签分数。

进一步的,逻辑斯蒂分布函数其中,μ为自变量的偏移量,γ决定了函数在中心附件的增长速率。采用逻辑斯蒂分布函数,可以有效的避免由于个别标签得分过高造成推荐结果集中于该标签。此外,逻辑斯蒂分布函数能够有效处理用户观看时长占比对应得分的问题,如图4所示,当观看时长占比低于20%时,其得分很低,当观看时长占比在20%--60%之间是,得分随观看时长占比的上升而上升,当观看时长占比大于60%时,其得分接近最大值。

步骤104:根据用户标签和用户标签分数、获取视频数据库中至少部分与用户标签匹配的视频作为预推荐视频。

具体的,在本步骤中,首先根据用户标签分数的大小对用户标签进行排序,获取排名靠前的、用户标签分数较大的部分用户标签作为有效用户标签;获取视频数据库中与有效用户标签匹配的视频作为预推荐视频。

可以理解的是,上述仅为本步骤的一种具体的实现方法的举例说明,并不构成限定,在本发明的其他实施方式中,本步骤也可以是通过其他的方法获取预推荐视频,在此不进行一一列举,具体可以根据实际需要进行灵活的设定。

步骤105:选取至少部分预推荐视频推荐给用户。

具体的,在本步骤中,选取预推荐视频中视频分数大于预设阈值的部分推荐给用户。可以理解的是,上述仅为本实施方式中选取部分预推荐视频的一种具体举例说明,并不构成限定,在本发明的其他实施方式中,还可以是其他的方法,例如根据预推荐视频所对应的用户标签的用户标签分数进行选取等,在此不进行一一列举。

与现有技术相比,本发明第一实施方式所提供的视频推荐方法中,由于各个视频对应有多个视频标签,因此各个用户对应有多个用户标签,利用多个用户标签可以表征用户的多个喜好点,从而从多个不同的角度向用户推荐视频,丰富推荐视频的种类。此外,计算各个视频标签的视频标签分数、以及各个用户标签的用户标签分数,通过视频标签分数和用户标签分数分别表征视频标签和用户标签的准确度,根据用户标签分数选取至少部分视频为预推荐视频,可以使得预推荐视频为用户喜爱的视频,将至少部分预推荐视频推荐给用户,使得向用户推荐的视频为用户喜爱的视频。

本发明的第二实施方式涉及一种视频推荐方法,具体步骤如图5所示。第二实施方式是第一实施方式的替换实施方式,主要不同之处在于:在第一实施方式中,仅通过用户标签和用户标签分数获取预推荐视频,而在本实施方式中,通过用户标签、用户标签分数以及用户标签的最近更新时刻获取预推荐视频。

步骤501:获取视频数据库中各个视频的多个视频标签、并计算各个视频标签的视频标签分数。

步骤502:获取用户观看的至少一个历史视频,获取历史视频的视频标签作为该用户的用户标签。

步骤503:根据视频标签分数计算用户标签的用户标签分数。

由于本实施方式中的步骤501至步骤503与第一实施方式中的步骤101至步骤103大致相同,在此不再进行赘述,具体可以参照第一实施方式。

步骤504:当检测到用户观看视频时,更新用户所对应的用户标签、以及用户标签分数,记录各个用户标签的最近更新时刻。

具体的,在本步骤中,在获取到用户的用户标签和用户标签分数后,持续检测用户是否观看新的视频,当检测到用户观看视频时,将该视频加入到用户观看的历史视频中,重新计算并更新用户的用户标签和用户标签分数。当更新用户标签和用户标签分数时,记录各个用户标签的最近更新时刻。

步骤505:根据用户标签、用户标签分数以及最近更新时刻、获取视频数据库中至少部分与用户标签匹配的视频作为预推荐视频。

具体的,如图6所示,包括以下步骤:

步骤601:将用户标签分为包括第一用户标签和第二用户标签的至少两类用户标签,其中,第二用户标签的最近更新时刻早于第一用户标签的最近更新时刻。

具体的,在本步骤中,第一用户标签和第二用户标签分别表征用户在不同的时间段内的不同爱好,第二用户标签的最近更新时刻早于第一用户标签的最近更新时刻,即第二用户标签表征用户在一段时间以前的爱好,而第一用户标签则表征用户近期的爱好。

可以理解的是,在本步骤中,用户标签可以不仅仅被分为第一用户标签和第二用户标签这两类用户标签,还可以是根据最近更新时刻的远近,将用户标签分为更多类别的用户标签,在此不进行赘述。

步骤602:获取第一数量的第一用户标签作为第一预推荐用户标签。

具体的,在本步骤中,通过适应值比例选择的方式、获取第一数量的第一用户标签作为第一预推荐用户标签。具体步骤为,首先,将用户标签分数作为用户标签的适应值,然后根据下述公式,计算各个用户标签的适应值在群体适应值总和中所占的比例,该比例即表示该个体在选择过程中被选中的概率。对于给定规模为n的群体,p={a1,a2,a3,……,an},个体aj为第i个用户标签,aj属于p的适应值为f(aj)。按照概率p(aj),通过概率抽样的方法、在第一类用户标签中获取第一数量的用户标签作为第一预推荐用户标签。

可以理解的是,上述仅为获取第一预推荐用户标签的一种具体的方法举例,并不构成限定,在本发明的其他实施方式中,也可以是其他方式,在此不进行一一列举。

步骤603:获取第二数量的第二用户标签作为第二预推荐用户标签。

具体的,本步骤中获取第二预推荐用户标签的方法与步骤602中相同,在此不再赘述。

需要说明的是,第一数量和第二数量可以相等也可以不等,在此不进行限定。

步骤604:获取视频数据库中与第一预推荐用户标签匹配的视频、以及第二预推荐用户标签匹配的视频作为预推荐视频。

具体的,在本步骤中,分别获取视频数据库中与第一预推荐用户标签匹配的视频、以及第二预推荐用户标签匹配的视频,将两者的交集作为预推荐视频。

步骤506:选取至少部分预推荐视频推荐给用户。

由于本实施方式中的步骤506与第一实施方式中的步骤105大致相同,在此不再进行赘述,具体可以参照第一实施方式。

与现有技术相比,本发明第二实施方式在保留了第一实施方式的全部的技术效果的同时,根据各个用户标签的最近更新时刻,将用户标签分为至少两类用户标签,两类用户标签分别表征用户在不同的时间段喜爱的点,从第一用户标签中选取第一预推荐用户标签,从第二用户标签中选取第二预推荐用户标签,从而从时间维度上进一步的丰富预推荐用户标签的选取。

本发明第三实施方式涉及一种电子设备,如图7所示,包括:至少一个处理器701;以及,与至少一个处理器701通信连接的存储器702;其中,存储器702存储有可被至少一个处理器701执行的指令,指令被至少一个处理器701执行,以使至少一个处理器701能够执行如第一至第二实施方式的视频推荐方法。

其中,存储器702和处理器701采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器701和存储器702的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器701处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器701。

处理器701负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器702可以被用于存储处理器701在执行操作时所使用的数据。

本发明第四实施方式涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现第一至第二实施方式的视频推荐方法的实施例。

即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1