CN105630960A - 测试领域任务型对话系统的方法和装置 - Google Patents

测试领域任务型对话系统的方法和装置 Download PDF

Info

Publication number
CN105630960A
CN105630960A CN201510983378.2A CN201510983378A CN105630960A CN 105630960 A CN105630960 A CN 105630960A CN 201510983378 A CN201510983378 A CN 201510983378A CN 105630960 A CN105630960 A CN 105630960A
Authority
CN
China
Prior art keywords
key word
bit stream
mission bit
conversational system
reply message
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.)
Granted
Application number
CN201510983378.2A
Other languages
English (en)
Other versions
CN105630960B (zh
Inventor
吴世伟
冯钰坤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201510983378.2A priority Critical patent/CN105630960B/zh
Publication of CN105630960A publication Critical patent/CN105630960A/zh
Application granted granted Critical
Publication of CN105630960B publication Critical patent/CN105630960B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems

Abstract

本申请公开了测试领域任务型对话系统的方法和装置。所述方法的一具体实施方式包括:获取领域任务型对话系统输出的询问信息;在预先构建的任务数据库中获取单条任务信息,其中,任务数据库包括但不限于多条任务信息,每一条任务信息包括但不限于多组键值对,每组键值对包括但不限于关键词及关联关键词的实例;向领域任务型对话系统提交由单条任务信息中的键值对生成的答复信息;根据领域任务型对话系统输出的询问信息以及依据任务数据库提交的答复信息,生成对领域任务型对话系统的测试数据。该实施方式向开发人员推送的测试结果较为全面并且富于针对性。

Description

测试领域任务型对话系统的方法和装置
技术领域
本申请涉及计算机技术领域,具体涉及互联网技术领域,尤其涉及测试领域任务型对话系统的方法和装置。
背景技术
在现有技术中,真实用户在进行人机对话时,主观性较强,对于领域任务型对话系统的询问存在不同的查询习惯,因此需要领域任务型对话系统具有较高的语义理解能力。为了保证领域任务型对话系统能够准确识别用户语义,需要对对话系统进行测试。
目前用于测试人机对话系统的技术,通常使用关键词作为查询语句来测试人机对话系统的响应。
然而,目前这种通过关键词查询人机对话系统的响应的测试方式,无法模拟用户答复方式的多样性,因而向开发人员推送的测试结果未能反应出人机对话系统的一些关键测试指标,较为片面并且缺乏针对性。
发明内容
本申请的目的在于提出一种改进的测试领域任务型对话系统的方法和装置,来解决以上背景技术部分提到的技术问题。
第一方面,本申请提供了一种测试领域任务型对话系统的方法,所述方法包括:获取领域任务型对话系统输出的询问信息;在预先构建的任务数据库中获取单条任务信息,其中,所述任务数据库包括多条任务信息,每一条任务信息包括多组键值对,每组键值对包括关键词及关联所述关键词的实例;向所述领域任务型对话系统提交由所述单条任务信息中的键值对生成的答复信息;根据领域任务型对话系统输出的询问信息以及依据所述任务数据库提交的答复信息,生成对所述领域任务型对话系统的测试数据。
在一些实施例中,所述向所述领域任务型对话系统提交由所述单条任务信息中的键值对生成的答复信息包括:向所述领域任务型对话系统提交符合预设用户类型的由所述单条任务信息中的键值对生成的答复信息,其中,所述预设用户类型至少包括以下一项或多项:系统引导类型、核对查询类型和随机查询类型。
在一些实施例中,所述向所述领域任务型对话系统提交符合预设用户类型的由所述单条任务信息中的键值对生成的答复信息至少包括以下一项或多项:若所述预设用户类型包括系统引导类型,向所述领域任务型对话系统提交基于从所述单条任务信息中获取的关键词与所述询问信息的关键词相同的键值对生成的答复信息;若所述预设用户类型包括核对查询类型,核对所述询问信息的关键词是否符合上一次提交的答复信息的关键词,若符合,则向所述领域任务型对话系统提交基于从所述单条任务信息中获取的关键词与所述询问信息的关键词相同的键值对生成的答复信息,若不符合,则向所述领域任务型对话系统提交基于上一次答复信息的键值对生成的答复信息;若所述预设用户类型包括随机查询类型,向所述领域任务型对话系统提交基于从所述单条任务信息中随机获取的键值对生成的答复信息。
在一些实施例中,所述向所述领域任务型对话系统提交符合预设用户类型的由所述单条任务信息中的键值对生成的答复信息包括:向所述领域任务型对话系统提交符合所述预设用户类型的由所述单条任务信息中的键值对套用预设的键值对的表达模板之一生成的答复信息。
在一些实施例中,所述根据领域任务型对话系统输出的询问信息以及依据所述任务数据库提交的答复信息,生成对所述领域任务型对话系统的测试数据至少包括以下一项或多项:将领域任务型对话系统输出的询问信息的数量及依据所述任务数据库提交的答复信息的数量相加后除以所述任务数据库中包括的任务信息的数量,得到平均对话长度;将依据所述任务数据库提交的答复信息及所答复的询问信息中已完成任务信息的数量除以所述任务数据库中包括的任务信息的数量,得到对话完成率,其中,所述已完成任务信息为基于每一组键值对已提交答复信息的任务信息;响应于所述询问信息的键值对与当前任务信息中的键值对相同,确定关键词准确,将所述任务数据库中用于生成答复信息的关键词准确的数量除以所述任务数据库中关键词用于生成答复信息的数量,得到关键词准确率;遍历所述任务数据库中的关键词,将所述关键词准确率进行累加,得到对话系统准确率。
在一些实施例中,所述领域任务型对话系统输出的询问信息的结构如下:
M = { A s k _ k e y _ s l o t ⊆ s 1 ... s n , Re s u l t _ inf o r m a t i o n = s j v j . . . . . . }
其中,M表示所述领域任务型对话系统输出的询问信息的结构,Ask_key_slot表示当前所述领域任务型对话系统的询问信息的关键词,n表示询问信息的关键词的数量,sj(1≤j≤n)表示询问信息中第j个关键词,Result_information表示当前所述领域任务型对话系统基于预设的检索库检索到的关键词的实例,用一个2列的矩阵表示,所述矩阵的第一列表示关键词,第二列表示关键词的实例值;
所述领域任务型对话系统输出的询问信息所基于的任务信息的定义如下:
(onedialoguetask)D=[s1…sn]
其中,(onedialoguetask)D表示询问信息所基于的任务信息,n表示询问信息所基于的任务信息的关键词的数量,sj(1≤j≤n)表示询问信息所基于的任务信息中第j个关键词;
所述任务数据库的定义如下:
T = S 11 S 12 ... S 1 n . . . . . . S m 1 S m 2 ... S m n m × n
其中,T为以矩阵的形式表示的任务数据库,矩阵的每一行定义一条任务信息,矩阵中的元素是任务数据库中任务信息的关键词,即Sij(1≤i≤m,1≤j≤n)表示任务数据库中第i个任务信息的第j个关键词。
在一些实施例中,所述将领域任务型对话系统输出的询问信息的数量及依据所述任务数据库提交的答复信息的数量相加后除以所述任务数据库中包括的任务信息的数量,得到平均对话长度包括:
a l = q s d s + q e v a l m
其中,al为平均对话长度;qsds为领域任务型对话系统输出的询问信息的数量;qeval为依据所述任务数据库提交的答复信息的数量;m为以矩阵的形式表示的任务数据库T的行数;
所述将依据所述任务数据库提交的答复信息及所答复的询问信息中已完成任务信息的数量除以所述任务数据库中包括的任务信息的数量,得到对话完成率包括:
d f r = d f m
其中,dfr为对话完成率;m为矩阵T的行数;df表示依据所述任务数据库T提交的答复信息及所答复的询问信息中已完成任务信息的数量,当任务信息的每一组键值对均已提交答复信息时,所述任务信息为已完成任务信息;
所述将所述任务数据库中用于生成答复信息的关键词准确的数量除以所述任务数据库中关键词用于生成答复信息的数量,得到关键词准确率包括:
ksr s = a s t s
其中,ksrs表示关键词s的准确率;as表示以矩阵形式表示的任务数据库T中关键词s用于准确生成答复信息的数量,在每次生成答复信息时,将所述结构化信息M中的Result_information与T的当前任务信息进行对比,若对比结果相同,则关键词s准确;ts表示在所述任务数据库T中关键词s用于生成答复信息的总次数;
所述遍历所述任务数据库中的关键词,将所述关键词准确率进行累加,得到对话系统准确率包括:
d a r = Σ s ksr s
其中,dar表示对话系统准确率;ksrs表示关键词s的准确率;∑表示遍历所有的关键词s,将所述ksrs进行累加。
第二方面,本申请提供了一种测试领域任务型对话系统的装置,所述装置包括:询问信息获取模块,用于获取领域任务型对话系统输出的询问信息;任务信息获取模块,用于在预先构建的任务数据库中获取单条任务信息,其中,所述任务数据库包括多条任务信息,每一条任务信息包括多组键值对,每组键值对包括关键词及关联所述关键词的实例;答复信息提交模块,用于向所述领域任务型对话系统提交由所述单条任务信息中的键值对生成的答复信息;测试数据生成模块,用于根据领域任务型对话系统输出的询问信息以及依据所述任务数据库提交的答复信息,生成对所述领域任务型对话系统的测试数据。
在一些实施例中,所述答复信息提交模块进一步用于:向所述领域任务型对话系统提交符合预设用户类型的由所述单条任务信息中的键值对生成的答复信息,其中,所述预设用户类型至少包括以下一项或多项:系统引导类型、核对查询类型和随机查询类型。
在一些实施例中,所述答复信息提交模块至少包括以下一项或多项:系统引导提交模块,用于若所述预设用户类型包括系统引导类型,向所述领域任务型对话系统提交基于从所述单条任务信息中获取的关键词与所述询问信息的关键词相同的键值对生成的答复信息;核对查询提交模块,用于若所述预设用户类型包括核对查询类型,核对所述询问信息的关键词是否符合上一次提交的答复信息的关键词,若符合,则向所述领域任务型对话系统提交基于从所述单条任务信息中获取的关键词与所述询问信息的关键词相同的键值对生成的答复信息,若不符合,则向所述领域任务型对话系统提交基于上一次答复信息的键值对生成的答复信息;随机查询提交模块,用于若所述预设用户类型包括随机查询类型,向所述领域任务型对话系统提交基于从所述单条任务信息中随机获取的键值对生成的答复信息。
在一些实施例中,所述答复信息提交模块进一步用于:向所述领域任务型对话系统提交符合所述预设用户类型的由所述单条任务信息中的键值对套用预设的键值对的表达模板之一生成的答复信息。
在一些实施例中,所述测试数据生成模块至少包括以下一项或多项:平均对话长度生成模块,用于将领域任务型对话系统输出的询问信息的数量及依据所述任务数据库提交的答复信息的数量相加后除以所述任务数据库中包括的任务信息的数量,得到平均对话长度;对话完成率生成模块,用于将依据所述任务数据库提交的答复信息及所答复的询问信息中已完成任务信息的数量除以所述任务数据库中包括的任务信息的数量,得到对话完成率,其中,所述已完成任务信息为基于每一组键值对已提交答复信息的任务信息;关键词准确率生成模块,用于响应于生成答复信息的关键词与当前任务信息中的关键词相同,确定关键词准确,将所述任务数据库中用于生成答复信息的关键词准确的数量除以所述任务数据库中关键词用于生成答复信息的数量,得到关键词准确率;对话系统准确率生成模块,用于遍历所述任务数据库中的关键词,将所述关键词准确率进行累加,得到对话系统准确率。
在一些实施例中,所述询问信息获取模块获取的所述领域任务型对话系统输出的询问信息的结构如下:
M = { A s k _ k e y _ s l o t ⊆ s 1 ... s n , Re s u l t _ inf o r m a t i o n = s j v j . . . . . . }
其中,M表示所述领域任务型对话系统输出的询问信息的结构,Ask_key_slot表示当前所述领域任务型对话系统的询问信息的关键词,n表示询问信息的关键词的数量,sj(1≤j≤n)表示询问信息中第j个关键词,Result_information表示当前所述领域任务型对话系统基于预设的检索库检索到的关键词的实例,用一个2列的矩阵表示,所述矩阵的第一列表示关键词,第二列表示关键词的实例值;
所述询问信息获取模块获取的所述领域任务型对话系统输出的询问信息所基于的任务信息的定义如下:
(onedialoguetask)D=[s1…sn]
其中,(onedialoguetask)D表示询问信息所基于的任务信息,n表示询问信息所基于的任务信息的关键词的数量,sj(1≤j≤n)表示询问信息所基于的任务信息中第j个关键词;
所述任务信息获取模块获取所述单条任务信息所调用的所述任务数据库的定义如下:
T = S 11 S 12 ... S 1 n . . . . . . S m 1 S m 2 ... S m n m × n
其中,T为以矩阵的形式表示的任务数据库,矩阵的每一行定义一条任务信息,矩阵中的元素是任务数据库中任务信息的关键词,即Sij(1≤i≤m,1≤j≤n)表示任务数据库中第i个任务信息的第j个关键词。
在一些实施例中,所述平均对话长度生成模块中的所述将领域任务型对话系统输出的询问信息的数量及依据所述任务数据库提交的答复信息的数量相加后除以所述任务数据库中包括的任务信息的数量,得到平均对话长度包括:
a l = q s d s + q e v a l m
其中,al为平均对话长度;qsds为领域任务型对话系统输出的询问信息的数量;qeval为依据所述任务数据库提交的答复信息的数量;m为以矩阵的形式表示的任务数据库T的行数;
所述对话完成率生成模块中的所述将依据所述任务数据库提交的答复信息及所答复的询问信息中已完成任务信息的数量除以所述任务数据库中包括的任务信息的数量,得到对话完成率包括:
d f r = d f m
其中,dfr为对话完成率;m为矩阵T的行数;df表示依据所述任务数据库T提交的答复信息及所答复的询问信息中已完成任务信息的数量,当任务信息的每一组键值对均已提交答复信息时,所述任务信息为已完成任务信息;
所述关键词准确率生成模块中的所述将所述任务数据库中用于生成答复信息的关键词准确的数量除以所述任务数据库中关键词用于生成答复信息的数量,得到关键词准确率包括:
ksr s = a s t s
其中,ksrs表示关键词s的准确率;as表示以矩阵形式表示的任务数据库T中关键词s用于准确生成答复信息的数量,在每次生成答复信息时,将所述结构化信息M中的Result_information与T的当前任务信息进行对比将所述结构化信息M中的Result_information与T的当前任务信息进行对比,若对比结果相同,则关键词s准确;ts表示在所述任务数据库T中关键词s用于生成答复信息的总次数;
所述对话系统准确率生成模块中的所述遍历所述任务数据库中的关键词,将所述关键词准确率进行累加,得到对话系统准确率包括:
d a r = Σ s ksr s
其中,dar表示对话系统准确率;ksrs表示关键词s的准确率;∑表示遍历所有的关键词s,将所述ksrs进行累加。
本申请提供的测试领域任务型对话系统的方法和装置,通过获取领域任务型对话系统输出的询问信息,之后在预先构建的任务数据库中获取单条任务信息,然后向领域任务型对话系统提交由单条任务信息中的键值对生成的答复信息,最后根据领域任务型对话系统输出的询问信息以及依据任务数据库提交的答复信息,生成对领域任务型对话系统的测试数据,从而基于任务数据库中的多条任务信息模拟用户答复方式的多样性,向开发人员推送的测试结果较为全面并且富于针对性。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性系统架构图;
图2是根据本申请的测试领域任务型对话系统的方法的一个实施例的示意性流程图;
图3是根据本申请的测试领域任务型对话系统的方法的一个应用场景的示意图;
图4是根据本申请的测试领域任务型对话系统的装置的一个实施例的结构示意图;
图5是适于用来实现本申请实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的测试领域任务型对话系统的方法或测试领域任务型对话系统的装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。其中,无线连接方式可以包括但不限于3G/4G连接、WiFi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB(ultrawideband)连接、以及其他现在已知或将来开发的无线连接方式。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种领域任务型对话系统的客户端应用,例如订票平台、视频搜索应用、智能家居控制软件等。
终端设备101、102、103可以是具有显示屏并且支持网络交互的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(MovingPictureExpertsGroupAudioLayerIII,动态影像专家压缩标准音频层面3)、MP4(MovingPictureExpertsGroupAudioLayerIV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的领域任务型对话系统提供支持的后台服务器。后台服务器可以运行领域任务型对话系统,并对领域任务型对话系统进行测试并输出测试结果。
需要说明的是,本申请实施例所提供的测试领域任务型对话系统的方法一般由服务器105执行,相应地,测试领域任务型对话系统的装置一般设置于服务器105中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的测试领域任务型对话系统的方法的一个实施例的流程200。所述的测试领域任务型对话系统的方法,包括以下步骤:
步骤201,获取领域任务型对话系统输出的询问信息。
在本实施例中,领域任务型对话系统是指针对具体应用领域,具有比较清晰的业务语义单元的定义、本体结构以及用户目标范畴,例如航班查询、火车票预订、酒店预订、视频搜索、智能家居控制等等,这类交互往往是以完成特定的操作任务作为交互目标。
领域任务型对话系统输出的与用户进行交互的询问信息,通常可以为结构化的询问信息,从而运行测试领域任务型对话系统的方法的测试系统可以根据当前结构化的询问信息进行多元化的决策,而不需要提前约定回复次序。领域任务型对话系统输出的询问信息是基于任务的,而一项任务由许多关键词来定义。
在本实施例的一些可选实现方式中,领域任务型对话系统输出的询问信息的结构如下:
M = { A s k _ k e y _ s l o t ⊆ s 1 ... s n , Re s u l t _ inf o r m a t i o n = s j v j . . . . . . }
其中,M表示领域任务型对话系统输出的询问信息的结构,Ask_key_slot表示当前领域任务型对话系统的询问信息的关键词,n表示询问信息的关键词的数量,sj(1≤j≤n)表示询问信息中第j个关键词,Result_information表示当前领域任务型对话系统基于预设的检索库检索到的关键词的实例,用一个2列的矩阵表示,矩阵的第一列表示关键词,第二列表示关键词的实例值。例如在火车票预订的任务型对话系统的某个对话过程中,一个实例如下:
{Ask_key_slot:[出发时间],
Result_information:[(出发地北京),(到达地上海),(车次G129)]]}
其中,Ask_key_slot:[出发时间]表示当前对话系统询问测试系统出发时间,Result_information:[(出发地北京),(到达地上海),(车次G129)]]表示领域任务型对话系统已经确认了测试系统的出发地,到达地,且以查询到满足条件的车次信息。
在这里,需要说明的是,对应上述询问信息的结构M,领域任务型对话系统中生成上述询问信息所基于的任务信息定义如下:
(onedialoguetask)D=[S1…Sn]
其中,(onedialoguetask)D表示询问信息所基于的任务信息,n表示询问信息所基于的任务信息中关键词的数量,sj(1≤j≤n)表示询问信息所基于的任务信息中第j个关键词。例如,在一个火车票预订的任务型对话系统中,实例化的一个任务信息便是:
(出发地)北京 (到达地)上海 (出发时间)明天 (车次)G129
步骤202,在预先构建的任务数据库中获取单条任务信息。
在本实施例中,任务数据库可以包括但不限于多条任务信息,每一条任务信息可以包括但不限于多组键值对,每组键值对可以包括关键词及关联关键词的实例。
在本实施例的一些可选实现方式中,任务数据库的定义如下:
T = S 11 S 12 ... S 1 n . . . . . . S m 1 S m 2 ... S m n m × n
其中,T为以矩阵的形式表示的任务数据库,矩阵的每一行定义一条任务信息,矩阵中的元素是任务数据库中任务信息的关键词,即Sij(1≤i≤m,1≤j≤n)表示任务数据库中第i个任务信息的第j个关键词。例如在一个酒店预订的任务型对话系统中,实例化的一个任务数据库的矩阵如下:
city business hotel name check-in time check-out time
北京市 中关村 AA快捷酒店 明天 后天
上海市 近霍山路 BB水晶酒店 明天 后天
天津市 滨江道 天津CC酒店 明天 后天
其中,city表示城市,business表示商圈,hotelname表示酒店名称,check-intime表示入住时间,check-outtime表示离开时间。
步骤203,向领域任务型对话系统提交由单条任务信息中的键值对生成的答复信息。
在本实施例中,向领域任务型对话系统提交由单条任务信息中的键值对生成的答复信息时,可以提交仅由单条任务信息中的键值对生成的答复信息,也可以模拟实际应用中各类用户的答复习惯并且由单条任务信息中的键值对生成答复信息,并且提交生成的答复信息,还可以从预设的键值对的表达模板中随机选取模板作为回复模板,从而提交模拟实际应用中各类用户的答复习惯并且由单条任务信息中的键值对套用回复模板生成的答复信息。
在本实施例的一些可选实现方式中,上述向领域任务型对话系统提交由单条任务信息中的键值对生成的答复信息可以包括但不限于:向领域任务型对话系统提交符合预设用户类型的由单条任务信息中的键值对生成的答复信息,其中,预设用户类型至少包括但不限于以下一项或多项:系统引导类型、核对查询类型和随机查询类型。
在本实现方式中,系统引导类型是指用户是遵循系统引导答复的,系统询问什么,用户就答复什么,这种方式可检查对话系统的最基本的逻辑功能;核对查询类型是指用户自主性非常强,试图准确完成任务数据库中的任务,能够自我核对知识,并对对话系统的询问信息进行有效否定与错误纠正,其信息的核对来自于对话系统结构化的信息,如果对话系统输出的询问信息与上一次的答复信息不同会主动进行纠正;而随机查询类型则是指有的用户甚至会答非所问,例如系统询问出发城市,用户答复到达城市的信息等,这样测试对话系统能否捕获对话中非所询问的信息,这种随机查询类型能够测试任务型对话系统的容错性能。
在本实施例的一些可选实现方式中,上述向领域任务型对话系统提交符合预设用户类型的由单条任务信息中的键值对生成的答复信息至少可以包括但不限于以下一项或多项:
若预设用户类型包括系统引导类型,则向领域任务型对话系统提交基于从单条任务信息中获取的关键词与询问信息的关键词相同的键值对生成的答复信息。例如,可以读取领域任务型对话系统输出的询问信息的结构M中的Ask_key_slot,记为P,之后根据关键词P随机套用回复模板生成答复信息,之后提交生成的答复信息。
若预设用户类型包括核对查询类型,则核对询问信息的关键词是否符合上一次提交的答复信息的关键词,若符合,则向领域任务型对话系统提交基于从单条任务信息中获取的关键词与询问信息的关键词相同的键值对生成的答复信息,若不符合,则向领域任务型对话系统提交基于上一次答复信息的键值对生成的答复信息。例如,可以读取领域任务型对话系统输出的询问信息的结构M中的Result_information,与上一次答复信息进行核对,如核对结果为不同,将上一次答复中的键值对记为P;如果核对结果相同,则将领域任务型对话系统输出的询问信息的结构M中的Ask_key_slot记为P;之后根据关键词P随机套用回复模板生成答复信息,之后提交生成的答复信息。
若预设用户类型包括随机查询类型,则向领域任务型对话系统提交基于从单条任务信息中随机获取的键值对生成的答复信息。例如,可以随机的从任务信息中选择未询问过的键值对,记为P;之后根据关键词P随机套用回复模板生成答复信息,之后提交生成的答复信息。
在本实施例的一些可选实现方式中,上述向领域任务型对话系统提交符合预设用户类型的由单条任务信息中的键值对生成的答复信息可以包括:向领域任务型对话系统提交符合预设用户类型的由单条任务信息中的键值对套用预设的键值对的表达模板之一生成的答复信息。
例如,当领域任务型对话系统询问某个关键词时,用于实施测试领域任务型对话系统的方法的测试系统,可以通过结构化的交换信息获取到询问信息的关键词,便从预设的键值对的表达模板里选择模板进行答复,并从当前任务数据库中读取实例内容对上述关键词进行替换,得到模拟用户的答复信息。为了模拟用户的主观性,我们可以配置多种可能对于某项关键词的答复,这里我们如下定义预设的键值对的表达模板:
用S+表示集合[s1…sn]中各种关键词组合的一个更大的集合,则与集合对应的预设的键值对的表达模板定义为如下形式,记为:
其中,表示第一个S+集合,表示第二个S+集合,以此类推;template1表示第一个表达模板,template2表示第二个表达模板,template3表示第三个表达模板,以此类推;在上表中,对应了template1和template2,也即同一个集合可以对应多个不同的表达模板。
例如在预订酒店对话系统中,一个实例化的例子如下:
S+=[city,check_in_time,check_out_time,check_in_time+check_out_time,city+check_in_time+check_out_time]
其中,city表示城市;check_in_time表示入住时间;check_out_time表示离开时间。
预设的键值对的表达模板的形式如下:
上述方式可以在很大程度上模拟用户答复的主观性,预设的键值对的表达模板可以通过对前期用户答复历史数据的调研,归纳出多类普遍性的答复方式。这种方式可以更全面评估对话系统的语义理解的能力。
示例性的,一个来自酒店预订系统的实例的测试过程如下:
1.测试系统:我想订酒店
2.对话系统:您想在哪个城市订酒店?
3.测试系统:我想住在潍坊市
4.对话系统:您想住在潍坊市哪个区域,或者住哪家酒店?
5.测试系统:我想住在奎文区
6.对话系统:在潍坊市奎文区找到298家酒店。您想哪天入住?
7.测试系统:我想在今天入住
8.对话系统:您想哪天离开?
9.测试系统:我想在后天离开
10.对话系统:您想住经济型,豪华型,还是快捷酒店?
11.测试系统:我想住在DD商务宾馆
12.对话系统:为您找到EE商务酒店,位于潍坊市奎文区鸢飞路商圈,您想住标准间还是大床房?
13.测试系统:我想住标准间
14.对话系统:您选择了标准间。即将为您发送入住信息的短信,请注意查收。
该测试使用的是引导模式,对话生成过程中的加粗字体表明对话系统并未正确的找到该宾馆,但测试系统忽略了这个错误,继续答复对话系统的下一个问题。
而在查询模式,第13行测试系统的回复则是如下的纠正回复:
13.我想住在DD商务宾馆。
步骤204,根据领域任务型对话系统输出的询问信息以及依据任务数据库提交的答复信息,生成对领域任务型对话系统的测试数据。
在本实施例中,在上述步骤中获取的询问信息和答复信息的基础上,可以根据领域任务型对话系统输出的所有询问信息以及依据任务数据库提交的所有答复信息,生成对领域任务型对话系统的测试数据。
在这里,测试数据是指开发人员所关心的领域任务型对话系统的具体测试指标,可以由开发人员设定具体计算方式以得到最终生成的测试数据。
在本实施例的一些可选实现方式中,根据领域任务型对话系统输出的询问信息以及依据任务数据库提交的答复信息,生成对领域任务型对话系统的测试数据至少可以包括:将领域任务型对话系统输出的询问信息的数量及依据任务数据库提交的答复信息的数量相加后除以任务数据库中可以包括但不限于的任务信息的数量,得到平均对话长度。
在本实现方式中,对应于上述的领域任务型对话系统输出的询问信息的结构M和任务数据库T,将领域任务型对话系统输出的询问信息的数量及依据任务数据库提交的答复信息的数量相加后除以任务数据库中可以包括但不限于的任务信息的数量,得到平均对话长度可以包括:
a l = q s d s + q e v a l m
其中,al为平均对话长度;qsds为领域任务型对话系统输出的询问信息的数量;qeval为依据任务数据库提交的答复信息的数量;m为以矩阵的形式表示的任务数据库T的行数。该平均对话长度可以衡量领域任务型对话系统提供的对话体验的简洁性。
备选地或附加地,根据领域任务型对话系统输出的询问信息以及依据任务数据库提交的答复信息,生成对领域任务型对话系统的测试数据至少可以包括:将依据任务数据库提交的答复信息及所答复的询问信息中已完成任务信息的数量除以任务数据库中包括的任务信息的数量,得到对话完成率,其中,已完成任务信息为基于每一组键值对已提交答复信息的任务信息。
在本实现方式中,对应于上述的领域任务型对话系统输出的询问信息的结构M和任务数据库T,将依据任务数据库提交的答复信息及所答复的询问信息中已完成任务信息的数量除以任务数据库中包括的任务信息的数量,得到对话完成率可以包括:
d f r = d f m
其中,dfr为对话完成率;m为矩阵T的行数;df表示依据任务数据库T提交的答复信息及所答复的询问信息中已完成任务信息的数量,当任务信息的每一组键值对均已提交答复信息时,任务信息为已完成任务信息。该对话完成率,可以非常有效的衡量对话系统最基本的信息交互功能是否良好。
备选地或附加地,根据领域任务型对话系统输出的询问信息以及依据任务数据库提交的答复信息,生成对领域任务型对话系统的测试数据至少可以包括:响应于询问信息的键值对与当前任务信息中的键值对相同,确定关键词准确,将任务数据库中配置用于生成答复信息的关键词准确的数量除以任务数据库中关键词配置用于生成答复信息的数量,得到关键词准确率。
在本实现方式中,对应于上述的领域任务型对话系统输出的询问信息的结构M和任务数据库T,将任务数据库中配置用于生成答复信息的关键词准确的数量除以任务数据库中关键词配置用于生成答复信息的数量,得到关键词准确率可以包括但不限于:
ksr s = a s t s
其中,ksrs表示关键词s的准确率;as表示以矩阵形式表示的任务数据库T中关键词s配置用于准确生成答复信息的数量,在每次生成答复信息时,将结构化信息M中的Result_information与T的当前任务信息进行对比,若对比结果相同,则关键词s准确;ts表示在任务数据库T中关键词s配置用于生成答复信息的总次数。该关键词的准确率,在很大程度上可以衡量对话系统是否能够准确完成某项具体的任务。
备选地或附加地,根据领域任务型对话系统输出的询问信息以及依据任务数据库提交的答复信息,生成对领域任务型对话系统的测试数据至少可以包括:遍历任务数据库中的关键词,将关键词准确率进行累加,得到对话系统准确率。
在本实现方式中,对应于上述的领域任务型对话系统输出的询问信息的结构M、任务数据库T和关键词s的准确率ksrs,遍历任务数据库中的关键词,将关键词准确率进行累加,得到对话系统准确率可以包括但不限于:
d a r = Σ s ksr s
其中,dar表示对话系统准确率;ksrs表示关键词s的准确率;∑表示遍历所有的关键词s,将ksrs进行累加。该对话系统准确率,可以衡量对话系统能否准确完成任务数据库中的所有任务。
继续参见图3,图3是根据本实施例的测试领域任务型对话系统的方法的应用场景的一个示意图。
在图3的应用场景中,领域任务型对话系统310首先根据预先定义的任务信息以及结构化信息M,发出询问信息,之后由运行测试领域任务型对话系统的方法的测试系统320,根据获取的询问信息、选取的预设用户类型(包括系统引导类型321、核对查询类型322、随机查询类型323或其他可扩展模式324)之一和选取的表达模板325,由任务数据库326中单条任务信息中的键值对生成答复信息;之后,测试系统将答复信息发送给领域任务型对话系统310,完成一次对话;之后,领域任务型对话系统310和测试系统320重复上述处理过程以调用单条任务信息中的每一个键值对提交答复信息327,直至已调用任务数据库中的每一条任务信息提交答复信息;最后依据领域任务型对话系统310输出的所有询问信息和测试系统320依据预设用户类型、表达模板325以及任务数据库326生成的所有答复信息,生成对领域任务型对话系统的测试数据。应当说明的是,在上述测试中选取预设用户类型以及表达模板时,可以按照随机规则或按照一定预设的规则(例如依次选取规则)分别选取预设用户类型以及表达模板,本申请对此不做限定。
本申请的上述实施例提供的测试领域任务型对话系统的方法,基于任务数据库中的多条任务信息,可以模拟用户答复的多样性;在进一步的实施例中,通过对预设用户类型以及预设的键值对的表达模板的选择,进一步提升了模拟用户答复的多样性,从而向开发人员推送的测试结果较为全面,富于针对性。另外,由于本申请中的上述实施例可以自动生成大量的模拟对话,便于开发人眼对对话的追踪调试,并且本申请中的上述实施例在面对不同领域的任务型对话系统时,可以仅修改任务数据库和预设的键值对的表达模板,而不用修改测试领域任务型对话系统的方法的单个步骤,提高了测试领域任务型对话系统的方法的通用性。
进一步参考图4,作为对上述各图所示方法的实现,本申请提供了一种测试领域任务型对话系统的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图4所示,本实施例所述的测试领域任务型对话系统的装置400包括但不限于:询问信息获取模块410,任务信息获取模块420,答复信息提交模块430和测试数据生成模块440。其中,询问信息获取模块410,配置用于获取领域任务型对话系统输出的询问信息;任务信息获取模块420,配置用于在预先构建的任务数据库中获取单条任务信息,其中,任务数据库包括但不限于多条任务信息,每一条任务信息包括但不限于多组键值对,每组键值对包括但不限于关键词及关联关键词的实例;答复信息提交模块430,配置用于向领域任务型对话系统提交由单条任务信息中的键值对生成的答复信息;测试数据生成模块440,配置用于根据领域任务型对话系统输出的询问信息以及依据任务数据库提交的答复信息,生成对领域任务型对话系统的测试数据。
在本实施例的一些可选实现方式中,答复信息提交模块进一步配置用于:向领域任务型对话系统提交符合预设用户类型的由单条任务信息中的键值对生成的答复信息,其中,预设用户类型至少包括但不限于以下一项或多项:系统引导类型、核对查询类型和随机查询类型。
在本实施例的一些可选实现方式中,答复信息提交模块至少包括但不限于以下一项或多项:系统引导提交模块431,核对查询提交模块432和随机查询提交模块433。
在上述实现方式中,系统引导提交模块431,配置用于若预设用户类型包括但不限于系统引导类型,向领域任务型对话系统提交基于从单条任务信息中获取的关键词与询问信息的关键词相同的键值对生成的答复信息;
在上述实现方式中,核对查询提交模块432,配置用于若预设用户类型包括但不限于核对查询类型,核对询问信息的关键词是否符合上一次提交的答复信息的关键词,若符合,则向领域任务型对话系统提交基于从单条任务信息中获取的关键词与询问信息的关键词相同的键值对生成的答复信息,若不符合,则向领域任务型对话系统提交基于上一次答复信息的键值对生成的答复信息;
在上述实现方式中,随机查询提交模块433,配置用于若预设用户类型包括但不限于随机查询类型,向领域任务型对话系统提交基于从单条任务信息中随机获取的键值对生成的答复信息。
在本实施例的一些可选实现方式中,答复信息提交模块进一步配置用于:向领域任务型对话系统提交符合预设用户类型的由单条任务信息中的键值对套用预设的键值对的表达模板之一生成的答复信息。
在本实施例的一些可选实现方式中,测试数据生成模块至少包括但不限于以下一项或多项:平均对话长度生成模块441,对话完成率生成模块442,关键词准确率生成模块443和对话系统准确率生成模块444。
在上述实现方式中,平均对话长度生成模块441,配置用于将领域任务型对话系统输出的询问信息的数量及依据任务数据库提交的答复信息的数量相加后除以任务数据库中包括但不限于的任务信息的数量,得到平均对话长度;
在上述实现方式中,对话完成率生成模块442,配置用于将依据任务数据库提交的答复信息及所答复的询问信息中已完成任务信息的数量除以任务数据库中包括但不限于的任务信息的数量,得到对话完成率,其中,已完成任务信息为基于每一组键值对已提交答复信息的任务信息;
在上述实现方式中,关键词准确率生成模块443,配置用于响应于生成答复信息的关键词与当前任务信息中的关键词相同,确定关键词准确,将任务数据库中配置用于生成答复信息的关键词准确的数量除以任务数据库中关键词配置用于生成答复信息的数量,得到关键词准确率;
在上述实现方式中,对话系统准确率生成模块444,配置用于遍历任务数据库中的关键词,将关键词准确率进行累加,得到对话系统准确率。
在本实施例的一些可选实现方式中,询问信息获取模块获取的领域任务型对话系统输出的询问信息的结构如下:
M = { A s k _ k e y _ s l o t ⊆ s 1 ... s n , Re s u l t _ inf o r m a t i o n = s j v j . . . . . . }
其中,M表示领域任务型对话系统输出的询问信息的结构,Ask_key_slot表示当前领域任务型对话系统的询问信息的关键词,n表示询问信息的关键词的数量,sj(1≤j≤n)表示询问信息中第j个关键词,Result_information表示当前领域任务型对话系统基于预设的检索库检索到的关键词的实例,用一个2列的矩阵表示,矩阵的第一列表示关键词,第二列表示关键词的实例值;
询问信息获取模块获取的领域任务型对话系统输出的询问信息所基于的任务信息的定义如下:
(onedialoguetask)D=[s1…sn]
其中,(onedialoguetask)D表示询问信息所基于的任务信息,n表示询问信息所基于的任务信息的关键词的数量,sj(1≤j≤n)表示询问信息所基于的任务信息中第j个关键词;
任务信息获取模块获取单条任务信息所调用的任务数据库的定义如下:
T = S 11 S 12 ... S 1 n . . . . . . S m 1 S m 2 ... S m n m × n
其中,T为以矩阵的形式表示的任务数据库,矩阵的每一行定义一条任务信息,矩阵中的元素是任务数据库中任务信息的关键词,即Sij(1≤i≤m,1≤j≤n)表示任务数据库中第i个任务信息的第j个关键词。
在本实施例的一些可选实现方式中,平均对话长度生成模块中的将领域任务型对话系统输出的询问信息的数量及依据任务数据库提交的答复信息的数量相加后除以任务数据库中包括但不限于的任务信息的数量,得到平均对话长度包括但不限于:
a l = q s d s + q e v a l m
其中,al为平均对话长度;qsds为领域任务型对话系统输出的询问信息的数量;qeval为依据任务数据库提交的答复信息的数量;m为以矩阵的形式表示的任务数据库T的行数;
对话完成率生成模块中的将依据任务数据库提交的答复信息及所答复的询问信息中已完成任务信息的数量除以任务数据库中包括但不限于的任务信息的数量,得到对话完成率包括但不限于:
d f r = d f m
其中,dfr为对话完成率;m为矩阵T的行数;df表示依据任务数据库T提交的答复信息及所答复的询问信息中已完成任务信息的数量,当任务信息的每一组键值对均已提交答复信息时,任务信息为已完成任务信息;
关键词准确率生成模块中的将任务数据库中配置用于生成答复信息的关键词准确的数量除以任务数据库中关键词配置用于生成答复信息的数量,得到关键词准确率包括但不限于:
ksr s = a s t s
其中,ksrs表示关键词s的准确率;as表示以矩阵形式表示的任务数据库T中关键词s配置用于准确生成答复信息的数量,在每次生成答复信息时,将结构化信息M中的Result_information与T的当前任务信息进行对比将结构化信息M中的Result_information与T的当前任务信息进行对比,若对比结果相同,则关键词s准确;ts表示在任务数据库T中关键词s配置用于生成答复信息的总次数;
对话系统准确率生成模块中的遍历任务数据库中的关键词,将关键词准确率进行累加,得到对话系统准确率包括但不限于:
d a r = Σ s ksr s
其中,dar表示对话系统准确率;ksrs表示关键词s的准确率;∑表示遍历所有的关键词s,将ksrs进行累加。
应当理解,装置400中记载的诸模块与参考图2描述的方法中的各个步骤相对应。由此,上文针对测试领域任务型对话系统的方法描述的操作和特征同样适用于装置400及其中包含的模块,在此不再赘述。装置400中的相应模块可以与终端设备和/或服务器中的模块相互配合以实现本申请实施例的方案。
下面参考图5,其示出了适于用来实现本申请实施例的终端设备或服务器的计算机系统500的结构示意图。
如图5所示,计算机系统500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM503中,还存储有系统500操作所需的各种程序和数据。CPU501、ROM502以及RAM503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括询问信息获取模块,任务信息获取模块,答复信息提交模块和测试数据生成模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,询问信息获取模块还可以被描述为“获取领域任务型对话系统输出的询问信息的模块”。
作为另一方面,本申请还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中所述装置中所包含的非易失性计算机存储介质;也可以是单独存在,未装配入终端中的非易失性计算机存储介质。上述非易失性计算机存储介质存储有一个或者多个程序,当所述一个或者多个程序被一个设备执行时,使得所述设备:获取领域任务型对话系统输出的询问信息;在预先构建的任务数据库中获取单条任务信息,其中,任务数据库包括但不限于多条任务信息,每一条任务信息包括但不限于多组键值对,每组键值对包括但不限于关键词及关联关键词的实例;向领域任务型对话系统提交由单条任务信息中的键值对生成的答复信息;根据领域任务型对话系统输出的询问信息以及依据任务数据库提交的答复信息,生成对领域任务型对话系统的测试数据。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (14)

