CN108763548A - 收集训练数据的方法、装置、设备和计算机可读存储介质 - Google Patents
收集训练数据的方法、装置、设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN108763548A CN108763548A CN201810553778.3A CN201810553778A CN108763548A CN 108763548 A CN108763548 A CN 108763548A CN 201810553778 A CN201810553778 A CN 201810553778A CN 108763548 A CN108763548 A CN 108763548A
- Authority
- CN
- China
- Prior art keywords
- message
- user
- reply
- replied
- training data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Transfer Between Computers (AREA)
Abstract
根据本公开的示例实施例,提供了一种用于收集训练数据的方法、装置、电子设备以及计算机可读存储介质。方法包括获得来自用户的第一消息并且获得来自用户的针对第一回复的第二消息,其中第一回复是基于第一消息而生成的,并且第一消息和第二消息均为自然语言形式。方法还包括响应于确定第二消息在语义上澄清第一消息,将第一消息确定为用于训练聊天对话的训练数据。根据本公开的实施例,针对在聊天对话中由于用户澄清而调整了机器人回复的情形,用户的聊天消息可以被自动加入到训练样本,由此实现从自然语言对话直接收集高质量的训练数据,降低了训练成本并且提高了训练效率。
Description
技术领域
本公开的实施例总体上涉及人工智能领域,并且更具体地涉及用于收集训练数据的方法、装置、电子设备以及计算机可读存储介质。
背景技术
近年来,“对话即平台(Conversation as a Platform)”的理念日益深入人心,越来越多的网络产品和应用开始使用对话式的人机交互方式。聊天机器人是指可以通过文字、语音或图片等实现人机交互的计算机程序或软件,其可以理解用户发出的内容,并且自动做出应答。聊天机器人在一定程度上可以取代真人进行对话,其可以被集成到对话系统中作为自动在线助理,以用于例如智能聊天、客户服务、信息询问等场景。
为了使聊天机器人更智能并且以人类对话的方式进行聊天,通常需要使用训练数据来进行训练。训练数据是用来训练机器学习模型的已标注的数据,其能够用来提高模型的性能。通常,在聊天机器人的训练过程中,对话样本标注、模型训练和效果验证作为相对独立的功能来单独执行。例如,需要针对业务场景进行一定量级的对话样本标注后才能进行模型训练,训练好模型后还需要再次与聊天机器人对话来进行测试和验证效果,并行需要通过手动记录来评估聊天机器人的性能。
发明内容
根据本公开的示例实施例,提供了一种用于收集训练数据的方法、装置、电子设备以及计算机可读存储介质。
在本公开的第一方面中,提供了一种用于收集训练数据的方法。该方法包括:获得来自用户的第一消息;获得来自用户的针对第一回复的第二消息,其中第一回复基于第一消息而被生成,并且第一消息和第二消息均为自然语言形式;以及响应于确定第二消息在语义上澄清第一消息,将第一消息确定为用于训练聊天对话的训练数据。
在本公开的第二方面中,提供了一种用于收集训练数据的装置。该装置包括:第一消息获得模块,被配置为获得来自用户的第一消息;第二消息获得模块,被配置为获得来自用户的针对第一回复的第二消息,其中第一回复基于第一消息而生成,并且第一消息和第二消息均为自然语言形式;以及训练数据确定模块,被配置为响应于确定第二消息在语义上澄清第一消息,将第一消息确定为用于训练聊天对话的训练数据。
在本公开的第三方面中,提供了一种电子设备,其包括一个或多个处理器以及存储装置,存储装置用于存储一个或多个程序。一个或多个程序当被一个或多个处理器执行,使得电子设备实现根据本公开的实施例的方法或过程。
在本公开的第四方面中,提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现根据本公开的实施例的方法或过程。
应当理解,本发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的描述而变得容易理解。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
图1示出了本公开的实施例能够实现在其中的示例环境的示意图;
图2示出了根据本公开的实施例的用户与聊天机器人之间的示例对话的图形用户界面(GUI)的示图;
图3示出了根据本公开的实施例的用于收集训练数据的方法的流程图;
图4示出了根据本公开的实施例的用于获得训练样本的方法的流程图;
图5示出了根据本公开的实施例的针对用户消息的标注信息的示意图;
图6示出了根据本公开的使用第二消息来澄清第一消息的过程的流程图;
图7示出了根据本公开的实施例的用于收集训练数据的装置的框图;以及
图8示出了能够实施本公开的多个实施例的电子设备的框图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中示出了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
在本公开的实施例的描述中,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”应当理解为“至少一个实施例”。下文还可能包括其他明确的和隐含的定义。
传统的对话系统在训练的过程中,需要在添加和标注样本时输入用户消息,并且在验证效果时还需要再输入一次,存在明显重复的工作,导致开发效率低下。针对传统方法的一种改进是在GUI中一次完成对话样本验证、对话样本标注以及对话效果评估三项工作。然而,这种改进方法需要唤醒训练师来实时修改标注信息(需要使用快捷键或者@训练师进行唤醒),并且只能使用固定的格式(例如意图为负的格式为SYS_OTHER),而且,需要使用键盘和鼠标来回切换,这导致输入过程复杂并且输入效率较低。此外,训练师方法所支持的范围有限,只能支持复杂对话逻辑的意图、词槽纠正,而固定问答场景所需要的问答单元则无法纠正,其具有局限性。同时,训练师方法的使用对象主要是开发者和数据专员,而不适于在真实场景中遇到各种异常情况的终端用户。因此,传统方法收集训练数据的成本较高并且效率很低。
本公开的实施例提出了一种用于快速收集训练数据的方案。根据本公开的实施例,针对在聊天对话中由于用户澄清而调整了机器人回复的情形,用户的聊天消息可以被自动加入到训练样本,而不需要用户唤醒训练师并且使用预定格式的指令。因此,本公开的实施例实现能够从自然语言对话直接收集高质量的训练数据,不仅能够降低训练成本而且能够提高训练效率。根据本公开的实施例的方法,用户在GUI中就可以实现对话的标注并且体验到更好的对话效果,用户可以通过对话来纠正聊天机器人的错误识别结果。
因此,本公开是实施例可以将对聊天机器人的纠正过程下放到终端用户,并且在用户正常的自然语言对话过程中就能够实现纠错标注过程,从而能够快速收集到高质量的标注数据,有助于优化聊天机器人。此外,根据本公开的实施例的方法,固定问答场景下问答库中的数据也能够基于用户的纠正而被优化。以下将参考附图1-8详细描述本公开的一些示例实施例。
图1示出了本公开的实施例能够实现在其中的示例环境100的示意图。在示例环境100中,用户110正在与聊天机器人120(称为“聊天引擎”)进行聊天对话115。可选地,用户110可以在聊天机器人120的本地,即用户110可以直接与聊天机器人120进行对话。备选地,用户110也可以使用其本地设备(诸如膝上型计算机、台式计算机、智能电话、平板电脑等)通过网络与聊天机器人120进行聊天对话。应当理解,聊天机器人120可以被部署到本地的电子设备中,其也可以被部署到云中或者被分布式部署。
参考图1,环境100还包括标注机器人130,标注机器人130可以非实时地或实时地从聊天机器人120获得对话样本125,并且对使用本公开的实施例而标识的某些对话样本进行自动标注。在非实时的场景中,标注机器人130可以从聊天对话历史中标识出可以被标注的对话样本。在实时的场景中,针对每个用户消息,标注机器人130可以实时分析是否可以被加入到对话样本。在完成标注之后,标注机器人130将标注数据135发送到训练数据集140中,训练数据集140可以用于训练145聊天机器人120,从而提高聊天机器人120的准确性和智能性。此外,除了从用户对话中获得训练数据之外,还可以从大数据150获得人工标注和/或自动标注的训练数据以用于训练聊天机器人120。
标注机器人130可以处于聊天机器人120的本地或者远程位置(例如被部署在云中或者分布式部署)。应当理解,虽然图1中分离的示出聊天机器人120和标注机器人130,然而,标注机器人130也可以与聊天机器人120集成在一起,形成聊天对话系统。此外,聊天机器人120可以集成自动标注对话样本的功能,因此,聊天机器人120也可以实时地或者非实时地标注数据。
图2示出了根据本公开的实施例的用户与聊天机器人之间的示例对话的示例GUI200的示图,例如,GUI 200中示出的聊天对话可以为以上参考图1所描述的用户110与聊天机器人120之间的聊天对话115。
如图2所示,在用户110打开与聊天机器人120的聊天窗口之后,聊天机器人120可以首先发出打招呼消息201(例如“您好,我是聊天机器人,现在您可以跟我对话了,试一试吧。”)。除了聊天对话201-224之外,GUI 200还包括输入用户110输入消息的窗口250以及发送消息的按钮260。应当理解,用户110也可以通过其他方式(例如语音)与聊天机器人120进行对话。
参考图2中的211-212,用户110可以在聊天窗口中与聊天机器人120发起第一轮聊天对话。例如,用户110发出关于天气的查询消息211(例如“北京明天天气怎么样?”),聊天机器人120能够正确识别用户的查询天气的意图,并且提供回复212(例如“北京明天晴,气温18-33度。”)。
继续参考图2,用户110还可以与聊天机器人120发起第二轮对话220。例如,用户110发出关于娱乐的消息221(例如“我要看《非诚勿扰》”),聊天机器人120此时无法正确识别用户的意图,于是提供无法识别意图的回复222(例如“对不起,我没明白您的意思。”)。接下来,用户110发送用于澄清前一消息221的新消息223(例如“我要看电影”),由于消息223对消息211的语义澄清,使得聊天机器人120能够准确识别用户的意图是看电影,于是聊天机器人120此时能够提供准确的回复224(例如“正在播放电影——《非诚勿扰》。”)。
在图2的示例GUI 200中,在第一轮对话211-212中,由于聊天机器人120能够正确解析消息211并且准确识别用户110的意图,因而这种对话样本通常无需再标注用于训练聊天机器人120。相反,在第二轮对话220(即221-224)中,聊天机器人120无法准确识别用户的消息221的意图。相反,用户通过消息223对消息221的澄清,聊天机器人120才能够准确识别用户110的意图,因而这种对话样本更适合标注用于训练聊天机器人120。使用对话220训练出的聊天机器人,在下次再遇到消息221这样的消息或类似的情况时,能够根据消息221直接准确确定用户的意图,而无需用户再发出进一步的澄清消息223。因此,本公开的实施例能够实现从自然语言对话直接收集高质量的训练数据,而无需用户的额外人工标注,提高了训练数据的采集效率。此外,根据本公开的实施例收集的训练数据通常涉及聊天机器人无法准确识别的真实异常场景(badcase),因而这样的训练数据更能提高聊天机器人的准确性和智能性。
图3示出了根据本公开的实施例的用于收集训练数据的方法300的流程图。应当理解,方法300可以由以上参考图1所描述的标注机器人130来执行。此外,在聊天机器人120具备标注功能的情况下,方法300也可以由聊天机器人120来执行。
在框302,获得来自用户的第一消息(即第一轮聊天的用户消息)。例如,参考图1和图2,标注机器人130实时地或者非实时地获得来自用户110的消息221。聊天机器人120可以针对消息221,生成相应的回复222,其中回复222指示聊天机器人120未能准确识别用户的意图,例如不能识别用户的意图或者错误识别用户的意图。
在框304,获得来自用户的针对第一回复的第二消息(即第二轮聊天的用户消息),其中第一回复基于第一消息而被生成,并且第一消息和第二消息均为自然语言形式。例如,参考图1和图2,标注机器人130实时地或者非实时地获得来自用户110的针对回复222的消息223。在本公开的实施例中,来自用户110的消息均为自然语言的形式,而无需是固定的机器语言格式,因而不需要用户提前进行了解或者培训。例如,聊天机器人120可以针对消息223,生成回复224。在一些实施例中,回复224可以比回复222更加符合用户110的意图。
在框306,响应于确定第二消息在语义上澄清第一消息,将第一消息确定为用于训练聊天对话的训练数据。例如,图2中的消息223在语义上澄清消息221,用户110告诉聊天机器人120其意图为看《非诚勿扰》这部电影。在这种情况下,聊天机器人120开始没有能够正确解析消息221,而是通过消息223对消息221的澄清,聊天机器人120才识别出用户110的意图。因此,这样的消息221更适合被标注以用于训练聊天机器人120。以下参考图6描述了第二消息在语义上澄清第一消息的若干示例情形。
根据本公开的实施例的方法300,能够从自然语言对话自动收集高质量的训练数据,降低了训练成本并且提高了训练效率。
图4示出了根据本公开的实施例的用于获得训练样本的方法400的流程图。应当理解,方法400可以由以上参考图1所描述的标注机器人130来执行。此外,在聊天机器人120具备标注功能的情况下,方法400也可以由聊天机器人120来执行。此外,框402-406可以为以上参考图3所描述的框306的示例实现。
在框402,标识聊天对话中的待标注的对话样本。例如,标注机器人130实时地或者非实时地获得对话样本,识别出用户的第二消息在语义上澄清第一消息的情形,并将这样的对话确定为要被标注的对话样本。以下参考图6描述了第二消息在语义上澄清第一消息的若干示例情形,例如,标注机器人130可以识别出基于用户110的澄清而改变了调整了聊天机器人120回复的情形。
在框404,确定针对用户消息的标注信息,标注信息是针对第一消息的,但是其是基于用于澄清第一消息的第二消息而被获得的。也就是说,基于第二轮干预后的结果来标注第一轮的消息。在一些实施例中,用户的标注信息可以包括意图类型和词槽信息,词槽信息可以包括词槽类型和词槽值,以下参考图5图示了标注信息的一个示例。
在框406,将用户消息和标注信息相关联地加入到训练样本。例如,标注机器人130将标注数据(其包括用户消息和对应的标注信息)加入到训练数据集140中以用于训练聊天机器人120。例如,图2中的消息221对应的意图类型被标注为看电影。当聊天机器人120下一次接收到与消息221相同或类似的消息,其就能准确识别用户的意图是看电影。以这种方式,根据本公开的实施例的方法400不仅能够收集到用于训练的对话样本,而且能够实现对话样本的自动标注,提高了获取训练数据的效率。
图5示出了根据本公开的实施例的针对用户消息的标注信息的示意图500。例如图5所示,针对用户消息510(例如“今晚六点帮我在全聚德预约一个包厢,十个人”),其标注信息520可以被确定如下:意图类型为预定餐厅,这种类型的意图下包括三个词槽,即餐厅名、时间和人数,其词槽值分别为“全聚德”、“2018.05.29 18:00”以及“10”。在根据本公开的实施例的第二消息在语义上澄清第一消息的场景中,聊天机器人未准确识别第一消息(例如无法标注或者标注错误),而在第二消息对第一消息的澄清之后,聊天机器人才能够对第一消息进行准确标注。也就是说,基于第二轮干预后的结果来标注第一轮的用户消息。
在一些实施例中,可以设置每种意图类型中的词槽。例如,对于导航的意图,词槽可以包括起始地和目的地。备选地,导航意图的词槽还可以包括途经地,作为可选的词槽。在一些实施例中,如果第一消息已经包括词槽值,但是聊天机器人仅能够确定用户的意图类型,而不能确定所有的词槽值,则聊天机器人可以反问用户进行澄清,或者用户针对聊天机器人提供的回复而主动澄清。
图6示出了根据本公开的使用第二消息来澄清第一消息的过程600的流程图。应当理解,图6示出了以上参考图1-4所描述的用户的第二消息在语义上澄清第一消息的一些示例情形。
在框602,用户向聊天机器人发送第一消息。在框604,聊天机器人向用户提供针对第一消息的第一回复。接下来,在606,判断第一回复是否为问句。如果第一回复不是问句(例如是陈述句),则这种情况下需要用户主动地去进行澄清,在608,用户主动澄清并且向聊天机器人发送第二消息。然后,在610,基于用户的主动澄清,聊天机器人向用户提供更加符合用户意图的第二回复。如果在606判断第一回复是问句,则这种情况下聊天机器人主动反问,而用户只是被动澄清,在612,用户被动澄清并且向聊天机器人发送第二消息。然后,在614,基于用户对第一回复中的反问的回答,聊天机器人向用户提供更加符合用户意图的第二回复。
接下来,示出第二消息在语义上澄清第一消息的若干示例情形,包括用户主动澄清(第一回复为陈述句)时的用户主动解释、用户主动澄清时的用户主动纠正、用户被动澄清(第一回复为反问句)时的用户回答反问、以及用户被动澄清时的用户选择反问中的候选结果。应当理解,以下几种情形仅用于示例描述本公开的实施例的一些示例情形,而不用于限制本公开的范围。本公开的范围由所附的权利要求来限定。
I.用户主动澄清——用户主动解释
在聊天机器人错误识别或者无法识别用户意图的情况下,用户可以主动进行解释。例如,在第二消息在语义上澄清第一消息的场景中,如果聊天机器人向用户提供的第一回复为陈述句并且第一回复未准确识别用户的意图,用户可以通过第二消息进行主动解释。在一些实施例中,第二消息可以包括用于解释第一消息的附加信息,聊天机器人基于附加信息来生成针对第二消息的第二回复。例如,以下表1-3示出了用户通过第二消息主动解释第一消息的对话示例。
表1
| 用户的第一消息: | 我要看《非诚勿扰》 |
| 聊天机器人的第一回复: | 对不起,我没明白您的意思 |
| 用户的第二消息: | 我是要看电影 |
| 聊天机器人的第二回复: | 正在播放电影——《非诚勿扰》 |
表2
表3
| 用户的第一消息: | 西二旗,触发 |
| 聊天机器人的第一回复: | 正在前往西二旗 |
| 用户的第二消息: | 我是要从西二旗触发 |
| 聊天机器人的第二回复: | 从西二旗触发,请问您要去哪里? |
在表1的示例中,聊天机器人的第一回复没有成功识别用户的意图,用户的第二消息主动解释了其意图为看电影,基于用户的解释和澄清,聊天机器人能够确定用户的意图是看电影《非诚勿扰》。在表2的示例中,聊天机器人的第一回复错误识别了用户的意图,识别成播放综艺节目《非诚勿扰》,用户的第二消息解释了其意图实际是看电影而不是综艺节目,基于用户的解释和澄清,聊天机器人能够确定用户的意图是看电影《非诚勿扰》。在表3的示例中,聊天机器人开始错误识别了用户意图中的词槽类型(将出发地“西二旗”识别成目的地),用户的第二消息主动解释了“西二旗”为出发地而不是目的地。以这种方式,用户通过使用自然语言形式的第二消息来解释第一消息,使得聊天机器人能够准确识别用户的意图。
应当理解,解释是在原始消息的基础上进行澄清,相反,补充则是在原始基础上增加完全新的内容,两者的含义有差异。对于部分词槽缺失的情况,例如,第一消息只涉及订票的意图而不涉及目的地词槽值,而第二消息包括目的地词槽值,这种情况属于第二消息补充第一消息的情形。
II.用户主动澄清——用户主动纠正
在聊天机器人错误识别或者无法识别用户意图的情况下,用户可以主动进行纠正。例如,在第二消息在语义上澄清第一消息的场景中,如果聊天机器人向用户提供的第一回复为陈述句并且第一回复未准确识别用户的意图,用户可以通过第二消息进行主动纠正。在一些实施例中,第二消息可以包括对第一消息中的识别错误或打字错误的纠正,聊天机器人可以基于纠正来生成针对第二消息的第二回复。例如,以下表4-8示出了用户通过第二消息主动纠正第一消息的对话示例。
表4
| 用户的第一消息: | 我要去西二旗 |
| 聊天机器人的第一回复: | 对不起,我没明白您的意思 |
| 用户的第二消息: | 导航到西二旗 |
| 聊天机器人的第二回复: | 正在查询去西二旗的导航路线 |
表5
| 用户的第一消息: | 我要去西二奇 |
| 聊天机器人的第一回复: | 对不起,我没明白您的意思 |
| 用户的第二消息: | 是西二旗 |
| 聊天机器人的第二回复: | 正在查询去西二旗的导航路线 |
表6
| 用户的第一消息: | 查找王峰的联系方式 |
| 聊天机器人的第一回复: | 正在查询王峰的联系方式,请稍后 |
| 用户的第二消息: | 是丰收的丰 |
| 聊天机器人的第二回复: | 正在查询王丰的联系方式,请稍后 |
表7
| 用户的第一消息: | 我要去习二奇 |
| 聊天机器人的第一回复: | 对不起,我没明白您的意思 |
| 用户的第二消息: | 是东西的西,国旗的旗 |
| 聊天机器人的第二回复: | 正在查询去西二旗的导航路线 |
表8
| 用户的第一消息: | 打电话给13511652271 |
| 聊天机器人的第一回复: | 正在打电话给13511652271 |
| 用户的第二消息: | 是110 |
| 聊天机器人的第二回复: | 正在打电话给13511052271 |
在表4-5和7的示例中,聊天机器人在第一回复时没有成功识别用户的意图;在表6和8的示例中,聊天机器人在第一回复时错误识别了用户的意图。针对聊天机器人的第一回复,用户通过使用第二消息来主动纠正第一消息中的识别错误或打字错误(例如,纠正一个或多个文字、数字等),使得聊天机器人在第二回复时能够准确识别用户的意图。此外,第二消息也可以为完整复述或者部分复述第一消息的内容。应当理解,复述有纠正的效果,当下次再有用户发出同样的消息时,聊天机器人可以实现正确的识别。
III.系统反问澄清——用户回答反问
在聊天机器人不确定用户意图的情况下,可以主动反问用户澄清,用户可对结果反馈以继续对话。例如,在第二消息在语义上澄清第一消息的场景中,如果聊天机器人向用户提供的第一回复为反问句,则用户可以通过第二消息进行回答聊天机器人的反问。在一些实施例中,第二消息可以包括对第一回复中的反问的回答,聊天机器人基于该回答来生成针对第二消息的第二回复。例如,以下表9-11示出了用户通过第二消息回答聊天机器人的反问的对话示例。
表9
表10
表11
在表9的示例中,聊天机器人在第一回复时仅识别到置信度不够高的一个结果(即订火车票),聊天机器人通过反问用户来进行确认。如果聊天机器人的反问结果准确,用户可以通过自然语言对话予以肯定或否定以继续对话,例如,用户可以确认是订火车票,则聊天机器人准确识别订火车票的意图。在表10和11的示例中,聊天机器人无法准确识别用户的词槽值是否属于某个词槽类型,其可以通过反问来确认词槽信息。以这种方式,用户使用第二消息来回答聊天机器人的反问(例如,确认、否认、更改词槽等),使得聊天机器人能够准确识别用户的意图。
IV.系统反问澄清——用户选择反问中的候选结果
在聊天机器人识别到多个候选结果的情况下,可以主动反问用户澄清,用户可对结果反馈以继续对话。例如,在第二消息在语义上澄清第一消息的场景中,如果聊天机器人向用户提供的第一回复是包括多个候选结果的反问句,则用户可以通过第二消息回答聊天机器人的反问。在一些实施例中,第二消息可以包括对第一回复中的多个候选结果的选择,聊天机器人基于用户选择来生成针对第二消息的第二回复。例如,以下表12-14示出了用户通过第二消息选择聊天机器人的反问中的候选结果的对话示例。
表12
表13
表14
在表12-14的示例中,聊天机器人的第一回复识别到多个候选结果,聊天机器人可以主动反问用户,用户可以对选择其中的某个候选结果(例如,选择排序位置、使用与候选结果有关的关键词等),从而实现用户被动澄清第一消息的效果。以这种方式,用户使用第二消息来选择聊天机器人的反问中的候选结果,使得聊天机器人能够准确识别用户的意图。
在一些实施例中,在用户与聊天机器人的聊天对话过程中,当用户希望改变已识别的词槽结果时,用户可以直接通过自然语言消息进行更改。例如,如果用户的第一消息涉及预定去北京的飞机票,聊天机器人的第一回复查询去北京的航班,如果用户接下来的第二消息将目的地词槽修改为南京,则聊天机器人的第二回复则修改为查询去南京的航班。此外,在聊天机器人出现错误识别、无法识别、不确定识别结果或识别到多个结果时,主动反问用户,用户也可以直接表达新的意图,而聊天机器人可以准确识别新意图而不是继续停留在之前的澄清过程中。
在一些实施例中,用户的第二消息可以为过激的语言,在这种情况下,聊天机器人基于过激语言的第二消息,可以确定其第一回复未能准确识别用户的意图,因而聊天机器人可以在第二回复中使用反问句来请求用户的进一步消息或确认。例如,用户可以使用“笨蛋”、“太笨了”之类的过激语言来否定聊天机器人的反问。
在一些实施例中,针对聊天机器人的反问形式的第一回复,在反问中的候选结果都不准确的情况下,用户可以通过自然语言消息直接否认,例如发出“都不是”、“都不对”等消息,此外,用户也可以直接发出新的消息内容进行纠正。在这种情况下,聊天机器人可以认为第一回复中的识别结果均未满足用户的意图,其将进行调整以提供更多的候选结果或者询问用户进一步的澄清或补充。
在一些实施例中,如果聊天机器人一直未准确识别用户的意图,聊天机器人可以继续反问,例如发起反问形式的第二回复、反问形式的第三回复,直到得到用户的肯定结果。备选地,也可以设置聊天机器人反问的阈值次数(例如3次),在超过阈值次数之后,即使聊天机器人仍未准确识别用户的意图,也不再继续反问,而是结束对话,并且告诉用户其仍然不能明白用户的意思。在一些实施例,如果用户的第二消息为中止聊天对话的意思表示,则聊天机器人相应地中止对话过程。
在一些实施例中,在聊天机器人识别到多个候选结果的情况下,聊天机器人通过第一回复提供多个候选结果供用户选择,如果这些候选结果都不符合用户的意图,则用户可以通过第二消息直接否定或者指示换一批候选结果。聊天机器人基于用户的第二消息,继续生成反问形式的第二回复,以请求用户的进一步澄清或者补充。
图7示出了根据本公开的实施例的用于收集训练数据的装置700的框图。如图7所示,装置700包括第一消息获得模块710、第二消息获得模块720以及训练数据确定模块730。第一消息获得模块710被配置为获得来自用户的第一消息。第二消息获得模块720被配置为获得来自用户的针对第一回复的第二消息,其中第一回复基于第一消息而被生成,并且第一消息和第二消息均为自然语言形式。训练数据确定模块730被配置为响应于确定第二消息在语义上澄清第一消息,将第一消息确定为用于训练聊天对话的训练数据。
在一些实施例中,其中训练数据确定模块730包括:标注信息确定模块,被配置为基于第二消息对第一消息的语义澄清,确定针对第一消息的标注信息;以及关联确定模块,被配置为将第一消息和标注信息相关联地确定为训练数据。
在一些实施例中,其中标注信息确定模块包括意图确定模块,意图确定模块被配置为确定第一消息的意图类型和词槽信息,其中词槽信息包括词槽类型和词槽值。
在一些实施例中,装置700还包括陈述句提供模块,被配置为向用户提供第一回复,第一回复为陈述句形式并且未准确识别用户的意图;和/或,反问句提供模块,被配置为向用户提供第一回复,第一回复为反问句形式。
在一些实施例中,装置700还包括第一生成模块,被配置为响应于第二消息包括用于解释第一消息的附加信息,基于附加信息来生成针对第二消息的第二回复;以及第一提供模块,被配置为向用户提供第二回复。
在一些实施例中,装置700还包括:第二生成模块,被配置为响应于第二消息包括对第一消息中的识别错误或打字错误的纠正,基于纠正来生成针对第二消息的第二回复;以及第二提供模块,被配置为向用户提供第二回复。
在一些实施例中,装置700还包括:第三生成模块,被配置为响应于第二消息包括对第一回复中的反问的回答,基于回答来生成针对第二消息的第二回复;以及第三提供模块,被配置为向用户提供第二回复。
在一些实施例中,其中第三生成模块包括第四生成模块,第四生成模块被配置为基于第二消息对第一回复中的多个候选结果的选择,生成第二回复。
应当理解,图7中所示出的第一消息获得模块710、第二消息获得模块720以及训练数据确定模块730可以被包括在参考图1所描述的标注机器人130中或聊天机器人120中(在聊天机器人120具备标注的功能的情况下)。而且,应当理解,图7中所示出的模块可以执行参考本公开的实施例的方法或过程中的步骤或动作。
图8示出了可以用来实施本公开的实施例的示例设备800的示意性框图。应当理解,设备800可以用于实现本公开所描述的用于收集训练数据的装置700、聊天机器人120或者标注机器人130。如图所示,设备800包括中央处理单元(CPU)801,其可以根据存储在只读存储器(ROM)802中的计算机程序指令或者从存储单元808加载到随机访问存储器(RAM)803中的计算机程序指令,来执行各种适当的动作和处理。在RAM 803中,还可存储设备800操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
设备800中的多个部件连接至I/O接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理单元801执行上文所描述的各个方法和过程。例如,在一些实施例中,方法或过程可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由ROM 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到RAM 803并由CPU 801执行时,可以执行上文描述的方法或过程的一个或多个动作或步骤。备选地,在其他实施例中,CPU 801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法或过程。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD),等等。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
此外,虽然采用特定次序描绘了各动作或步骤,但是这应当理解为要求这样动作或步骤以所示出的特定次序或以顺序次序执行,或者要求所有图示的动作或步骤应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本公开的实施例,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
Claims (18)
1.一种用于收集训练数据的方法,包括:
获得来自用户的第一消息;
获得来自所述用户的针对第一回复的第二消息,所述第一回复基于所述第一消息而被生成,并且所述第一消息和所述第二消息均为自然语言形式;以及
响应于确定所述第二消息在语义上澄清所述第一消息,将所述第一消息确定为用于训练聊天对话的训练数据。
2.根据权利要求1所述的方法,其中将所述第一消息确定为所述训练数据包括:
基于所述第二消息对所述第一消息的语义澄清,确定针对所述第一消息的标注信息;以及
将所述第一消息和所述标注信息相关联地确定为所述训练数据。
3.根据权利要求2所述的方法,其中确定针对所述第一消息的标注信息包括:
确定所述第一消息的意图类型和词槽信息,所述词槽信息包括词槽类型和词槽值。
4.根据权利要求1所述的方法,还包括以下至少一项:
向所述用户提供所述第一回复,所述第一回复为陈述句形式并且未准确识别所述用户的意图;以及
向所述用户提供所述第一回复,所述第一回复为反问句形式。
5.根据权利要求1所述的方法,还包括:
响应于所述第二消息包括用于解释所述第一消息的附加信息,基于所述附加信息来生成针对所述第二消息的第二回复;以及
向所述用户提供所述第二回复。
6.根据权利要求1所述的方法,还包括:
响应于所述第二消息包括对所述第一消息中的识别错误或打字错误的纠正,基于所述纠正来生成针对所述第二消息的第二回复;以及
向所述用户提供所述第二回复。
7.根据权利要求1所述的方法,还包括:
响应于所述第二消息包括对所述第一回复中的反问的回答,基于所述回答来生成针对所述第二消息的第二回复;以及
向所述用户提供所述第二回复。
8.根据权利要求7所述的方法,其中基于所述回答来生成所述第二回复还包括:
基于所述第二消息对所述第一回复中的多个候选结果的选择,生成所述第二回复。
9.一种用于收集训练数据的装置,包括:
第一消息获得模块,被配置为获得来自用户的第一消息;
第二消息获得模块,被配置为获得来自所述用户的针对第一回复的第二消息,所述第一回复基于所述第一消息而被生成,并且所述第一消息和所述第二消息均为自然语言形式;以及
训练数据确定模块,被配置为响应于确定所述第二消息在语义上澄清所述第一消息,将所述第一消息确定为用于训练聊天对话的训练数据。
10.根据权利要求9所述的装置,其中所述训练数据确定模块包括:
标注信息确定模块,被配置为基于所述第二消息对所述第一消息的语义澄清,确定针对所述第一消息的标注信息;以及
关联确定模块,被配置为将所述第一消息和所述标注信息相关联地确定为所述训练数据。
11.根据权利要求10所述的装置,其中所述标注信息确定模块包括:
意图确定模块,被配置为确定所述第一消息的意图类型和词槽信息,所述词槽信息包括词槽类型和词槽值。
12.根据权利要求10所述的装置,还包括以下至少一项:
陈述句提供模块,被配置为向所述用户提供所述第一回复,所述第一回复为陈述句形式并且未准确识别所述用户的意图;以及
反问句提供模块,被配置为向所述用户提供所述第一回复,所述第一回复为反问句形式。
13.根据权利要求10所述的装置,还包括:
第一生成模块,被配置为响应于所述第二消息包括用于解释所述第一消息的附加信息,基于所述附加信息来生成针对所述第二消息的第二回复;以及
第一提供模块,被配置为向所述用户提供所述第二回复。
14.根据权利要求10所述的装置,还包括:
第二生成模块,被配置为响应于所述第二消息包括对所述第一消息中的识别错误或打字错误的纠正,基于所述纠正来生成针对所述第二消息的第二回复;以及
第二提供模块,被配置为向所述用户提供所述第二回复。
15.根据权利要求10所述的装置,还包括:
第三生成模块,被配置为响应于所述第二消息包括对所述第一回复中的反问的回答,基于所述回答来生成针对所述第二消息的第二回复;以及
第三提供模块,被配置为向所述用户提供所述第二回复。
16.根据权利要求15所述的装置,其中所述第三生成模块包括:
第四生成模块,被配置为基于所述第二消息对所述第一回复中的多个候选结果的选择,生成所述第二回复。
17.一种电子设备,所述电子设备包括:
一个或多个处理器;以及
存储装置,用于存储一个或多个程序,所述一个或多个程序当被所述一个或多个处理器执行,使得所述电子设备实现根据权利要求1-8中任一项所述的方法。
18.一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现根据权利要求1-8中任一项所述的方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201810553778.3A CN108763548A (zh) | 2018-05-31 | 2018-05-31 | 收集训练数据的方法、装置、设备和计算机可读存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201810553778.3A CN108763548A (zh) | 2018-05-31 | 2018-05-31 | 收集训练数据的方法、装置、设备和计算机可读存储介质 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN108763548A true CN108763548A (zh) | 2018-11-06 |
Family
ID=64001833
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201810553778.3A Pending CN108763548A (zh) | 2018-05-31 | 2018-05-31 | 收集训练数据的方法、装置、设备和计算机可读存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN108763548A (zh) |
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109639444A (zh) * | 2019-02-20 | 2019-04-16 | 腾讯科技(深圳)有限公司 | 消息处理方法、装置、电子设备及存储介质 |
| CN110427461A (zh) * | 2019-08-06 | 2019-11-08 | 腾讯科技(深圳)有限公司 | 智能问答信息处理方法、电子设备及计算机可读存储介质 |
| CN110866100A (zh) * | 2019-11-07 | 2020-03-06 | 北京声智科技有限公司 | 一种话术泛化方法、装置及电子设备 |
| CN112015958A (zh) * | 2019-05-31 | 2020-12-01 | 微软技术许可有限责任公司 | 自动聊天中的内容推荐 |
| CN112199591A (zh) * | 2020-10-10 | 2021-01-08 | 何波昌 | 基于社交软件聊天窗口的机票查订方法、服务器及介质 |
| CN113486159A (zh) * | 2020-03-17 | 2021-10-08 | 东芝泰格有限公司 | 信息处理装置、信息处理系统及存储介质 |
| CN114430378A (zh) * | 2020-10-15 | 2022-05-03 | 中国移动通信集团浙江有限公司 | 聊天机器人的异常检测方法、装置、计算设备及存储介质 |
| WO2022089546A1 (zh) * | 2020-10-28 | 2022-05-05 | 华为云计算技术有限公司 | 标签生成方法、装置及相关设备 |
| US11720634B2 (en) | 2021-03-09 | 2023-08-08 | International Business Machines Corporation | Automatic generation of clarification questions for conversational search |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105027197A (zh) * | 2013-03-15 | 2015-11-04 | 苹果公司 | 训练至少部分语音命令系统 |
| US20170169115A1 (en) * | 2015-12-09 | 2017-06-15 | Industrial Technology Research Institute | Internet question answering system and method, and computer readable recording media |
| CN107463601A (zh) * | 2017-06-13 | 2017-12-12 | 北京百度网讯科技有限公司 | 基于人工智能的对话理解系统构建方法、装置、设备及计算机可读存储介质 |
-
2018
- 2018-05-31 CN CN201810553778.3A patent/CN108763548A/zh active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105027197A (zh) * | 2013-03-15 | 2015-11-04 | 苹果公司 | 训练至少部分语音命令系统 |
| US20170169115A1 (en) * | 2015-12-09 | 2017-06-15 | Industrial Technology Research Institute | Internet question answering system and method, and computer readable recording media |
| CN107463601A (zh) * | 2017-06-13 | 2017-12-12 | 北京百度网讯科技有限公司 | 基于人工智能的对话理解系统构建方法、装置、设备及计算机可读存储介质 |
Cited By (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109639444A (zh) * | 2019-02-20 | 2019-04-16 | 腾讯科技(深圳)有限公司 | 消息处理方法、装置、电子设备及存储介质 |
| CN112015958A (zh) * | 2019-05-31 | 2020-12-01 | 微软技术许可有限责任公司 | 自动聊天中的内容推荐 |
| CN110427461B (zh) * | 2019-08-06 | 2023-04-07 | 腾讯科技(深圳)有限公司 | 智能问答信息处理方法、电子设备及计算机可读存储介质 |
| CN110427461A (zh) * | 2019-08-06 | 2019-11-08 | 腾讯科技(深圳)有限公司 | 智能问答信息处理方法、电子设备及计算机可读存储介质 |
| CN110866100A (zh) * | 2019-11-07 | 2020-03-06 | 北京声智科技有限公司 | 一种话术泛化方法、装置及电子设备 |
| CN110866100B (zh) * | 2019-11-07 | 2022-08-23 | 北京声智科技有限公司 | 一种话术泛化方法、装置及电子设备 |
| CN113486159A (zh) * | 2020-03-17 | 2021-10-08 | 东芝泰格有限公司 | 信息处理装置、信息处理系统及存储介质 |
| CN112199591A (zh) * | 2020-10-10 | 2021-01-08 | 何波昌 | 基于社交软件聊天窗口的机票查订方法、服务器及介质 |
| CN112199591B (zh) * | 2020-10-10 | 2023-09-26 | 何波昌 | 基于社交软件聊天窗口的机票查订方法、服务器及介质 |
| CN114430378A (zh) * | 2020-10-15 | 2022-05-03 | 中国移动通信集团浙江有限公司 | 聊天机器人的异常检测方法、装置、计算设备及存储介质 |
| CN114430378B (zh) * | 2020-10-15 | 2023-08-18 | 中国移动通信集团浙江有限公司 | 聊天机器人的异常检测方法、装置、计算设备及存储介质 |
| WO2022089546A1 (zh) * | 2020-10-28 | 2022-05-05 | 华为云计算技术有限公司 | 标签生成方法、装置及相关设备 |
| US11720634B2 (en) | 2021-03-09 | 2023-08-08 | International Business Machines Corporation | Automatic generation of clarification questions for conversational search |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN108763548A (zh) | 收集训练数据的方法、装置、设备和计算机可读存储介质 | |
| CN112988991B (zh) | 一种通过人机对话进行反欺诈干预的方法和系统 | |
| US10776580B2 (en) | Method for providing dialogue service with chatbot assisted by human agents | |
| US10079013B2 (en) | Sharing intents to provide virtual assistance in a multi-person dialog | |
| JP6604836B2 (ja) | 対話テキスト要約装置及び方法 | |
| CN109002501A (zh) | 用于处理自然语言对话的方法、装置、电子设备以及计算机可读存储介质 | |
| CN117112065B (zh) | 大模型插件调用方法、装置、设备及介质 | |
| WO2018224034A1 (zh) | 智能问答方法、服务器、终端及存储介质 | |
| US20150149182A1 (en) | Sharing Intents to Provide Virtual Assistance in a Multi-Person Dialog | |
| CN105989084B (zh) | 一种回复问题的方法和设备 | |
| CN110610705A (zh) | 一种基于人工智能的语音交互提示器 | |
| CN111737987B (zh) | 意图识别方法、装置、设备及存储介质 | |
| CN113140138A (zh) | 互动教学方法、装置、存储介质及电子设备 | |
| CN108897771B (zh) | 自动问答方法、装置、计算机可读存储介质及电子设备 | |
| CN117198289B (zh) | 语音交互方法、装置、设备、介质及产品 | |
| CN114860910B (zh) | 智能对话方法及系统 | |
| CN108877792A (zh) | 用于处理语音对话的方法、装置、电子设备以及计算机可读存储介质 | |
| CN110288995A (zh) | 基于语音识别的交互方法、装置、存储介质和电子设备 | |
| CN110047473A (zh) | 一种人机协作交互方法及系统 | |
| CN114049891A (zh) | 一种信息生成方法、装置、电子设备及存储介质 | |
| CN113111658B (zh) | 校验信息的方法、装置、设备和存储介质 | |
| CN119646145A (zh) | 对话分析方法、装置、眼镜、设备及可读存储介质 | |
| WO2023234128A1 (ja) | 対話管理装置、対話管理方法及び対話管理システム | |
| KR102359228B1 (ko) | 맞춤형 대화 연결 서비스 제공방법 | |
| CN109243424A (zh) | 一种一键语音翻译终端及翻译方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| RJ01 | Rejection of invention patent application after publication | ||
| RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181106 |