基于对话的个人性格建模与生成方法及装置与流程

文档序号:15272026发布日期:2018-08-28 22:32阅读:277来源:国知局

本发明涉及数据处理技术领域,尤其涉及一种基于对话的个人性格建模与生成方法及装置。



背景技术:

为获取用户情感模型,相关技术中根据用户对话将人类的情感过程视为两层随机过程,通过调整模型的初始参数,构建具有不同性格特征的心理模型;同时将它作为情感引擎,以概率的形式预测情感过程的最终结果。然而,上述方法是基于统计模型规律实现的,仅能将用户情绪分为:悲伤、无表情和高兴,不太切合用户的实际生活。



技术实现要素:

本发明实施例提供了一种基于对话的个人性格建模与生成方法及装置,以解决相关技术中的不足。

第一方面,本发明提供了一种基于对话的个人性格建模与生成方法,所述方法包括:

获取指定用户的多条会话数据;

基于所述指定用户的参考情感转移序列和所述多条会话数据确定所述指定用户的多个实际情感转移序列;

基于所述指定用户的实际情感转移序列,根据所述指定用户的会话输入持续调整会话的答复,以刺激所述指定用户的情感向预期情感调整。

可选地,基于所述指定用户的参考情感转移序列和所述多条会话数据确定所述指定用户的多个实际情感转移序列的步骤之前,所述方法还包括:

获取指定用户的第一预设数量条会话数据;

利用支持向量机svm对所述第一预设数量条会话数据进行情感识别,得到第二预设数量种情感;

分别标记所述第二预设数量种情感的会话数据;

对所述第一预设数量条会话数据进行概率统计,得到所述指定用户的情感转移概率表和情感转移张量;

根据预设采样算法对情感转移概率分布进行采样,得到符合用户情感特征的参考情感转移序列;所述情感转移概率分布即所述情感转移概率表中对应的数据。

可选地,所述会话数据包括电视剧台词、电影台词或者不同语言会话网站的对话;所述第二预设数量种情感包括中性、开心、惊讶、伤心和生气。

可选地,所述情感转移分布张量采用以下形式表示:

{初始情感,刺激情感,生成情感,转移概率}。

可选地,所述预设采样算法为马尔科夫蒙特卡罗采样方法。

可选地,根据预设采样算法对情感转移概率分布进行采样,得到符合用户情感特征的参考情感转移序列:

基于采样会话长度的初始量,按照预设步长调整所述会话长度根据预设采样算法对情感转移概率分布进行采样,得到符合用户情感特征的参考情感转移序列。

第二方面,本发明提供了一种基于对话的个人性格建模与生成装置,所述装置包括:

会话数据获取模块,用于获取指定用户的多条会话数据;

实际情感序列确定模块,用于基于所述指定用户的参考情感转移序列和所述多条会话数据确定所述指定用户的多个实际情感转移序列;

用户情感调整模块,用于基于所述指定用户的实际情感转移序列,根据所述指定用户的会话输入持续调整会话的答复,以刺激所述指定用户的情感向预期情感调整。

可选地,所述装置还包括:

所述会话数据获取模块还用于获取指定用户的第一预设数量条会话数据;

情感识别模块,用于利用支持向量机svm对所述第一预设数量条会话数据进行情感识别,得到第二预设数量种情感;

会话数据标记模块,用于分别标记所述第二预设数量种情感的会话数据;

情感转移概率统计模块,用于对所述第一预设数量条会话数据进行概率统计,得到所述指定用户的情感转移概率表和情感转移张量;

情感转移分布采样模块,用于根据预设采样算法对情感转移概率分布进行采样,得到符合用户情感特征的参考情感转移序列;所述情感转移概率分布即所述情感转移概率表中对应的数据。

可选地,所述情感转移分布采样模块包括:

基于采样会话长度的初始量,按照预设步长调整所述会话长度根据预设采样算法对情感转移概率分布进行采样,得到符合用户情感特征的参考情感转移序列。

由上述技术方案可知,本发明实施例中先根据指定用户的多条会话数据和参考情感转移序列确定指定用户的多个实际情感转移序列;然后基于指定用户的实际情感转移序列,根据指定用户的会话输入持续调整会话的答复,以刺激所述指定用户的情感向预期情感调整。可见,本实施例中获取指定用户的实际情感转移序列,然后在会话过程中调整会话的答复,从而刺激该指定用户的情感朝着预期情感调整,从而提升用户的使用体验。并且,本实施例中可以根据用户的情感指导对话,提高会话的准确性和鲁棒性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。

