首页> 中国专利> 槽位更新语料的挖掘方法、装置、电子设备和存储介质

槽位更新语料的挖掘方法、装置、电子设备和存储介质

摘要

本申请公开了槽位更新语料的挖掘方法、装置、电子设备和存储介质,涉及计算机领域,具体涉及自然语言处理、深度学习等人工智能技术领域。具体实现方案为:从历史交互日志中,获取各个查询语句及每个查询语句对应的自然语言识别结果,其中,自然语言识别结果包括查询语句中的词槽值所属的词槽名;将每个查询语句中的词槽值用其所属的词槽名替换,以生成参考模板集;将参考模板集中的每个参考模板进行拆分,以获取槽位更新模板集;基于槽位更新模板集对预设的语料集进行遍历,以从语料集中获取与槽位更新模板集中的槽位更新模板匹配的槽位更新语料。该方法中槽位更新语料整个挖掘过程自动化,无需人工参与,极大降低了人工成本。

著录项

  • 公开/公告号CN112541070A

    专利类型发明专利

  • 公开/公告日2021-03-23

    原文格式PDF

  • 申请/专利权人 北京百度网讯科技有限公司;

    申请/专利号CN202011559712.9

  • 申请日2020-12-25

  • 分类号G06F16/332(20190101);G06F16/33(20190101);G06F40/289(20200101);

  • 代理机构11201 北京清亦华知识产权代理事务所(普通合伙);

  • 代理人王萌

  • 地址 100085 北京市海淀区上地十街10号百度大厦2层

  • 入库时间 2023-06-19 10:21:15

说明书

技术领域

本申请涉及计算机领域,具体涉及自然语言处理、深度学习等人工智能技术领域,尤其涉及一种槽位更新语料的挖掘方法、装置、电子设备和存储介质。

背景技术

在人机对话系统中,人机对话训练语料的质量和数量很大程度决定了人机交互理解的效果。

如何以较低的成本从交互日志中获取语料,是亟待解决的问题。

发明内容

本申请提供一种槽位更新语料的挖掘方法、装置、电子设备和存储介质。

根据本申请的一方面,提供了一种槽位更新语料的挖掘方法,包括:

从历史交互日志中,获取各个查询语句及每个查询语句对应的自然语言识别结果,其中,所述自然语言识别结果包括所述查询语句中的词槽值所属的词槽名;

将每个所述查询语句中的词槽值用其所属的词槽名替换,以生成参考模板集;

将所述参考模板集中的每个参考模板进行拆分,以获取槽位更新模板集;

基于所述槽位更新模板集对预设的语料集进行遍历,以从所述语料集中获取与所述槽位更新模板集中的槽位更新模板匹配的槽位更新语料。

根据本申请的另一方面,提供了一种槽位更新语料的挖掘装置,包括:

第一获取模块,用于从历史交互日志中,获取各个查询语句及每个查询语句对应的自然语言识别结果,其中,所述自然语言识别结果包括所述查询语句中的词槽值所属的词槽名;

第一生成模块,用于将每个所述查询语句中的词槽值用其所属的词槽名替换,以生成参考模板集;

第二获取模块,用于将所述参考模板集中的每个参考模板进行拆分,以获取槽位更新模板集;

第三获取模块,用于基于所述槽位更新模板集对预设的语料集进行遍历,以从所述语料集中获取与所述槽位更新模板集中的槽位更新模板匹配的槽位更新语料。

根据本申请的另一方面,提供了一种电子设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述一方面实施例所述的槽位更新语料的挖掘方法。

根据本申请另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其上存储有计算机程序,所述计算机指令用于使所述计算机执行上述一方面实施例所述的槽位更新语料的挖掘方法。

根据本申请另一方面,提供了一种计算机程序产品,包括计算机程序,其中,所述计算机程序被处理器执行时实现上述一方面实施例所述的槽位更新语料的挖掘方法。

上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。

附图说明

附图用于更好地理解本方案,不构成对本申请的限定。其中:

图1为本申请实施例提供的一种槽位更新语料的挖掘方法的流程示意图;

图2为本申请实施例提供的一个生成参考模板的示意图;

图3为本申请实施例提供的一个获取槽位更新模板的示意图;

