掌桥专利:专业的专利平台
掌桥专利
首页

知识库生成方法、装置、设备及存储介质

文献发布时间:2023-06-19 11:29:13


知识库生成方法、装置、设备及存储介质

技术领域

本申请涉及区块链/人工智能技术领域,尤其涉及一种知识库生成方法、装置、设备及存储介质。

背景技术

智能问答系统,旨在要求机器能理解自然语言组成的问题,并给出合理准确的答案。常见的智能问答系统按照答案来源,可分为基于结构化数据的问答系统、基于问题答案的问答系统和基于自由文本的问答系统。而基于结构化数据的问答系统的代表系统为基于知识图谱的问答(Knowledge Base Question Answering,KBQA),基于问题答案的问答系统的代表系统为基于常见问题的问答(Frequently Asked Questions,FAQ),基于自由文本的问答系统的代表系统为基于机器阅读理解的问答(Machine Reading Comprehension,MRC)。其中,KBQA和FAQ的问答效果依赖于知识库的规模与质量,MRC虽然可以直接从非结构化文本中摘取片段作为答案,但训练阅读理解模型仍需要较大规模问答语料的知识库。

而目前知识库的主要收集方式为人工整理和网络爬虫。其中,人工整理知识库的成本高且数量有限,导致知识覆盖率低,无法应对数据需求量大的问答场景;而由于数据来源的多样化,使得网络爬虫数据质量偏低,往往包含大量噪声,需进一步人工甄选鉴别,仍然存在效率较低的问题。

因此,现有技术生成的知识库存在无法保证知识的覆盖率和有效性,且生成效率低下的问题。

发明内容

有鉴于此,本申请实施例提供了一种知识库生成方法、装置、设备及存储介质,以解决现有技术中无法保证知识库的覆盖率和有效性问题,并提高知识库的生成效率。

本申请实施例的第一方面提供了一种知识库生成方法,包括:

获取非结构化文本中候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息;

对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到语义向量;

解码所述语义向量,得到目标答案的知识库。

在一可选的实现方式中,所述获取非结构化文本中候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息,包括:

获取所述非结构化文本,对所述非结构化文本基于与预训练序列标注模型进行标注,提取所述非结构化文本中的候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息。

在一可选的实现方式中,对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到语义向量,包括:

通过预先训练完成的问句生成模型对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到所述语义向量。

在一可选的实现方式中,所述问句生成模型为序列到序列模型,所述序列到序列模型包括采用双向LSTM结构的编码器;

通过预先训练完成的问句生成模型对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到所述语义向量,包括:

通过所述双向LSTM结构的编码器对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到所述语义向量。

在一可选的实现方式中,在通过所述双向LSTM结构的编码器对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到所述语义向量之前,还包括:

根据各个所述候选答案在所在的第一句子中的依存关系,得到树形结构的候选答案序列;

根据所述树形结构的候选答案序列,计算所述第一句子中的各个候选答案在所述树形结构的候选答案序列中的位置向量,所述位置向量表示第一句子中的各个候选答案在所述树形结构的候选答案序列中的位置;

将所述第一句子中的各个候选答案对应的位置向量输入到预先训练的双向LSTM结构中;

根据所述双向LSTM结构对所述第一句子中的每个候选答案进行语义编码,得到所述第一句子中的各个候选答案各自对应的语义向量;

根据所述双向LSTM结构,依据所述第一句子中的每个候选答案对应的位置向量以及语义向量,生成所述第一句子中的每个候选答案各自对应的语义向量。

在一可选的实现方式中,所述序列到序列模型还包括解码器;

所述解码所述语义向量,得到目标答案的知识库,包括:

通过所述解码器对所述语义向量进行解码,得到所述目标答案的知识库。

在一可选的实现方式中,所述解码器为单向LSTM结构的解码器;所述通过所述解码器对所述语义向量进行解码,得到所述目标答案的知识库,包括:

在所述单向LSTM结构中以所述语义向量为初始状态,逐时刻解码输出目标答案,直至输出结束标志符,得到所述目标答案的知识库。

