数据库维护方法和装置与流程

文档序号:11155490阅读:421来源:国知局
数据库维护方法和装置与制造工艺

本发明涉及人工智能技术领域,具体涉及一种数据库维护方法和装置。



背景技术:

随着人工智能技术的不断发展以及人们对于交互体验要求的不断提高,智能交互方式已逐渐开始替代一些传统的人机交互方式,并且已成为一个研究热点。智能交互方式一般是基于一个数据库来实现的,该数据库包括多个标准问句和多个扩展问句集,其中每个标准问句对应一个扩展问句集,基于该数据库来分析识别用户所发出的用户消息并将对应的应答信息反馈给用户。因此,作为智能交互的数据基础,该数据库需要不断的维护以更新其中的数据来实现更加智能更加精准的交互体验。然而在现有技术中,该用于智能交互的数据库的维护过程却仍需要通过人工完成。例如,在智能客服交互场景下,就需要客服人员凭借工作经验,手工导入人工客服问答数据来维护该用于智能客户交互的数据库,这显然效率极低。而若数据库中的数据维护不够及时,则势必会导致智能交互体验的下降。由此可见,急需一种高效的数据库维护方式。



技术实现要素:

有鉴于此,本发明实施例提供了一种数据库维护方法和装置,解决了现有技术中数据库维护方式的效率低的问题。

本发明一实施例提供的一种数据库维护方法,所述数据库包括多个标准问句和多个扩展问句集,其中每个所述标准问句对应一个所述扩展问句集,该方法包括:

将待入库数据输入标准分类模型以获得匹配的标准问句,其中所述标准分类模型基于多个自然语言语句和与所述多个自然语言语句分别对应的多个标准问句而建立;以及

将所述待入库数据存入数据库中与所述匹配的标准问句所对应的扩展问句集。

本发明一实施例提供的一种数据库维护装置,所述数据库包括多个标准问句和多个扩展问句集,其中每个所述标准问句对应一个所述扩展问句集,该装置包括:

标准分类模型,基于多个自然语言语句和与所述多个自然语言语句分别对应的多个标准问句而建立;

标准问句获取模块,配置为将待入库数据输入所述标准分类模型以获得匹配的标准问句;以及

处理模块,配置为将所述待入库数据存入数据库中与所述匹配的标准问句所对应的扩展问句集。

本发明实施例提供的一种数据库维护方法和装置,通过建立标准分类模型来获取与待入库数据匹配的标准问句,并将待入库数据存入所匹配的标准问句的扩展问句集,避免了以人工的方式来维护数据库,提高了数据库维护的效率。同时,由于数据库中的数据能够得到及时的自动维护更新,也提升了用户的智能交互体验。

附图说明

图1所示为本发明一实施例提供的一种数据库维护方法的流程示意图。

图2所示为本发明一实施例提供的一种数据库维护方法中标准分类模型的建立过程的流程示意图。

图3所示为本发明一实施例提供的一种数据库维护方法中标准分类模型输出与一个输入的待入库数据匹配的标准问句的流程示意图。

图4所示为本发明一实施例提供的一种数据库维护方法中的语义相似度计算的聚类方式的流程示意图。

图5所示为本发明另一实施例提供的一种数据库维护方法中改进的语义相似度计算的聚类方式的流程示意图。

图6所示为本发明一实施例提供的一种数据库维护方法中获得与一个数据聚类集所匹配的标准问句的流程示意图。

图7所示为本发明一实施例提供的一种数据库维护方法中获取并存储与一个数据聚类集所匹配的答案的流程示意图。

图8所示为本发明一实施例提供的一种数据库维护装置的结构示意图。

图9所示为本发明另一实施例提供的一种数据库维护装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1所示为本发明一实施例提供的一种数据库维护方法的流程示意图。所维护的数据库包括多个标准问句和多个扩展问句集,其中每个标准问句对应一个扩展问句集。每个标准问句代表一定语义内容的标准表述方式,为所对应扩展问句集中扩展问句的扩展基础,可由业务专家根据实际的工作经验预设在数据库中;与标准问句对应的扩展问句集中可以直接包括具体的扩展问句,也可以包括用于展开成扩展问句的抽象语义表达式。如图1所示,该方法包括:

步骤101:将待入库数据输入标准分类模型以获得匹配的标准问句,其中标准分类模型基于多个自然语言语句和与该多个自然语言语句分别对应的多个标准问句而建立。

待入库数据为准备要更新入数据库的数据,待入库数据待录入作为数据库中扩展问句集中的语句,例如当该数据库为用于智能客服交互的数据库时,该待入库数据就可为一些人工客服交互数据中的请求(输入)数据。通过将这些人工客服交互数据导入数据库中对应的标准问句的扩展数据集中,以实现更加智能更加精准的交互体验。

标准分类模型为一种根据输入的待入库数据而输出匹配的标准问句的模型工具。该标准分类模型要依据多个自然语言语句和与该多个自然语言语句分别对应的多个标准问句而建立。