图4为本申请实施例提供另一种槽位更新语料的挖掘方法的流程示意图;

图5为本申请实施例提供的另一种槽位更新语料的挖掘方法的流程示意图;

图6为本申请实施例提供的一个获取槽位更新训练数据的示意图;

图7为本申请实施例提供的另一种槽位更新语料的挖掘方法的流程示意图;

图8为本申请实施例提供的另一种槽位更新语料的挖掘方法的流程示意图;

图9为本申请实施例提供的一种槽位更新语料的挖掘装置的结构示意图;

图10是用来实施本申请实施例的槽位更新语料的挖掘方法的电子设备的框图。

具体实施方式

以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

下面参考附图描述本申请实施例的槽位更新语料的挖掘方法、装置、电子设备和存储介质。

人工智能是研究使用计算机类模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括传感器、专用人工智能芯片、云计算、分布式存储、深度学习、大数据处理技术、知识图谱技术等几大方向。

自然语言处理是计算机科学领域与人工智能领域中的一个重要方向,自然语言处理研究的内容包括但不限于如下分支领域:文本分类、信息抽取、自动摘要、智能问答、话题推荐、机器翻译、主题词识别、知识库构建、深度文本表示、命名实体识别、文本生成、文本分析(词法、句法、语法等)、语音识别与合成等。

深度学习是机器学习领域中一个新的研究方向。深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。

图1为本申请实施例提供的一种槽位更新语料的挖掘方法的流程示意图。

本申请实施例的槽位更新语料的挖掘方法,可由本申请实施例提供的装置执行,该装置可配置于电子设备中,。

如图1所示,该槽位更新语料的挖掘方法包括:

步骤101,从历史交互日志中,获取各个查询语句及每个查询语句对应的自然语言识别结果,其中,自然语言识别结果包括查询语句中的词槽值所属的词槽名。

人机交互的历史日志中,每条日志记录了用户的查询语句、对话系统对于该查询语句的实体识别结果、对话系统通过自然语言理解模块对该查询语句的识别结果等,识别结果比如词槽名、词槽值等。由此,可以从历史交互日志中,获取各个查询语句及每个查询语句对应的自然语言识别结果,其中,自然语言识别结果可包括查询语句中的词槽值所属的词槽名。

其中,词槽通常是一个意图下的查询条件,例如天气意图里的时间和地点,订票意图里的日期和终点等,词槽可以作为条件来管理对话逻辑。

比如,查询语句“A地今天的天气如何”,词槽有两个,其词槽名分别为地点和时间,而词槽名[地点]的词槽值为A地,词槽名[时间]的词槽值为今天。

步骤102,将每个查询语句中的词槽值用其所属的词槽名替换,以生成参考模板集。

本实施例中,对每个查询语句,将查询语句中的每个词槽值用每个词槽值所属的词槽名替换,得到查询语句对应的参考模板。那么,根据多个参考模板,生成参考模板集。其中,参考模板中包括查询语句的意图。

图2为本申请实施例提供的一个生成参考模板的示意图。图2中,查询语句为“从北京到上海的硬座有么”,查询语句中的词槽名[出发地]的词槽值为北京,词槽名[目的地]的词槽值为上海,词槽名[类型]的词槽值为硬座。将查询语句“从北京到上海的硬座有么”中的每个词槽值用其所属的词槽名替换,生成参考模板“从[出发地]到[目的地]的[类型]有么:查火车票”。其中,“查火车票”为该参考模板对应的查询语句对应的意图。

步骤103,将参考模板集中的每个参考模板进行拆分,以获取槽位更新模板集。

实际应用中,用户输入的查询语句可能只表达词槽信息,由于没有明确表达用户意图,对话状态只更新词槽。本实施例中,可将参考模板集中的每个参考模板进行拆分,所有参考模板拆分得到的槽位更新模板,构成槽位更新模板集。

在拆分时,可对参考模板中与查询语句对应的部分,进行分词处理,得到多个分词,并基于分词,获取多个槽位更新模板。其中,获取的槽位更新模板中可能包括一个或多个词槽名。

需要说明的是,为了获取槽位更新语料,槽位更新模板不构成完整的句子。

