评论信息排序方法、装置、存储介质及服务器
技术领域
本申请涉及互联网技术领域,尤其涉及一种评论信息排序方法、装置、存储介质及服务器。
背景技术
随着互联网技术的飞速发展,除了传统的广播、电视之外,互联网成为一种更为重要的一种取资讯传播渠道,人们习惯于从互联网上获取资讯,并且通常习惯于在互联网上发表相关评论,分享心得或体会,同时用户评论本身也成为一种重要的资讯,人们从其他用户发表的评论可以获得更多更贴近需要的资讯。
目前,网络平台上所展示的评论信息是按照各条评论信息的生成时间由先至后的顺序进行展示,因此较早生成的有价值的评论会被排在后面展示,而在用户逐条翻看评论信息的过程中,可能会在翻阅大量没有价值的评论信息后才能获取到有价值的评论信息,显然这种评论信息的排序方式降低了用户获取有价值的评论信息的效率,排列效果差。
发明内容
本申请实施例提供一种评论信息排序方法、装置、存储介质及服务器,能避免早期有价值评论被沉入底部,提高了评论信息的排序效果。
本申请实施例提供了一种评论信息排序方法,包括:
获取已发表内容的多条评论信息、以及每条所述评论信息的用户互动信息,所述评论信息包括评论内容和评论时间;
根据所述评论信息、所述用户互动信息和所述已发表内容确定每条所述评论信息的热度值;
根据所述评论时间确定每条所述评论信息的时间衰减值;
根据所述热度值和时间衰减值对所述多条评论信息进行排序。
本申请实施例还提供了一种评论信息排序装置,包括:
获取模块,用于获取已发表内容的多条评论信息、以及每条所述评论信息的用户互动信息,所述评论信息包括评论内容和评论时间;
第一确定模块,用于根据所述评论信息、所述用户互动信息和所述已发表内容确定每条所述评论信息的热度值;
第二确定模块,用于根据所述评论时间确定每条所述评论信息的时间衰减值;
排序模块,用于根据所述热度值和时间衰减值对所述多条评论信息进行排序。
其中,所述第一确定模块具体包括:
第一确定单元,用于根据所述评论内容和所述已发表内容确定每条所述评论信息的内容特征;
第二确定单元,用于根据所述用户互动信息确定每条所述评论信息的互动特征;
第三确定单元,用于根据所述互动特征和所述内容特征确定每条所述评论信息的热度值。
其中,所述第一确定单元具体用于:
确定每条所述评论内容和所述已发表内容之间的相关度;
确定每条所述评论内容中的实体词数量、以及每条所述评论内容的字符长度;
将所述相关度、所述实体词数量和所述字符长度作为对应评论信息的内容特征。
其中,所述第一确定单元具体用于:
基于预设的主题模型确定每条所述评论内容对应的第一主题向量、以及所述已发表内容对应的第二主题向量;
确定所述第二主题向量和每个所述第一主题向量之间的分布距离,以得到对应评论内容和所述已发表内容之间的相关度。
其中,所述用户互动信息包括对所述评论信息的点赞次数、以及由所述评论信息引出的回复次数和点赞次数,所述第二确定单元具体用于:
根据所述由所述评论信息引出的回复次数确定所述评论信息的评论树复杂度;
根据所述由所述评论信息引出的点赞次数确定所述评论信息的评论树点赞次数;
将所述对所述评论信息的点赞次数、所述评论树复杂度和所述评论树点赞次数作为对应评论信息的互动特征。
其中,所述评论信息还包括评论用户,所述第一确定模块还包括第四确定单元,用于:
在所述第三确定单元根据所述互动特征和所述内容特征确定每条所述评论信息的热度值之前,确定网络用户集中每个网络用户相对其他网络用户的历史互动信息,所述网络用户集中包括所述评论用户;
根据所述历史互动信息确定每个所述评论用户的用户特征;
所述第三确定单元具体用于:根据所述用户特征、所述互动特征和所述内容特征确定每条所述评论信息的热度值。
其中,所述第三确定单元具体用于:
对所述用户特征、所述互动特征和所述内容特征分别进行对数化处理;
利用极小极大值法,对对数化处理后的所述用户特征、所述互动特征和所述内容特征进行归一化处理,得到归一化数值;
根据预设加权值,对每条所述评论信息对应的归一化数值进行加权求和处理,得到对应热度值。
其中,所述历史互动信息包括历史总点赞次数,所述第四确定单元具体用于:
对每个所述网络用户对应的历史总点赞次数进行累加,得到网络总点赞次数;
根据每个所述网络用户对应的历史总点赞次数,对所述网络用户进行排序;
根据所述网络总点赞次数和排序后的所述网络用户,确定每个所述评论用户所属的用户等级;
根据每个所述评论用户所属的用户等级,确定对应的点赞权重值,并将所述点赞权重值作为用户特征。
其中,所述历史互动信息包括历史点赞或回复关系,所述第四确定单元具体用于:
以所述历史点赞或回复关系为边、以所述网络用户为节点,构造网络节点图;
根据预设的用户等级算法和所述网络节点图,确定每个所述评论用户的节点权重值,并将所述节点权重值作为用户特征。
其中,所述排序模块具体用于:
计算每条所述评论信息对应的热度值和时间衰减值之间的乘积,得到推荐度;
按照所述推荐度的数值大小对所述多条评论信息进行排序。
其中,所述评论信息排序装置还包括调整显示模块,用于:
在所述排序模块根据所述热度值和时间衰减值对所述多条评论信息进行排序之后,利用预设分类模型确定每条所述评论信息的低质量分类标签;
根据所述低质量分类标签对排序后的所述多条评论信息进行位置调整;
在所述已发表文章的评论界面上显示调整后的所述多条评论信息。
本申请实施例还提供了一种计算机可读存储介质,所述存储介质中存储有多条指令,所述指令适于由处理器加载以执行上述任一项评论信息排序方法。
本申请实施例还提供了一种服务器,包括处理器和存储器,所述处理器与所述存储器电性连接,所述存储器用于存储指令和数据,所述处理器用于执行上述任一项评论信息排序方法中的步骤。
本申请提供的评论信息排序方法、装置、存储介质及服务器,通过获取已发表内容的多条评论信息、以及每条该评论信息的用户互动信息,该评论信息包括评论内容和评论时间,并根据该评论信息、该用户互动信息和该已发表内容确定每条该评论信息的热度值,之后根据该评论时间确定每条该评论信息的时间衰减值,并根据该热度值和时间衰减值对该多条评论信息进行排序,从而能综合考虑评论信息的新颖度、热度和评论时间等因素,确保评论排序列表的多样性,不仅能避免早期有价值评论被沉入底部,还能避使新发表评论有足够曝光机会,提高了评论排序效果。
附图说明
下面结合附图,通过对本申请的具体实施方式详细描述,将使本申请的技术方案及其它有益效果显而易见。
图1为本申请实施例提供的评论信息排序系统的场景示意图。
图2为本申请实施例提供的评论信息排序方法的流程示意图。
图3为本申请实施例提供的评论信息排序方法的另一流程示意图。
图4为本申请实施例提供的评论信息的展示示意图。
图5为本申请实施例提供的用户点赞等分与用户量的示意图。
图6为本申请实施例提供的网络节点图的示意图。
图7为本申请实施例提供的评论信息特征分类的示意图。
图8为本申请实施例提供的计算模块组成部分的示意图。
图9为本申请实施例提供的评论信息排序装置的结构示意图。
图10为本申请实施例提供的评论信息排序装置的另一结构示意图。
图11为本申请实施例提供的服务器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种评论信息排序方法、装置、存储介质及服务器。
请参阅图1,图1为评论信息排序系统的场景示意图,该评论信息排序系统可以包括本申请实施例提供的任一种评论信息排序装置,该评论信息排序装置可以集成在服务器中,该服务器可以是网络平台的后台服务器,该网络平台可以主要用于向网络用户展示多媒体产品,比如短视频、视频、文章等。
该服务器可以获取已发表内容的多条评论信息、以及每条该评论信息的用户互动信息,该评论信息包括评论内容和评论时间;根据该评论信息、该用户互动信息和该已发表内容确定每条该评论信息的热度值;根据该评论时间确定每条该评论信息的时间衰减值;根据该热度值和时间衰减值对该多条评论信息进行排序。
其中,该已发表内容主要指网络用户在网络平台上已经发表的内容,比如已经发表的视频或文章等,网络用户指在网络平台上注册和/或登录的用户。该评论信息指任意网络用户对已发表内容进行评论操作时产生的信息,其主要表现为文字形式。该用户互动信息指任意网络用户对已发表内容进行互动操作时产生的信息,该互动操作包括点赞和回复。
譬如,请参见图1,该服务器为视频播放平台的后台服务器,对于已发表的xxx电视剧视频,网络用户可以在xxx电视剧视频的展示界面对其进行评论互动,比如有10条评论信息,某条评论信息为“A用户在25分钟前评论的:什么意思,才更新5集”,且该评论信息的用户互动信息包括其他网络用户的8个点赞和3条回复等,此时,服务器可以获取xxx电视剧视频下的所有评论信息和用户互动信息,并根据该评论信息、用户互动信息和xxx电视剧视频确定每条评论信息的热度值,同时,根据评论时间确定时间衰减值,之后根据热度值和时间衰减值对这10条评论信息排序显示,比如可以在该展示界面上依次显示为A用户的评论信息、C用户的评论信息….J用户的评论信息等。
如图2所示,图2是本申请实施例提供的评论信息排序方法的流程示意图,该评论信息排序方法应用于服务器,具体流程可以如下:
S101.获取已发表内容的多条评论信息、以及每条该评论信息的用户互动信息,该评论信息包括评论内容和评论时间。
其中,该已发表内容主要指网络用户在网络平台上已经发表的内容,比如已经发表的视频或文章等,网络用户指在网络平台上注册和/或登录的用户。该评论信息指任意网络用户对已发表内容进行评论操作时产生的信息,其主要表现为文字形式。该用户互动信息指任意网络用户对已发表内容进行互动操作时产生的信息,该互动操作包括点赞、回复和/或转发等。
S102.根据该评论信息、该用户互动信息和该已发表内容确定每条该评论信息的热度值。
其中,该热度值的计算综合考虑了多个参考特征,比如内容特征和互动特征,该内容特征主要反映评论内容本身,该互动特征主要反映各个网络用户针对评论展开的互动情况,每个参考特征可以包括至少一个数值。
例如,请参见图3,上述步骤S102具体可以包括:
S1021.根据该评论内容和该已发表内容确定每条该评论信息的内容特征。
例如,上述步骤S1021具体可以包括:
确定每条该评论内容和该已发表内容之间的相关度;
确定每条该评论内容中的实体词数量、以及每条该评论内容的字符长度;
将该相关度、该实体词数量和该字符长度作为对应评论信息的内容特征。
其中,该相关度体现了评论内容和已发表内容之间的相似性,通常,相似性越高的评论内容,其价值越大。实体词的数量体现了评论内容的饱满性,实体词越多,内容越饱满,价值越大。具体的,可以通过NER(Named Entity Recognization,命名实体识别)模型识别评论内容中实体词的数量,该NER模型可以是多个模型组合,比如LSTM(Long Short-TermMemory,长短期记忆)模型+CRF(Conditional Random Field,条件随机场)模型。在计算评论内容的字符长度时,考虑到重复内容的贡献价值不大,可以先对评论内容进行去重复处理,去掉重复的词组或短语,之后再统计剩余内容的字符个数,得到字符长度。
进一步地,上述步骤“确定每条该评论内容和该已发表内容之间的相关度”具体可以包括:
基于预设的主题模型确定每条该评论内容对应的第一主题向量、以及该已发表内容对应的第二主题向量;
确定该第二主题向量和每个该第一主题向量之间的分布距离,以得到对应评论内容和该已发表内容之间的相关度。
其中,当该已发表内容为视频或动漫等非文字形式的内容时,可以先确定其对应的文字内容,比如将视频简介、动漫简介等作为该已发表内容的文字内容,或者对视频或动漫的语音、字幕等进行识别,将识别内容作为文字内容。
该预设的主题模型可以包括LDA(Latent Dirichlet Allocation,隐含狄利克雷分布)模型,当得到已发表内容的文字内容后,可以通过LDA模型分别对已发表内容的文字内容和评论内容进行识别,得到各自对应的主题向量(即第一主题向量和第二主题向量),之后,可以通过J-S散度(Jensen-Shanno divergence,JSD)算法计算第一主题向量和第二主题向量之间的分布距离,以确定已发布内容和评论内容之间的相关度,或者,也可以通过其他相似度算法来计算两者之间的相关度,比如余弦距离等。
其中,对于第一主题向量P,第二主题向量Q,两者之间的分布距离JSD(P||Q)计算公式如下:
M=(P+Q)/2,
其中,D(P||Q)为PQ散度(Kullback-Leible divergence,KLD)或相对熵,D(P||M)为PM散度,D(Q||M)为QM散度。
S1022.根据该用户互动信息确定每条该评论信息的互动特征。
例如,该用户互动信息可以包括对该评论信息的点赞次数、以及由该评论信息引出的回复次数和点赞次数,此时,上述步骤S1022具体包括:
根据该由该评论信息引出的回复次数确定该评论信息的评论树复杂度;
根据该由该评论信息引出的点赞次数确定该评论信息的评论树点赞次数;
将该对该评论信息的点赞次数、该评论树复杂度和该评论树点赞次数作为对应评论信息的互动特征。
其中,由评论信息引出的回复次数(或点赞次数)包括已发表内容下所有回复操作(或点赞操作)的次数,其包括网络用户对该评论信息的回复次数(点赞次数)、以及网络用户对回复信息的回复次数(点赞次数)。
比如,请参见图4,假设已发表文章下有10条评论信息,其中,其他网络用户对某条评论信息a回复了4次、点赞了2次,且其他网络用户对其中1条回复信息回复了3次、点赞了3次,则对评论信息的点赞次数为2次,由评论信息引出的点赞次数为2+3=5次,由评论信息引出的回复次数为4+3=7次。
评论树是指单条评论信息下多个网络用户的互动操作形成的树形结构,比如单条评论信息有多个点赞和回复,有些回复下又有点赞和回复,回复的回复下又存在点赞和回复,这种层级形式形成了评论树,评论树复杂度反映了单条评论信息所引出的互动操作的丰富性,通常,评论树复杂度越大,网络用户参与的点赞、回复、转发等互动操作越多。该评论树复杂度(或评论树点赞次数)可以直接等于评论信息引出的回复次数(或点赞次数),当然,也可以结合其他信息来确定评论树复杂度,比如结合转发次数、回复用户的知名度等,并通过加权方法确定评论树复杂度。
需要说明的是,除了将一些与用户点赞相关的数值作为互动特征之外,还可以将一些与其他互动操作有关的数值作为互动特征,比如转发次数。
S1023.根据该互动特征和该内容特征确定每条该评论信息的热度值。
其中,可以直接根据互动特征和内容特征计算热度值,还可以结合其他维度特征,比如用户特征,来计算热度值,此时,该评论信息还可以包括评论用户,在上述步骤S1023之前,该评论信息排序方法还可以包括下述步骤S1024-S1025,其中:
S1024.确定网络用户集中每个网络用户相对其他网络用户的历史互动信息,该网络用户集中包括该评论用户。
其中,网络用户集是在网络平台上注册和/或登录的所有网络用户的集合,其包括文章、视频或动漫的发表用户,参与过评论的评论用户,参与过互动(比如点赞、回复)的互动用户等。该历史互动信息主要指网络用户彼此间发生过互动操作时产生的信息,比如该互动操作可以是彼此间的点赞、回复、转发等。
S1025.根据该历史互动信息确定每个该评论用户的用户特征。
其中,该用户特征主要反映评论用户本身,其可以包括至少一个数值,不同数值从不同的衡量角度得到,比如可以考虑用户与用户间的互动关联性来得到用户特征,或者考虑用户自身的互动行为来得到用户特征。
例如,当考虑用户自身的互动行为来得到用户特征时,该历史互动信息可以包括历史总点赞次数,上述步骤S1025具体可以包括:
对每个该网络用户对应的历史总点赞次数进行累加,得到网络总点赞次数;
根据每个该网络用户对应的历史总点赞次数,对该网络用户进行排序;
根据该网络总点赞次数和排序后的该网络用户,确定每个该评论用户所属的用户等级;
根据每个该评论用户所属的用户等级,确定对应的点赞权重值,并将该点赞权重值作为用户特征。
本实施例中,考虑到不同网络用户的点赞行为习惯不同,相对于经常点赞的用户来说,珍惜点赞行为的用户其点赞的价值往往更高,基于此,可以记录历史时段内所有网络用户的点赞行为,并统计每个网络用户的历史总点赞次数、以及网络总点赞次数,之后,按照点赞次数越多,网络用户排位越靠后的规则对所有网络用户进行排序,并依照排序顺序对网络总点赞次数N等分,不同等分的网络用户设置不同的用户等级,不同用户等级设置不同的点赞权重值,通常,排位越靠前的等分段对应的网络用户,用户等级越高,点赞权重值越大。
请参见条状图图5,假设将网络总点赞次数分成10等分,比如10%、20%...100%,也即分成10个用户等级,用户等级越高的网络用户,点赞次数越少,从图5可知,按照用户等级从低到高的顺序,每个等分对应的网络用户数量依次为:21、70、173…100000,容易得知,用户等级越高的等分,对应的网络用户数量越少。
另外,当考虑用户与用户间的互动关联性来得到用户特征时,该历史互动信息可以包括历史点赞或回复关系,上述步骤S1025具体可以包括:
以该历史点赞或回复关系为边、以该网络用户为节点,构造网络节点图;
根据预设的用户等级算法和该网络节点图,确定每个该评论用户的节点权重值,并将该节点权重值作为用户特征。
其中,可以以网络平台上所有网络用户为节点,以网络用户与网络用户之间的点赞或回复关系为边构造网络节点图,比如,假设存在网络用户A-F,其中,网络用户A向B、C、D点过赞,B向C点过赞,C向D点过赞,D向B、C、F点过赞,E向F点过赞,则若以点赞关系为边,网络用户为节点构造网络节点图,得到的网络节点图为图6。
该预设的用户等级算法可以为PeopleRank算法,通过PeopleRank算法可以计算网络节点图中每个节点的权重值,也即得到每个网络用户的权重值,从中选出评论用户的权重值作为用户特征即可。
与此同时,上述步骤S1023具体可以包括:根据该用户特征、该互动特征和该内容特征确定每条该评论信息的热度值。
进一步地,上述步骤“根据该用户特征、该互动特征和该内容特征确定每条该评论信息的热度值”具体可以包括:
对该用户特征、该互动特征和该内容特征分别进行对数化处理;
利用极小极大值法,对对数化处理后的该用户特征、该互动特征和该内容特征进行归一化处理,得到归一化数值;
根据预设加权值,对每条该评论信息对应的归一化数值进行加权求和处理,得到对应热度值。
本实施例中,任一评论信息的热度值H的计算公式可以为:
H=∑iwi*min maxregression log(factori)
其中,factori为第i个特征值,其是单条评论信息对应的上述所有特征的特征值中的任意一个,例如,请参见图7,可以将单条评论信息的特征分成三个类型:内容特征、互动特征和用户特征,其中,内容特征包括相关度、实体词数量和字符长度这3个特征值,互动特征包括对评论信息的点赞次数、评论树复杂度和评论树点赞次数这3个特征值,用户特征包括节点权重值或和点赞权重值这3个特征值,factori为这些特征值中的任意一个,每个特征值的计算方法可参见上述步骤。
log(factori)为对第i个特征值取对数值,min maxregression log(factori)为对第i个特征值的对数值进行极小极大值法处理,其是通过获取所有评论信息的第i个特征值的对数值,并根据所有的第i个特征值的对数值,对单条评论信息的第i个特征值的对数值进行极大极小值处理,以对单个维度的特征值的量纲进行统一。wi为第i个特征值的预设加权值,其可以人为设定,同一产品不同特征值可以设置不同的预设加权值,不同产品对于同一特征值的预设加权值可以设置成不同数值。
S103.根据该评论时间确定每条该评论信息的时间衰减值。
其中,可以先计算当前时间与评论时间之间的差值,根据该差值来确定时间衰减值,比如,时间衰减值gravitytime的计算公式可以如下:
g=e-△t*α,
其中,△t为当前时间与评论时间之间的差值,α为人为设定的固定值。
S104.根据该热度值和时间衰减值对该多条评论信息进行排序。
其中,上述步骤S104具体可以包括:
计算每条该评论信息对应的热度值和时间衰减值之间的乘积,得到推荐度;
按照该推荐度的数值大小对该多条评论信息进行排序。
本实施例中,可以按照推荐度从高到低的顺序对这些评论信息进行排序,由于该推荐度的计算结合了多个特征维度,从而可以确保评论排序列表的多样性,不仅能避免早期有价值评论被沉入底部,还能避使新发表评论有足够曝光机会。
其中,单条评论信息的推荐度Score计算公式可以为:
Score=H*gravitytime,其中,H为上述热度值,gravitytime为上述时间衰减值。
此外,上述步骤S104之后,该评论信息排序方法还可以包括:
S105.利用预设分类模型确定每条该评论信息的低质量分类标签;
S106.根据该低质量分类标签对排序后的该多条评论信息进行位置调整;
S107.在该已发表文章的评论界面上显示调整后的该多条评论信息。
其中,该预设分类模型可以是Bert(Bidirectional Encoder Representationsfrom Transformers)模型,低质量分类标签可以包括广告评论、谩骂评论和低俗评论等,不同低质量分类标签可以对应设置不同的调整幅度,通过各自的调整幅度对已经排序的评论信息的位置进行优化调整,以降低劣质内容的评论信息的排序位置。换言之,请参见图8,本实施例中的评论信息排序方法可以包括3个计算模块:特征计算模块、粗排模块和精排优化模块,其中,特征计算模块用于计算上述各种特征值,粗排模块用于根据特征值计算出推荐度,并基于推荐度对评论信息进行粗略排序,精排优化模块用于确定低质量分类标签,并基于低质量分类标签对粗略排序后的评论信息进行位置调整。
由上述可知,本申请提供的评论信息排序方法,通过获取已发表内容的多条评论信息、以及每条该评论信息的用户互动信息,该评论信息包括评论内容和评论时间,并根据该评论信息、该用户互动信息和该已发表内容确定每条该评论信息的热度值,之后根据该评论时间确定每条该评论信息的时间衰减值,并根据该热度值和时间衰减值对该多条评论信息进行排序,从而能综合考虑评论信息的新颖度、热度和评论时间等因素,确保评论排序列表的多样性,不仅能避免早期有价值评论被沉入底部,还能避使新发表评论有足够曝光机会,提高了评论排序效果。
根据上述实施例所描述的方法,本实施例将从评论信息排序装置的角度进一步进行描述,该评论信息排序装置具体可以作为独立的实体来实现,也可以集成在服务器中,该服务器可以是网络平台的后台服务器,该网络平台可以主要用于向网络用户展示多媒体产品,比如短视频、视频、文章等。
请参阅图9,图9具体描述了本申请实施例提供的评论信息排序装置,该评论信息排序装置可以包括:获取模块10、第一确定模块20、第二确定模块30和排序模块40,其中:
(1)获取模块10
获取模块10,用于获取已发表内容的多条评论信息、以及每条该评论信息的用户互动信息,该评论信息包括评论内容和评论时间。
其中,该已发表内容主要指网络用户在网络平台上已经发表的内容,比如已经发表的视频或文章等,网络用户指在网络平台上注册和/或登录的用户。该评论信息指任意网络用户对已发表内容进行评论操作时产生的信息,其主要表现为文字形式。该用户互动信息指任意网络用户对已发表内容进行互动操作时产生的信息,该互动操作包括点赞、回复和/或转发等。
(2)第一确定模块20
第一确定模块20,用于根据该评论信息、该用户互动信息和该已发表内容确定每条该评论信息的热度值。
其中,该热度值的计算综合考虑了多个参考特征,比如内容特征和互动特征,该内容特征主要反映评论内容本身,该互动特征主要反映各个网络用户针对评论展开的互动情况,每个参考特征可以包括至少一个数值。
例如,请参见图10,该第一确定模块20具体可以包括第一确定单元21、第二确定单元22和第三确定单元23,其中:
第一确定单元21,用于根据该评论内容和该已发表内容确定每条该评论信息的内容特征;
例如,该第一确定单元21具体用于:
确定每条该评论内容和该已发表内容之间的相关度;
确定每条该评论内容中的实体词数量、以及每条该评论内容的字符长度;
将该相关度、该实体词数量和该字符长度作为对应评论信息的内容特征。
其中,该相关度体现了评论内容和已发表内容之间的相似性,通常,相似性越高的评论内容,其价值越大。实体词的数量体现了评论内容的饱满性,实体词越多,内容越饱满,价值越大。具体的,可以通过NER(Named Entity Recognization,命名实体识别)模型识别评论内容中实体词的数量,该NER模型可以是多个模型组合,比如LSTM(Long Short-TermMemory,长短期记忆)模型+CRF(Conditional Random Field,条件随机场)模型。在计算评论内容的字符长度时,考虑到重复内容的贡献价值不大,可以先对评论内容进行去重复处理,去掉重复的词组或短语,之后再统计剩余内容的字符个数,得到字符长度。
进一步地,该第一确定单元21具体用于:
基于预设的主题模型确定每条该评论内容对应的第一主题向量、以及该已发表内容对应的第二主题向量;
确定该第二主题向量和每个该第一主题向量之间的分布距离,以得到对应评论内容和该已发表内容之间的相关度。
其中,当该已发表内容为视频或动漫等非文字形式的内容时,可以先确定其对应的文字内容,比如将视频简介、动漫简介等作为该已发表内容的文字内容,或者对视频或动漫的语音、字幕等进行识别,将识别内容作为文字内容。
该预设的主题模型可以包括LDA(Latent Dirichlet Allocation,隐含狄利克雷分布)模型,当得到已发表内容的文字内容后,可以通过LDA模型分别对已发表内容的文字内容和评论内容进行识别,得到各自对应的主题向量(即第一主题向量和第二主题向量),之后,可以通过J-S散度(Jensen-Shanno divergence,JSD)算法计算第一主题向量和第二主题向量之间的分布距离,以确定已发布内容和评论内容之间的相关度,或者,也可以通过其他相似度算法来计算两者之间的相关度,比如余弦距离等。
其中,对于第一主题向量P,第二主题向量Q,两者之间的分布距离JSD(P||Q)计算公式如下:
M=(P+Q)/2,
其中,D(P||Q)为PQ散度(Kullback-Leible divergence,KLD)或相对熵,D(P||M)为PM散度,D(Q||M)为QM散度。
第二确定单元22,用于根据该用户互动信息确定每条该评论信息的互动特征。
例如,该用户互动信息包括对该评论信息的点赞次数、以及由该评论信息引出的回复次数和点赞次数,该第二确定单元22具体用于:
根据该由该评论信息引出的回复次数确定该评论信息的评论树复杂度;
根据该由该评论信息引出的点赞次数确定该评论信息的评论树点赞次数;
将该对该评论信息的点赞次数、该评论树复杂度和该评论树点赞次数作为对应评论信息的互动特征。
其中,由评论信息引出的回复次数(或点赞次数)包括已发表内容下所有回复操作(或点赞操作)的次数,其包括网络用户对该评论信息的回复次数(点赞次数)、以及网络用户对回复信息的回复次数(点赞次数)。
比如,请参见图4,假设已发表文章下有10条评论信息,其中,其他网络用户对某条评论信息a回复了4次、点赞了2次,且其他网络用户对其中1条回复信息回复了3次、点赞了3次,则对评论信息的点赞次数为2次,由评论信息引出的点赞次数为2+3=5次,由评论信息引出的回复次数为4+3=7次。
评论树是指单条评论信息下多个网络用户的互动操作形成的树形结构,比如单条评论信息有多个点赞和回复,有些回复下又有点赞和回复,回复的回复下又存在点赞和回复,这种层级形式形成了评论树,评论树复杂度反映了单条评论信息所引出的互动操作的丰富性,通常,评论树复杂度越大,网络用户参与的点赞、回复、转发等互动操作越多。该评论树复杂度(或评论树点赞次数)可以直接等于评论信息引出的回复次数(或点赞次数),当然,也可以结合其他信息来确定评论树复杂度,比如结合转发次数、回复用户的知名度等,并通过加权方法确定评论树复杂度。
需要说明的是,除了将一些与用户点赞相关的数值作为互动特征之外,还可以将一些与其他互动操作有关的数值作为互动特征,比如转发次数。
第三确定单元23,用于根据该互动特征和该内容特征确定每条该评论信息的热度值。
其中,可以直接根据互动特征和内容特征计算热度值,还可以结合其他维度特征,比如用户特征,来计算热度值,此时,该评论信息还可以包括评论用户,该第一确定模块20还包括第四确定单元24,用于:
在该第三确定单元23根据该互动特征和该内容特征确定每条该评论信息的热度值之前,执行下述步骤S1024-S1025,其中:
S1024.确定网络用户集中每个网络用户相对其他网络用户的历史互动信息,该网络用户集中包括该评论用户。
其中,网络用户集是在网络平台上注册和/或登录的所有网络用户的集合,其包括文章、视频或动漫的发表用户,参与过评论的评论用户,参与过互动(比如点赞、回复)的互动用户等。该历史互动信息主要指网络用户彼此间发生过互动操作时产生的信息,比如该互动操作可以是彼此间的点赞、回复、转发等。
S1025.根据该历史互动信息确定每个该评论用户的用户特征。
其中,该用户特征主要反映评论用户本身,其可以包括至少一个数值,不同数值从不同的衡量角度得到,比如可以考虑用户与用户间的互动关联性来得到用户特征,或者考虑用户自身的互动行为来得到用户特征。
例如,当考虑用户自身的互动行为来得到用户特征时,该历史互动信息可以包括历史总点赞次数,在执行上述步骤S1025时,该第四确定单元24具体可以用于:
对每个该网络用户对应的历史总点赞次数进行累加,得到网络总点赞次数;
根据每个该网络用户对应的历史总点赞次数,对该网络用户进行排序;
根据该网络总点赞次数和排序后的该网络用户,确定每个该评论用户所属的用户等级;
根据每个该评论用户所属的用户等级,确定对应的点赞权重值,并将该点赞权重值作为用户特征。
本实施例中,考虑到不同网络用户的点赞行为习惯不同,相对于经常点赞的用户来说,珍惜点赞行为的用户其点赞的价值往往更高,基于此,可以记录历史时段内所有网络用户的点赞行为,并统计每个网络用户的历史总点赞次数、以及网络总点赞次数,之后,按照点赞次数越多,网络用户排位越靠后的规则对所有网络用户进行排序,并依照排序顺序对网络总点赞次数N等分,不同等分的网络用户设置不同的用户等级,不同用户等级设置不同的点赞权重值,通常,排位越靠前的等分段对应的网络用户,用户等级越高,点赞权重值越大。
请参见条状图图5,假设将网络总点赞次数分成10等分,比如10%、20%.….100%,也即分成10个用户等级,用户等级越高,网络用户的点赞次数越少,从图5可知,按照用户等级从低到高的顺序,每个等分对应的网络用户数量依次为:21、70、173…100000,容易得知,用户等级越高的等分,对应的网络用户数量越少。
另外,当考虑用户与用户间的互动关联性来得到用户特征时,该历史互动信息可以包括历史点赞或回复关系,在执行上述步骤S1025时,该第四确定单元24具体可以用于:
以该历史点赞或回复关系为边、以该网络用户为节点,构造网络节点图;
根据预设的用户等级算法和该网络节点图,确定每个该评论用户的节点权重值,并将该节点权重值作为用户特征。
其中,可以以网络平台上所有网络用户为节点,以网络用户与网络用户之间的点赞或回复关系为边构造网络节点图,比如,假设存在网络用户A-F,其中,网络用户A向B、C、D点过赞,B向C点过赞,C向D点过赞,D向B、C、F点过赞,E向F点过赞,则若以点赞关系为边,网络用户为节点构造网络节点图,得到的网络节点图为图6。
该预设的用户等级算法可以为PeopleRank算法,通过PeopleRank算法可以计算网络节点图中每个节点的权重值,也即得到每个网络用户的权重值,从中选出评论用户的权重值作为用户特征即可。
与此同时,在执行上述步骤S1023时,该第三确定单元23具体可以用于:根据该用户特征、该互动特征和该内容特征确定每条该评论信息的热度值。
进一步地,该第三确定单元23具体用于:
对该用户特征、该互动特征和该内容特征分别进行对数化处理;
利用极小极大值法,对对数化处理后的该用户特征、该互动特征和该内容特征进行归一化处理,得到归一化数值;
根据预设加权值,对每条该评论信息对应的归一化数值进行加权求和处理,得到对应热度值。
本实施例中,任一评论信息的热度值H的计算公式可以为:
H=∑iwi*min maxregression log(factori)
其中,factori为第i个特征值,其是单条评论信息对应的上述所有特征的特征值中的任意一个,例如,请参见图7,可以将单条评论信息的特征分成三个类型:内容特征、互动特征和用户特征,其中,内容特征包括相关度、实体词数量和字符长度这3个特征值,互动特征包括对评论信息的点赞次数、评论树复杂度和评论树点赞次数这3个特征值,用户特征包括节点权重值或和赞权重值这3个特征值,factori为这些特征值中的任意一个,每个特征值的计算方法可参见上述步骤。
log(factori)为对第i个特征值取对数值,min maxregression log(factori)为对第i个特征值的对数值进行极小极大值法处理,其是通过获取所有评论信息的第i个特征值的对数值,并根据所有的第i个特征值的对数值,对单条评论信息的第i个特征值的对数值进行极大极小值处理,以对单个维度的特征值的量纲进行统一。wi为第i个特征值的预设加权值,其可以人为设定,同一产品不同特征值可以设置不同的预设加权值,不同产品对于同一特征值的预设加权值可以设置成不同数值。
(3)第二确定模块30
第二确定模块30,用于根据该评论时间确定每条该评论信息的时间衰减值。
其中,可以先计算当前时间与评论时间之间的差值,根据该差值来确定时间衰减值,比如,时间衰减值gravitytime的计算公式可以如下:
g=e-△t*α,
其中,△t为当前时间与评论时间之间的差值,α为人为设定的固定值。
(4)排序模块40
排序模块40,用于根据该热度值和时间衰减值对该多条评论信息进行排序。
其中,该排序模块40具体用于:
计算每条该评论信息对应的热度值和时间衰减值之间的乘积,得到推荐度;
按照该推荐度的数值大小对该多条评论信息进行排序。
本实施例中,可以按照推荐度从高到低的顺序对这些评论信息进行排序,由于该推荐度的计算结合了多个特征维度,从而可以确保评论排序列表的多样性,不仅能避免早期有价值评论被沉入底部,还能避使新发表评论有足够曝光机会。
其中,单条评论信息的推荐度Score计算公式可以为:
Score=H*gravitytime,其中,H为上述热度值,gravitytime为上述时间衰减值。
此外,该评论信息排序装置还包括调整显示模块50,用于:
在该排序模块40根据该热度值和时间衰减值对该多条评论信息进行排序之后,利用预设分类模型确定每条该评论信息的低质量分类标签;
根据该低质量分类标签对排序后的该多条评论信息进行位置调整;
在该已发表文章的评论界面上显示调整后的该多条评论信息。
其中,该预设分类模型可以是Bert(Bidirectional Encoder Representationsfrom Transformers)模型,低质量分类标签可以包括广告评论、谩骂评论和低俗评论等,不同低质量分类标签可以对应设置不同的调整幅度,通过各自的调整幅度对已经排序的评论信息的位置进行优化调整,以降低劣质内容的评论信息的排序位置。换言之,请参见图8,本实施例中的评论信息排序方法可以包括3个计算模块:特征计算模块、粗排模块和精排优化模块,其中,特征计算模块用于计算上述各种特征值,粗排模块用于根据特征值计算出推荐度,并基于推荐度对评论信息进行粗略排序,精排优化模块用于确定低质量分类标签,并基于低质量分类标签对粗略排序后的评论信息进行位置调整。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
由上述可知,本实施例提供的评论信息排序装置,通过获取模块10获取已发表内容的多条评论信息、以及每条该评论信息的用户互动信息,该评论信息包括评论内容和评论时间,第一确定模块20根据该评论信息、该用户互动信息和该已发表内容确定每条该评论信息的热度值,之后第二确定模块30根据该评论时间确定每条该评论信息的时间衰减值,排序模块40根据该热度值和时间衰减值对该多条评论信息进行排序,从而能综合考虑评论信息的新颖度、热度和评论时间等因素,确保评论排序列表的多样性,不仅能避免早期有价值评论被沉入底部,还能避使新发表评论有足够曝光机会,提高了评论排序效果。
相应的,本发明实施例还提供一种评论信息排序系统,包括本发明实施例所提供的任一种评论信息排序装置,该评论信息排序装置可以集成在服务器中。
其中,服务器可以获取已发表内容的多条评论信息、以及每条该评论信息的用户互动信息,该评论信息包括评论内容和评论时间;
根据该评论信息、该用户互动信息和该已发表内容确定每条该评论信息的热度值;
根据该评论时间确定每条该评论信息的时间衰减值;
根据该热度值和时间衰减值对该多条评论信息进行排序。
以上各个设备的具体实施可参见前面的实施例,在此不再赘述。
由于该评论信息排序系统可以包括本发明实施例所提供的任一种评论信息排序装置,因此,可以实现本发明实施例所提供的任一种评论信息排序装置所能实现的有益效果,详见前面的实施例,在此不再赘述。
相应的,本申请实施例还提供一种服务器,如图11所示,该服务器可以包括射频(RF,Radio Frequency)电路601、包括有一个或一个以上计算机可读存储介质的存储器602、输入单元603、显示单元604、传感器605、音频电路606、无线保真(WiFi,WirelessFidelity)模块607、包括有一个或者一个以上处理核心的处理器608、以及电源609等部件。本领域技术人员可以理解,图11中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路601可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器608处理;另外,将涉及上行的数据发送给基站。通常,RF电路601包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM,Subscriber Identity Module)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此外,RF电路601还可以通过无线通信与网络和其他设备通信。该无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GSM,Global System of Mobile communication)、通用分组无线服务(GPRS,GeneralPacket Radio Service)、码分多址(CDMA,Code Division Multiple Access)、宽带码分多址(WCDMA,Wideband Code Division Multiple Access)、长期演进(LTE,Long TermEvolution)、电子邮件、短消息服务(SMS,Short Messaging Service)等。
存储器602可用于存储软件程序以及模块,处理器608通过运行存储在存储器602的软件程序以及模块,从而执行各种功能应用以及评论信息排序。存储器602可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器602可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器602还可以包括存储器控制器,以提供处理器608和输入单元603对存储器602的访问。
输入单元603可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元603可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器608,并能接收处理器608发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元603还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元604可用于显示由用户输入的信息或提供给用户的信息以及服务器的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元604可包括显示面板,可选的,可以采用液晶显示器(LCD,Liquid CrystalDisplay)、有机发光二极管(OLED,OrganicLight-Emitting Diode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器608以确定触摸事件的类型,随后处理器608根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图11中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。
服务器还可包括至少一种传感器605,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板的亮度,接近传感器可在服务器移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于服务器还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路606、扬声器,传声器可提供用户与服务器之间的音频接口。音频电路606可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路606接收后转换为音频数据,再将音频数据输出处理器608处理后,经RF电路601以发送给比如另一服务器,或者将音频数据输出至存储器602以便进一步处理。音频电路606还可能包括耳塞插孔,以提供外设耳机与服务器的通信。
WiFi属于短距离无线传输技术,服务器通过WiFi模块607可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图11示出了WiFi模块607,但是可以理解的是,其并不属于服务器的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器608是服务器的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器602内的软件程序和/或模块,以及调用存储在存储器602内的数据,执行服务器的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器608可包括一个或多个处理核心;优选的,处理器608可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器608中。
服务器还包括给各个部件供电的电源609(比如电池),优选的,电源可以通过电源管理系统与处理器608逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源609还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,服务器还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,服务器中的处理器608会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器602中,并由处理器608来运行存储在存储器602中的应用程序,从而实现各种功能:
获取已发表内容的多条评论信息、以及每条该评论信息的用户互动信息,该评论信息包括评论内容和评论时间;
根据该评论信息、该用户互动信息和该已发表内容确定每条该评论信息的热度值;
根据该评论时间确定每条该评论信息的时间衰减值;
根据该热度值和时间衰减值对该多条评论信息进行排序。
该服务器可以实现本申请实施例所提供的任一种评论信息排序装置所能实现的有效效果,详见前面的实施例,在此不再赘述。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,RandomAccess Memory)、磁盘或光盘等。
以上对本发明实施例所提供的一种评论信息排序方法、装置、存储介质和服务器进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。