在本发明一实施例中,由于数据库中已经存储有多个标准问句以及与该多个标准问句分别对应的多个扩展问句集,因此标准分类模型可以是直接根据这些已存储的标准问句和扩展问句集中的扩展问句而建立。此时用于建立标准分类模型的自然语言语句就可为与标准问句对应的扩展问句集中的扩展问句。利用该标准分类模型便可在后续的过程中根据输入的待入库数据来输出与待入库数据匹配的标准问句。

在本发明另一实施例中,与自然语言语句对应的标准问句是要通过一个基于数据库的问答模块而获取的。此时就要先向该基于数据库的问答模块中输入多个自然语言问句,通过该问答模块进行语义匹配以得到数据库中匹配的标准问句作为该多个自然语言语句分别对应的多个标准问句。然后再根据这些自然语言语句和对应的标准问句来建立该标准分类模型,后续利用该标准分类模型便可根据输入的待入库数据来输出与待入库数据匹配的标准问句。在本发明一实施例中,自然语言语句对应的标准问句也可以通过问答模块的历史已答数据中直接获取,此时就不用重复执行该语义匹配过程了

该基于数据库的问答模块的语义匹配过程可通过语义相似度的计算过程实现。通过计算当前自然语言语句与多个预设的扩展问句集之间的相似度,然后将相似度最高的扩展问句集所对应的标准问句作为匹配的标准问句。相似度计算过程可采用如下计算方法中的一种或多种:编辑距离计算方法,n-gram计算方法,JaroWinkler计算方法以及Soundex计算方法。

在本发明一实施例中,扩展问句集可采用语义模板的形式,语义模板可为表示某一种语义内容的一个或多个抽象语义表达式的集合,由开发人员根据预定的规则结合语义内容生成,即通过一个语义模板就可描述一个标准问句所对应语义内容的多种不同表达方式的语句,以应对当前自然语言语句可能的多种变形。这样将自然语言语句的文本内容与预设的语义模板进行匹配,避免了利用仅能描述一种表达方式的“标准问”来识别用户消息时的局限性。

每一个抽象语义表达式主要可包括语义成分词和语义规则词。语义成分词由语义成分符表示,当这些语义成分符被填充了相应的值(即内容)后可以表达各式各样的具体语义。

抽象语义的语义成分符可包括:

[concept]:表示主体或客体成份的词或短语。

比如:“彩铃如何开通”中的“彩铃”。

[action]:表示动作成分的词或短语。

比如:“信用卡如何办理”中的“办理”。

[attribute]:表示属性成份的词或短语。

比如:“iphone有哪些颜色”中的“颜色”。

[adjective]:表示修饰成分的词或短语。

比如:“冰箱哪个品牌便宜”中的“便宜”。

一些主要的抽象语义类别示例有:

概念说明[concept]是什么

属性构成[concept]有哪些[attribute]

行为方式[concept]如何[action]

行为地点[concept]在什么地方[action]

行为原因[concept]为什么会[action]

行为预测[concept]会不会[action]

行为判断[concept]有没有[attribute]

属性状况[concept]的[attribute]是不是[adjective]

属性判断[concept]是不是有[attribute]

属性原因[concept]的[attribute]为什么这么[adjective]

概念比较[concept1]和[concept2]的区别在哪里

属性比较[concept1]和[concept2]的[attribute]有什么不同之处

问句在抽象语义层面的成份判断可以通过词性标注来做一般的评判,concept对应的词性为名词、action对应的词性为动词、attribute对应的词性为名词、adjective对应的是形容词。

以类别为“行为方式”的抽象语义[concept]如何[action]为例,该类别的抽象语义集合下可包括多条抽象语义表达式:

抽象语义类别:行为方式

抽象语义表达式:

a.[concept][需要|应该?][如何]<才[可以]?><进行?>[action]

b.{[concept]~[action]}

c.[concept]<的?>[action]<方法|方式|步骤?>

d.<有哪些|有什么|有没有><通过|用|在>[concept][action]<的?>[方法]

e.[如何][action]~[concept]

上述a、b、c、d四个抽象语义表达式都是用来描述“行为方式”这一抽象语义类别的。语义符号“|”表示“或”关系,语义符号“?”表示该成分可有可无。

应当理解,虽然上面给出了一些语义成分词、语义规则词和语义符号的示例,但语义成分词的具体内容和词类,语义规则词的具体内容和词类以及语义符号的定义和搭配都可由开发人员根据实际的智能交互业务场景而预设,本发明对此并不做限定。

在本发明一实施例中,如前所述,抽象语义表达式可由语义成分词和语义规则词构成,而这些语义成分词和语义规则词又与这些词语在抽象语义表达式中的词性以及词语之间的语法关系有关,因此该相似度计算过程可具体为:先识别出当前自然语言语句中的词语、词语的词性以及语法关系,然后根据词语的词性以及语法关系识别出其中的语义成分词和语义规则词,再将所识别出的语义成分词和语义规则词引入向量空间模型以计算当前自然语言语句与多个预设的语义模板之间的多个相似度。在本发明一实施例中,可以如下分词方法中的一种或多种识别当前自然语言语句中的词语、词语的词性以及词语之间的语法关系:隐马尔可夫模型方法、正向最大匹配方法、逆向最大匹配方法以及命名实体识别方法。

