首页 / 对话控制装置、对话控制方法

对话控制装置、对话控制方法有效专利 发明

技术领域

[0002] 本发明涉及人与机械对话的技术。

相关背景技术

[0003] 近来,在人与机械之间实现交互式的对话的技术正在不断渗透。为了实现人与机械进行伴随交流的对话,需要人工智能(AI:Artificial Intelligence)的技术、声音识别技术,但若仅是分析上下文来进行应答,并不能实现交流。需要推断人的情绪的技术等。
[0004] 例如,在作为日本的专利文献的JP特开2006-178063号公报中,公开了一种技术,该技术对成为对话对象的用户的情绪进行推断,并将该推断出的情绪有效利用于对话中。在专利文献1中,每当用户发言时,都将其发言内容进行文本化,根据在该文本中是否包含表示情绪好坏的词语来进行情绪推断。然后,装置根据所推断出的情绪来进行回答(例如,若所推断出的情绪是负面的则说“您还好吗?”等)。
[0005] 此外,在JP特开2014-219594号公报中,公开了一种技术,该技术根据用户的声音来识别用户的情绪,选择与用户的情绪对应的会话算法。
[0006] 发明要解决的课题
[0007] 但是,在上述专利文献1中,由于仅是每当用户发言时,推断用户的情绪来简短地进行回答,故而很难让用户不厌烦地持续交流。因此,还远不能提高用户对于对话的满意度,不能在与装置之间构筑亲密的关系。
[0008] 此外,在上述专利文献2中,虽然能够识别用户的情绪,但却止于选择与用户的情绪对应的算法。
[0009] 从这样的情况出发,正在谋求一种不破坏用户的情绪地引导会话的技术。
[0010] 因此,本发明鉴于上述情况而作,其目的在于提供一种使成为对话对象的用户的情绪保持良好地引导会话的对话控制装置等。

具体实施方式