1.一种测试领域任务型对话系统的方法,其特征在于,所述方法包括:
获取领域任务型对话系统输出的询问信息;
在预先构建的任务数据库中获取单条任务信息,其中,所述任务数据库包括多条任务信息,每一条任务信息包括多组键值对,每组键值对包括关键词及关联所述关键词的实例;
向所述领域任务型对话系统提交由所述单条任务信息中的键值对生成的答复信息;
根据领域任务型对话系统输出的询问信息以及依据所述任务数据库提交的答复信息,生成对所述领域任务型对话系统的测试数据。
2.根据权利要求1所述的方法,其特征在于,所述向所述领域任务型对话系统提交由所述单条任务信息中的键值对生成的答复信息包括:
向所述领域任务型对话系统提交符合预设用户类型的由所述单条任务信息中的键值对生成的答复信息,其中,所述预设用户类型至少包括以下一项或多项:系统引导类型、核对查询类型和随机查询类型。
3.根据权利要求2所述的方法,其特征在于,所述向所述领域任务型对话系统提交符合预设用户类型的由所述单条任务信息中的键值对生成的答复信息至少包括以下一项或多项:
若所述预设用户类型包括系统引导类型,向所述领域任务型对话系统提交基于从所述单条任务信息中获取的关键词与所述询问信息的关键词相同的键值对生成的答复信息;
若所述预设用户类型包括核对查询类型,核对所述询问信息的关键词是否符合上一次提交的答复信息的关键词,若符合,则向所述领域任务型对话系统提交基于从所述单条任务信息中获取的关键词与所述询问信息的关键词相同的键值对生成的答复信息,若不符合,则向所述领域任务型对话系统提交基于上一次答复信息的键值对生成的答复信息;
若所述预设用户类型包括随机查询类型,向所述领域任务型对话系统提交基于从所述单条任务信息中随机获取的键值对生成的答复信息。
4.根据权利要求3所述的方法,其特征在于,所述向所述领域任务型对话系统提交符合预设用户类型的由所述单条任务信息中的键值对生成的答复信息包括:
向所述领域任务型对话系统提交符合所述预设用户类型的由所述单条任务信息中的键值对套用预设的键值对的表达模板之一生成的答复信息。
5.根据权利要求1-4之一所述的方法,其特征在于,所述根据领域任务型对话系统输出的询问信息以及依据所述任务数据库提交的答复信息,生成对所述领域任务型对话系统的测试数据至少包括以下一项或多项:
将领域任务型对话系统输出的询问信息的数量及依据所述任务数据库提交的答复信息的数量相加后除以所述任务数据库中包括的任务信息的数量,得到平均对话长度;
将依据所述任务数据库提交的答复信息及所答复的询问信息中已完成任务信息的数量除以所述任务数据库中包括的任务信息的数量,得到对话完成率,其中,所述已完成任务信息为基于每一组键值对已提交答复信息的任务信息;
响应于所述询问信息的键值对与当前任务信息中的键值对相同,确定关键词准确,将所述任务数据库中用于生成答复信息的关键词准确的数量除以所述任务数据库中关键词用于生成答复信息的数量,得到关键词准确率;
遍历所述任务数据库中的关键词,将所述关键词准确率进行累加,得到对话系统准确率。
6.根据权利要求5所述的方法,其特征在于,所述领域任务型对话系统输出的询问信息的结构如下:
M = { A s k _ k e y _ s l o t ⊆ s 1 ... s n , Re s u l t _ inf o r m a t i o n = s j v j . . . . . . }
其中,M表示所述领域任务型对话系统输出的询问信息的结构,Ask_key_slot表示当前所述领域任务型对话系统的询问信息的关键词,n表示询问信息的关键词的数量,sj(1≤j≤n)表示询问信息中第j个关键词,Result_information表示当前所述领域任务型对话系统基于预设的检索库检索到的关键词的实例,用一个2列的矩阵表示,所述矩阵的第一列表示关键词,第二列表示关键词的实例值;
所述领域任务型对话系统输出的询问信息所基于的任务信息的定义如下:
(onedialoguetask)D=[s1…sn]
其中,(onedialoguetask)D表示询问信息所基于的任务信息,n表示询问信息所基于的任务信息的关键词的数量,sj(1≤j≤n)表示询问信息所基于的任务信息中第j个关键词;
所述任务数据库的定义如下:
T = S 11 S 12 ... S 1 n . . . . . . S m 1 S m 2 ... S m n m × n
其中,T为以矩阵的形式表示的任务数据库,矩阵的每一行定义一条任务信息,矩阵中的元素是任务数据库中任务信息的关键词,即Sij(1≤i≤m,1≤j≤n)表示任务数据库中第i个任务信息的第j个关键词。
7.根据权利要求6所述的方法,其特征在于,所述将领域任务型对话系统输出的询问信息的数量及依据所述任务数据库提交的答复信息的数量相加后除以所述任务数据库中包括的任务信息的数量,得到平均对话长度包括:
a l = q s d s + q e v a l m
其中,al为平均对话长度;qsds为领域任务型对话系统输出的询问信息的数量;qeval为依据所述任务数据库提交的答复信息的数量;m为以矩阵的形式表示的任务数据库T的行数;
所述将依据所述任务数据库提交的答复信息及所答复的询问信息中已完成任务信息的数量除以所述任务数据库中包括的任务信息的数量,得到对话完成率包括:
d f r = d f m
其中,dfr为对话完成率;m为矩阵T的行数;df表示依据所述任务数据库T提交的答复信息及所答复的询问信息中已完成任务信息的数量,当任务信息的每一组键值对均已提交答复信息时,所述任务信息为已完成任务信息;
所述将所述任务数据库中用于生成答复信息的关键词准确的数量除以所述任务数据库中关键词用于生成答复信息的数量,得到关键词准确率包括:
ksr s = a s t s
其中,ksrs表示关键词s的准确率;as表示以矩阵形式表示的任务数据库T中关键词s用于准确生成答复信息的数量,在每次生成答复信息时,将所述结构化信息M中的Result_information与T的当前任务信息进行对比,若对比结果相同,则关键词s准确;ts表示在所述任务数据库T中关键词s用于生成答复信息的总次数;
所述遍历所述任务数据库中的关键词,将所述关键词准确率进行累加,得到对话系统准确率包括:
d a r = Σ s ksr s
其中,dar表示对话系统准确率;ksrs表示关键词s的准确率;∑表示遍历所有的关键词s,将所述ksrs进行累加。
8.一种测试领域任务型对话系统的装置,其特征在于,所述装置包括:
询问信息获取模块,用于获取领域任务型对话系统输出的询问信息;
任务信息获取模块,用于在预先构建的任务数据库中获取单条任务信息,其中,所述任务数据库包括多条任务信息,每一条任务信息包括多组键值对,每组键值对包括关键词及关联所述关键词的实例;
答复信息提交模块,用于向所述领域任务型对话系统提交由所述单条任务信息中的键值对生成的答复信息;
测试数据生成模块,用于根据领域任务型对话系统输出的询问信息以及依据所述任务数据库提交的答复信息,生成对所述领域任务型对话系统的测试数据。
9.根据权利要求8所述的装置,其特征在于,所述答复信息提交模块进一步用于:
向所述领域任务型对话系统提交符合预设用户类型的由所述单条任务信息中的键值对生成的答复信息,其中,所述预设用户类型至少包括以下一项或多项:系统引导类型、核对查询类型和随机查询类型。
10.根据权利要求9所述的装置,其特征在于,所述答复信息提交模块至少包括以下一项或多项:
系统引导提交模块,用于若所述预设用户类型包括系统引导类型,向所述领域任务型对话系统提交基于从所述单条任务信息中获取的关键词与所述询问信息的关键词相同的键值对生成的答复信息;
核对查询提交模块,用于若所述预设用户类型包括核对查询类型,核对所述询问信息的关键词是否符合上一次提交的答复信息的关键词,若符合,则向所述领域任务型对话系统提交基于从所述单条任务信息中获取的关键词与所述询问信息的关键词相同的键值对生成的答复信息,若不符合,则向所述领域任务型对话系统提交基于上一次答复信息的键值对生成的答复信息;
随机查询提交模块,用于若所述预设用户类型包括随机查询类型,向所述领域任务型对话系统提交基于从所述单条任务信息中随机获取的键值对生成的答复信息。
11.根据权利要求9所述的装置,其特征在于,所述答复信息提交模块进一步用于:
向所述领域任务型对话系统提交符合所述预设用户类型的由所述单条任务信息中的键值对套用预设的键值对的表达模板之一生成的答复信息。
12.根据权利要求8-12之一所述的装置,其特征在于,所述测试数据生成模块至少包括以下一项或多项:
平均对话长度生成模块,用于将领域任务型对话系统输出的询问信息的数量及依据所述任务数据库提交的答复信息的数量相加后除以所述任务数据库中包括的任务信息的数量,得到平均对话长度;
对话完成率生成模块,用于将依据所述任务数据库提交的答复信息及所答复的询问信息中已完成任务信息的数量除以所述任务数据库中包括的任务信息的数量,得到对话完成率,其中,所述已完成任务信息为基于每一组键值对已提交答复信息的任务信息;
关键词准确率生成模块,用于响应于生成答复信息的关键词与当前任务信息中的关键词相同,确定关键词准确,将所述任务数据库中用于生成答复信息的关键词准确的数量除以所述任务数据库中关键词用于生成答复信息的数量,得到关键词准确率;
对话系统准确率生成模块,用于遍历所述任务数据库中的关键词,将所述关键词准确率进行累加,得到对话系统准确率。
13.根据权利要求12所述的装置,其特征在于,所述询问信息获取模块获取的所述领域任务型对话系统输出的询问信息的结构如下:
M = { A s k _ k e y _ s l o t ⊆ s 1 ... s n , Re s u l t _ inf o r m a t i o n = s j v j . . . . . . }
其中,M表示所述领域任务型对话系统输出的询问信息的结构,Ask_key_slot表示当前所述领域任务型对话系统的询问信息的关键词,n表示询问信息的关键词的数量,sj(1≤j≤n)表示询问信息中第j个关键词,Result_information表示当前所述领域任务型对话系统基于预设的检索库检索到的关键词的实例,用一个2列的矩阵表示,所述矩阵的第一列表示关键词,第二列表示关键词的实例值;
所述询问信息获取模块获取的所述领域任务型对话系统输出的询问信息所基于的任务信息的定义如下:
(onedialoguetask)D=[s1…sn]
其中,(onedialoguetask)D表示询问信息所基于的任务信息,n表示询问信息所基于的任务信息的关键词的数量,sj(1≤j≤n)表示询问信息所基于的任务信息中第j个关键词;
所述任务信息获取模块获取所述单条任务信息所调用的所述任务数据库的定义如下:
T = S 11 S 12 ... S 1 n . . . . . . S m 1 S m 2 ... S m n m × n
其中,T为以矩阵的形式表示的任务数据库,矩阵的每一行定义一条任务信息,矩阵中的元素是任务数据库中任务信息的关键词,即Sij(1≤i≤m,1≤j≤n)表示任务数据库中第i个任务信息的第j个关键词。
14.根据权利要求13所述的装置,其特征在于,所述平均对话长度生成模块中的所述将领域任务型对话系统输出的询问信息的数量及依据所述任务数据库提交的答复信息的数量相加后除以所述任务数据库中包括的任务信息的数量,得到平均对话长度包括:
a l = q s d s + q e v a l m
其中,al为平均对话长度;qsds为领域任务型对话系统输出的询问信息的数量;qeval为依据所述任务数据库提交的答复信息的数量;m为以矩阵的形式表示的任务数据库T的行数;
所述对话完成率生成模块中的所述将依据所述任务数据库提交的答复信息及所答复的询问信息中已完成任务信息的数量除以所述任务数据库中包括的任务信息的数量,得到对话完成率包括:
d f r = d f m
其中,dfr为对话完成率;m为矩阵T的行数;df表示依据所述任务数据库T提交的答复信息及所答复的询问信息中已完成任务信息的数量,当任务信息的每一组键值对均已提交答复信息时,所述任务信息为已完成任务信息;
所述关键词准确率生成模块中的所述将所述任务数据库中用于生成答复信息的关键词准确的数量除以所述任务数据库中关键词用于生成答复信息的数量,得到关键词准确率包括:
ksr s = a s t s
其中,ksrs表示关键词s的准确率;as表示以矩阵形式表示的任务数据库T中关键词s用于准确生成答复信息的数量,在每次生成答复信息时,将所述结构化信息M中的Result_information与T的当前任务信息进行对比将所述结构化信息M中的Result_information与T的当前任务信息进行对比,若对比结果相同,则关键词s准确;ts表示在所述任务数据库T中关键词s用于生成答复信息的总次数;
所述对话系统准确率生成模块中的所述遍历所述任务数据库中的关键词,将所述关键词准确率进行累加,得到对话系统准确率包括:
d a r = Σ s ksr s
其中,dar表示对话系统准确率;ksrs表示关键词s的准确率;∑表示遍历所有的关键词s,将所述ksrs进行累加。
CN201510983378.2A 2015-12-24 2015-12-24 测试领域任务型对话系统的方法和装置 Active CN105630960B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510983378.2A CN105630960B (zh) 2015-12-24 2015-12-24 测试领域任务型对话系统的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510983378.2A CN105630960B (zh) 2015-12-24 2015-12-24 测试领域任务型对话系统的方法和装置