图3为本申请实施例提供的一个获取槽位更新模板的示意图。图3中对参考模板“从[出发地]到[目的地]的[类型]有么:查火车票”进行拆分,得到多个槽位更新模板:[出发地]、从[出发地]、[出发地]到、从[出发地]到、[目的地]、到[目的地]、[目的地]的、到[目的地]的、[类型]、的[类型]、[类型]有、[类型]有么、的[类型]有么。

步骤104,基于槽位更新模板集对预设的语料集进行遍历,以从语料集中获取与槽位更新模板集中的槽位更新模板匹配的槽位更新语料。

本实施例中,在获取槽位更新模板集后,可利用槽位更新模板集中的槽位更新模板,从预设的语料集中获取槽位更新语料。

具体地,可将语料集中的语料分别与槽位更新模板集中的槽位更新模板进行匹配,若某语料与任一槽位更新模板的匹配度大于预设阈值,那么该语料为槽位更新语料。

本申请实施例中,通过从历史交互日志中,获取各个查询语句及每个查询语句对应的自然语言识别结果,其中,自然语言识别结果包括查询语句中的词槽值所属的词槽名,并将每个查询语句中的词槽值用其所属的词槽名替换,以生成参考模板集,将参考模板集中的每个参考模板进行拆分,以获取槽位更新模板集,基于槽位更新模板集对预设的语料集进行遍历,以从语料集中获取与槽位更新模板集中的槽位更新模板匹配的槽位更新语料。由此,通过将查询语句中的词槽值用其所属的词槽名替换得到参考模板,对参考模板进行拆分,得到槽位更新模板集,利用槽位更新模板集,从语料集中获取槽位更新语料,从而实现了槽位更新语料整个挖掘过程自动化,无需人工参与,极大降低了人工成本。

由于槽位更新语料整个挖掘过程无人工参与,所以可以应用于大规模真实的对话交互日志当中。同时,随着真实日志的规模不断增大,该方法积累的槽位更新模板也更加多样,应对长尾数据的能力也越强,效果也越好。

为了提高挖掘槽位更新语料的精准性,在本申请的一个实施例中,自然语言识别结果还可包括每个查询语句对应的意图,在获取槽位更新模板集时,通过拆分参考模板得到槽位更新模板中仅包含一个词槽名,并基于意图对槽位更新模板进行过滤。下面结合图4进行说明,图4为本申请实施例提供另一种槽位更新语料的挖掘方法的流程示意图。

如图4所示,上述将参考模板集中的每个参考模板进行拆分,以获取槽位更新模板集,包括:

步骤401,将参考模板集中的每个参考模板进行拆分,以获取仅包含一个词槽名的多个槽位更新模板。

本实施例中,在对每个参考模板拆分时,可对参考模板中与查询语句对应的部分,进行分词处理,得到多个分词。在基于分词,获取多个槽位更新模板时,使每个槽位更新模板中仅包含一个词槽名。比如图3中的槽位更新模板中均包含一个词槽名。

步骤402,将仅对应用户意图的槽位更新模板去除,以获取槽位更新模板集。

为了获取槽位更新语料,那么可使用于获取槽位更新语料的槽位更新模板不是仅对应用户意图。基于此,可对每个槽位更新模板的意图进行判断,将仅对应用户意图的槽位更新模板去除,使得剩余的槽位更新模板均不对应用户意图。也就是说,对拆分得到的槽位更新模板进行过滤,使得获取槽位更新模板集中不包含仅对应用户意图的槽位更新模板。

以图3为例,图3中,槽位更新模板“[类型]有么”仅对应用户意图,那么将该槽位更新模板过滤。

本实施例中,将仅对应用户意图的槽位更新模板去除,使得槽位更新模板集中槽位更新模板,不包含仅对应用户意图的槽位更新模板,那么基于槽位更新模板集从语料集中获取的槽位更新语料准确性更高。