图1为本发明一实施例提供的基于对话的个人性格建模与生成方法的方法流程示意图;

图2为本发明一实施例中提供的获取参考情感转移序列的方法流程示意图;

图3是本发明一实施例中采用svm对会话数据进行情感分类的流程示意图;

图4为本发明一实施例中mcmc采样原理示意图;

图5为《beforesunset》的采样情感转移序列图;

图6为本发明的个人性格建模与生成装置的框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1为本发明一实施例提供的基于对话的个人性格建模与生成方法的方法流程示意图。参见图1,该方法包括:

101,获取指定用户的多条会话数据。

102,基于所述指定用户的参考情感转移序列和所述多条会话数据确定所述指定用户的多个实际情感转移序列。

103,基于所述指定用户的实际情感转移序列,根据所述指定用户的会话输入持续调整会话的答复,以刺激所述指定用户的情感向预期情感调整。

由上述技术方案可知,本实施例中获取指定用户的实际情感转移序列,然后在会话过程中调整会话的答复,从而刺激该指定用户的情感朝着预期情感调整,从而提升用户的使用体验。并且,本实施例中可以根据用户的情感指导对话,提高会话的准确性和鲁棒性。

下面结合附图和实施例对本发明实施例提供的公众情感转移分布建模方法各步骤作详细描述。

首先,介绍101,获取指定用户的多条会话数据的步骤。

上述多条会话数据可以为1、10、100或者1000等,本领域技术人员可以根据具体场景进行设置,在此不作限定。

上述会话数据包括问句和答案。例如,问句“您吃饭了吗”,答案“我已经吃过了”,这是为一个会话数据。

本发明实施例中,利用相关技术中的爬虫技术从电视、网站等社交媒体获取多条会话数据。其中会话数据可以电视剧台词、电影台词或者不同语言会话网站的对话等。

其次,介绍102,基于所述指定用户的参考情感转移序列和所述多条会话数据确定所述指定用户的多个实际情感转移序列的步骤。

需要说明的是,本实施例中参考情感转移序列和实际情感转移序列可以采用以下形式表示:{初始情感,刺激情感,生成情感,转移概率}。其中,初始情感、刺激情感和生成情感的选项包括:中性、开心、惊讶、伤心和生气,对应的标签为:“0、1、2、3、4”。该情感转移分布张量的含义为:用户的初始情感为某一类情感,在受到外界面某一类情感的刺激情感时,用户的情感转移到生成情感的概率值。

本实施例中,获取指定用户的会话输入,然后基于上述参考情感转移序列和会话输入确定该指定用户的多个实际情感转移序列。例如,指定用户输入“您吃饭了吗”,则基于参考情感转移序列确定答复内容为“我已经吃过了”。

可理解的是,上述实际情感转移序列为指定用户当前会话情况下的真实情感。这样,本实施例中通过实时获取用户的当前情感,有利于提升使用体验。

最后,介绍103,基于所述指定用户的实际情感转移序列,根据所述指定用户的会话输入持续调整会话的答复,以刺激所述指定用户的情感向预期情感调整的步骤。

本实施例中,持续获取指定用户的会话输入,然后基于所述指定用户的实际情感转移序列调整所述会话输入对应的答复。可见,本实施例中根据用户的会话输入和实际情感转移序列调整会话的答复,可以刺激指定用户的情绪向着预期情绪调整,从而提升指定用户的会话体验。

可理解的是,步骤102和步骤103可以执行一次,也可以执行多次,在执行过程中实际情感转移序列可以不断更新,然后根据新的会话数据和实际情感转移序列继续调整会话的答复,从而慢慢调整会话的发展方向,以刺激指定用户的情感向预期情感调整。

需要说明的是,本发明实施例中在执行基于对话的个人性格建模与生成方法之前,需要先生成参考情感转移序列。如图2所示,获取参考情感转移序列的步骤包括:

首先,介绍201,获取社交媒体中第一预设数量条会话数据的步骤。

上述第一预设数量可以为1000、10000、100000等,本领域技术人员可以根据具体场景进行设置,在此不作限定。在一实施例中,第一预设数量为22172。

上述会话数据包括问句和答案。例如,问句“您吃饭了吗”,答案“我已经吃过了”,这是为一个会话数据。