在本发明一实施例中,如前所述,扩展问句集所采用的语义模板可为表示某一种语义内容的多个抽象语义表达式的集合,此时通过一个扩展问句集就可描述所对应语义内容的多种不同表达方式的语句,以对应同一标准问句的多个扩展问句。因此在计算当前自然语言语句与预设的扩展问句集之间的语义相似度时,需要计算当前自然语言语句与多个预设的语义模板各自展开的至少一个抽象语义表达式或扩展问句之间的相似度,然后将相似度最高的抽象语义表达式或扩展问句所对应的扩展问句集作为匹配的扩展问句集,并将该匹配的扩展问句集对应的标准问句作为与当前自然语言语句对应的标准问句。这些展开的扩展问句可根据扩展问句集所包括的语义成分词和/或语义规则词和/或语义符号而获得。

应当理解,用于建立标准分类模型的多个自然语言语句和与该多个自然语言语句中每个自然语言语句分别对应的标准问句也可通过其他方式获取,例如由业务专家根据实际的工作经验人工预设与每个标准问句对应的自然语言语句,本发明对这些自然语言语句和标准问句的获取方式并不做限定。

在本发明一实施例中,如图2所示,基于多个自然语言语句和与该多个自然语言语句中每个自然语言语句分别对应的标准问句,标准分类模型的建立过程可包括如下步骤:

步骤201:将多个自然语言语句和与该多个自然语言语句中每个自然语言语句分别对应的标准问句分别进行分词处理以得到多个分词向量。

当对一个自然语言语句或标准问句进行分词处理后可得到的多个特征词,该多个特征词为该自然语言语句或标准问句的分词向量中的多个参数。即,在经过分词处理后,每个自然语言语句或标准问句各自对应一个分词向量,该分词向量的参数由该自然语言语句或标准问句中的特征词构成。分词处理可以采用字典双向最大匹配法、viterbi方法、HMM方法和CRF方法中的一种或多种进行。

步骤202:将多个分词向量输入分类器中进行训练以建立标准分类模型,其中,标准分类模型所对应的向量空间包括至少一个分类超平面分割该向量空间得到的多个空间区域,其中每个空间区域对应一个标准问句。

分类器可包括以下几项中的一种或多种的组合:libshorttext分类器、LR分类器、SVM分类器和fastText分类器。

基于以上方式所建立的标准分类模型可通过如下步骤输出与一个输入的待入库数据匹配的标准问句,如图3所示:

步骤1011:将输入的待入库数据进行分词处理以得到对应的分词向量。将输入的待入库数据进行分词处理并向量化,以引入标准分类模型所对应的向量空间。

步骤1012:计算对应的分词向量落入了向量空间的哪一个空间区域。

步骤1013:将分词向量所落入的空间区域所对应的标准问句作为与输入的待入库数据匹配的标准问句输出。

在标准分类模型所对应的向量空间中,分类超平面将该向量空间分割成了多个空间区域,其中的每个空间区域对应一个标准问句,因此通过计算待入库数据所对应的分词向量落入了哪一个空间区域即可得知与待入库数据对应的标准问句。

步骤102:当获取到与待入库数据匹配的标准问句后,将待入库数据存入数据库中与匹配的标准问句所对应的扩展问句集。

这样待入库数据便成为了所匹配的标准问句的扩展问句集中的一个扩展问句。后续再基于该数据库进行智能交互时,该待入库数据便可作为智能交互过程中分析用户消息语义的一个数据基础。

由此可见,本发明实施例所提供的数据库维护方法,通过建立标准分类模型来获取与待入库数据匹配的标准问句,并将待入库数据存入所匹配的标准问句的扩展问句集,避免了以人工的方式来维护数据库,提高了数据库维护的效率。同时,由于数据库中的数据能够得到及时的自动维护更新,也提升了用户的智能交互体验。特别当待入库数据为人工问答数据中的用户问句时,更便于提高数据库维护的效率。

在本发明一实施例中,考虑到待入库数据的数据量通常比较庞大,为了进一步提高数据库的维护效率,可先对待入库数据进行聚类处理以获取多个数据聚类集,再获取与该数据聚类集所匹配的标准问句,然后将该数据聚类集中所包括的多个待入库数据都存入数据库中与该匹配的标准问句所对应的扩展问句集中。由此避免了以待入库数据为单位进行数据库的维护过程,而是以待入库数据的数据聚类集为单位进行数据库的维护,进一步提高了数据库的维护效率。

在本发明一实施例中,待入库数据的聚类处理可通过语义相似度计算的聚类方式来获取。具体而言,如图4所示,该语义相似度计算的聚类方式可包括如下步骤:

步骤401:将待聚类的多个待入库数据引入向量空间以获取对应的多个句向量。