本申请实施例第二方面提供了一种知识库生成装置,包括:

获取模块,用于获取非结构化文本中候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息;

编码模块,用于对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到语义向量;

得到模块,用于解码所述语义向量,得到目标答案的知识库。

在一可选的实现方式中,所述获取模块,具体用于:

获取所述非结构化文本,对所述非结构化文本基于与预训练序列标注模型进行标注,提取所述非结构化文本中的候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息。

在一可选的实现方式中,所述编码模块,具体用于:

通过预先训练完成的问句生成模型对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到所述语义向量。

在一可选的实现方式中,所述问句生成模型为序列到序列模型,所述序列到序列模型包括采用双向LSTM结构的编码器;

所述编码模块,具体用于:

通过所述双向LSTM结构的编码器对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到所述语义向量。

在一可选的实现方式中,所述编码模块,包括:

第一得到单元,用于根据各个所述候选答案在所在的第一句子中的依存关系,得到树形结构的候选答案序列;

计算单元,用于根据所述树形结构的候选答案序列,计算所述第一句子中的各个候选答案在所述树形结构的候选答案序列中的位置向量,所述位置向量表示第一句子中的各个候选答案在所述树形结构的候选答案序列中的位置;

输入单元,用于将所述第一句子中的各个候选答案对应的位置向量输入到预先训练的双向LSTM结构中;

第二得到单元,用于根据所述双向LSTM结构对所述第一句子中的每个候选答案进行语义编码,得到所述第一句子中的各个候选答案各自对应的语义向量;

生成单元,用于根据所述双向LSTM结构,依据所述第一句子中的每个候选答案对应的位置向量以及语义向量,生成所述第一句子中的每个候选答案各自对应的语义向量。

在一可选的实现方式中,所述序列到序列模型还包括解码器;

所述得到模块,具体用于:

通过所述解码器对所述语义向量进行解码,得到所述目标答案的知识库。

在一可选的实现方式中,所述解码器为单向LSTM结构的解码器;所述得到模块,具体用于:

在所述单向LSTM结构中以所述语义向量为初始状态,逐时刻解码输出目标答案,直至输出结束标志符,得到所述目标答案的知识库。

本申请实施例的第三方面提供了一种知识库生成设备,包括存储器、处理器以及存储在所述存储器中并可在文本标注设备上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面提供的知识库省出方法的各步骤。

本申请实施例的第五方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现第一方面提供的知识库生成方法的各步骤。

实施本申请实施例提供的一种知识库生成方法、装置、设备及存储介质具有以下有益效果:通过获取非结构化文本中的候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息,对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到语义向量;进一步通过对所述语义向量进行解码,得到目标答案的知识库。整个过程不需要人工参与,且通过对非结构化文本中候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息进行编码及解码,得到目标答案的知识库,不仅能够保证知识的覆盖率和有效性,还可以提升知识库生成的效率。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1示出了本申请一实施例提供的知识库生成方法的实现流程图;

图2示出了本申请另一实施例提供的知识库生成方法的实现流程图;

图3示出了本申请实施例提供的知识库生成装置的结构框图;

图4示出了本申请实施例提供的知识库生成设备的结构框图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请实施例所涉及的知识库生成方法,可以由知识库生成设备执行。

本申请实施例涉及的知识库生成方法,应用于对基于人工智能的问答意图识别或情绪识别场景中提供知识的知识库生成中,能够推动意图或情绪识别等方面的发展。

请参阅图1,图1示出了本申请一实施例提供的知识库生成方法的实现流程图。该实施例提供的知识库生成方法可以由知识库生成设备执行,所述知识库生成设备可以是终端或者服务器,所述终端可以是手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等电子设备。所述服务器可以是单个服务器或者服务器集群。详述如下:

S101,获取非结构化文本中候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息。

在本申请的实施例中,所述非结构化文本可以是特定应用领域(也称为垂直领域)的公开文本,也可以是开源数据库中的数据,非结构化的意思是指文本不具有固定的文本格式、存储格式等,可以是各种文本格式也可以是各种存储形式下的文本。示例性地,非结构化文本为知识库生成设备从网络数据库中获取的特定应用领域的用户日志。