Publications (2)

Publication Number Publication Date
CN105630960A true CN105630960A (zh) 2016-06-01
CN105630960B CN105630960B (zh) 2019-02-12

Family

ID=56045893

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510983378.2A Active CN105630960B (zh) 2015-12-24 2015-12-24 测试领域任务型对话系统的方法和装置

Country Status (1)

Country Link
CN (1) CN105630960B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107357838A (zh) * 2017-06-23 2017-11-17 上海交通大学 基于多任务学习的对话策略在线实现方法
CN110110066A (zh) * 2019-05-09 2019-08-09 腾讯科技(深圳)有限公司 一种交互数据处理方法、装置以及计算机可读存储介质
CN110502368A (zh) * 2019-08-14 2019-11-26 出门问问(武汉)信息科技有限公司 一种对话容错方法、中控设备、系统以及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102165518A (zh) * 2008-08-27 2011-08-24 罗伯特·博世有限公司 用于在对话系统中从用户话语产生自然语言短语的系统和方法
US8478769B2 (en) * 2008-02-22 2013-07-02 Accenture Global Services Limited Conversational question generation system adapted for an insurance claim processing system
CN103853842A (zh) * 2014-03-20 2014-06-11 百度在线网络技术(北京)有限公司 一种自动问答方法和系统
CN104820681A (zh) * 2015-04-17 2015-08-05 清华大学 一种用于线上问答服务的应答方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8478769B2 (en) * 2008-02-22 2013-07-02 Accenture Global Services Limited Conversational question generation system adapted for an insurance claim processing system
CN102165518A (zh) * 2008-08-27 2011-08-24 罗伯特·博世有限公司 用于在对话系统中从用户话语产生自然语言短语的系统和方法
CN103853842A (zh) * 2014-03-20 2014-06-11 百度在线网络技术(北京)有限公司 一种自动问答方法和系统
CN104820681A (zh) * 2015-04-17 2015-08-05 清华大学 一种用于线上问答服务的应答方法及系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107357838A (zh) * 2017-06-23 2017-11-17 上海交通大学 基于多任务学习的对话策略在线实现方法
CN107357838B (zh) * 2017-06-23 2020-09-01 上海交大知识产权管理有限公司 基于多任务学习的对话策略在线实现方法
CN110110066A (zh) * 2019-05-09 2019-08-09 腾讯科技(深圳)有限公司 一种交互数据处理方法、装置以及计算机可读存储介质
CN110110066B (zh) * 2019-05-09 2023-01-06 腾讯科技(深圳)有限公司 一种交互数据处理方法、装置以及计算机可读存储介质
CN110502368A (zh) * 2019-08-14 2019-11-26 出门问问(武汉)信息科技有限公司 一种对话容错方法、中控设备、系统以及可读存储介质