具体而言,可以是先将待入库数据进行分词处理以获取其中的特征词,还可以通过新词发现方法获取待入库数据中的新词,并根据新词重新进行分词处理。此外,还可以通过同义词发现方法从待入库数据中获取语义相同的词语,以用于后续的相似度值计算。例如,后续在进行相似度计算时,如果通过同义词发现方法确认两个词为同义词,则会提高最后的语义相似度值的准确率。分词处理可以采用字典双向最大匹配法、viterbi方法、HMM方法和CRF方法中的一种或多种进行。新词发现方法具体可以包括:互信息、共现概率、信息熵等方法,利用新词发现方法可以获取新的词语,根据获取的新的词语可以更新分词词典,那么在进行分词处理时,可以根据更新后的分词词典进行分词,增加了分词处理的准确率。同义词发现方法具体可以包括:W2V和编辑距离等方法,利用同义词发现方法可以发现具有相同含义的词语,例如:通过同义词发现方法发现组合词、简化词是同义词,那么后续进行语义相似度值计算时,根据发现的同义词就可以提高语义相似度值计算的准确率。

在获取了待入库数据中的特征词后,将这些特征词输入向量模型,获取向量模型输出的特征词的词向量,并根据词向量构造待入库数据的句向量。在实际应用中,向量模型可以包括:word2vector模型。根据词向量获取句向量的具体构造方法可包括如下方式中的一种:

方式一:将单个待入库数据中的所有特征词的词向量进行矢量叠加并取平均值,获取待入库数据的句向量;

方式二:根据特征词的个数和词向量的维度、以及相应待入库数据中出现的特征词的词向量,获取该待入库数据的句向量,其中,句向量的维度是特征词的个数与词向量的维度的乘积,句向量的维度值为:未在相应待入库数据中出现的特征词所对应的维度值为0,在相应待入库数据中出现的特征词所对应的维度值为该特征词的词向量;

方式三:根据特征词的个数、以及相应待入库数据中出现的特征词的TF-IDF值,获取该待入库数据的句向量,其中,句向量的维度是特征词的个数,句向量的维度值为:未在相应待入库数据中出现的特征词的维度值为0,在相应待入库数据中出现的特征词的维度值为该特征词的TF-IDF值。

在方式三中,特征词的TF-IDF值可通过以下方式获取:

1、将待入库数据总数目除以包含特征词的待入库数据的数目,将得到的商取对数得到特征词的IDF值;

2、计算特征词在对应待入库数据中出现的频率,确定TF值;

3、将TF值乘以IDF值得到特征词的TF-IDF值。

步骤402:分别获取第M个句向量与已聚类的K个数据聚类集的句向量平均值之间的最大相似度值,当最大相似度值大于预设值时,将第M个句向量所对应的待入库数据聚类到最大相似度值对应的数据聚类集中;当最大相似度值小于预设值时,将第M个句向量所对应的待入库数据或答案聚类为第K+1个数据聚类集,K≤M-1,M≥2。

本实施例在进行聚类处理之前,并不需要预先确定聚类结果的数目,即当聚类处理后得到K个问句信息组时,K数值是自动聚类的结果,在聚类之前并不清楚也没有限定聚类的结果,从而实现了自动聚类。

在一进一步实施例中,待入库数据的聚类处理还可通过另一种改进的语义相似度计算的聚类方式来获取,如图5所示,该改进的语义相似度计算的聚类方式具体包括:

步骤501:将待聚类的多个待入库数据或多个答案引入向量空间以获取对应的T个句向量QT,其中T≥M。句向量的具体获取方式不再赘述。

步骤502:初始K值、中心点PK-1、以及数据聚类集{K,[PK-1]},其中,K表示聚类的类别数,K的初始值为1,中心点PK-1的初始值为P0,P0=Q1,Q1表示第1个句向量,数据聚类集的初始值为{1,[Q1]}。

步骤503:依次对剩下的QT进行聚类,计算当前句向量与每个数据聚类集的中心点的相似度,如果当前句向量与某个数据聚类集的中心点的相似度大于或等于预设值,则将当前句向量聚类到相应的数据聚类集中,保持K值不变,将相应的中心点更新为数据聚类集中所有句向量的向量平均值,相应的数据聚类集为{K,[句向量的向量平均值]};如果当前句向量与所有数据聚类集中的中心点的相似度均小于预设值,则令K=K+1,增加新的中心点,新的中心点的值为当前句向量,并增加新的数据聚类集{K,[当前句向量]}。

以对Q2聚类进行举例说明:计算Q2与Q1的语义相似度I,若相似度I大于0.9(根据需求设定预设值),则认为Q2和Q1属于同一个类,此时K=1不变,P0更新为Q1和Q2的向量平均值,聚类的问题集为{1,[Q1,Q2]};若相似度I不满足要求,则Q2和Q1属于不同的类,此时K=2,P0=Q1,P1=Q2,聚类的问题集为{1,[Q1]},{2,[Q2]}。采用上述方法依次对剩余其他待入库数据进行聚类完成的同时可以得到K最终值。

由此可见,采用这种改进的语义相似度计算的聚类方式,避免了K值选择难的问题。该改进的算法是指对待入库数据依次进行聚类;K值从1开始递增,并且在此过程中不断更新中心点来实现整个聚类过程。

在本发明一实施例中,为了进一步提高对于待入库数据的聚类处理的准确度,该聚类处理过程还可包括一个初步聚类过程和一个二次聚类过程。具体而言,首先对待入库数据进行初步聚类以获取多个初步数据聚类集,然后再在每个初步数据聚类集中以前述的语义相似度计算或改进的语义相似度计算的聚类方式进行二次聚类以获取多个数据聚类集。在一进一步实施例中,该初步聚类过程可以基于待入库数据中所包括的关键词进行聚类实现,也可以前述的语义相似度计算或改进的语义相似度计算的聚类方式进行聚类。本发明对待入库数据的聚类处理的具体实现方式并不做限定。

图6所示为本发明一实施例提供的一种数据库维护方法中获得与一个数据聚类集所匹配的标准问句的流程示意图。如图6所示,该与一个数据聚类集所匹配的标准问句的获取过程包括:

步骤601:将一个数据聚类集中所包括的N个待入库数据分别输入标准分类模型以获得与N个待入库数据所分别匹配的N个标准问句,N为大于等于1的整数。

由于标准分类模型可根据输入的待入库数据输出匹配的标准问句,因此当将一个数据聚类集中的N个待入库数据分别输入标准分类模型时,便可得到输出的N个匹配的标准问句。但这N个标准问句还需要后续的筛选过程来确定其中的哪一个为与该数据聚类集匹配的标准问句。

步骤602:将N个标准问句中匹配一个数据聚类集中的待入库数据的数量最多的S个标准问句作为一个数据聚类集的S个推荐标准问句,其中S为大于等于1且小于等于N的整数。

由于同一个数据聚类集中的待入库数据之间存在相似性,因此同一个数据聚类集中的不同待入库数据很可能被标准分类模型输出相同的标准问句,即,标准分类模型输出的N个标准问句中有可能有一些标准问句是对应多个待入库数据的,而对应待入库数据的数量越多的标准问句与该数据聚类集的匹配度就越高,因此可从N个标准问句中选择匹配该数据聚类集中的待入库数据的数量最多的S个标准问句作为该数据聚类集的S个推荐标准问句句。在一实施例中,也可以将N各标准问句都作为推荐标准问句,此时S=N。

步骤603:选取S个推荐标准问句中的一个作为一个数据聚类集所匹配的标准问句。

在本发明一实施例中,可以是展示该S个推荐标准问句,并接收选取指令以选取S个推荐标准问句中的一个作为该数据聚类集所匹配的标准问句。例如,将该S个推荐标准问句展示给数据库维护人员,并基于数据库维护人员的选取指令以选取其中的一个推荐标准问句作为该数据聚类集所匹配的标准问句。

在本发明一实施例中,数据库中包括知识点,知识点包括标准问句、扩展问句集和答案。待入库数据为已采集数据中的问句,已采集数据中还包括与问句对应的已采集的答案。例如,问句为人工客服数据中的用户问句,答案为人工客服数据中的人工客服答案。此时,在进行数据库维护的过程中,除了要将待入库数据存入匹配的标准问句的扩展问句集中,还要将待入库数据对应的已采集的答案也存入数据库中。当待入库数据存在数据聚类集时,可以将获取的答案作为该数据聚类集匹配的标准问句所对应知识点的答案存入数据库。

图7所示为本发明一实施例提供的一种数据库维护方法中获取并存储与一个数据聚类集所匹配的答案的流程示意图。如图7所示,该流程包括如下步骤:

步骤701:获取一个数据聚类集中所包括的多个问句各自对应的预设数量个答案以形成一个数据聚类的答案集,其中与一个问句对应的预设数量个答案为多个已采集的答案中距离一个问句的采集时间最近的预设数量个答案。

在实际的交互过程中,问句与对应的答案之间往往存在一定的时间间隔,这是因为当提问方发出一个问句时,回答方往往要通过多个交互层级(例如反问该问句的具体含义或目的等)才能确定与该问句准确对应的答案。若仅选取距离问句的采集时间最近的一个答案作为对应的答案,则很有可能将中间交互层级的语句作为对应的答案,而漏掉最终准确对应的答案。因此,可将距离问句的采集时间最近的预设数量个答案都作为与该问句对应的答案,以此提高答案获取的准确度。应当理解,预设数量的大小可由开发人员根据实际业务场景的具体情况而调整,本发明对该预设数量的大小并不做限定。

步骤702:对该数据聚类集的答案集中的答案进行聚类以获取该数据聚类集的多个答案聚类集。