[0029] 以下,参照图1来说明本发明的实施方式所涉及的对话控制装置的概要。该对话控制装置10作为与对话对象的物理接口而具备采集对话对象的声音的麦克风40、向对话对象进行声音输出的扬声器41、拍摄对话对象的照相机42。
[0030] 对话控制装置10根据麦克风40的声音和照相机42的图像来进行情绪推断,并通过扬声器41来进行基于与所推断出的情绪相应的话题的对话。
[0031] 另外,也可以将作为对话引擎的对话控制装置10应用于机器人。该对话控制装置10是能够应用于需要与人的对话的几乎所有情景的人工智能,其应用范围覆盖车辆导航、智能手机的对话型应用、数字的二维角色等较广范围。此外,在以下的说明中,“对话”、“会话”、“交流”的各用语在以自然语言交互式地交换信息这样的意思上均是同义。
[0032] 对话控制装置10除了具备与对话对象的物理接口(麦克风40、扬声器41、照相机42)以外,还具备控制部20和存储部30。
[0033] 控制部20由CPU(Central Processing Unit,中央处理器)、ROM(Read Only Memory,只读存储器)、RAM(Random Access Memory,随机存取存储器)等构成。控制部20通过执行存储在ROM中的程序(例如后述的话题映射生成处理、对话控制处理所涉及的程序),从而实现各部(情绪推断部21、对话控制部22)的功能。
[0034] 存储部30是硬盘、闪存等非易失性存储器,存储各种Data Base(对话用DB32、情绪推断用DB33)。关于这些DB在后面叙述。
[0035] 接下来,说明控制部20的功能。
[0036] 控制部20作为功能而具备情绪推断部21和对话控制部22。
[0037] 情绪推断部21用于推断对话对象的情绪。情绪推断部21根据情绪推断用DB33(表情用DB331、韵律用DB332、文本用DB333)、照相机42所拍摄到的对话对象的面部图像、和麦克风40所采集的对话对象的声音,来推断对话对象的情绪。
[0038] 表情用DB331是用于存储预先机械学习大量的样本而得到的每个表情的模板图像的数据库。情绪推断部21通过照相机42所拍摄到的对话对象的面部图像与模板图像的匹配来推断对话对象的情绪。在本实施方式中,作为情绪而推断高兴、害怕、厌恶、愤怒、悲伤、惊讶这基本的6种情绪。
[0039] 韵律用DB332是用于按照每种情绪建立对应地存储韵律(声的高度、音量、语调、节奏、停顿等说话方式的特征)的数据库。情绪推断部21从麦克风40所采集到的对话对象的声音中提取韵律,根据所提取出的韵律和韵律用DB332来推断对话对象的情绪。
[0040] 文本用DB333是按照每种情绪建立对应地存储表示情绪的词语(名词、形容词等)的数据库。例如,将名词“合格”、“优胜”与情绪“高兴”建立对应,将形容词“遗憾”、“无趣”与情绪“悲伤”建立对应。情绪推断部21将麦克风40所采集到的声音进行文本化,通过词素解析来分解成词语,参照文本用DB333来推断情绪。
[0041] 情绪推断部21单独使用这些中任意一个DB(表情用DB331,韵律用DB332,文本用DB333)或者组合使用这些DB,来推断对话对象的情绪。基于表情的情绪推断的时刻(timing)在后述的对话部222每次发言之后立刻进行。这是因为,与发言后过了片刻后相比在刚刚发言之后作为听众的对话对象的情绪更容易表露于表情。此外,基于韵律和文本的情绪推断每当对话对象发言时都进行。
[0042] 接下来,说明对话控制部22的功能。
[0043] 该对话控制部22以基于情绪推断部21所推断出的情绪的好坏而选择的话题,控制与对话对象的对话。该对话控制部22具备选择部221、对话部222、话题映射生成部223、更新部224。另外,选择部221相当于第1以及第2选择单元,对话部222相当于第1以及第2对话单元。以下,首先,针对(i)通过探寻对话对象的兴趣嗜好并进行学习来生成话题映射的阶段(生成阶段)进行说明,之后接着,针对(ii)有效利用所生成的话题映射来控制与对话对象的对话的阶段(有效利用阶段)进行说明。
[0044] 选择部221从多个不同的话题之中随机选择一个话题。具体而言,选择部221从图2所示的分数处理前的话题映射31中的话题之中随机选择一个话题。该话题映射31是将表示对话对象对话题的感兴趣的高低程度的分数与多个不同的话题(图中的例子中为食物、旅行、动物等)建立了对应的一维表。另外,在初始状态下,分数全都为0。
[0045] 接着,对话部222基于选择部221所选择的话题,与对话对象进行对话。该对话的方法虽是任意的,但在本实施方式中使用对话用DB32所包含的对话用的各DB(提问句DB321、应答句DB322)与对话对象进行对话。这里的对话,并非用于达成一个任务(例如预约受理、道路引导等)的面向任务型的对话,而是试图持续进行闲聊等的谈话的非面向任务型的对话。
[0046] 该非面向任务型的对话虽然仍处于发展阶段,但在本实施方式中为了应对各种各样的话题而预先在DB中按话题准备了数万种模式的提问候补、应答候补。这些提问以及应答有效利用图3所示的关键字表35来进行。该关键字表35基于词语词典等来生成,按照每个话题将名词关键字与形容词关键字建立了对应。名词关键字表示与话题关联的名词,形容词关键字表示与话题关联的形容词。
[0047] 图3所示的关键字是极少的一部分,实际关于各话题准备对话所需的数万关键字。此外,按照每个关键字对上下关系(若是蔬菜则作为上位概念的蔬菜包含作为下位概念的卷心菜、洋葱等)和类似关系(乌冬和拉面在面类中类似等)建立对应。此外,对话控制部22在从对话对象说出了不知道的词语的情况下,对该词语追加新的关键字(例如对话对象的名字等)来进行学习为好。
[0048] 然后,提问句DB321是按照每个话题存储了多个不同的提问句的模板的数据库。对话部222在会话的开场(opening)时进行提问的情况、针对来自对话对象的应答进行提问的情况、在某话题中来自对话对象的无声区间持续的情况等下,从提问句DB321选择提问句模板从扬声器41发出提问。
[0049] 图4中示出话题“食物”的提问句模板的变形(variation)的一例。该提问句模板是代入关键字(名词关键字、形容词关键字)的形式,下位关键字是上位概念的关键字所包含的关键字。对话部222从关键字表35中随机使用与“食物”相关的关键字、或者使用来自对话对象的发言中所包含的“食物”的关键字,生成提问句模板来进行发言。
[0050] 接下来,应答句DB322是按照每个话题存储了多个不同的应答句的模板的数据库。应答句模板例如能够通过XML(Extensible Markup Language,可扩充标记语言)等标记语言来描述。具体而言,利用AIML(ArtificialIntelligence Markup Language,人工智能标记语言)来进行描述,对话部222在对话对象的发言中包含关键字(名词关键字、形容词关键字)的情况下,按照使用了该关键字的应答用的模板来进行应答。
[0051] 图5中示出话题“食物”的应答句模板的变形的一例。应答句模板成为如下形式:若对话对象的发言中存在关键字表35所包含的关键字,则套用该关键字(名词关键字、形容词关键字)来进行应答。另外,所谓类似关键字,是指在关键字表35中处于类似关系的关键字(乌冬和拉面等)。范畴的类别(共鸣、自我披露、信息提供)为一例,也可以设置更多的类别。
[0052] 例如,在针对话题“食物”在对话对象的发言中存在“拉面”这样的关键字的情况下,对话部222会像如下那样进行应答:作为共鸣用的应答句模板而应答“拉面很好吃吧。我也很喜欢。”,作为自我披露用的应答句模板而应答“相比于拉面我还是更喜欢乌冬。”,作为提问句模板而应答“喜欢什么味道的拉面。”。选择这些模板当中的哪个可以随机进行选择或根据来自对话历史记录的上下文、优先顺序来选择。
[0053] 在此,所谓信息提供,是提供因特网上的检索结果所涉及的信息时的模板。该信息提供所涉及的信息(地点的固有名词等)是由对话部222以来自对话对象的检索要求为触发或在对话中的适当的时刻主动地取得。然后,对话部222将所取得的信息代入到信息提供用的应答模板中进行发言。
[0054] 另外,1个应答句模板从提高通用性的观点出发由多个关键字共同使用,但并不限于此。也可以将特定的关键字与对应的专用的应答句建立对应。例如,也可以将话题“动物”的名词关键字“狮子”与如“只有雄狮才有鬃毛啊。”、“狮子是百兽之王啊。”这样狮子专用的多个应答句模板建立对应,随机选择来发言。
[0055] 以上,对话部222使用提问句DB321和应答句DB322所包含的、按话题区分的数万种模式的提问句、应答句模板,按照每个话题进行不是一问一答的至少数个回合的会话。以下以选择部221选择了话题“食物”的情况来说明使用这些各DB由对话部222与对话对象进行对话的情况的具体例1。另外,对话沿着时间序列赋予(1)(2)等符号。
[0056] (1)对话控制装置10:“让我们谈谈食物吧。”
[0057] (2)对话控制装置10:“您喜欢什么食物呢。”
[0058] (3)对话对象:“我喜欢乌冬。”
[0059] (4)对话控制装置10:“乌冬很好吃吧。我也喜欢。”
[0060] (5)对话控制装置10:“有其他觉得好吃的食物吗。”
[0061] (6)对话对象:“我还喜欢炸猪排。”
[0062] (7)对话控制装置10:“炸猪排很好吃吧。同感。”
[0063] (8)对话控制装置10:“在上野有炸猪排很好吃的餐厅哟。”
[0064] (9)对话对象:“是吗?什么餐厅。”
[0065] (10)对话控制装置10:“店铺名是○○。”
[0066] (11)对话对象:“什么时间营业。”
[0067] (12)对话控制装置10:“从早晨10点到夜间9点营业。”
[0068] (13)对话对象:“了解。下次去看看哟。谢谢。”
[0069] (14)对话控制装置10:“不客气。”
[0070] 在该具体例1中,对话部222在(1)中进行针对作为由选择部221选择的话题的“食物”进行谈话的开场,在(2)中从提问句DB321中针对“食物”选择开场用的提问句模板来进行提问,在(4)以及(7)中从应答句DB322中按照“食物”的共鸣用的应答句模板进行应答,在(8)中进行对对话对象所说的“食物”的名词关键字(具体例1中为“炸猪排”)的检索来进行信息提供,在(10)以及(12)中针对来自对话对象的提问进行信息提供,最后在(14)中从应答句DB322中应答针对关键字“谢谢”的应答句模板“不客气。”。另外,关键字表35和应答句DB322除了准备与话题相关的关键字和应答句模板以外,还按照寒暄等与话题无关的日常的每个场景准备关键字和应答句模板。
[0071] 如该具体例1所示,非面向任务型的会话场景是千差万别的,但对话部222将对话用DB32(提问句DB321,应答句DB322)适当进行组合来进行上述(1)~(14)那样的针对话题的对话。另外,词类(名词、形容词等)、是否为提问句等只要对麦克风40所采集的来自对话对象的发言进行文本化后进行词素解析即可。
[0072] 此外,对话部222自发地进行检索的时刻如从对话对象得到了规定数量以上的名词(上述具体例1中第二个名词“炸猪排”)的时刻等预先设定规则(检索时刻的规则)即可。此外,若通过声音识别而得到的来自对话对象的发言含糊不清,则也适当进行确认应答(例如反问“是(名词关键字)吗。”等)等错误处理为好。
[0073] 在此,情绪推断部21在上述对话的具体例1中,每当对话控制装置10发言时(例如向对话对象刚刚询问了“喜欢的食物是什么。”之后)都使用表情用DB331来推断对话对象的情绪。而且,情绪推断部21每当对话对象发言时(例如对话对象说“了解。下次去看看哟。谢谢。”之后),都使用韵律用DB332和文本用DB333来推断对话对象的情绪。由此,能够在对话控制装置10发言的时刻以及对话对象发言的时刻,推断对话对象的情绪。
[0074] 接着,返回到图1,话题映射生成部223生成用于不破坏对话对象的情绪地引导会话的话题映射。具体而言,话题映射生成部223根据在对话部222与对话对象进行对话的过程中由情绪推断部21推断出的情绪的好坏,进行选择部221当前选择的话题的分数的加减运算处理。
[0075] 另外,话题映射生成部223按照每个对话对象生成话题映射,但为了容易理解,举例说明对话对象为一人的情况。此外,若没有必要特别指定表示该一个对话对象的兴趣嗜好的话题映射31来进行说明,则一般简称为话题映射在以下进行说明。此外,作为一例,将情绪良好的情况作为能够感应愉快、欣喜等的正面的“高兴”,将情绪不佳的情况作为能够感应无趣、沮丧等的负面的“害怕、厌恶、愤怒、悲伤”来进行说明。
[0076] 话题映射生成部223,若情绪推断部21推断出的情绪良好,则进行当前选择的话题的分数的加法运算处理,若情绪推断部21推断出的情绪不佳,则进行当前选择的话题的分数的减法运算处理。例如,在上述具体例1中,若对话控制装置10刚说完“在上野有炸猪排很好吃的餐厅哟。”之后的对话对象的情绪为“高兴”,则话题映射生成部223使话题映射31中作为当前选择的话题的食物的分数+1。
[0077] 另一方面,在与具体例1不同,针对“喜欢的食物是什么。”的询问从对话对象回答“为什么问这个。”,并从韵律推断出情绪“厌恶”的情况下,话题映射生成部223使话题映射31中作为当前选择的话题的食物的分数-1。这样,话题映射生成部223在当前选择的话题的对话中每当推断出对话对象的情绪,都进行加减运算处理来进行分数处理。按照每个话题进行该分数处理,生成图6所示那样的话题映射31。
[0078] 接着,返回到图1,更新部224根据对话中的对话对象的情绪的好坏,来更新话题映射生成部223所生成的话题映射31的各分数。关于该更新部224在后面叙述。
[0079] 以上是针对对话控制部22的各部的功能的说明。以下,参照图7来说明话题映射生成处理。该话题映射生成处理在话题映射31处于初始状态的阶段当对话控制装置10与对话对象进行对话时(例如以对话对象开启了对话控制装置10的对话功能为触发)进行。对话控制装置10若不机械学习对话对象的兴趣嗜好,则使对话对象的情绪保持良好地进行会话是很困难的。因此,在话题映射的有效利用阶段之前进行话题映射生成处理。
[0080] 首先,选择部221随机选择一个话题(步骤S11)。接着,对话部222基于所选择的话题,与对话对象进行对话(步骤S12)。具体而言,对话部222按照上述的要领,使用对话用DB32(提问句DB321、应答句DB322)来进行上述具体例1的(1)~(14)那样的对话。
[0081] 其间,情绪推断部21推断对话对象的情绪(步骤S13)。具体而言,情绪推断部21按照上述的要领,使用情绪推断用DB33(表情用DB331、韵律用DB332、文本用DB333),在对话控制装置10的发言之后或者对话对象的发言之后立刻推断对话对象的情绪。
[0082] 接着,话题映射生成部223进行所推断出的情绪是否良好的好坏判断(步骤S14)。若所推断出的情绪为良好(步骤S14:“是”),则话题映射生成部223进行当前选择的话题的分数的加法运算处理(步骤S15),另一方面若所推断出的情绪并非良好(步骤S14:“否”),则进行当前选择的话题的分数的减法运算处理(步骤S16)。
[0083] 在步骤S15或步骤S16之后,话题映射生成部223判断对话是否结束(步骤S17),若尚未结束(步骤S17:“否”),则返回到步骤S12。即,反复步骤S12至步骤S16的处理直到对话结束为止,每当对话中的情绪推断时都进行分数处理。另外,关于对话是否结束,例如设为在进行规定回合数以上的对话、并且之后的来自对话对象的无声期间经过了规定期间的情况等即可。也可以即使在规定回合数以下,若从对话对象说出“关于该话题不想谈论。”、“没有兴趣。”等明显没有继续会话的意思的发言,则强制结束对话,还可以若进行减法运算之后的分数达到了规定值(例如-5),则强制结束。对话结束的时刻是可以适当设计的事项。
[0084] 在此,若对话结束(步骤S17:“是”),则返回到步骤S11,将当前选择的话题切换为其他话题,反复步骤S12以下的处理。例如,在上述具体例1中,在(1)~(14)的对话结束时间点与“食物”对应的分数为图6的话题映射31所示的5。然后,话题映射生成部223切换为“食物”以外的话题来继续对话。这样,话题映射生成部223切换话题反复对话而生成的是图6所示的话题映射31。
[0085] 另外,对话并不限定于如上述具体例1那样结束。例如,也存在通过对话的自然的推移而转到其他话题的情况,还存在由对话对象突然提案想要针对该话题进行谈论的情况。也可以防备出现这样的中断处理的情况,若在针对当前选择的话题的对话中从对话对象说出与其他话题关联的词语,则以其为触发而切换为其他话题。
[0086] 例如,在上述具体例1中,若对话控制装置10说出了“在上野有好吃的炸猪排的餐厅哟。”,对此从对话对象回答“哎,是吗,话说最近没有在上野的美国街购物呢。”,则对话部222以“购物”为关键字,从“食物”切换为“购物”的话题来继续对话。在该情况下,当前选择的食物的分数成为切换为其他话题为止的分数。
[0087] 以上是对话题映射生成处理的说明。在此,图6的话题映射31并未针对所有话题进行分数处理。这是因为只要将兴趣嗜好了解到能够有效利用话题映射与对话对象进行对话的程度即可,从用于话题映射生成的学习阶段过渡到有效利用话题映射的对话控制处理的时刻能够适当设定。例如,可以在反复几次进行话题映射生成处理从而分数为3以上的话题成为3个的阶段过渡到有效利用话题映射的阶段,也可以在针对所有话题都进行了分数处理的阶段过渡到有效利用阶段。
[0088] 以下,依次说明有效利用所生成的话题映射(图6的话题映射31),抓住对话对象的兴趣嗜好来引导会话的对话控制处理1至3的变形。另外,在有效利用阶段除了话题映射生成部223以外的选择部221(第2选择单元)、对话部222(第2对话单元)、更新部224发挥作用。对话部222的功能与话题映射的生成阶段相同。
[0089] (对话控制处理1)
[0090] 在此,参照图8来说明对话控制处理1。该对话控制处理1是在从话题映射生成阶段过渡到有效利用阶段之后,以对话控制装置10通过照相机42对对话对象进行拍摄为触发来进行的。
[0091] 首先,情绪推断部21判断由照相机42拍摄的对话对象的推断出的情绪是否良好(步骤S21)。若所推断出的情绪为良好(步骤S21:“是”),则选择部221随机选择一个分数未处理的话题(步骤S22)。例如,选择部221在话题映射31中的分数为0的话题(音乐、文艺、投资)当中选择音乐。
[0092] 另一方面,若所推断出的情绪并非良好(步骤S21:“否”),则选择部221选择分数为阈值以上的话题(步骤S23)。若阈值为分数3,则选择部221在话题映射31中的分数为3以上的话题(食物、动物、购物)当中随机选择动物。该阈值设为可以说是对话对象喜爱的话题的基准值为好。
[0093] 在步骤S22或步骤S23之后,对话部222基于所选择的话题,与对话对象进行对话(步骤S24)。这样,在步骤S21至步骤S24中,根据在对话前推断出的对话对象的情绪,切换所选择的话题来开始对话。
[0094] 接着,若以所选择的话题开始对话,则情绪推断部21推断对话对象的情绪,并判断所推断出的情绪是否良好(步骤S25)。若所推断出的情绪为良好(步骤S25:“是”),则更新部224对分数进行加法运算来进行更新(步骤S26),并且对话部222判断对话是否结束(步骤S27)。若对话并未结束则返回到步骤S25,在对话中的对话对象的情绪良好的期间以所选择的话题继续对话(步骤S25至步骤S27的循环)。若所推断出的情绪保持良好而结束对话(步骤S27:“是”),则选择部221判断是否已选择完分数未处理的全部话题(步骤S28)。若未选择完分数未处理的全部话题(步骤S28:“否”),则返回到步骤S22。另一方面,在已选择完分数未处理的全部话题的情况(步骤S28:“是”)下,结束处理。
[0095] 另一方面,在以所选择的话题对话的过程中,推断出的对话对象的情绪变得不佳的情况下(步骤S25:“否”),更新部224对分数进行减法运算来进行更新(步骤S29),并且选择部221判断是否存在分数为阈值以上的话题(步骤S30)。若存在分数为阈值以上的话题(步骤S30:“是”),则返回到步骤S23。另一方面,若不存在分数为阈值以上的话题(步骤S30:“否”),则结束处理。
[0096] 根据该对话控制处理1,在情绪良好的期间以当前选择的话题(分数未处理的话题)进行对话并更新话题映射,另一方面若情绪变差则切换为分数为阈值以上的话题来继续对话。通过该对话控制处理1与对话对象进行了对话的情况下的具体例2如下所示。该具体例2设想了如下情况:在步骤S21中,在对话控制装置10用照相机42最初捕捉到对话对象时,对话对象的情绪被判断为良好。
[0097] (1)对话控制装置10:“让我们谈谈音乐吧。”
[0098] (2)对话控制装置10:“您喜欢的音乐的类型是什么呢。”
[0099] (3)对话对象:“是西洋音乐吧。”
[0100] (4)对话控制装置10:“相比于西洋音乐,我更喜欢日本音乐。”
[0101] (5)对话对象:“嗯。我不太喜欢日本音乐呢。”
[0102] (6)对话控制装置10:“是这样啊,实在抱歉。”
[0103] (7)对话控制装置10:“那么我们谈谈动物吧。”
[0104] (8)对话对象:“动物好啊。我们谈谈吧。”
[0105] (9)对话控制装置10:“您喜欢的动物是什么呢。”
[0106] 该(9)以后,对话也还继续。在该具体例2的(1)中选择部221选择分数未处理的话题“音乐”,在(2)中对话部222从提问句DB321中按照“音乐”的开场用的提问句模板进行提问,在(4)中对话部222根据使用了对话对象的发言中包含的名词关键字“西洋音乐”以及类似关键字“日本音乐”的应答句模板来进行应答,在(5)中情绪推断部21推断为对话对象的情绪不佳,在(7)中对话部222切换为分数为3以上的话题“动物”来重新调整对话。
[0107] 根据该对话控制处理1,在对话对象的情绪良好的期间针对分数未处理的话题继续机械学习的同时,若情绪变差则切换为分数为阈值以上的话题来继续对话。因此,能够在探寻对话对象喜爱的话题的同时,以已经学习过的对话对象喜爱的话题来继续对话。因此,能够在抓住了对话对象的兴趣嗜好之后使对话对象不厌烦地享受交流。
[0108] (对话控制处理2)
[0109] 在此,参照图9来说明对话控制处理2。该对话控制处理2的开始时刻与对话控制处理1相同。
[0110] 首先,选择部221选择多个话题当中的分数最大的话题(步骤S31)。在图6的话题映射31的情况下,选择部221选择分数最大的“食物”作为话题。
[0111] 接着,对话部222以所选择的话题进行对话(步骤S32)。对话部222按照上述的要领,使用对话用DB32(提问句DB321、应答句DB322)来进行对话。
[0112] 接着,情绪推断部21推断对话对象的情绪(步骤S33)。情绪推断部21按照上述的要领,使用情绪推断用DB33(表情用DB331、韵律用DB332、文本用DB333),在对话控制装置10发言之后或对话对象发言之后立刻推断对话对象的情绪。
[0113] 接着,情绪推断部21判断所推断出的情绪是否良好(步骤S34)。若所推断出的情绪为良好(步骤S34:“是”),则更新部224对当前选择的话题的分数进行加法运算并进行更新(步骤S35)。然后,返回到步骤S32,继续与对话对象的对话。
[0114] 另一方面,若所推断出的情绪并非良好(步骤S34:“否”),则更新部224对当前选择的话题的分数进行减法运算并进行更新(步骤S36)。然后,对话控制部22判断是否已选择完所有的话题(步骤S37),若未选择完所有的话题(步骤S37:“否”),则返回到步骤S31。在该步骤S31中,选择仅次于当前选择的话题“食物”的分数5的分数4的话题“购物”。
[0115] 这样,在进行话题映射31的分数的更新的同时,若所推断出的情绪为良好则仍然以当前选择的话题继续对话,若并非良好则切换为下一排位的分数的话题来进行对话。另外,在继最大分数和下一排位分数之后的全部分数都为0的情况下,在步骤S31中选择部221从分数未处理的多个话题之中随机选择一个话题即可。
[0116] 在此,在选择了所有的话题的情况下(步骤S37:“是”),结束对话控制处理2。
[0117] 在此,通过对话控制处理2与对话对象进行了对话的情况下的具体例3如下所示。
[0118] (1)对话控制装置10:“让我们谈谈食物吧。”
[0119] (2)对话控制装置10:“若是肉,您喜欢猪肉、牛肉、鸡肉中的哪一个呀。”[0120] (3)对话对象:“因为正在减肥所以最近以蔬菜为主啊。”
[0121] (4)对话控制装置10:“那么让我们谈谈购物吧。”
[0122] (5)对话控制装置10:“最近有没有进行什么购物呀。”
[0123] (6)对话对象“嗯,没有什么心情购物所以什么也没买。”
[0124] (7)对话控制装置10:“那么让我们谈谈动物吧。”
[0125] (8)对话控制装置10:“(对话对象的名字)想看什么动物呢。”
[0126] (9)对话对象:“是啊,想看狮子呢。”
[0127] (10)对话控制装置10:“狮子是百兽之王啊。”
[0128] 在该(10)以后,对话也还继续。一般而言,对话对象即使是自己比较感兴趣的话题(上述具体例3中分数较高的“食物”和“购物”的话题),也有不想被问及、不想谈论的时候,情绪根据心情而变化。具体例3是针对分数最高的话题“食物”和下一排位分数的话题“购物”,对话对象的情绪不佳的情况的例子。
[0129] 在该对话控制处理2中,若对话对象的情绪不佳,则对话控制装置10切换为下一排位的话题。即,在具体例3中,根据(3)的对话对象的回答“因为正在减肥所以最近以蔬菜为主啊。”将话题从“食物”切换为“购物”,根据(6)的对话对象的回答“嗯,没有什么心情购物所以什么也没买。”将话题从“购物”切换为“动物”。
[0130] 另外,在(8)中,对话部222在话题“动物”的开场用的提问句模板中,加入所学习的对话对象的名字。由此,对话对象对对话控制装置10感觉亲近,容易构筑亲密关系。另外,若所推断出的对话对象的情绪并非良好,则在切换话题之后加入“是这样啊,实在抱歉。”等缓和(one cushion)为好。
[0131] 以上,根据对话控制处理2,对话控制装置10基于话题映射,每当对话对象的情绪变差时,在除了当前选择的话题以外的话题中选择最大分数的话题来继续会话。因此,能够使对话对象不厌烦地继续交流,并且,能够在抓住了对话对象的兴趣嗜好之后不破坏对话对象的情绪地引导会话。
[0132] (对话控制处理3)
[0133] 接着,参照图10来说明对话控制处理3。该对话控制处理3的开始的时刻与对话控制处理1相同。
[0134] 首先,对话部222向对话对象询问想要谈论的话题(步骤S41)。例如,对话部222参照提问句DB321,通过扬声器41来说出提问句模板“您想要谈论什么话题呢。”。
[0135] 接着,对话部222判读是否从对话对象受理了话题(步骤S42)。对话部222将麦克风40所采集到的对话对象的声音进行文本化并进行词素解析后,通过在多个词语之中是否包含话题来进行上述判断。
[0136] 在此,进行待机直到从对话对象受理话题为止(步骤S42:“否”),若受理了话题(步骤S42;Yes),则选择部221选择所受理的话题(步骤S43)。然后,对话部222以所选择的话题进行对话(步骤S44),情绪推断部21推断对话对象的情绪(步骤S45)。然后,情绪推断部21判断所推断出的情绪是否良好(步骤S46)。在此,若所推断出的情绪为良好(步骤S46:“是”),则更新部224对当前选择的话题的分数进行加法运算并更新后(步骤S47),返回到步骤S44,只要所推断出的情绪不变差就继续对话。
[0137] 另一方面,若所推断出的情绪并非良好(步骤S46:“否”),则更新部224对当前选择的话题的分数进行减法运算并更新后(步骤S48),选择部221判断是否存在比当前选择的话题的分数更高的分数(步骤S49)。
[0138] 在此,若存在比当前选择的话题的分数更高的分数(步骤S49:“是”),则选择部221选择高分数的话题(步骤S50),返回到步骤S44。然后,对话部222只要对话对象的情绪不变差就以所选择的话题继续对话(步骤S44至步骤S47的循环)。
[0139] 另一方面,若不存在比当前选择的话题的分数更高的分数(步骤S49:“否”),则结束对话控制处理3。另外,也可以即使在不存在比当前选择的话题的分数更高的分数的情况下,也不结束对话控制处理3而随机选择分数未处理的话题来继续对话。
[0140] 以上,在对话控制处理3中,以对话对象所希望的话题开始了对话之后,每当对话对象显露出不愉快,就切换为与当前选择的话题相比分数更高的话题来继续对话。通过该对话控制处理3与对话对象进行了对话的情况下的具体例4如下所示。
[0141] (1)对话控制装置10:“您想谈论什么话题呀。”
[0142] (2)对话对象:“嗯,是啊,旅行吧。”
[0143] (3)对话控制装置10:“那么让我们谈谈旅行吧。”
[0144] (4)对话控制装置10:“最近您有去旅行吗。”
[0145] (5)对话对象:“最近去海边了哟。”
[0146] (6)对话控制装置10:“海边怎么样啊。”
[0147] (7)对话对象:“虽然很热,但是是翠绿色的很美哟。”
[0148] (8)对话控制装置10:“如果热便想去凉快的地方吧。”
[0149] (9)对话对象:“因为是夏天的海边,即使热也很好。”
[0150] (10)对话控制装置10:“是这样啊。实在抱歉”
[0151] (11)对话控制装置10:“接下来不谈谈购物吗。”
[0152] (12)对话对象:“可以呀,那就谈谈购物。”
[0153] 在该(12)以后,对话也还继续。在该具体例4中,以对话对象所希望的话题“旅行”开始了对话之后,对话部222在(8)中,按照形容词关键字“热”的应答句模板进行了不衔接上下文的应答,结果在(9)中对话对象显露出了不愉快。然后,对话部222将话题切换为与分数为1的“旅行”相比分数为4的更高的“购物”来继续对话。
[0154] 根据该对话控制处理3,除了能够取得上述对话控制处理1以及2的效果以外,还能够以对话对象当前想要谈论的话题开始对话,因此能够进行最迎合对话对象的心情的会话并能够提高对话对象的满意度。
[0155] (对话控制处理4)
[0156] 对话控制处理1至3划分话题映射生成处理和对话控制处理对话题映射的生成阶段(机械学习阶段)和有效利用阶段加以区分来进行了说明,但并不限于此。也可以不对它们进行区分,立即进行对话控制处理在生成话题映射的同时引导会话。关于该情况下的对话控制处理4参照图11来进行说明。另外,步骤S51至步骤S55与话题映射生成处理的步骤S11至步骤S15相同。因此,以下以不同的步骤为中心进行说明。
[0157] 在步骤S51至步骤S53中,通过对话控制部22的各部(选择部221、对话部222),基于从初始状态的话题映射31中随机选择的话题与对话对象进行对话并推断该对话对象的情绪。然后,只要所推断出的情绪为良好(在步骤S54为“是”的期间),就一边对当前选择的话题的分数进行加法运算处理一边继续对话(步骤S52至步骤S55的循环)。
[0158] 在此,若对话中的对话对象的推断出的情绪并非良好(步骤S54:“否”),则选择部221判断是否已选择完所有的话题(步骤S56)。若未选择完所有的话题(步骤S56:“否”),则返回到步骤S51,选择部221随机选择一个话题,反复步骤S52以后的处理。另一方面,若已选择完所有的话题(步骤S56:“是”),则结束对话控制处理4。
[0159] 这样,在该对话控制处理4中,只要对话对象未显露出不愉快便以随机选择的话题进行对话并进行分数的加法运算处理,同时在显露出不愉快的时刻切换为未选择的其他话题来继续对话。由此,能够在继续对话的同时渐渐生成话题映射。由于即使对话对象显露出不愉快也会立即切换为其他话题,因此对话控制装置10能够探寻对话对象的兴趣嗜好,另一方面对话对象能够长时间地享受会话。
[0160] 另外,在该对话控制处理4中,也可以在多个话题的分数处理结束的时刻切换为对话控制处理1至3。
[0161] 因此,每个用户一般兴趣嗜好都不同,但根据实施方式,能够根据用户个人的兴趣意向,使用户不厌倦地持续交流。
[0162] 至此,结束实施方式的说明,上述实施方式为一例,对话控制装置10的构成、对话控制处理1至4的内容等当然不限于上述实施方式中说明的内容。
[0163] 例如,在上述的实施方式中,情绪推断部21基于对话对象的表情、韵律、声音的文本来推断情绪,但并不限于此。例如,情绪推断部21也可以根据对话对象的非言语的举动(行为)来推断情绪。具体而言,情绪推断部21若对话对象使面部纵向振动则将情绪推断为良好,若对话对象使面部横向振动则将情绪推断为不佳。
[0164] 此外,“对话”说明了使用声音彼此应答的例子,但也可以使用键盘和显示器来进行基于文字的对话。例如,也可以将对话控制装置10组装到PC等,在用户(对话对象)与PC(对话控制装置10)之间以基于文字的聊天感觉来享受上述那样的具体例1~4的会话。在该情况下,虽不能进行基于声音的韵律的情绪推断,但能够根据利用了照相机42的对话对象的表情、对话文章的内容(基于表示情绪的好坏的词语的情绪推断)、或者键盘触摸的速度或力度等进行情绪推断。
[0165] 此外,在上述的实施方式中,以话题映射31由对话控制装置10生成为前提来进行了说明,但并不限于此。例如,也可以预先将每个对话对象的话题映射上传到成为知识数据库的外部服务器中,对话控制装置10在对话控制处理1至4中每当参照话题映射时,都访问外部服务器来进行对话。由此,能够减少话题映射生成的处理负担,并且节约对话控制装置10的存储区域。
[0166] 此外,在上述的实施方式中,举例说明了话题映射31为一维,但并不限于此。例如,也可以生成n维的话题映射。在此所说的维数是表示话题的特征的特征向量数。例如,若话题为“投资”,则话题的特征能够由娱乐性低且具有实益这样的二维的特征向量来表示。图12中示出二维的话题映射的例子。该话题映射由表示话题的特征(娱乐性和实益)的2个特征向量构成,各话题(椭圆形)按照该特征预先被匹配。若按照图6的一维的话题映射,则对话对象喜爱的话题处于由实益大且娱乐性高的第1象限的长方形所示的位置。
[0167] 因此,选择部221在选择分数未处理的话题时,能够挑选作为对话对象似乎喜爱的相同第1象限的话题的“交通工具”来尝试对话。即,能够挑选从长方形位置起距离最近的话题来尝试对话。这样,根据二维的话题映射,能够预测对话对象似乎喜爱的话题,能够不破坏对话对象的心情地继续会话。在二维映射生成时,基于通过话题映射生成处理而进行了分数处理的多个话题的分数,计算距离并进行喜爱话题的定位即可。例如,若2个话题的分数相同则定位于2个话题间的中央位置,在分数不同的情况下定位于按比例分配的位置即可。另外,当然也可以增加向量数(维数),来提高对话对象喜爱的话题的精度。
[0168] 此外,本发明的对话控制装置10的各功能也能够通过通常的PC等计算机来实施。具体而言,在上述实施方式中,说明了将对话控制装置10所进行的话题映射生成处理和对话控制处理的程序预先存储在控制部20的ROM中。但是,也可以将程序保存在软盘、CD-ROM(Compact Disc Read Only Memory)、DVD(Digital Versatile Disc)以及MO(Magneto-Optical Disc)等计算机能读取的记录介质中进行分发,通过将该程序安装到计算机,从而构成能够实现上述各功能的计算机。进而,若将本发明的对话控制装置10搭载于机器人,则能够实现具备交流功能的机器人。
[0169] 以上,针对本发明的优选实施方式进行了说明,但本发明并不限定于这样的特定的实施方式,本发明包含权利要求所述的发明及其均等的范围。

当前第1页 第1页 第2页 第3页