其中,所述特定应用领域可以是数据来源有限且数据来源成本较高的领域。例如,金融领域以及保险领域等。

在本申请的实施例中,所述获取非结构化文本中候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息,可以包括:获取所述非结构化文本,对所述非结构化文本基于与预训练序列标注模型进行标注,提取所述非结构化文本中的候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息。

示例性地,所述预训练序列标注模型为BERT BiLSTM CRF模型,所述BERT BiLSTMCRF模型以BIO方式对所述非结构化文本进行标注。例如,对所述非结构化文本基于预训练序列标注模型进行标注,提取所述非结构化文本中的候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息,包括:将所述非结构化文本输入所述BERT BiLSTMCRF模型,所述BERT BiLSTM CRF模型对所述非结构化文本进行切分,得到多个小段落,并分别对各个小段落进行标注,输出所有所述候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息。

S102,对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到语义向量。

其中,对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到语义向量,可以包括:通过预先训练完成的问句生成模型对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到所述语义向量。

所述预先训练完成的问句生成模型为序列到序列模型,所述序列到序列模型包括采用双向LSTM结构的编码器。例如,所述问句生成模型为Seq2Seq序列到序列模型。其中,所述Seq2Seq序列到序列模型包括编码器,所述编码器采用双向LSTM结构,在本申请的实施例中,通过所述双向LSTM结构将所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到固定长度的所述语义向量。其中,所述语义向量作为所述候选答案的上下文语义。

示例性地,通过所述双向LSTM结构将所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,需要确定所述候选答案在所述第一句子中的位置信息。具体地,在本申请的实施例中,依据各个所述候选答案在所在的第一句子中的依存关系,得到树形结构的候选答案序列;依据所述树形结构的候选答案序列,计算所述第一句子中的每个候选答案在所述树形结构的候选答案序列中的位置向量,所述位置向量表示了第一句子中的候选答案在所述树形结构的候选答案序列中的位置。对应地,通过所述双向LSTM结构将所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到所述语义向量,包括:根据各个所述候选答案在所在的第一句子中的依存关系,得到树形结构的候选答案序列;根据所述树形结构的候选答案序列,计算所述第一句子中的各个候选答案在所述树形结构的候选答案序列中的位置向量,所述位置向量表示第一句子中的各个候选答案在所述树形结构的候选答案序列中的位置;将所述第一句子中的各个候选答案对应的位置向量输入到预先训练的双向LSTM结构中;根据所述双向LSTM结构对所述第一句子中的每个候选答案进行语义编码,得到所述第一句子中的各个候选答案各自对应的语义向量;根据所述双向LSTM结构,依据所述第一句子中的每个候选答案对应的位置向量以及语义向量,生成所述第一句子中的每个候选答案各自对应的语义向量。

S103,解码所述语义向量,得到目标答案的知识库。

在本申请的实施例中,所述序列到序列模型还包括解码器,所述解码所述语义向量,得到目标答案的知识库,包括:通过所述解码器对所述语义向量进行解码,得到所述目标答案的知识库。

具体地,所述解码器为单向LSTM结构的解码器;所述通过所述解码器对所述语义向量进行解码,得到所述目标答案的知识库,包括:在所述单向LSTM结构中以所述语义向量为初始状态,逐时刻解码输出目标答案,直至输出结束标志符,得到所述目标答案的知识库。

例如,所述单向LSTM结构的解码器为Seq2Seq序列到序列模型的解码器,具体地,通过所述Seq2Seq序列到序列模型的解码器对所述语义向量进行解码。具体地,所述Seq2Seq序列到序列模型的解码器以所述语义向量为初始状态,逐时刻解码输出目标答案,直至输出结束标志符,得到所述目标答案的知识库。