对一个答案集中的答案进行聚类的过程可与前述对待入库数据进行聚类的过程采用相同的聚类方式。例如,也可以先对一个数据聚类集的答案集中的答案进行初步聚类以获取多个初步答案聚类集,然后再在每个初步答案聚类集中以前述语义相似度计算或改进的语义相似度计算的聚类方式进行二次聚类以获取多个答案聚类集。在一进一步实施例中,该初步聚类过程可以基于答案中所包括的关键词进行聚类实现,也可以前述的语义相似度计算或改进的语义相似度计算的聚类方式进行聚类。本发明对答案聚类处理的具体实现方式并不做限定。

步骤703:从多个答案聚类集中选取一个答案聚类集中的一个答案作为该数据聚类集匹配的标准问句所对应知识点的答案存入数据库。

数据库中知识点所初始包括的答案虽然与标准问句存在对应关系,但该初始的答案可能是数据库建立人员自行设置的,并不一定足够准确。然而,通过采用本发明实施例所提供的数据库维护方法,新的答案可从一个答案聚类集中选出,该新的答案可用于替代知识点中所初始包括的答案。由此可见,通过该数据库维护过程其实还实现了对知识点中答案的更新,使知识点中所包括的答案随着该数据库维护过程的不断循环进行而变得更加准确。在本发明一实施例中,从多个答案聚类集中选取答案的过程可由业务专家通过人工选取步骤完成,然而本发明对答案选取的具体方式并不做具体限定。在本发明一实施例中,在利用待入库数据和/或答案进行数据库维护之前,还需要对待入库数据和/或答案进行预处理,以去掉无意义的文本内容或避免重复存储,减少数据库维护处理的工作量。具体而言,可将待入库数据进行过滤以得到包括预设的业务关键词的待入库数据;和/或,过滤以去除已存储在数据库中的待入库数据;和/或,将已采集的问句和/或答案进行过滤以去除采用反问句式和/或仅包含礼貌用语的问句和/或答案。在本发明一实施例中,反问句式可包括预设的开头标识和预设的结尾标识。预设的开头标识可包括以下几种中的任一种:如何办、咋整、怎么办、如何弄、咋办、怎莫办、则么办、迮么办、怎么整、怎么弄、怎样办、何处、哪儿、在哪和去哪;预设的结尾标识可包括以下几种中任的一种:中英文问号,吗、呢和哦。

图8所示为本发明一实施例提供的一种数据库维护装置的结构示意图。所维护的数据库包括多个标准问句和多个扩展问句集,其中每个标准问句对应一个扩展问句集。每个标准问句代表一定语义内容的标准表述方式,为所对应扩展问句集中扩展问句的扩展基础,可由业务专家根据实际的工作经验预设在数据库中;与标准问句对应的扩展问句集中可以包括具体的扩展问句,也可以包括语义表达式。如图8所示,该数据库维护装置80包括:标准分类模型81、标准问句获取模块82以及处理模块83。该标准分类模型81基于多个自然语言语句和与多个自然语言语句分别对应的多个标准问句而建立。标准问句获取模块82配置为将待入库数据输入标准分类模型81以获得匹配的标准问句。处理模块83配置为将待入库数据存入数据库中与匹配的标准问句所对应的扩展问句集。

由此可见,本发明实施例所提供的数据库维护装置80,通过建立标准分类模型81来获取与待入库数据匹配的标准问句,并将待入库数据存入所匹配的标准问句的扩展问句集,避免了以人工的方式来维护数据库,提高了数据库维护的效率。同时,由于数据库中的数据能够得到及时的自动维护更新,也提升了用户的智能交互体验。

在本发明一实施例中,如图9所示,该数据库维护装置80进一步包括:标准分类模型建立模块84,包括:第一分词单元841和训练单元842。第一分词单元841,配置为将多个自然语言语句和与多个自然语言语句中每个自然语言语句分别对应的标准问句分别进行分词处理以得到多个分词向量。训练单元842,配置为将多个分词向量输入分类器中进行训练以建立标准分类模型81,其中,标准分类模型81所对应的向量空间包括至少一个分类超平面分割该向量空间得到的多个空间区域,其中每个空间区域对应一个标准问句。在本发明一实施例中,分类器可包括以下几项中的一种或多种的组合:libshorttext分类器、LR分类器、SVM分类器和fastText分类器。

在本发明一实施例中,如图9所示,标准分类模型81包括:第二分词单元811、计算单元812以及输出单元813。第二分词单元811配置为将输入的待入库数据进行分词处理以得到对应的分词向量。计算单元812配置为计算对应的分词向量落入了向量空间的哪一个空间区域。输出单元813配置为将分词向量所落入的空间区域所对应的标准问句作为与输入的待入库数据匹配的标准问句输出。

在本发明一实施例中,自然语言语句为数据库中已存储的与标准问句对应的扩展问句集中的扩展问句。因此标准分类模型81可以是直接根据这些已存储的标准问句和扩展问句集中的扩展问句而建立。

在本发明另一实施例中,如图9所示,该数据库维护装置80进一步包括:

问答模块85,配置为接收多个自然语言问句,通过基于数据库的语义匹配过程以得到数据库中匹配的标准问句作为多个自然语言语句分别对应的多个标准问句问答模块85问答模块85。该基于数据库的问答模块85的语义匹配过程可通过语义相似度的计算过程实现。通过计算当前自然语言语句与多个预设的扩展问句集之间的相似度,然后将相似度最高的扩展问句集所对应的标准问句作为匹配的标准问句。在本发明一实施例中,扩展问句集可采用语义模板的形式,语义模板可为表示某一种语义内容的一个或多个抽象语义表达式的集合,由开发人员根据预定的规则结合语义内容生成,即通过一个语义模板就可描述一个标准问句所对应语义内容的多种不同表达方式的语句,以应对当前自然语言语句可能的多种变形。这样将自然语言语句的文本内容与预设的语义模板进行匹配,避免了利用仅能描述一种表达方式的“标准问”来识别用户消息时的局限性。

在本发明一实施例中,如图9所示,该数据库维护装置80进一步包括:数据聚类模块86,配置为将待入库数据进行聚类以获取多个数据聚类集。此时,标准问句获取模块82进一步配置为:将一个数据聚类集中所包括的多个待入库数据分别输入标准分类模型81以获得与一个数据聚类集所匹配的标准问句。由此避免了以待入库数据为单位进行数据库的维护过程,而是以待入库数据的数据聚类集为单位进行数据库的维护,进一步提高了数据库的维护效率。

在本发明一实施例中,考虑到同一个数据聚类集中的待入库数据之间存在相似性,因此同一个数据聚类集中的不同待入库数据很可能被标准分类模型81输出相同的标准问句。因此如图9所示,标准问句获取模块82可包括:输入单元821、推荐单元822以及选取单元823。输入单元821配置为将一个数据聚类集中所包括的N个待入库数据分别输入标准分类模型81以获得与N个待入库数据所分别匹配的N个标准问句,N为大于等于1的整数。推荐单元822配置为将N个标准问句中匹配一个数据聚类集中的待入库数据的数量最多的S个标准问句作为一个数据聚类集的S个推荐标准问句,其中S为大于等于1且小于等于N的整数。选取单元823配置为选取S个推荐标准问句中的一个作为一个数据聚类集所匹配的标准问句。

在本发明一实施例中,选取单元823可包括:展示子单元以及选取指令接收子单元。展示子单元配置为展示该S个推荐标准问句。选取指令接收子单元配置为接收选取指令以选取S个推荐标准问句中的一个作为一个数据聚类集所匹配的标准问句。

在本发明一实施例中,数据库中包括知识点,知识点包括标准问句、扩展问句集和答案。待入库数据为已采集数据中的问句,已采集数据中还包括与问句对应的已采集的答案。例如,问句为人工客服数据中的用户问句,答案为人工客服数据中的人工客服答案。此时,在进行数据库维护的过程中,除了要将待入库数据存入匹配的标准问句的扩展问句集中,还要将待入库数据对应的已采集的答案也存入数据库中。当待入库数据存在数据聚类集时,可以将获取的答案作为该数据聚类集匹配的标准问句所对应知识点的答案存入数据库。此时,如图9所示,该数据库维护装置80进一步包括:答案获取模块87、答案聚类模块88以及答案选取模块89。答案获取模块87配置为获取一个数据聚类集中所包括的多个问句各自对应的预设数量个答案以形成一个数据聚类的答案集,其中与一个问句对应的预设数量个答案为多个已采集的答案中距离一个问句的采集时间最近的预设数量个答案。答案聚类模块88配置为对该数据聚类集的答案集中的答案进行聚类以获取该数据聚类集的多个答案聚类集。答案选取模块89配置为从多个答案聚类集中选取一个答案聚类集中的一个答案作为该数据聚类集匹配的标准问句所对应知识点的答案存入数据库。

通过采用本发明实施例所提供的数据库维护装置,新的答案可从一个答案聚类集中选出,该新的答案可用于替代知识点中所初始包括的答案。由此可见,该数据库维护装置其实还实现了对知识点中答案的更新,使知识点中所包括的答案随着该数据库维护过程的不断循环进行而变得更加准确。在本发明一实施例中,答案选取模块89所执行的答案选取的过程可通过接收业务专家的人工选取指令完成,然而本发明对答案选取模块89所执行的答案选取过程的具体方式并不做具体限定。

在本发明一实施例中,如图9所示,该数据库维护装置80进一步包括:第一过滤模块810a和/或第二过滤模块810b。第一过滤模块810a配置为将待入库数据进行过滤以得到包括预设的业务关键词的待入库数据,和/或过滤以去除已存储在数据库中的待入库数据。第二过滤模块810b,配置为将已采集的问句和/或答案进行过滤以去除采用反问句式和/或仅包含礼貌用语的问句和/或答案。这样在利用待入库数据和/或答案进行数据库维护之前,对待入库数据和/或答案进行预处理,去掉了无意义的文本内容或避免了重复存储,减少了数据库维护处理的工作量。