本申请实施例中,自然语言识别结果中还包括每个查询语句对应的意图,在将参考模板集中的每个参考模板进行拆分,以获取槽位更新模板集时,可将参考模板集中的每个参考模板进行拆分,以获取仅包含一个词槽名的多个槽位更新模板,并将仅对应用户意图的槽位更新模板去除,以获取槽位更新模板集。由此,通过获取仅包含一个词槽名的多个槽位更新模板,并对仅对应用户意图的槽位更新模板进行过滤,从而保证了槽位更新模板的精准性,提高了基于槽位更新模板获取的槽位更新语料的精准性。

为了进一步提高挖掘槽位更新语料的精准性,在本申请的一个实施例中,在对槽位更新模板进行去除,获取槽位更新模板集时,还可将槽位更新模板为参考模板集中的参考模板作为去除条件。

具体地,查询语句对应的意图可包括用户意图及槽位更新意图中的至少一个。比如,如图2所示的查询语句对应的意图包括用户意图“查火车票”,也包括槽位更新意图。又如,查询语句“上海的吧”对应的意图仅是槽位更新意图。

其中,槽位更新意图是指查询语句没有表达明确的用户意图,只更新词槽。也就是说,槽位更新意图是指更新词槽的意图。

在上述将仅对应用户意图的槽位更新模板去除时,可将每个槽位更新模板与参考模集中的参考模板进行匹配,如果存在任一槽位更新模板为参考模板集中的一个参考模板、且该参考模板对应的意图仅为用户意图的情况下,说明槽位更新模板对应的是一个用户意图,而不是槽位更新意图,则将任一槽位更新模板去除,从而使得获取的槽位更新模板集中的槽位更新模板对应的是槽位更新意图。

比如,图3中,槽位更新模板“[类型]有么”存在于参考模板集中,且查询到对应的意图是座位查询,那么将槽位更新模板“[类型]有么”去除。

本申请实施例中,每个查询语句对应的意图包括用户意图及槽位更新意图中的至少一个,在将仅对应用户意图的槽位更新模板去除时,可在任一槽位更新模板为参考模板集中的一个参考模板、且参考模板对应的意图仅为用户意图的情况下,将任一槽位更新模板去除。由此,进一步将槽位更新模板为参考模板集中的一个参考模板作为去除条件,以在槽位更新模板为参考模板集中的参考模板、且参考模板对应的意图仅为用户意图时,将槽位更新模板去除,使得获取的槽位更新模板集中的槽位更新模板对应的是槽位更新意图,从而进一步提高了槽位更新模板的精准性,进而提高了挖掘槽位更新语料的精准性。

在本申请的一个实施例中,在利用槽位更新模板集,从语料集中获取槽位更新语料时,可根据每个语料生成候选模板,利用候选模板和槽位更新模板集,获取槽位更新语料。下面结合图5进行说明,图5为本申请实施例提供的另一种槽位更新语料的挖掘方法的流程示意图。

如图5所示,该槽位更新语料的挖掘方法包括:

步骤501,从历史交互日志中,获取各个查询语句及每个查询语句对应的自然语言识别结果,其中,自然语言识别结果包括查询语句中的词槽值所属的词槽名。

步骤502,将每个查询语句中的词槽值用其所属的词槽名替换,以生成参考模板集。

步骤503,将参考模板集中的每个参考模板进行拆分,以获取槽位更新模板集。

本实施例中,步骤501-步骤503与上述步骤101-步骤103类似,故在此不再赘述。

步骤504,对语料集中每个语料进行解析,以确定每个语料中包含的实体及实体对应的候选词槽名。

本实施例中,可对语料集中的每个语料进行自然语料理解,确定每个语料中包含的实体及实体对应的候选词槽名。若语料集中的语料为交互日志,由于交互日志中记录了语料的识别结果,那么可从交互日志中获取语料包含的实体,并根据包含的实体确定实体对应的候选词槽名。

图6为本申请实施例提供的一个获取槽位更新训练数据的示意图。图6中语料为“到北京”,实体识别结果为:实体为“北京”,实体“北京”对应的候选词槽名为“出发地”和“目的地”。

步骤505,将每个语料中的实体分别用对应的候选词槽名替换,以生成候选模板。

本实施例中,针对每个语料,可用每个候选词槽名分别替换语料中的实体,生成候选模板。若语料中的实体对应多个候选词槽名,则可生成与该语料对应的多个候选模板。