示例性地,利用所述Seq2Seq序列到序列模型的解码器对所述第一句子中的每个候选答案各自对应的源端语义向量进行语义解码,可以得到所述第一句子中的每个候选答案各自对应的目标答案。其中,对第一句子中的任一个候选答案对应的源端语义向量进行语义解码的过程可以为:将所述第一句子中的任一个候选答案对应的源端语义向量与数据库中存储的所有备选答案的语义向量做相似性运算,得到相似性运算结果,将相似性运算结果符合预设相似性阈值的候选答案作为第一句子中该候选答案对应的目标答案。

其中,本申请的一些实施例中,可以将第一句子中的任一个候选答案对应的源端语义向量与数据库中存储的所有候选答案的语义向量做点积,得到点积结果;将所述点积结果作为相似性运算结果,并对点积结果执行概率化运算,得到概率化运算结果,依据概率化运算结果,从中选择符合预设概率阈值的候选答案作为所述第一句子中该候选答案对应的目标答案。

通过上述实施例可知,本申请第一方面提供的知识库生成方法,通过获取非结构化文本中的候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息,对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到语义向量;进一步通过对所述语义向量进行解码,得到目标答案的知识库。整个过程不需要人工参与,且通过对非结构化文本中候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息进行编码及解码,得到目标答案的知识库,不仅能够保证知识的覆盖率和有效性,还可以提升知识库生成的效率。

请参阅图2,图2示出了本申请另一实施例提供的知识库生成方法的实现流程图。相对于图1对应的实施例,本实施例提供的知识库生成方法的步骤S201至步骤S203与图1中的步骤S101至步骤S103的具体实现过程相同,不同之处在于,在S203之后还包括步骤S204,其中,步骤S203与步骤S204为顺序执行关系。详述如下:

S201,获取待标注的文本数据。

S202,获取训练样本集,基于所述训练样本集对预先建立的文本多标注模型进行训练,得到训练完成的所述文本多标注模型。

S203,将所述文本数据输入预先训练完成的文本多标注模型进行文本标注,输出目标类别文本。

S204,对所述目标答案的知识库进行准确性校验。

示例性地,通过文本匹配模型对所述目标答案进行准确性校验。具体地,所述目标答案的知识库包括所述目标答案对应的第二句子,通过文本匹配模型对所述目标答案进行准确性校验包括:将所述第二句子和预设的关联问句输入所述文本匹配模型,计算所述第二句子与所述预设的关联问句之间的相关度;若有所述第二句子与所述预设的关联问句之间的相关度大于预设的阈值,则确定该第二句子包括的目标答案的准确性校验通过;若有所述第二句子与所述预设的关联问句之间的相关度小于或等于预设的阈值,则确定该第二句子包括的目标答案的准确性校验不通过。可选地,对于对所述目标答案的准确性校验不通过的第二句子,可以进一步进入人工审核,示例性地,可以通过人工审核目标答案的边界、语句的通顺度、语法的正确性等。

可选地,当所述文本匹配模型对所述目标答案进行准确性校验之后,准确率较低时,可以将校验不通过的目标答案对应的第二句子作为对抗样本分别反馈至序列标准模型、seq2seq模型以及文本匹配模型,进行模型调整及优化。

可以看出,本实施例提供的知识库生成方法,通过获取非结构化文本中的候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息,对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到语义向量;进一步通过对所述语义向量进行解码,得到目标答案的知识库。整个过程不需要人工参与,且通过对非结构化文本中候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息进行编码及解码,得到目标答案的知识库,不仅能够保证知识的覆盖率和有效性,还可以提升知识库生成的效率。

请参阅图3,图3示出了本申请实施例提供的知识库生成装置的结构框图。本实施例中的知识库生成装置包括的各模块用于执行图1或图2对应的实施例中的各步骤。具体请参阅图1或图2所对应的实施例中的相关描述。为了便于说明,仅示出了与本实施例相关的部分。参见图3,知识库生成装置30包括:获取模块31、编码模块32和得到模块33,其中:

获取模块31,用于获取非结构化文本中候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息;

编码模块32,用于对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到语义向量;

得到模块33,用于解码所述语义向量,得到目标答案的知识库。

在一可选的实现方式中,所述获取模块31,具体用于:

获取所述非结构化文本,对所述非结构化文本基于与预训练序列标注模型进行标注,提取所述非结构化文本中的候选答案所在的第一句子和各个所述候选答案在所述第一句子中的位置信息。

在一可选的实现方式中,所述编码模块32,具体用于:

通过预先训练完成的问句生成模型对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到所述语义向量。

在一可选的实现方式中,所述问句生成模型为序列到序列模型,所述序列到序列模型包括采用双向LSTM结构的编码器;

所述编码模块32,具体用于:

通过所述双向LSTM结构的编码器对所述候选答案所在的第一句子和所述候选答案在所述第一句子中的位置信息进行编码,得到所述语义向量。

在一可选的实现方式中,所述编码模块32,包括:

第一得到单元,用于根据各个所述候选答案在所在的第一句子中的依存关系,得到树形结构的候选答案序列;

计算单元,用于根据所述树形结构的候选答案序列,计算所述第一句子中的各个候选答案在所述树形结构的候选答案序列中的位置向量,所述位置向量表示第一句子中的各个候选答案在所述树形结构的候选答案序列中的位置;

输入单元,用于将所述第一句子中的各个候选答案对应的位置向量输入到预先训练的双向LSTM结构中;

第二得到单元,用于根据所述双向LSTM结构对所述第一句子中的每个候选答案进行语义编码,得到所述第一句子中的各个候选答案各自对应的语义向量;

生成单元,用于根据所述双向LSTM结构,依据所述第一句子中的每个候选答案对应的位置向量以及语义向量,生成所述第一句子中的每个候选答案各自对应的语义向量。

在一可选的实现方式中,所述序列到序列模型还包括解码器;

所述得到模块33,具体用于:

通过所述解码器对所述语义向量进行解码,得到所述目标答案的知识库。

在一可选的实现方式中,所述解码器为单向LSTM结构的解码器;所述得到模块33,具体用于:

在所述单向LSTM结构中以所述语义向量为初始状态,逐时刻解码输出目标答案,直至输出结束标志符,得到所述目标答案的知识库。

应当理解的是,图3示出的知识库生成装置的结构框图中,各模块用于执行图1或图2对应的实施例中的各步骤,而对于图1或图2对应的实施例中的各步骤已在上述实施例中进行详细解释,具体请参阅图1或图2以及图1或图2所对应的实施例中的相关描述,此处不再赘述。

图4示出了本申请实施例提供的知识库生成设备的结构框图。如图4所示,该实施例的知识库生成设备40包括:处理器41、存储器42以及存储在所述存储器42中并可在所述处理器41上运行的计算机程序43,例如知识库生成方法的程序。处理器41执行所述计算机程序43时实现上述各个知识库生成方法各实施例中的步骤,例如图1所示的S101至S103。或者,所述处理器41执行所述计算机程序43时实现上述图3对应的实施例中各模块的功能,例如,图3所示的模块31至33,具体请参阅图3对应的实施例中的相关描述,此处不赘述。

示例性的,所述计算机程序43可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器42中,并由所述处理器41执行,以完成本申请。所述一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序43在所述知识库生成设备40中的执行过程。例如,所述计算机程序43可以被分割成获取模块、编码模块和得到模块,各模块具体功能如上图3所述。

所述知识库生成设备40可包括,但不仅限于,处理器41、存储器42。本领域技术人员可以理解,图4仅仅是知识库生成设备40的示例,并不构成对知识库生成设备40的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述转台设备还可以包括输入输出设备、网络接入设备、总线等。

所称处理器41可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

所述存储器42可以是所述知识库生成设备40的内部存储单元,例如知识库生成设备40的硬盘或内存。所述存储器42也可以是所述知识库生成设备40的外部存储设备,例如所述知识库生成设备40上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器42还可以既包括所述知识库生成设备40的内部存储单元也包括外部存储设备。所述存储器42用于存储所述计算机程序以及所述转台设备所需的其他程序和数据。所述存储器42还可以用于暂时地存储已经输出或者将要输出的数据。

以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

相关技术
  • 知识库生成方法、装置、设备及存储介质
  • 知识库的生成方法、装置、存储介质及电子设备
技术分类

06120112941553