在本发明一实施例中,反问句式包括预设的开头标识和预设的结尾标识。预设的开头标识可包括以下几种中的任一种:如何办、咋整、怎么办、如何弄、咋办、怎莫办、则么办、迮么办、怎么整、怎么弄、怎样办、何处、哪儿、在哪和去哪。预设的结尾标识可包括以下几种中任的一种:中英文问号,吗、呢和哦。

在本发明一实施例中,数据聚类模块86进一步配置为通过相似度计算的聚类方式获取多个数据聚类集;和/或答案聚类模块88进一步配置为通过语义相似度计算的聚类方式获取多个答案聚类集。该语义相似度计算的聚类方式可包括如下步骤:将待聚类的多个待入库数据或多个答案引入向量空间以获取对应的多个句向量;分别获取第M个句向量与已聚类的K个数据聚类集或答案聚类集的句向量平均值之间的最大相似度值,当最大相似度值大于预设值时,将第M个句向量所对应的待入库数据或答案聚类到最大相似度值对应的数据聚类集或答案聚类集中;当最大相似度值小于预设值时,将第M个句向量所对应的待入库数据或答案聚类为第K+1个数据聚类集或答案聚类集,K≤M-1,M≥2。

在本发明另一实施例中,该语义相似度计算的聚类方式可包括如下步骤:将待聚类的多个待入库数据或多个答案引入向量空间以获取对应的T个句向量QT,其中T≥M;初始K值、中心点PK-1、以及聚类集{K,[PK-1]},其中,K表示聚类的类别数,K的初始值为1,中心点PK-1的初始值为P0,P0=Q1,Q1表示第1个句向量,聚类集的初始值为{1,[Q1]};以及依次对剩下的QT进行聚类,计算当前句向量与每个聚类集的中心点的相似度,如果当前句向量与某个聚类集的中心点的相似度大于或等于预设值,则将当前句向量聚类到相应的聚类集中,保持K值不变,将相应的中心点更新为聚类集中所有句向量的向量平均值,相应的聚类集为{K,[句向量的向量平均值]};如果当前句向量与所有聚类集中的中心点的相似度均小于预设值,则令K=K+1,增加新的中心点,新的中心点的值为当前句向量,并增加新的聚类集{K,[当前句向量]};其中,聚类集为数据聚类集或答案聚类集。采用这种语义相似度计算的聚类方式,避免了K值选择难的问题。通过对待入库数据依次进行聚类,K值从1开始递增,并且在此过程中不断更新中心点来实现整个聚类过程。

在本发明一实施例中,如图9所示,数据聚类模块86可包括:数据初步聚类单元861和数据二次聚类单元862。数据初步聚类单元861配置为对待入库数据进行初步聚类以获取多个初步数据聚类集。数据二次聚类单元862,配置为在每个初步数据聚类集中以相似度计算的聚类方式进行二次聚类以获取多个数据聚类集。和/或,答案聚类模块88可包括:答案初步聚类单元881和答案二次聚类单元882。答案初步聚类单元881配置为对一个数据聚类集的答案集中的答案进行初步聚类以获取多个初步答案聚类集。答案二次聚类单元882配置为在每个初步答案聚类集中以相似度计算的聚类方式进行二次聚类以获取多个答案聚类集。通过采用这种二级聚类的方式实现对待入库数据和/或答案的聚类,可进一步提高聚类处理的准确度。

在本发明一实施例中,初步聚类可包括:基于待入库数据或答案中所包括的关键词进行聚类,或以前述的相似度计算的聚类方式进行聚类。

应当理解,上述实施例所提供的数据库维护装置80中记载的每个模块或单元都与前述的一个方法步骤相对应。由此,前述的方法步骤描述的操作和特征同样适用于数据库维护装置80及其中所包含的对应的模块和单元,重复的内容在此不再赘述。

本发明的教导还可以实现为一种计算机可读存储介质的计算机程序产品,包括计算机程序代码,当计算机程序代码由处理器执行时,其使得处理器能够按照本发明实施方式的方法来实现如本文实施方式所述的数据库维护方法。计算机存储介质可以为任何有形媒介,例如软盘、CD-ROM、DVD、硬盘驱动器、甚至网络介质等。

应当理解,虽然以上描述了本发明实施方式的一种实现形式可以是计算机程序产品,但是本发明的实施方式的方法或装置可以被依软件、硬件、或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的方法和设备可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的方法和装置可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。

应当理解,尽管在上文的详细描述中提及了装置的若干模块或单元,但是这种划分仅仅是示例性而非强制性的。实际上,根据本发明的示例性实施方式,上文描述的两个或更多模块/单元的特征和功能可以在一个模块/单元中实现,反之,上文描述的一个模块/单元的特征和功能可以进一步划分为由多个模块/单元来实现。此外,上文描述的某些模块/单元在某些应用场景下可被省略。

还应当理解,为了不模糊本发明的实施方式,说明书仅对一些关键、未必必要的技术和特征进行了描述,而可能未对一些本领域技术人员能够实现的特征做出说明。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1