比如,图6中,语料为“到北京”,该语料中的实体“北京”对应的候选词槽名为“出发地”和“目的地”,分别用“出发地”和“目的地”替换语料中的实体“北京”,生成两个候选模板“到[出发地]”和“到[目的地]”。

步骤506,在槽位更新模板集中包含与任一候选模板匹配的槽位更新模板的情况下,确定任一候选模板对应的语料为槽位更新语料。

针对每个语料,在获取语料对应的候选模板中,可将每个候选模板与槽位更新模板集中的槽位更新模板进行匹配,若槽位更新模板集中包含与任一候选模板匹配的槽位更新模板,说明槽位更新模板中包含候选模板,可确定任一候选模板对应的语料为槽位更新语料。

比如,图6中,两个候选模板“到[出发地]”和“到[目的地]”,与槽位更新模板集中的槽位更新模板进行匹配,确定槽位更新模板集中存在候选模板“到[目的地]”,则将“到[目的地]”对应的语料“到北京”作为槽位更新语料。

本实施例中,通过利用语料的候选模板和槽位更新模板集,可从语料集中获取槽位更新语料。

本申请实施例中,在基于槽位更新模板集对预设的语料集进行遍历,以从语料集中获取与槽位更新模板集中的槽位更新模板匹配的槽位更新语料时,可对语料集中每个语料进行解析,以确定每个语料中包含的实体及实体对应的候选词槽名,并将每个语料中的实体分别用对应的候选词槽名替换,以生成候选模板,在槽位更新模板集中包含与任一候选模板匹配的槽位更新模板的情况下,确定任一候选模板对应的语料为槽位更新语料。由此,通过将语料中的实体用候选词槽名替换,生成候选模板,若槽位更新模板集中包含语料对应的任一候选模板时,将该语料作为槽位更新语料,从而实现了利用槽位更新模板集从语料集中获取槽位更新语料。

在本申请的一个实施例中,在获取槽位更新语料后,可对槽位更新语料进行标注,得到槽位更新训练数据,基于获取的槽位更新训练数据,可训练得到槽位更新意图识别模型。下面结合图7进行说明,图7为本申请实施例提供的另一种槽位更新语料的挖掘方法的流程示意图。

如图7所示,上述确定任一候选模板对应的语料为槽位更新语料之后,还可包括:

步骤701,根据与任一候选模板匹配的槽位更新模板,对槽位更新语料进行标注,以获取槽位更新训练数据。

本实施例中,在确定任一候选模板对应的语料为槽位更新语料之后,可根据与任一候选模板匹配的槽位更新模板对应的意图、槽位更新模板包含的词槽名等,对槽位更新语料进行标注,获取槽位更新训练数据。具体地,可标注槽位更新语料对应的意图为槽位更新意图,标注槽位更新语料中的词槽值和词槽值所属的词槽名等。

比如,图6中,在确定候选模板“到[目的地]”与槽位更新模板“到[目的地]”匹配后,可根据槽位更新模板“到[目的地]”,对语料“到北京”进行标注,得到槽位更新训练数据“到北京(意图:槽位更新;词槽:目的地=北京)”。

步骤702,利用槽位更新训练数据,对初始意图识别模型进行训练,以生成槽位更新意图识别模型。

本实施例中,可将槽位更新训练数据中的语料,输入至初始意图识别模型中,根据初始意图识别模型输出的预测意图、预测词槽名和预测词槽值等,与标注的意图、词槽名和词槽值之间的差异,对初始意图模型的参数进行调整,利用参数调整后的模型继续训练,直至生成满足要求的槽位更新意图识别模型。

为了提高模型效果,在对初始意图识别模型进行训练时,可利用深度学习的方式对模型进行训练。

本申请实施例中,在确定任一候选模板对应的语料为槽位更新语料之后,还可根据与任一候选模板匹配的槽位更新模板,对槽位更新语料进行标注,以获取槽位更新训练数据,并利用槽位更新训练数据,对初始意图识别模型进行训练,以生成槽位更新意图识别模型。由此,通过利用与候选模板匹配的槽位更新模板可对槽位更新语料进行标注,从而实现了槽位更新训练数据挖掘,整个挖掘过程自动化,无需人工参与,极大降低了人工成本,并且还可利用标注的槽位更新语料进行模型训练,获取槽位更新意图识别模型。

为了提高获取槽位更新语料的效率,在本申请的一个实施例中,上述在基于槽位更新模板,从语料集中获取与槽位更新模板集中的槽位更新模板匹配的槽位更新语料时,可通过构建与槽位更新模板集对应的模板树,利用模板树从语料集中获取槽位更新语料。下面结合图8进行说明,图8为本申请实施例提供的另一种槽位更新语料的挖掘方法的流程示意图。

图8所示,上述基于槽位更新模板集对预设的语料集进行遍历,以从语料集中获取与槽位更新模板集中的槽位更新模板匹配的槽位更新语料时,包括:

步骤801,确定槽位更新模板集中各个槽位更新模板间关联的非词槽名。

本实施例中,可将各个槽位更新模板进行匹配,以确定各个槽位更新模板间关联的非词槽名。

比如,图3中,槽位更新模板“[出发地]”与“从[出发地]”之间关联的非词槽名为“从”;“[出发地]”与“[出发地]到”之间关联的非词槽名为“到”。

步骤802,根据各个槽位更新模板间关联的非词槽名,构建与槽位更新模板集对应的模板树。

本实施例中,可根据各个槽位更新模板间关联的非词槽名,构建槽位更新模板集对应的模板树。其中,非词槽名与词槽名为模板树中的节点。

步骤803,基于模板树,对预设的语料集进行遍历,以根据语料集中各个语料与模板树中的节点的匹配关系,确定语料集中包括的槽位更新语料。

本实施例中,可对每个语料进行解析,确定每个语料的实体和实体对应的候选词槽名,根据将每个语料中的实体分别用对应的候选词槽名替换,以生成候选模板,并将获取的候选模板用正则表达式表示。在获取语料对应的候选模板的正则表达式后,可在模板树中模糊匹配该正则表达式,如果匹配中,则取出被匹配的中的叶子节点的信息,得到一个候选模板,该候选模板对应的语料为槽位更新语料。

比如,图6中,根据语料“到北京”生成的两个候选“到[出发地]”和到“到[目的地]”,共同表示为[到(出发地)|(目的地)]。在模板树中模糊匹配该正则表达式,该正则表达式匹配中某叶子节点,取出被匹配的中的叶子节点的信息,得到模板“到[目的地]”。那么,该语料“到北京”为槽位更新语料。

本申请实施例中,在基于槽位更新模板集对预设的语料集进行遍历,以从语料集中获取与槽位更新模板集中的槽位更新模板匹配的槽位更新语料时,可确定槽位更新模板集中各个槽位更新模板间关联的非词槽名,并根据各个槽位更新模板间关联的非词槽名,构建与槽位更新模板集对应的模板树,基于模板树,对预设的语料集进行遍历,以根据语料集中各个语料与模板树中的节点的匹配关系,确定语料集中包括的槽位更新语料。由此,通过构建与槽位更新模板集对应的模板树,利用模板树对语料集进行遍历,从语料集中获取槽位更新语料,提高了获取槽位更新语料的效率。

在本申请的一个实施例中,在根据语料集中各个语料与模板树中的节点的匹配关系,确定语料集中包括的槽位更新语料时,还可通过如下方式实现。

作为一种可能的实现方式,将每个语料与模板树中的节点进行匹配,若任一语料中的非词槽名与模板树中的第一节点匹配、且位于非词槽名后的实体对应的候选词槽名中包含第一节点的一个词槽名子节点,则确定任一语料为槽位更新语料。

比如,语料“到北京”中的非词槽名“到”与模板树中的第一节点“从”匹配、且位于非词槽名“从”后的实体“北京”对应的候选词槽名“出发地”和“目的地”中包含第一节点“到”的一个词槽名子节点“目的地”,确定该语料为槽位更新语料。

可见,利用该方式可确定非词槽词在前实体在后的语料,是否为槽位更新语料。

或者,作为另一种可能的实现方式,将每个语料与模板树中的节点进行匹配,若任一语料中的实体对应的一个候选词槽名与模板树中的第二节点匹配、且位于实体之后的非词槽名与第二节点的一个子节点匹配,则确定任一语料为槽位更新语料。

比如,语料“上海到”中实体“上海”对应的一个候选词槽名“出发地”和“目的地”与模板树中的第二节点“出发地”匹配、且位于实体“上海”之后的非词槽名“到”与第二节点“出发地”的一个子节点“到”匹配,则确定该语料为槽位更新语料。

可见,利用该方式可确定在实体前非词槽词在后的语料,是否为槽位更新语料。

本申请实施例中,在基于模板树,对预设的语料集进行遍历,以根据语料集中各个语料与模板树中的节点的匹配关系,确定语料集中包括的槽位更新语料时,可上述两种利用方式获取语料集中包括的槽位更新语料,实现了基于模板树,获取语料集中的槽位更新语料,提高了获取槽位更新语料的效率。

为了实现上述实施例,本申请实施例还提出一种槽位更新语料的挖掘装置。图9为本申请实施例提供的一种槽位更新语料的挖掘装置的结构示意图。

如图9所示,该槽位更新语料的挖掘装置900包括:第一获取模块910、第一生成模块920、第二获取模块930、第三获取模块940。

第一获取模块910,用于从历史交互日志中,获取各个查询语句及每个查询语句对应的自然语言识别结果,其中,自然语言识别结果包括查询语句中的词槽值所属的词槽名;

第一生成模块920,用于将每个查询语句中的词槽值用其所属的词槽名替换,以生成参考模板集;

第二获取模块930,用于将参考模板集中的每个参考模板进行拆分,以获取槽位更新模板集;

第三获取模块940,用于基于槽位更新模板集对预设的语料集进行遍历,以从语料集中获取与槽位更新模板集中的槽位更新模板匹配的槽位更新语料。

在本申请实施例一种可能的实现方式中,自然语言识别结果中还包括每个查询语句对应的意图,第二获取模块930,包括:

第一获取单元,用于将参考模板集中的每个参考模板进行拆分,以获取仅包含一个词槽名的多个槽位更新模板;

第二获取单元,用于将仅对应用户意图的槽位更新模板去除,以获取槽位更新模板集。

在本申请实施例一种可能的实现方式中,每个查询语句对应的意图包括用户意图及槽位更新意图中的至少一个,第二获取单元,用于:

在任一槽位更新模板为参考模板集中的一个参考模板、且参考模板对应的意图仅为用户意图的情况下,将任一槽位更新模板去除。

在本申请实施例一种可能的实现方式中,第三获取模块940,包括:

第一确定单元,用于对语料集中每个语料进行解析,以确定每个语料中包含的实体及实体对应的候选词槽名;

生成单元,用于将每个语料中的实体分别用对应的候选词槽名替换,以生成候选模板;

第二确定单元,用于在槽位更新模板集中包含与任一候选模板匹配的槽位更新模板的情况下,确定任一候选模板对应的语料为槽位更新语料。

在本申请实施例一种可能的实现方式中,该装置还包括:

第四获取模块,用于根据与任一候选模板匹配的槽位更新模板,对槽位更新语料进行标注,以获取槽位更新训练数据;

第二生成模块,用于利用槽位更新训练数据,对初始意图识别模型进行训练,以生成槽位更新意图识别模型。

在本申请实施例一种可能的实现方式中,第三获取模块940,包括:

第三确定单元,用于确定槽位更新模板集中各个槽位更新模板间关联的非词槽名;

构建单元,根据各个槽位更新模板间关联的非词槽名,构建与槽位更新模板集对应的模板树;

第四确定单元,用于基于模板树,对预设的语料集进行遍历,以根据语料集中各个语料与模板树中的节点的匹配关系,确定语料集中包括的槽位更新语料。

在本申请实施例一种可能的实现方式中,第四确定单元,用于:

在任一语料中的非词槽名与模板树中的第一节点匹配、且位于非词槽名后的实体对应的候选词槽名中包含第一节点的一个词槽名子节点的情况下,确定任一语料为槽位更新语料;或者,

在任一语料中的实体对应的一个候选词槽名与模板树中的第二节点匹配、且位于实体之后的非词槽名与第二节点的一个子节点匹配的情况下,确定任一语料为槽位更新语料。