Also Published As

Publication number Publication date
CN105630960B (zh) 2019-02-12

Similar Documents

Publication Publication Date Title
Sargent et al. History of verification and validation of simulation models
US20170286860A1 (en) Multiple-action computational model training and operation
CN109710810A (zh) 变更管理方法、装置、设备和存储介质
CN105630960A (zh) 测试领域任务型对话系统的方法和装置
CN106227660A (zh) 一种用于模拟真实物理环境的仿真数据生成方法
Garcia et al. A Requirements-to-Implementation Mapping Tool for Requirements Traceability.
Gutiérrez et al. Using the Belbin method and models for predicting the academic performance of engineering students
CN112529100A (zh) 多分类模型的训练方法、装置、电子设备及存储介质
Arbula et al. Pymote: High level python library for event-based simulation and evaluation of distributed algorithms
US10783496B2 (en) Balanced information system
Santos et al. Industrial IoT integrated with simulation-A digital twin approach to support real-time decision making
CN114185765A (zh) 测试数据处理方法、装置、电子设备及存储介质
CN109739764A (zh) 一种应用程序测试方法和装置
KR102343385B1 (ko) 온톨로지와 딥 러닝에 기반한 사회 맞춤형 역량 기반 교육 과정 관리 장치 및 방법
Cardin et al. Training design and management of flexible engineering systems: an empirical study using simulation games
CN105224449A (zh) 移动终端上的应用程序的测试方法和装置
CN116523263A (zh) 智能数据处理方法、系统及存储介质
WO2020033030A1 (en) Multi-question multi-answer configuration
CN110334014A (zh) 用于用户界面自动化测试方法、系统、服务器及存储介质
KR20220034066A (ko) 운전학원 수업의 스마트 배치 방법, 장치, 전자기기, 저장매체 및 컴퓨터 프로그램
Wieringa et al. The design cycle
CN103023810A (zh) 一种报文处理模拟方法及模拟系统
CN112380118A (zh) 单元测试方法、装置、介质及电子设备
Agrež et al. Knowledge dynamics assessment in complex organizational systems: a missing person investigation case study
KR102345299B1 (ko) 크라우드소싱 기반 프로젝트의 특성에 따른 인공지능 기반 교재 제작 서비스 제공 방법 및 장치

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant