本发明涉及计算机软件技术领域,特别是涉及一种方面挖掘模型的训练方法、装置及电子设备。
背景技术
目前,一些评分网站常常设置有针对于各个商家对象的商家评价,其中,针对于任一商家对象的商家评价中包括:商家总评分、针对于多个评价方面的方面评分和针对于该商家对象的多条评论信息等,每条评论信息包括:用户的标识、用户对该商家对象的评论文本和用户总评分,商家总评分是根据多个用户总评分确定的。举例而言,对于饭店商家而言,多个评价方面可以包括但不局限于:服务、环境和口味。
当消费者想要选择商家对象去消费时,可以将评分网站上的商家评价作为参考。不同的消费者在选择商家对象时注重的评价方面可能不同,因此,商家评价中的方面评分对消费者来说具有重要的参考意义。由于用户在对商家对象进行评价时,对各个评价方面的打分具有一定的随意性,因此,为了提高商家对象的方面评分的准确性,通常会根据多个用户针对商家对象的评论信息对该商家对象的方面评分进行确定。这里的用户是指曾经去过该商家消费过的用户。
现有技术中,针对评价方面的方面评分的确定方法是根据商家评价中的用户总评分和评论文本建立方面挖掘模型,进而利用该模型确定方面评分。然而,在实际情况中,评分网站中存在复杂的用户、评论文本和商家对象之间的关系,并影响确定的方面评分的准确性。因此,亟需一种新的方面挖掘模型训练方法,可以考虑到上述复杂的关系,进而提高确定的方面评分的准确性。
技术实现要素:
本发明实施例的目的在于提供一种方面挖掘模型的训练方法、装置及电子设备,以提高确定的方面评分的准确性。具体技术方案如下:
第一方面,本发明实施例提供了一种方面挖掘模型的训练方法,所述方法包括:
获得多条针对商家对象的评论信息,其中,每条评论信息包括:用户的标识、商家对象的标识、所述用户对所述商家对象的评论文本和用户总评分;
确定各个评论文本中的评论词组与评价方面的目标对应关系,其中,所述评论词组包括一个先行词和一个修饰词,所述先行词为:表示评价方面的词,所述修饰词为:表示用户情绪的词;
确定所述多条评论信息中的用户评论关系和商家评论关系,其中,所述用户评论关系为:关于用户总评分、用户的标识及评论文本的对应关系,所述商家评论关系为:关于用户总评分、商家对象及评论文本的对应关系;
利用预设的函数优化公式,优化预设的损失函数;其中,所述损失函数为关于方面评分的取值范围、所述用户总评分、所述目标对应关系、所述用户评论关系和所述商家评论关系的函数;所述方面评分的取值范围为基于预设的评分取值范围和预设的评分偏差所确定的;
在所述损失函数优化完成后,将所述用户总评分和所述目标对应关系作为输入内容,对方面挖掘模型进行训练,直至通过所述损失函数所计算出的损失值低于预设阈值时,完成所述方面挖掘模型的训练;其中,所述方面挖掘模型为用于确定商家对象的各个评价方面对应的评价分数的模型
第二方面,本发明实施例提供了一种商家对象方面评分的确定方法,所述方法包括:
获得多条针对待确定方面评分的商家对象的测试信息,其中,每条测试信息包括:一条评论文本和该评论文本所对应的用户总评分;
确定各个评论文本中的评论词组与评价方面的目标对应关系;
将所述测试信息与所述目标对应关系输入到预先训练完成的方面挖掘模型中进行检测,得到所述商家对象各评价方面的方面评分;其中,所述方面挖掘模型通过第一方面提供的一种方面挖掘模型的训练方法中任一项所述的方法训练得到。
第三方面,本发明实施例提供了一种方面挖掘模型的训练装置,所述装置包括:
样本获得模块,用于获得多条针对商家对象的评论信息,其中,每条评论信息包括:用户的标识、商家对象的标识、所述用户对所述商家对象的评论文本和用户总评分;
第一关系确定模块,用于确定各个评论文本中的评论词组与评价方面的目标对应关系,其中,所述评论词组包括一个先行词和一个修饰词,所述先行词为:表示评价方面的词,所述修饰词为:表示用户情绪的词;
第二关系确定模块,用于确定所述多条评论信息中的用户评论关系和商家评论关系,其中,所述用户评论关系为:关于用户总评分、用户的标识及评论文本的对应关系,所述商家评论关系为:关于用户总评分、商家对象及评论文本的对应关系;
函数优化模块,用于利用预设的函数优化公式,优化预设的损失函数;其中,所述损失函数为关于方面评分的取值范围、所述用户总评分、所述目标对应关系、所述用户评论关系和所述商家评论关系的函数;所述方面评分的取值范围为基于预设的评分取值范围和预设的评分偏差所确定的;
模型训练模块,用于在所述损失函数优化完成后,将所述用户总评分和所述目标对应关系作为输入内容,对方面挖掘模型进行训练,直至通过所述损失函数所计算出的损失值低于预设阈值时,完成所述方面挖掘模型的训练;其中,所述方面挖掘模型为用于确定商家对象的各个评价方面对应的评价分数的模型。
第四方面,本发明实施例提供了一种商家对象方面评分的确定装置,所述装置包括:
信息获得模块,用于获得多条针对待确定方面评分的商家对象的测试信息,其中,每条测试信息包括:一条评论文本和该评论文本所对应的用户总评分;
对应关系确定模块,用于确定各个评论文本中的评论词组与评价方面的目标对应关系;
评分获得模块,用于将所述测试信息与所述目标对应关系输入到预先训练完成的方面挖掘模型中进行检测,得到所述商家对象各评价方面的方面评分;其中,所述方面挖掘模型通过第一方面提供的一种方面挖掘模型的训练方法中任一项所述的方法训练得到。
第五方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第一方面提供的一种方面挖掘模型的训练方法的方法步骤。
第六方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第二方面提供的一种商家对象方面评分的确定方法的方法步骤。
第七方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质为服务器中的存储介质,其中存储有计算机程序,所述计算机程序被处理器执行时,实现上述第一方面提供的一种方面挖掘模型的训练方法的方法步骤。
第八方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质为服务器中的存储介质,其中存储有计算机程序,所述计算机程序被处理器执行时,实现上述第二方面提供的一种商家对象方面评分的确定方法的步骤。
以上可见,本发明实施例提供的方案,在获得训练样本之后,根据训练样本中评论文本、用户总评分以及用户的标识和商家对象的标识,可以确定用户评论关系和商家评论关系。训练方面挖掘模型时,方面挖掘模型不仅可以学习商家评论中的用户总评分和评论文本间的关系,同时还可以学习评分网站中存在的复杂的用户、评论文本和商家对象之间的关系。因此,训练得到的方面挖掘模型可以学习到更多更有效的特征,进而,提高基于方面挖掘模型确定的商家对象的方面评分的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种方面挖掘模型的训练方法的流程示意图;
图2为本发明实施例提供的一种商家对象方面评分的确定方法的流程示意图;
图3为本发明实施例提供的一种方面挖掘模型的训练装置的结构示意图;
图4为本发明实施例提供的一种商家对象方面评分的确定装置的结构示意图;
图5为本发明实施例提供的一种电子设备的结构示意图;
图6为本发明实施例提供的另一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前,评分网站上设置有针对各个商家对象的商家评价,用户在去某商家消费之后,可以在评分网站上对该商家对象进行评价。针对任一商家对象的商家评价中可以包括:商家总评分、针对各个评价方面的商家方面评分以及各个用户针对该商家对象的评论信息。具体的,各个用户针对该商家对象的评论信息可以包括:该用户针对该商家对象的用户总评分、该用户针对该商家对象的各个评价方面的用户方面评分和该用户针对该商家对象的评论文本。
需要说明的是,用户针对商家对象的用户总评分是用户根据自身的消费体验对商家对象的总体评价的打分,每个商家对象的商家总评分是根据所有针对该商家对象的用户总评分确定的。
例如,共有10个用户针对商家对象a进行评价,这10个用户针对商家对象a的用户总评分分别为:4.5、3、3.5、5、4、4、4.5、2.5、5、4,则商家对象a的商家总评分可以是上述10个用户总评分的均值,即商家对象a的商家总评分可以为4。
用户针对商家对象的各个评价方面的用户方面评分是用户根据自身的消费体验对商家对象的各个评价方面的打分。具体的,不同类型的商家对象的各个评价方面可以不同。例如,对于饭店商家对象,其评价方面可以包括但不限于:服务、环境和口味,对于服装商家对象,其评价方面可以包括但不限于:质量、价位和服务。
用户针对商家对象的评论文本是用户根据自身的消费体验针对商家对象给出的一系列文本信息。
可以理解的,商家方面评分可以根据所有针对该商家对象的该评价方面的用户方面评分确定,例如,某个评价方面的商家方面评分可以为所有针对该评价方面的用户方面评分的均值。也可以根据商家评价中的商家总评分和各个用户针对该商家用户的评论文本建立方面挖掘模型,进而利用该方面挖掘模型确定方面评分。
然而由于用户针对商家对象的各个评价方面的打分具有一定随意性,且评分网站中存在复杂的用户、评论文本和商家对象之间的关系,这些关系对商家对象的商家方面评分具有影响,因此,上述方法中确定的商家对象的商家方面评分的准确性均较低。因此,亟需一种新的方面挖掘模型训练方法,可以考虑到上述复杂的关系,进而提高确定的方面评分的准确性。
为了解决现有技术中存在的问题,本发明实施例提供了一种方面挖掘模型的训练方法、装置及电子设备。
下面,首先对本发明实施例提供的一种方面挖掘模型的训练方法进行介绍。
本发明实施例所提供的一种方面挖掘模型的训练方法可以应用于任意电子设备,例如,可以手机、平板电脑、笔记本电脑、台式电脑等,在此不做具体限定。
图1为本发明实施例提供的一种方面挖掘模型的训练方法的流程示意图。如图1所示,本发明实施例所提供的一种方面挖掘模型的训练方法,可以包括如下步骤:
s101:获得多条针对商家对象的评论信息。
其中,每条评论信息包括:用户的标识、商家的标识、用户对商家对象的评论文本和用户总评分。
步骤s101中,电子设备可以直接从评分网站获得评论信息,例如,利用相关程序直接在评分网站中抓取评论信息;也可以接收与该电子设备通信连接的其他设备发送的评论信息,例如,接收评分网站的后台服务器发送的评论信息,该后台服务器与电子设备通信连接。
电子设备获得的每条评论信息中可以包括:该评论信息所对应的商家对象的标识、发出该评论信息的用户的标识、该用户对该商家对象的评论文本和用户总评分。
具体的,在本实施方式中,用户的标识可以是用户id,当然也可以是其他可以唯一标识一个用户的信息。商家对象的标识可以是商家对象的名称,也可以是商家对象的地址,当然还可以是其他可以唯一标识一个商家对象的信息,通过商家对象的标识,可以确定电子设备获得的多条评论信息中哪些评论信息是针对同一商家对象的,通过用户的标识,可以确定电子设备获得的多条评论信息中哪些评论信息是由同一用户发出的。进而,电子设备在执行步骤s103,确定用户评论关系和商家评论关系时,便可以利用上述用户的标识和商家对象的标识来对获得的多条评论信息进行分组,以便于更好地完成步骤s103。
需要说明的是,电子设备获得的评论信息的数量,可以根据实际应用中对确定的商家对象的方面评分的准确性的需求确定,当对准确性的需求较高时,电子设备获得的评论信息的数量就较多,反之,则较少。当然,针对每个商家对象,电子设备也可以获取评分网站中针对该商家对象的所有评论信息。
s102:确定各个评论文本中的评论词组与评价方面的目标对应关系。
其中,评论词组包括一个先行词和一个修饰词,先行词为:表示评价方面的词,修饰词为:表示用户情绪的词。
可以理解的,评论文本中可以包括具有评价意义的评论词组和不具有评价意义的内容;并且,任一评论词组是针对于一个评价方面的评论内容。因此,在获得评论信息后,电子设备可以对评论信息中的评论文本进行处理,确定各个评论文本中的评论词组与评价方面的目标对应关系,从而利用该目标对应关系进行后续的处理。
每个评论词组可以由一个先行词和一个修饰词构成。其中,先行词用于表示该先行词所属评论词组针对的评价方面。修饰词用来表示用户对该修饰词所属评论词组针对的评价方面的情绪。一个评论词组中,通过修饰词对先行词的修饰,就可以反映用户对该评论词组所针对的评价方面的评价程度。
例如,评论词组是“菜品a好吃”,该评论词组中的先行词是“菜品a”,表示该评论词组是针对口味这一评价方面的,该评论词组中的修饰词是“好吃”,表示用户对口味这一评价方面的情绪,该评论词组通过用“好吃”修饰“菜品a”,则可以反映用户对该商家对象的口味评价较高。
可选地,在一种具体实现方式中,上述步骤s102可以包括:
步骤a1:利用预设的语言处理工具,从各个评论文本中提取评论词组。
其中,语言处理工具可以是nlp(naturallanguageprocessing,自然语言处理)工具,也可以是nltk(naturallanguagetoolkit,自然语言处理工具包),还可以是其他可以从评论文本中提取评论词组的语言处理工具,对此本发明实施例不做具体限定。
步骤a2:针对每一评论词组,将该评论词组输入至预先训练完成的主题模型中进行检测,得到该评论词组与评价方面的目标对应关系。在从各个评论文本中提取评论词组后,电子设备可以将这些评论词组输入至预先训练完成的主题模型中进行检测,从而得到每个评论词组与评价方面目标对应关系。可以理解的,不同的评分网站提供的评价方面可以是不同的,因此,在预先训练主题模型时,可以针对不同的评分网站建立不同的主题模型,当然并不局限于此。主题模型的建立属于现有技术,这里不再赘述。
其中,该主题模型的输入内容可以为评论词组,输出内容可以为评论词组所对应的评价方面,进而可以建立评论词组与评价方面的目标对应关系。或者,该主题模型的输入内容可以为评论词组,输出内容可以为评论词组与评价方面的目标对应关系,从而得到评论词组与评价方面的目标对应关系。
需要强调的是,上述所给出的确定各个评论文本中的评论词组与评价方面的目标对应关系仅仅作为示例,并不应该构成对本发明实施例的限定。s104:确定多条评论信息中的用户评论关系和商家评论关系。
其中,用户评论关系为:关于用户总评分、用户的标识及评论文本的对应关系,商家评论关系为:关于用户总评分、商家对象及评论文本的对应关系。
可以理解的,电子设备获得的多条评论信息中可以包括多个不同的用户和多个不同的商家对象。
不同的用户在针对同一商家用户进行评价时,所关注的评价方面可以不同,进而,不同的用户针对同一商家用户的评论文本也可以不同;而对于同一用户来说,当其给出不同的用户总评分时,其关注的评价方面可以不同,这些不同的用户总评分对应的评论文本也可以不同。显然,用户总评分、用户以及评论文本之间的对应关系可以影响基于方面挖掘模型确定的商家用户方面评分的准确性。因此,电子设备可以确定所获得多个训练样本中的关于用户总评分、用户的标识及评论文本的对应关系,即用户评论关系。
同样的,不同的商家对象可以通过所具有的不同的评价方面的优势来吸引用户进行消费,对于饭店商家来说,西餐厅可以通过更好的就餐环境来吸引用户、中餐厅可以通过更美味的菜品来吸引用户等等,进而,这些不同的商家对象所获得的评论文本所侧重的评价方面也可以不同;而对于同一商家对象来说,当其获得的用户总评分不同时,该用户总评分对应的评论文本所侧重的评价方面也可以不同。显然,用户总评分、商家对象以及评论文本之间的对应关系可以影响基于方面挖掘模型确定的商家用户方面评分的准确性。因此,电子设备可以确定所获得的多个训练样本中关于用户总评分、商家对象及评论文本的对应关系,即商家评论关系。
也就是说,电子设备在获得多个评论信息后,可以执行步骤s103,确定确定多个训练样本中的用户评论关系和商家评论关系。
需要说明的是,上述步骤s102和步骤s103的执行顺序可以是先执行步骤s102,再执行步骤s103;也可以先执行步骤s103,再执行步骤s102;还可以是步骤s102和步骤s103同时执行,对此本发明实施例不做具体限定,只要步骤s102和步骤s103均在步骤s104之前执行即可。
可选地,在一种具体实现方式中,上述步骤s103可以包括:
步骤b1:针对每一用户的标识,从该标识对应的评论文本中,获取与各个第二类总评分对应的第一评论文本;
步骤b2:针对每一用户的标识,建立用户总评分与所对应的第一评论文本的对应关系,作为用户评论关系;
步骤b3:针对每一商家对象,从该商家对象对应的评论文本中,获取与每个用户总评分对应的第二评论文本;
步骤b4:针对每一商家对象,建立用户总评分与所对应的第二评论文本的对应关系,作为商家评论关系。
可以理解的,电子设备获得的训练样本中包括用户的标识以及该用户对商家对象的评论文本和用户总评分,因此,电子设备可以根据用户的标识对用户进行区分。进而,针对每一用户的标识,电子设备可以确定与该用户的标识对应的评论文本,在按照每条评论文本对应的用户总评分的不同,确定与每个用户总评分对应的第一评论文本,从而针对该用户的标识,建立用户总评分与所对应的第一评论文本的对应关系,作为用户评论关系。其中,用户评论关系可以通过表格的形式表示。如表1所示。
表1
同样的,电子设备获得的训练样本中包括针对商家对象的多条评论信息,也就是说,电子设备获得的训练样本包括针对不同商家的评论文本及其对应的用户总评分。因此,针对每一商家对象,电子设备可以在与该商家对象对应的评论文本中,按照用户总评分的不同,确定与每个用户总评分对应的第二评论文本,从而针对该商家对象,建立用户总评分与所对应的第二评论文本的对应关系,作为商家评论关系。其中,商家评论关系可以通过表格的形式表示,如表2所示。
表2
当然,用户评论关系和商家评论关系也可以通过其他的形式表示,对此,本实施方式不做具体限定。
需要说明的是,在本实施方式中,电子设备可以先确定用户评论关系,再确定商家评论关系;也可以先确定商家评论关系,再确定用户评论关系;还可以同时确定用户评论关系和商家评论关系,对此,本发明实施例不做具体限定。
s104:利用预设的函数优化公式,优化预设的损失函数。
其中,损失函数为关于方面评分的取值范围、用户总评分、目标对应关系、用户评论关系和商家评论关系的函数。
需要说明的是,方面评分的取值范围为基于预设的评分取值范围和预设的评分偏差所确定的。
其中,预设的评分取值范围为:所采用的用于对商家对象进行评分的评分制度所对应的评分取值范围,例如,评分制度为五分制时,所对应的评分取值范围为{1,2,3,4,5},评分制度为十分制时,所对应的评分取值范围为{1,2,3,4,5,6,7,8,9,10}等。
可选的,一种具体的实现方式中,上述步骤s102可以包括:
步骤c1:按照如下公式,计算与预设的评分取值范围内每个评分对应的方面评分:
rz=ri-bz
其中,rz为方面评分,ri为预设的评分取值范围内第i个评分,1≤i≤n,n为预设评分取值范围内评分的个数,bz为预设的评分偏差;
步骤c2:基于计算得到的与预设的评分取值范围内每个评分对应的方面评分,确定方面评分的取值范围。
例如,预设的评分取值范围为{1,2,3,4,5},即r1=1,r2=2,r3=3,r4=4,r5=5,预设的评分偏差bz=0.5
则对于每个ri,对应的rz分别为1-bz、2-bz、3-bz、4-bz、5-bz,1≤i≤5,即对于每个ri,对应的rz分别为0.5、1.5、2.5、3.5、4.5,进而,可以确定方面评分rz的取值范围为{0.5,1.5,2.5,3.5,4.5}。
可以理解的,在实际情况中,当用户对商家对象进行评价时,可以同时给出针对该商家对象的用户总评分和针对各个评价方面的方面评分。由于不同的用户对商家对象的不同的评价方面的关注度是不同的,因此,针对同一商家对象,用户给出的用户总评分和方面评分可以存在偏差的。
例如,针对一个存在环境、服务和口味三个评价方面的饭店商家,用户甲给出的用户总评分为4,而针对评价方面环境,给出的方面评分为5,针对评价方面服务,给出的方面评分为3,针对评价方面口味,给出的方面评分为4.5。
进而,针对同一商家对象,根据用户给出的用户总评分和方面评分,通过计算平均值的方法得到的商家总评分和商家方面评分之间也可以存在偏差。显然,这种偏差是可以存在于整个评分网站中的,因此,可以根据针对评分网络,根据评分网络中存在的各个用户针对不同的商家对象给出的用户总评分和方面评分,预先获得适用于整个评分网站的用户总评分与方面评分之间的偏差,即预设的评分偏差。
可以理解的,上述预设的评分偏差是通过评分网站中已存在的用户总评分和方面评分进行确定、用于训练方面挖掘模型的先验知识。
具体的,可以通过以下公式来计算上述预设的评分偏差:
其中,rd为针对评论文本d,用户给出的用户总评分,rd,z为针对评论文本d,用户给出的针对评价方面z的方面评分,|d|为从评分网站中获得的评论文本d的数量。需要说明的是,从评分网站中获得的评论文本d可以针对多个不同的商家对象,其具体数量可以根据实际应用中对商家对象的方面评分的准确性的需求确定,当准确性需求较高时,其数量可以较大,反之,可以较小,对此,本发明实施例不做具体限定。
在确定方面评分的取值范围、目标对应关系、用户评论关系、商家评论关系后,电子设备可以利用预设的函数优化公式,对预设的损失函数进行优化。为了行文清楚,将在后续对上述函数优化公式和损失函数进行具体说明。
s105:在损失函数优化完成后,将用户总评分和目标对应关系作为输入内容,对方面挖掘模型进行训练,直至通过损失函数所计算出的损失值低于预设阈值时,完成方面挖掘模型的训练。
其中,方面挖掘模型为用于确定商家对象的各个评价方面对应的评价分数的模型。
在损失函数优化完成后,电子设备可以将用户总评分和目标对应关系作为输入内容,对方面挖掘模型进行训练。在训练过程中,方面挖掘模型可以学习用户总评分和目标对应关系的特征,输出各个商家对象的各个评价方面的评价分数。经过大量用户总评分和目标对应关系的学习,方面挖掘模型逐步建立用户总评分、目标对应关系和各个商家对象的各个评价方面的评价分数的对应关系。进而,当通过损失函数所计算出的损失低于预设阈值时,完成方面挖掘模型的训练。
其中,预设阈值可以根据实际应用中对确定的商家对象方面评分的准确性的需求确定,当对准确性的需求较高时,预设阈值可以较低,反之,可以较高。
以上可见,本发明实施例提供的方案,在获得训练样本之后,根据训练样本中评论文本、用户总评分以及用户的标识和商家对象的标识,可以确定用户评论关系和商家评论关系。因此,训练方面挖掘模型时,方面挖掘模型不仅可以学习商家评论中的用户总评分和评论文本间的关系,同时还可以学习评分网站中存在的复杂的用户、评论文本和商家对象之间的关系。因此,训练得到的方面挖掘模型可以学习到更多更有效的特征,进而,提高基于方面挖掘模型确定的商家对象的方面评分的准确性。
下面对上述步骤s104中的损失函数进行举例说明。具体的,上述预设的损失函数可以为:
其中,f为损失函数,f1为第一子函数,f2为第二子函数,f3为第三子函数,λ为平衡参数,λ≥0。
第一子函数为:
其中,d为评论文本,l为评论词组,z为评价方面,rz为方面评分的取值范围内的方面评分,hl为评论词组中的先行词,ml为评论词组中的修饰词,θd,z为与评论文本d对应的评价方面z的分布,
可以理解的,θd,z可以表示各评论文本d属于各评价方面z的概率;
第二子函数为:
其中,r用户总评分,p(z|d,r)为用户总评分为r时,与评论文本d对应的方面评分z的分布,p(z|du,r)为针对每个用户u,用户总评分为r时,用户u的标识所对应的评论文本du对应的评价方面z的分布。
可以理解的,p(z|d,r)可以表示针对每个用户总评分r,对应于该用户总评分r的各评论文本d属于各评价方面z的概率;p(z|du,r)可以表示针对每个用户u,按照该用户u给出的用户总评分r对该用户u对应的评论文本du进行分组后,针对每个用户总评分r,属于该用户总评分r的评论文本du中,各评论文本du对应于各评价方面z的概率。
第三子函数为:
其中,p(z|sd,r)为针对每一商家对象s,用户总评分为r时,商家对象s的标识所对应的评论文本sd对应的评价方面z的分布。
可以理解的,p(z|sd,r)可以表示针对每个商家对象s,按照获得的用户总评分r对该商家对象s获得的评论文本sd进行分组后,针对每个用户总评分r,属于该用户总评分r的评论文本sd中,各评论文本sd对应于各评价方面z的概率。
下面对上述步骤s105中的函数优化公式进行举例说明。具体的,上述预设的函数优化公式可以为:
其中,t为迭代次数,t≥0,ξ为预设的步长因子。需要说明的是,当t=0时,函数优化公式不进行迭代。
其中,du,r为用户总评分为r时,用户u的标识所对应的评论文本的集合,|du,r|为用户u的标识所对应的评论文本的集合中评论文本的数量,du,r为du,r中的一个元素;
其中,ds,r为用户总评分为r时,商家对象s的标识所对应的评论文本的集合,|ds,r|为商家对象s的标识所对应的评论文本的集合中评论文本的数量,ds,r为ds,r中的一个元素。
需要说明的是,基于损失函数和函数优化公式,上述λ用于控制f1与f2+f3之间的平衡。具体的,可以通过吉布斯采样减少f1,此时f2和f3是固定的,也可以基于牛顿-拉夫逊更新公式减少f2和f3,此时,可以根据上述函数优化公式对p(z|d,r)进行更新,从而影响f1。根据迭代次数t,可以对p(z|d,r)进行更新,从而不断修正f1、f2和f3,进而使得到的损失函数能够更好的满足方面挖掘模型训练的需要。
进一步的,本发明实施例提供的方面挖掘模型的训练方法中,结合了主题建模和主题传播评论网络两部分,因此,上述损失函数综合考虑了主题建模和主题传播过程中的损失,其中f1表示主题建模过程中的极大似然估计,用于获得更好的文本建模,基于log取对数,为便于计算;f2和f3为主题传播部分的损失函数,分别用于保证用户和其所给出的评价文本的主题分布的一致性,商店和其获得的评价文本的主题分布一致性。λ用于平衡主题建模和主题传播评论网络两部分的损失。其中,f1、f2和f3可以同时增加或者同时减少,从而保证损失函数的优化方向的一致性。
可选的,p(z|d,r)与上述第一子函数中的θd,z相同。
可选的,当上述损失函数优化完成后,可以确定上述第一子函数中的
其中,h为评论词组l中的先行词,m为评论词组l中的修饰词。
需要说明的是,上述z′表示评论词组l所对应的商家对象的所有评价方面中的任一评价方面,z为对评论词组l进行预测后,最终确定的评论词组l所对应的评价方面。可以理解的,采用本发明实施例提供的方面挖掘模型的训练方法,训练得到的方面挖掘模型,不但可以确定商家对象方面评分,还可以识别评论词组所对应的评价方面和该评论词组l所对应的评价方面z的方面评分。
具体的,可以通过下面的公式计评论词组l所对应的评价方面z的方面评分:
其中,rl为该评论词组l所对应的评价方面z的方面评分。
可选的,基于上述损失函数和函数优化公式,具体的,上述方面挖掘模型,可以如下所示:
其中,
对应于上述方面挖掘模型的训练方法,本发明实施例还提供了一种商家对象方面评分的确定方法。
本发明实施例所提供的一种商家对象方面评分的确定方法可以应用于任意电子设备,例如,可以手机、平板电脑、笔记本电脑、台式电脑等,在此不做具体限定。为了描述方面,将用于确定商家对象方面评分的电子设备简称为评分电子设备。
图2为本发明实施例提供的一种商家对象方面评分的确定方法的流程示意图。如图2所示,本发明实施例所提供的一种商家对象方面评分的确定方法,可以包括如下步骤:
s201:获得多条针对待确定方面评分的商家对象的测试信息,其中,每条测试信息包括:一条评论文本和该评论文本所对应的用户总评分。
当需要对待确定方面评分的商家对象的方面评分进行确定时,评分电子设备可以获得该商家对象所对应的多条测试信息,每条测试信息中包括针对该待确定方面评分对象的一条评论文本和该评论文本所对应的用户总评分。评分电子设备可以在该商家对象所属的评分网站上获取上述信息,也可以接受与评分电子设备通信连接的其他电子设备发送的上述信息,这都是合理的。
s202:确定各个评论文本中的评论词组与评价方面的目标对应关系。
评分电子设备获得多条针对待确定方面评分的商家对象的测试信息后,可以确定上述各个评论文本中的评论词组与评价方面的目标对应关系。
其中,评论词组与上述一种方面挖掘模型的训练方法中的评论词组的含义相同,该目标对应关系的确定方法可以与上述步骤s102中的方法相同,再次不再赘述。
s203:将测试信息与目标对应关系输入到预先训练完成的方面挖掘模型中进行检测,得到商家对象各评价方面的方面评分。
其中,方面挖掘模型通过上述一种方面挖掘模型的训练方法训练得到。
在评分电子设备执行步骤s202确定目标对应关系后,评分电子设备可以将步骤s201中获得的多条测试信息中的用户总评分和步骤s202中所确定的目标对应关系输入预先训练完成的方面挖掘模型中进行检查。进而,该预先训练完成的方面挖掘模型可以输出该待确定方面评分的商家对象的各个评价方面对应的评价分数。
由于上述预先训练完成的方面挖掘模型是通过上述方面挖掘模型的训练方法训练得到的,也就是基于用户总评分和目标对应关系对方面挖掘模型进行训练,在训练过程中,该方面挖掘模型可以学习用户总评分和目标对应关系的特征,逐步建立用户总评分、目标对应关系和各个商家对象的各个评价方面的评价分数的对应关系,进而得到训练完成的方面挖掘模型。因此,训练得到的方面挖掘模型模型也就可以用于对待确定方面评分的商家对象所对应的用户总评分和目标对应关系进行检测,输出待确定方面评分的商家对象的各个评价方面对应的评价分数。
也就是在上述步骤s303中,方面挖掘模型在对待确定方面评分的商家对象所对应的用户总评分和目标对应关系进行检测时,根据用户总评分和目标对应关系的特征,根据已建立的用户总评分、目标对应关系和各个商家对象的各个评价方面的评价分数的对应关系,确定待确定方面评分的商家对象的各个评价方面对应的评价分数并输出,评分电子设备也就可以获得待确定方面评分的商家对象的各个评价方面对应的评价分数。
以上可见,本发明实施例提供的方案,通过预先训练完成的方面挖掘模型对待确定方面评分的商家对象的方面评分进行确定。由于在训练过程中,该方面挖掘模型不仅可以学习商家评论中的用户总评分和评论文本间的关系,同时还可以学习评分网站中存在的复杂的用户、评论文本和商家对象之间的关系使得该方面挖掘模型可以学习到更多更有效的特征。因此,在本发明实施例提供的方案中,基于该方面挖掘模型确定的商家对象的方面评分的准确性较高。
对应于上述一种方面挖掘模型的训练方法,本发明实施例还提供了一种方面挖掘模型的训练装置。
下面,对本发明实施例提供的一种方面挖掘模型的训练装置进行介绍。
图3为本发明实施例提供的一种方面挖掘模型的训练装置的机构示意图。如图3所示,本发明实施例所提供的一种方面挖掘模型的训练装置,可以包括如下模块:
样本获得模块310,获得多条针对商家对象的评论信息;
其中,每条评论信息包括:用户的标识、商家对象的标识、所述用户对所述商家对象的评论文本和用户总评分;
第一关系确定模块320,用于确定各个评论文本中的评论词组与评价方面的目标对应关系;
其中,评论词组包括一个先行词和一个修饰词,先行词为:表示评价方面的词,修饰词为:表示用户情绪的词;
第二关系确定模块330,用于确定多条评论信息中的用户评论关系和商家评论关系;
其中,用户评论关系为:关于用户总评分、用户的标识及评论文本的对应关系,商家评论关系为:关于用户总评分、商家对象及评论文本的对应关系。
函数优化模块340,用于利用预设的函数优化公式,优化预设的损失函数。
其中,损失函数为关于方面评分的取值范围、用户总评分、目标对应关系、用户评论关系和商家评论关系的函数;方面评分的取值范围为基于预设的评分取值范围和预设的评分偏差所确定的;
模型训练模块350,用于在损失函数优化完成后,将用户总评分和目标对应关系作为输入内容,对方面挖掘模型进行训练,直至通过损失函数所计算出的损失值低于预设阈值时,完成方面挖掘模型的训练;
其中,方面挖掘模型为用于确定商家对象的各个评价方面对应的评价分数的模型。
以上可见,本发明实施例提供的方案,在获得训练样本之后,根据训练样本中评论文本、用户总评分以及用户的标识和商家对象的标识,可以确定用户评论关系和商家评论关系。因此,训练方面挖掘模型时,方面挖掘模型不仅可以学习商家评论中的商家总评分和评论文本间的关系,同时还可以学习评分网站中存在的复杂的用户、评论文本和商家对象之间的关系。因此,训练得到的方面挖掘模型可以学习到更多更有效的特征,进而,提高基于方面挖掘模型确定的商家对象的方面评分的准确性。
作为本发明实施例的一种实施方式,上述装置还包括取值确定模块(图3中未示出),该取值确定模块(图3中未示出)用于基于预设的评分取值范围和预设的评分偏差,确定方面评分的取值范围。
上述取值确定模块可以包括:
取值计算子模块(图3中未示出),用于按照如下公式,计算与预设的评分取值范围内每个评分对应的方面评分:
rz=ri-bz
其中,rz为方面评分,ri为所述预设的评分取值范围内第i个评分,1≤i≤n,n为所述预设评分取值范围内评分的个数,bz为所述预设的评分偏差;
取值确定子模块(图3中未示出),用于基于与所述预设的评分取值范围内每个评分对应的方面评分,确定方面评分的取值范围。
作为本发明实施例的一种实施方式,上述第一关系确定模块320包括:
词组提取子模块(图3中未示出),用于利用预设的语言处理工具,从各个评论文本中提取评论词组;
目标关系确定子模块(图3中未示出),用于针对每一评论词组,将该评论词组输入至预先训练完成的主题模型中进行检测,得到该评论词组与评价方面的目标对应关系。
作为本发明实施例的一种实施方式,上述第二关系确定模块330包括:
第一文本获取子模块(图3中未示出),用于针对每一用户的标识,从该标识对应的评论文本中,获取与各个用户总评分对应的第一评论文本;
用户关系确定子模块(图3中未示出),用于针对每一用户的标识,建立用户总评分与所对应的第一评论文本的对应关系,作为用户评论关系;
第二文本获取子模块(图3中未示出),用于针对每一商家对象,从该商家对象对应的评论文本中,获取与每个用户总评分对应的第二评论文本;
商家关系确定子模块(图3中未示出),用于针对每一商家对象,建立用户总评分与所对应的第二评论文本的对应关系,作为商家评论关系。
作为本发明实施例的一种实施方式,上述预设的损失函数为:
其中,f为损失函数,f1为第一子函数,f2为第二子函数,f3为第三子函数,λ为平衡参数,λ≥0。
第一子函数为:
其中,d为评论文本,l为评论词组,z为评价方面,rz为所述方面评分的取值范围内的方面评分,hl为评论词组l中的先行词,ml为评论词组l中的修饰词,θd,z为与评论文本d对应的评价方面z的分布,
第二子函数为:
其中,r为用户总评分,p(z|d,r)为在用户总评分为r时,与评论文本d对应的方面评分z的分布,p(z|du,r)为针对每个用户u,用户总评分为r′时,用户u的标识所对应的评论文本du对应的评价方面z的分布;
第三子函数为:
其中,p(z|sd,r)为针对每一商家对象s,用户总评分为r时,商家对象s的标识所对应的评论文本sd对应的评价方面z的分布。
作为本发明实施例的一种实施方式,上述预设的函数优化公式为:
其中,t为迭代次数,t≥0,ξ为预设的步长因子;
其中,du,r为用户总评分为r时,用户u的标识所对应的评论文本的集合,|du,r|为所述用户u的标识所对应的评论文本的集合中评论文本的数量,du,r为du,r中的一个元素;
其中,ds,r为用户总评分为r时,商家对象s的标识所对应的评论文本的集合,|ds,r|为所述商家对象s的标识所对应的评论文本的集合中评论文本的数量,ds,r为ds,r中的一个元素。
作为本发明实施例的一种实施方式,上述方面挖掘模型,如下所示:
其中,
相应于上述一种商家对象方面评分的确定方法,本发明实施例还提供了一种商家对象方面评分的确定装置。
下面,对本发明实施例提供的一种商家对象方面评分的确定装置进行介绍。
图4为本发明实施例提供的一种商家对象方面评分的确定装置的结构示意图。如图4所示,本发明实施例所提供的一种商家对象方面评分的确定装置,可以包括如下模块:
信息获得模块410,用于获得多条针对待确定方面评分的商家对象的测试信息,其中,每条测试信息包括:一条评论文本和该评论文本所对应的用户总评分;
对应关系确定模块420,用于确定各个评论文本中的评论词组与评价方面的目标对应关系;
评分获得模块430,用于将测试信息与目标对应关系输入到预先训练完成的方面挖掘模型中进行检测,得到商家对象各评价方面的方面评分。
其中,方面挖掘模型通过上述一种方面挖掘模型的训练方法训练得到。
以上可见,本发明实施例提供的方案,通过预先训练完成的方面挖掘模型对待确定方面评分的商家对象的方面评分进行确定。由于在训练过程中,该方面挖掘模型不仅可以学习商家评论中的用户总评分和评论文本间的关系,同时还可以学习评分网站中存在的复杂的用户、评论文本和商家对象之间的关系使得该方面挖掘模型可以学习到更多更有效的特征。因此,在本发明实施例提供的方案中,基于该方面挖掘模型确定的商家对象的方面评分的准确性较高。
相应于上述一种方面挖掘模型的训练方法,本发明实施例还提供了一种电子设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现上述本发明实施例提供的一种方面挖掘模型的训练方法的方法步骤。
相应于上述一种商家对象方面评分的确定方法,本发明实施例还提供了一种电子设备,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
存储器603,用于存放计算机程序;
处理器601,用于执行存储器603上所存放的程序时,实现上述本发明实施例提供的一种商家对象方面评分的确定方法的方法步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
对应于上述本发明实施例提供的一种方面挖掘模型的训练方法,本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质为服务器中的存储介质,其中存储有计算机程序,该计算机程序被处理器执行时实现本发明实施例提供的一种方面挖掘模型的训练方法的方法步骤。
对应于上述本发明实施例提供的一种商家对象方面评分的确定方法,本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质为服务器中的存储介质,其中存储有计算机程序,该计算机程序被处理器执行时实现本发明实施例提供的一种方面挖掘模型的训练方法的方法步骤。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、电子设备实施例、计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。