需要说明的是,前述槽位更新语料的挖掘方法实施例的解释说明,也适用于该实施例的槽位更新语料的挖掘装置,故在此不再赘述。

本申请实施例的槽位更新语料的挖掘装置,通过从历史交互日志中,获取各个查询语句及每个查询语句对应的自然语言识别结果,其中,自然语言识别结果包括查询语句中的词槽值所属的词槽名,并将每个查询语句中的词槽值用其所属的词槽名替换,以生成参考模板集,将参考模板集中的每个参考模板进行拆分,以获取槽位更新模板集,基于槽位更新模板集对预设的语料集进行遍历,以从语料集中获取与槽位更新模板集中的槽位更新模板匹配的槽位更新语料。由此,通过将查询语句中的词槽值用其所属的词槽名替换得到参考模板,对参考模板进行拆分,得到槽位更新模板集,利用槽位更新模板集,从语料集中获取槽位更新语料,从而实现了槽位更新语料整个挖掘过程自动化,无需人工参与,极大降低了人工成本。

根据本申请的实施例,本申请还提供了电子设备、一种可读存储介质和一种计算机程序产品。

图10示出了可以用来实施本申请的实施例的示例电子设备1000的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。

如图10所示,设备1000包括计算单元1001,其可以根据存储在ROM(Read-OnlyMemory,只读存储器)1002中的计算机程序或者从存储单元1008加载到RAM(Random AccessMemory,随机访问/存取存储器)1003中的计算机程序,来执行各种适当的动作和处理。在RAM 1003中,还可存储设备1000操作所需的各种程序和数据。计算单元1001、ROM 1002以及RAM 1003通过总线1004彼此相连。I/O(Input/Output,输入/输出)接口1005也连接至总线1004。

设备1000中的多个部件连接至I/O接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

计算单元1001可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1001的一些示例包括但不限于CPU(Central Processing Unit,中央处理单元)、GPU(Graphic Processing Units,图形处理单元)、各种专用的AI(Artificial Intelligence,人工智能)计算芯片、各种运行机器学习模型算法的计算单元、DSP(Digital SignalProcessor,数字信号处理器)、以及任何适当的处理器、控制器、微控制器等。计算单元1001执行上文所描述的各个方法和处理,例如槽位更新语料的挖掘方法。例如,在一些实施例中,槽位更新语料的挖掘方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1002和/或通信单元1009而被载入和/或安装到设备1000上。当计算机程序加载到RAM 1003并由计算单元1001执行时,可以执行上文描述的槽位更新语料的挖掘方法的一个或多个步骤。备选地,在其他实施例中,计算单元1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行槽位更新语料的挖掘方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、FPGA(Field Programmable Gate Array,现场可编程门阵列)、ASIC(Application-Specific Integrated Circuit,专用集成电路)、ASSP(Application Specific StandardProduct,专用标准产品)、SOC(System On Chip,芯片上系统的系统)、CPLD(ComplexProgrammable Logic Device,复杂可编程逻辑设备)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本申请的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、RAM、ROM、EPROM(Electrically Programmable Read-Only-Memory,可擦除可编程只读存储器)或快闪存储器、光纤、CD-ROM(Compact Disc Read-Only Memory,便捷式紧凑盘只读存储器)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(Cathode-Ray Tube,阴极射线管)或者LCD(Liquid Crystal Display,液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:LAN(LocalArea Network,局域网)、WAN(Wide Area Network,广域网)、互联网和区块链网络。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务(VirtualPrivate Server,虚拟专用服务器)中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。

根据本申请的实施例,本申请还提供了一种计算机程序产品,当计算机程序产品中的指令处理器执行时,执行本申请上述实施例提出的槽位更新语料的挖掘方法。

根据本申请实施例的技术方案,涉及自然语言处理、深度学习等人工智能技术领域,通过将查询语句中的词槽值用其所属的词槽名替换得到参考模板,对参考模板进行拆分,得到槽位更新模板集,利用槽位更新模板集,从语料集中获取槽位更新语料,从而实现了槽位更新语料整个挖掘过程自动化,无需人工参与,极大降低了人工成本。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号