一种批量生成语料的方法和系统与流程

文档序号:16973282发布日期:2019-02-26 18:44阅读:317来源:国知局
一种批量生成语料的方法和系统与流程
本发明涉及自然语言生成领域,具体而言,涉及一种批量生成语料的方法和系统。
背景技术
:近年来,随着信息时代以及网络时代的发展,电商平台的用户数量和渗透率均在快速增长,在电商平台中,于企业端一般设置有人工客服,以应对用户的问题咨询、售后跟踪等需求。由于电商平台用户数量的迅速增长,所要应对的用户需求也随之迅速增长,与此同时,传统的采用人工客服进行服务的成本不断上升,导致人工客服已难以应对巨大的服务需求。因此,为了满足用户日益增长的服务需求以及为了提升用户体验,通过智能客服来应对用户问题咨询、售后跟踪等需要,成为当下不少电商平台的主动选择,智能客服以其强大的客户应对能力、24小时不间断服务能力、快速回复能力等显著优点助力电商平台在服务效率和及时性上实现质的飞越。于智能客服中,广泛应用到自然语言处理(nlp,naturallanguageprocessing)技术,自然语言处理主要研究的是人与计算机之间用自然语言进行有效通信的理论和方法。客服知识库是智能客服的核心数据,其包括问题数据和答案数据,用户的提问匹配至问题数据中的问题,之后再从答案数据中搜索出正确的答案返回给用户。客服知识库是通过构建语料库以及对语料库进行标注而实现,其中,构建语料库的过程即获取大量原始的自然语料,对语料库进行标注即是对获取到的原始自然语料中有价值的语料进行意图标注,为每一有价值的原始自然语料设置一意图标签。客服知识库的质量直接决定了智能客服向用户返回的答案的准确程度以及匹配程度,从而决定服务质量和用户体验,因此构建客服知识库是智能客服中相当重要的一环。现有技术中,语料库的构建一般是采用人工方式将各种数据来源渠道统计来的数据进行汇总、集合,语料库的标注一般是采用人工方式对原始自然语料中有价值的语料一一进行意图识别后标注,其中,数据来源渠道例如为文献、报道、搜索引擎、社交平台、电商型平台等,这种方式存在以下缺点:(1)数据搜集、统计和标注阶段均需耗费相当大的人力和时间,效率低下;(2)从上述数据来源渠道统计得来的语料数据不丰富、不完整,无法覆盖所有可能的语料;(3)对不同的应用场景,需要分别进行数据搜集、统计和标注阶段,场景复用性差。因此,有必要针对上述现有语料库构建过程中的各种不足,研究一种高效、场景复用性好、语料数据丰富的语料生成方式。技术实现要素:本发明提供一种批量生成语料的方法和系统,用以克服上述现有技术中的至少一个问题。为达到上述目的,本发明提供了一种批量生成语料的方法,其包括以下步骤:s1:设置语料应用的场景;s2:为所述场景设置一意图库,所述意图库中包含与该场景对应的至少一个意图;s3:设置一情境库和一句式库,所述情境库中包含至少一个情境,所述句式库包含至少一个句式,为每一情境分别设置至少一个与之对应的句式;s4:为每一意图选择至少一个与之对应的情境;s5:根据句式所属的场景、意图和情境,分别为每一情境下的每一句式设置生成完整句式所需的多个词组;s6:将多个词组应用至与之对应的句式中,得到一初选语料库;s7:对所述初选语料库进行筛选,选出其中高质量的语料。在本发明的一实施例中,于步骤s1中,所述场景对应于一行业下的一项目。在本发明的一实施例中,行业包括奶粉和纸尿裤,项目为奶粉行业和纸尿裤行业中的各现有品牌。在本发明的一实施例中,所述情境库和所述句式库均是基于对人类语言的语境统计结果而设置,其中,所述情境库中的每一情境均是对多个语境下语言目的的上位性概括,所述句式库中的每一句式均是对特定语境下语言表述方式的具体呈现。在本发明的一实施例中,于步骤s3之前进一步包括一词组管理步骤,步骤如下:将同一语义的词纳入同一个词组;为每个词分别标识其所属项、词类、类型和词性,其中,所属项用于标识与词对应的可用项,词类用于标识词的可用范围,类型用于标识词的种类,词性用于标识词的语法属性。在本发明的一实施例中,所属项包括“项目品牌”、“品牌”、“活动类型”、“优惠条件”、“优惠券详情”和“是否”等,词类包括“所属品牌”、“全分类”和“电商”等,类型包括“实体词”、“句式词”、“短句词”和“其他词”,词性包括人称名词、普通名词、时间名词、地点名词、动词、形容词、数词、量词、数量短语、语气词、叹词、程度副词、结构助词。在本发明的一实施例中,于步骤s3中,于每个句式中,首先将类型为句式词的词位置固定,再将其他位置用占位词进行占位。在本发明的一实施例中,于步骤s6中,将多个词组应用至与之对应的句式中的步骤为:从每一词组中分别选择其中的一个词替换句式中相应位置处的占位词和句式词,直至完成多个词组中每个词的所有排列组合。在本发明的一实施例中,所述占位词分为必选占位词和可选占位词。在本发明的一实施例中,所述短句词由实体词和其他类型的词组成。本发明还提供了一种批量生成语料的系统,其包括:场景生成单元,用于生成语料应用的场景;意图库,所述意图库中包含与该场景对应的至少一个意图;句式库,所述句式库包含至少一个句式;情境库,所述情境库中包含至少一个情境,每一情境分别具有至少一个与之对应的句式;情境设置单元,用于为每一意图设置至少一个与之对应的情境;句式生成单元,根据句式所属的场景、意图和情境,分别为每一情境下的每一句式设置生成完整句式所需的多个词组;初选语料生成单元,将多个词组应用至与之对应的句式中,以生成初选语料;语料筛选单元,对初选语料进行筛选,以选出其中高质量的语料。本发明提供的批量生成语料的方法和系统能够高效率的生成语料,生成的语料数据丰富、完整并且场景复用性好,与现有的语料库构建方式相比,能够节省大量的人力和时间,具有很强的实用性。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明的可视化交互界面示意图(一);图2为本发明的可视化交互界面示意图(二);图3为本发明的可视化交互界面示意图(三);图4为本发明提供的批量生成语料的系统的示意图。附图标记说明:1-场景生成单元;2-意图库;3-句式库;4-情境库;5-情境设置单元;6-句式生成单元;7-初选语料生成单元;8-语料筛选单元。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明提供了一种批量生成语料的方法,其包括以下步骤:s1:设置语料应用的场景;本发明适用于多种场景,能够满足各种场景中批量生成语料的需求。首先设置语料应用的“场景”,目的是为了便于后续的各个过程均围绕该具体“场景”而进行,生成的语料中的每个词、每个短语、每句话均与该场景相关,而与该场景无关的语料内容则完全不出现或出现几率极低。另外,现实中需要批量生成语料的应用均与具体的场景相对应,考虑到本发明的普遍适用性,故应首先设置语料应用的场景。为了便于说明,本发明中以电商应用为例,场景对应一行业下的一项目。具体的,例如行业可以为奶粉行业或纸尿裤行业,当“行业”为奶粉行业时,项目可以为现有的奶粉品牌,例如贝因美、雀巢、启赋、惠氏等,当“行业”为纸尿裤行业时,项目可以为现有的纸尿裤品牌,例如花王、帮宝适等。以上项目对于智能客服来说,存在大量的重复性提问、对于同一问题的多样化提问,若按照现有的语料库构建方法构建语料库,会存在
背景技术
中所提及的各种问题。在场景确定的情况下,本发明的“批量生成语料”就是生成用户端发出的提问的“语料库”。s2:为场景设置一意图库,意图库中包含与该场景对应的至少一个意图;于确定的场景下,用户端发出的提问虽然千差万别,但是,绝大多数的提问都是可以合理预料到的提问,并且每一提问能够对应至少一个明确的意图。例如,于奶粉行业或纸尿裤行业中的上述任一项目中,经常涉及到的意图有以下:询问发货时间、询问产品适合的年龄、询问是否有优惠、询问是否可以退货、询问是否包邮等等。所以,根据行业及项目中以往的经验及合理性的预测,对用户提问的意图进行归纳、总结、提炼,将场景下的绝大多数用户提问对应的意图一一列出,就构建得到了与该场景对应的意图库。s3:设置一情境库和一句式库,情境库中包含至少一个情境,句式库包含至少一个句式,为每一情境分别设置至少一个与之对应的句式;此步骤不限于在步骤s1、s2之后进行,也可以在步骤s1、s2之前进行,事实上,情境库和句式库具有多场景复用性,设置完成之后,可由多个场景调取使用,从这一点上来说,本发明能够大大克服现有的构建语料库的方法场景复用性差的问题。其中,情境库和句式库较佳为基于对人类语言的语境统计结果而设置,其中,情境库中的每一情境均是对多个语境下语言目的的上位性概括,句式库中的每一句式均是对特定语境下语言表述方式的具体呈现。对情境进行上位性概括时不应局限于某一特定的场景和特定的行业,而是应综合考虑多个行业的多个场景,情境中可以上位性概括的词均应采用上位概念进行替换。以下举出一具体实施例:第一语境:买一送一什么时候开始啊?!第二语境:什么时候开始买一送一?第三语境:什么时候买一送一上述第一语境、第二语境、第三语境中的句式不同、使用的标点不同(甚至可能未使用标点)、字数不同、文字顺序不同,但是,其语言目的相同,均是提问“买一送一”这一活动的具体时间,对这三种语境下的语言目的进行上位性概括后,将这一情境命名为“询问做某事的时间”,而之所以命名为“询问做某事的时间”而不是将其命名为“询问买一送一的时间”,是出于场景复用性的考虑,将“买一送一”这一事件进一步上位为“做某事”。在这一实施例中,“询问做某事的时间”这一情境还可以用于例如以下语境:第四语境:什么时候有赠品?第五语境:赠品什么时候送?第六语境:什么时候开始送赠品?可见,上述第四语境至第六语境也可以复用“询问做某事的时间”这一情境,而如果将上述第一语境至第三语境命名为“询问买一送一的时间”,则第四语境至第六语境就无法复用。可见,本发明采用“情境库中的每一情境均是对多个语境下语言目的的上位性概括”这一技术手段,能够有效增强本发明的场景复用性。以下仍以“询问做某事的时间”为例,说明“为每一情境分别设置至少一个与之对应的句式”的具体实施方式,以下句式一和句式二为“询问做某事的时间”这一情境下的两个句式。句式一:[名词][句式词1][动词1][句式词2][标点]例句:买一送一什么时候开始啊?“句式一”中,[名词]对应例句中的“买一送一”,[句式词1]是在生成句式时就已经确定的,其包含例如“什么时候”、“啥时候”、“何时”这些词,例句中使用的是“什么时候”,[动词1]对应例句中的“开始”,[句式词2]也是在生成句式时就已经确定的,其包含例如“啊”、“呀”、“啊啊”这些词,例句中使用的是“啊”,[标点]对应例句中的“?”,实际上,[标点]是可有可无的,甚至[句式词2]也是可有可无的,并不影响句式一的语义表述。句式二:[句式词1][动词1][名词][句式词2][标点]例句:什么时候开始买一送一?“句式二”中,[句式词1]对应例句中的“什么时候”,[动词1]对应例句中的“开始”,[名词]对应例句中的“买一送一”,[句式词2]在例句中无对应,也即[句式词2]是可有可无的,其存在与否不影响句式二的语义表述,[标点]对应例句中的“?”。另外,步骤s3中,于每个句式中,首先将类型为句式词的词位置固定,再将其他位置用占位词进行占位。也就是说,在生成句式时,句式词就已经确定,常见的句式词有:什么时候(以及其同义词)、的、是不是(以及其同义词)以及语气词(例如啊、呀、呦)。另外,占位词分为必选占位词和可选占位词,对于必选占位词来说,生成语料时必须将其替换为对应词组中的词,对于可选占位词,生成语料时可以选择是否将其替换为对应词组中的词。例如,上述句式一中的[句式词2]和[标点]均为可选占位词,而句式一中的[名词][句式词1][动词1]均为必选占位词。s4:为每一意图选择至少一个与之对应的情境;意图库和情境库均设置完成后,其二者之间并无对应关系,需要将意图库中的意图与情境库中的情境进行关联。一方面,对于一个意图而言,其可能有多个可以与之对应的情境;另一方面,对于一个情境而言,其可能被多个意图对应。以下举例说明这两种情况。(1)一个意图对应多个情境意图:奶粉行业中的a品牌,其多个产品的某种属性的对比情境:①询问区别②询问好坏对比③询问功能对比也即,“奶粉行业中的a品牌,其多个产品之间的对比”这一意图对应上述情境①~情境③,情境①~情境③下的每一句式均能够供“奶粉行业中的a品牌,其多个产品之间的对比”这一意图使用。(2)一个情境对应多个意图情境:询问区别意图:①奶粉行业中的a品牌,其多个产品的某种属性的对比②奶粉行业中的a品牌,其多个产品对应的优惠券之间的对比③奶粉行业中的a品牌,其多个产品的售后服务之间的对比也即,以上意图①~意图③均可以调用“询问区别”这一情境,并可以使用“询问区别”这一情境下的每一句式。在本发明中,于步骤s3之前可以进一步包括一词组管理步骤,步骤如下:之所以在步骤s3之前进行词组管理,是因为步骤s3中生成句式时需要确定句式词于整个句子中的位置,此时句式词也应确定,也即,句式词选用哪一词组(词组中包含该句式词的多个同义词)也已确定。将同一语义的词纳入同一个词组;根据一般的语言表述习惯和认知习惯,归纳出属于同一语义的词语,将这些语义相同的词置入同一词组。例如,优惠券、券、券儿的语义相同,应置入同一词组。对于所有的词均执行此操作而不仅限于名词,例如,什么时候、啥时候、何时的语义相同,也应置入同一词组。为每个词分别标识其所属项、词类、类型和词性,其中,所属项用于标识与词对应的可用项,词类用于标识词的可用范围,类型用于标识词的种类,词性用于标识词的语法属性。其中,所属项包括“项目品牌”、“品牌”、“活动类型”、“优惠条件”、“优惠券详情”和“是否”,词类包括“所属品牌”、“全分类”和“电商”,类型包括“实体词”、“句式词”、“短句词”和“其他词”,词性包括人称名词、普通名词、时间名词、地点名词、动词、形容词、数词、量词、数量短语、语气词、叹词、程度副词、结构助词。下表以一些词为例,说明如何对词标识其所属项、词类、类型和词性,其中,“小鹿叮叮”是某纸尿裤品牌的名字。表1词名称所属项词类类型词性近义词个数小鹿叮叮项目品牌小鹿叮叮实体词名词8品牌品牌全分类其他词名词6满送活动类型电商实体词名词2600优惠条件电商实体词数量短语4满减券优惠券详情电商短句词名词7是否是是否全分类句式词---3上表中的最后一行,“是否是”一词未标注词性,其类型为“句式词”,这类词较少、无合适的词性对其标注并且在生成句式时,句式词的词位置就已经固定,在不影响该词正常使用的情况下,可以不对词性进行标注。标识词的所属项、词类、类型和词性的目的是为了便于进行下一步骤s5时,选择词组的方便和快捷。s5:根据句式所属的场景、意图和情境,分别为每一情境下的每一句式设置生成完整句式所需的多个词组;如上文中句式一和句式二,对于“提问‘买一送一’这一活动的具体时间”这一意图,选择“询问做某事的时间”这一情境,而“询问做某事的时间”这一情境有两个与之对应的句式,也就是句式一和句式二。步骤s3中的句式一和句式二确定后,除了句式词以外,其余每一[]中的内容并未确定,也就是说,其余每一[]中使用什么词组填充并未确定,这时,就需要根据句式所属的场景、意图和情境,为其余每一[]选择合适的词组,当所有[]对应的词组确定后,就可以进行步骤s6。s6:将多个词组应用至与之对应的句式中,得到一初选语料库;具体的,步骤s6中,从每一词组中分别选择其中的一个词替换句式中相应位置处的占位词和句式词,直至完成多个词组中每个词的所有排列组合。例如,一句式中共有m个[],则应有m个词组分别对应至m个[],假设这m个词组中词的个数依次为n1、n2……nm,则共有n1×n2×……×nm种组合,将每一种组合均应用在句式中,即得到初选语料库。仍以句式一为例,具体说明如下:句式一对应“提问‘买一送一’这一活动的具体时间”这一意图,[名词]这一词组选择包含“买一送一”的词组,该词组中的词共有n1个,[句式词1]在生成句式时就已经确定,该词组中的词共有n2个,[动词1]这一词组选择包含“开始”的词组,该词组中的词共有n3个,[句式词2]也是在生成句式时就已经确定,该词组中的词共有n4个,[标点]这一词组选择包含“?”的词组,该词组中的词共有n5个。可见,对于句式一,共有n1×n2×n3×n4×n5种组合,若进一步考虑[句式词2]、[标点]均为可选占位词,则有更多种组合,这些组合共同组成初选语料库中的语料。s7:对初选语料库进行筛选,选出其中高质量的语料。上一步骤中生成的初选语料中,有一些语料并不符合用户于提问时的语言表述习惯,也即,现实中并无用户按照这些语料的表述方式进行提问,其存在无意义,应将其删除或修改,以得到高质量的语料。表1中,“满减券”一词为短句词,在本发明中,短句词由实体词和其他类型的词组成,由于这种词在语料生成中较为常见和常用,故将其单独列为一类,以方便生成语料时调用。短句词可以采用本发明中构建句式的思路,例如,对于“满600减100的优惠券”,与其同义的词太多,一一列举会花费大量的时间和精力,故采用构建的方式:【满】【600、六百】【减、-】【100、一百】【的】【优惠券、券、券儿】以上,每一【】中的内容代表一个词组,其中的词即为该词组中的同义词,其中,【满】为可选,例如,“600-100的优惠券”同样可以表示“满600减100的优惠券”这一含义,【的】为句式词,已固定。因此,共可以生成2×2×2×2×3=24种表述方式,第一个2表示有“满”和无“满”两种情况。本发明还提供了一种批量生成语料的系统,如图4所示为本发明提供的批量生成语料的系统的示意图,该系统用于实现上述批量生成语料的方法,其包括:场景生成单元1,用于生成语料应用的场景;意图库2,所述意图库中包含与该场景对应的至少一个意图;句式库3,所述句式库包含至少一个句式;情境库4,所述情境库中包含至少一个情境,每一情境分别具有至少一个与之对应的句式;情境设置单元5,用于为每一意图设置至少一个与之对应的情境;句式生成单元6,根据句式所属的场景、意图和情境,分别为每一情境下的每一句式设置生成完整句式所需的多个词组;初选语料生成单元7,将多个词组应用至与之对应的句式中,以生成初选语料;语料筛选单元8,对初选语料进行筛选,以选出其中高质量的语料。为了便于具体实施和使用本发明提供的批量生成语料的方法和系统,可以设计一可视化交互界面以供批量生成语料,如图1所示为本发明的可视化交互界面示意图(一),在本发明的批量生成语料的系统已构建完成并与可视化界面进行了正确关联的前提下,可以通过图1中“选择场景”下的▼对场景进行选择,也即执行步骤s1,以及通过“选择意图”下的▼对意图进行选择,之后再通过“选择情境”下的▼选择该意图对应的情境,当完成上述过程之后,即可在图2中进一步对词组进行选择。如图2所示,需要选择的是除了句式词和标点以外的其他词,将标点设置为无需选择,是考虑到用户提问时使用的标点符号多种多样,并且标点的使用对语义本身不造成太大影响,因此,将标点采用一必选占位词词组进行固定,可使得使用者能够专注于语料生成过程中其他词组的选择,而不必花费过多精力在语料中的标点上。另外,由于句式生成后,句式中的句式词就已固定,因此,可以于交互界面上将句式词显现出来,以方便使用者理解和选择,如图3所示,“多久”为句式词,其于句式生成时就已经确定,与其语义相同的一个词组在句式中占位,为了便于使用者理解,将“多久”显示在可视化界面上。需要注意的是,这种情况下,应选择同一词组中最容易被理解且无歧义的一个词呈现在可视化界面上。本发明提供的批量生成语料的方法和系统能够高效率的生成语料,生成的语料数据丰富、完整并且场景复用性好,与现有的语料库构建方式相比,能够节省大量的人力和时间,具有很强的实用性。本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。本领域普通技术人员可以理解:实施例中的装置中的模块可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1