本发明实施例中,利用相关技术中的爬虫技术从电视、网站等社交媒体获取第一预设数量条会话数据。其中会话数据可以电视剧台词、电影台词或者不同语言会话网站的对话等。

可见,本实施例中利用爬虫技术获取会话数据具有随机性,加之,社交媒体的对话或者台词也不针对特定用户,这样得到的会话数据更能够将人的情感转移的不确定性表示引入方法中,方便机器学习,从而可以克服计算语言学专家设计或编写对话方案,提高系统的可维护性。

其次,介绍202,利用支持向量机svm对所述第一预设数量条会话数据进行情感识别,得到第二预设数量种情感的步骤。

上述第二预设数量可以为3、4、5甚至更多,本领域技术人员可以根据具体进行设置。在一实施例中,第二预设数量为5种,即第二预设数量种情感可以为中性、开心、惊讶、伤心和生气。

本发明一实施例中利用支持向量机(svm)对上述第一预设数量条会话数据进行情感识别,即每条会话数据对应中性、开心、惊讶、伤心或者生气。svm对会话数据进行情感分类的具体过程见图2。将5类标签的会话数据进行文本向量化,进行特征选择,然后计算各特征的权重(tf*idf),最后进行模型训练和预测得到会话数据的分类结果。

可见,本发明实施例中通过支持向量机svm从会话数据进行情感分类,可以确保情感分类的准确性。

然后,介绍203,分别标记所述第二预设数量种情感的会话数据的步骤。

为方便后续定量计算,在本发明一实施例中利用标签“0、1、2、3、4”替代上述5种情感,即采用标签“0、1、2、3、4”分别标注“中性、开心、惊讶、伤心和生气”。

之后,介绍204,对所述第一预设数量条会话数据进行概率统计,得到情感转移概率表和情感转移张量的步骤。

上述情感转移分布张量采用以下形式表示:{初始情感,刺激情感,生成情感,转移概率}。其中,初始情感、刺激情感和生成情感的选项包括:中性、开心、惊讶、伤心和生气,对应的标签为:“0、1、2、3、4”。该情感转移分布张量的含义为:用户的初始情感为某一类情感,在受到外界面某一类情感的刺激情感时,用户的情感转移到生成情感的概率值。

在一实施例中对第一预设数量条对话数据进行概率统计,然后将各会话数据依次作为初始情感、刺激情感和生成情感,最终可以得到一个第二预设数量*第二预设数量*第二预设数量的情感转移概率表。在一实施例中,若第二预设数量为5,则情感转移概率表的大小为5*5*5。

最后,介绍205,根据预设采样算法对情感转移概率分布进行采样,得到符合用户情感特征的参考情感转移序列。

本实施例中,预设采样算法可以采用马尔科夫蒙特卡罗采样方法,该采样方法的采样过程包括:

其中0,...t,t+1是采样时的时间序列,x0...是采样序列,α(i,j)表示从状态i到状态j的接受率,物理意义可以理解为在原来的马氏链上,从状态i以q(i,j)的概率跳转到状态j的时候,以α(i,j)的概率接受这个转移。

如图3所示,马尔科夫蒙特卡罗采样方法的算法如下:

假设已有一个转移矩阵q(对应元素为q(i,j)),马氏链的初始状态指的是概率分布,如p=[0.2,0.1,0.3,0.2,0.2])然后按照如下的算法进行采样:

第一步是随机选取一个初始状态xt,如状态1(代表开心情感),然后从下一个时间t+1开始采样到y,y的状态是根据概率转移的多项式分布采样确定的,然后此时需要判断是否接受这个采样y,即从二项分布中采用出一个值u(0-1之间)和接受率α进行比较,α的值等于p(y).q(xt|y)。如果u小于α,则接受从xt转移到y,即将y值赋给xt+1,否则不接受转移,xt+1仍然是xt对应的状态。而实验过程中还可以设定一个收敛限制l,也就是采样l次结果不发生变化,即接受这个采样,增强采样序列的代表性。这样即可以得到一个采样序列:如1,2,0,0,1,1,0,1(假设我们设定的采样长度为8),那么这就是一个代表情感的转移序列,开心->惊讶->中性......

本实施例中采用马尔科夫蒙特卡罗采样方法对情感转移概率分布进行采样,这样可以得到符合用户情感特征的参考情感转移序列。在一实施例中,获取情感转移序列还可以包括:

基于采样会话长度的初始量,按照预设步长调整会话长度根据预设采样算法对情感转移概率分布进行采样,得到符合用户情感特征的参考情感转移序列。

可见,本实施例中通过获取非特定用户的对话,能够将人的情感转移的不确定性引入,可以克服相关技术中过于依赖会话数据库的缺陷,从而提高系统的可维护性,更适应于机器学习。并且,本实施例中通过统计学方法,可以确定用户的情感分布模型即生成情感转移序列,这样可以根据用户的情感指导对话,提高会话的准确性和鲁棒性。

实施例一

本实施例中,以英语会话网站的会话数据生成情感转移分布。首先,收集电影《beforesunset》中会话数据共计22172句,其中∞表示一段会话的结束,会话数据如图1所示。该会话数据中无其他对话人物,噪音少。

表1会话数据

然后利用svm对会话数据进行情感分类,采用标签“0、1、2、3、4”对每条会话数据情感类别分别标注“中性、开心、惊讶、伤心和生气”。分类结果如表2所示。

然后计算会话数据的情感转移概率,通过统计方法,按照情感转移分布张量,对会话数据的情感转移作统计,统计结果如表2(a)~(e)所示。

表2(a)~(e)美剧《beforesunset》会话数据的情感转移概率

最后,本实施例中设定不同的采样会话长度:采样会话长度分别为2,4,6,8,10,选取初始情感为[伤心],刺激情感分别为[中性,开心,惊讶,伤心,生气]一共五组情感转移概率分布,使用mcmc采样方法,得到美剧《beforesunset》的情感转移序列如表3所示。

表3mcmc采样结果

本实施例中选取初始情感为伤心,如表2(d)中的五组概率值进行,每组采样设定为5个不同的收敛限制(2,4,6,8,10),得到图5(a)~(e)(图5中,横坐标为对话顺序,纵坐标为情感标签,不同粗线的线条表示收敛限制)所示的情感转移序列。

本实施例中通过设置不同的收敛值,可以改变随机采样的结果。可理解的是,随着收敛值的变大,采样时间越长,其结果也越符合用户的情感特征。在此基础上,本实施例中可以模拟人机会话或者机器人会话,通过采样多个不同的情感转移序列,在会话时,基于指定用户的实际情感和预期情感,选择合适的采样序列,即利用所选择合适的采样序列代表的情感,有目的的控制机器人的情感转移,引导机器人的情感向着预期情感发展。

例如,用户a和机器人b初期聊了几句对话,基于该几句对话,机器人b可以得到用户a的当前情感,当机器人b发现用户a的情感是郁闷等负向情感时,则期望用户a高兴起来。此时,根据实际情感转移序列的多种结果,选择高兴情绪对应的实际情感转移序列,从而刺激用户a的情感转移。

图6为本发明一实施例提供的基于对话的个人性格建模与生成装置的框图。参见图6,该装置包括:

会话数据获取模块601,用于获取指定用户的多条会话数据;

实际情感序列确定模块602,用于基于所述指定用户的参考情感转移序列和所述多条会话数据确定所述指定用户的多个实际情感转移序列;

用户情感调整模块603,用于基于所述指定用户的实际情感转移序列,根据所述指定用户的会话输入持续调整会话的答复,以刺激所述指定用户的情感向预期情感调整。

可选地,所述装置还包括:

所述会话数据获取模块还用于获取指定用户的第一预设数量条会话数据;

情感识别模块,用于利用支持向量机svm对所述第一预设数量条会话数据进行情感识别,得到第二预设数量种情感;

会话数据标记模块,用于分别标记所述第二预设数量种情感的会话数据;

情感转移概率统计模块,用于对所述第一预设数量条会话数据进行概率统计,得到所述指定用户的情感转移概率表和情感转移张量;

情感转移分布采样模块,用于根据预设采样算法对情感转移概率分布进行采样,得到符合用户情感特征的参考情感转移序列;所述情感转移概率分布即所述情感转移概率表中对应的数据。

可选地,所述情感转移分布采样模块包括:

基于采样会话长度的初始量,按照预设步长调整所述会话长度根据预设采样算法对情感转移概率分布进行采样,得到符合用户情感特征的参考情感转移序列。

需要说明的是,本发明实施例提供的基于对话的个人性格建模与生成装置与上述方法是一一对应的关系,上述方法的实施细节同样适用于上述装置,本发明实施例不再对上述系统进行详细说明。

本发明的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

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