问题处理方法、装置、电子设备、存储介质及程序产品与流程

文档序号:24306845发布日期:2021-03-17 00:59阅读:65来源:国知局
问题处理方法、装置、电子设备、存储介质及程序产品与流程

本申请涉及计算机技术领域,具体涉及机器学习与自然语言处理等人工智能技术领域,尤其涉及一种问题处理方法、装置、电子设备、存储介质及程序产品。



背景技术:

随着深度学习、自然语言处理、知识图谱等技术的发展,机器自动问答已经越来越多的被应用到真实的业务场景中。其中,基于知识库的问答是其中应用十分广泛、具有巨大价值的一类技术。

现有的知识库问答技术的主流的应用场景中,用户问题以实体、属性、关系等的查询为主,进而可以针对用户提出的自然语言问题,自动地基于知识库生成答案,并反馈给用户。这也是现有的知识库比较擅长处理的一类问题。



技术实现要素:

本申请提供了一种问题处理方法、装置、电子设备、存储介质及程序产品。

根据本申请的一方面,提供了一种问题处理方法,其中,所述方法包括:

若知识库接收到的自然语言问题属于计算类问题时,挖掘所述自然语言问题中的至少两个查询;

识别所述自然语言问题中所述至少两个查询之间的计算算子;

基于所述自然语言问题中的所述至少两个查询以及所述至少两个查询之间的计算算子,构建所述自然语言问题的结构化查询语言语句。

根据本申请的另一方面,提供了一种问题处理装置,其中,所述装置包括:

挖掘模块,用于若知识库接收到的自然语言问题属于计算类问题时,挖掘所述自然语言问题中的至少两个查询;

算子识别模块,用于识别所述自然语言问题中所述至少两个查询之间的计算算子;

构建模块,用于基于所述自然语言问题中的所述至少两个查询以及所述至少两个查询之间的计算算子,构建所述自然语言问题的结构化查询语言语句。

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

至少一个处理器;以及

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

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的方法。

根据本申请的又一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如上所述的方法。

根据本申请的再另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如上所述的方法。

根据本申请的技术,通过采用上述技术方案,使得知识库可以对计算类的自然语言问题进行有效地处理,进而能够有效地提高知识库对问题的处理能力,丰富知识库的性能。

应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。

附图说明

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

图1是根据本申请第一实施例的示意图;

图2是根据本申请第二实施例的示意图;

图3是根据本申请第三实施例的示意图;

图4是根据本申请第四实施例的示意图;

图5是用来实现本申请实施例的问题处理方法的电子设备的框图。

具体实施方式

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

图1是根据本申请第一实施例的示意图;本实施例提供一种问题处理方法。如图1所示,本实施例的问题处理方法,具体可以包括如下步骤:

s101、若知识库接收到的自然语言问题属于计算类问题时,挖掘自然语言问题中的至少两个查询;

s102、识别自然语言问题中至少两个查询之间的计算算子;

s103、基于自然语言问题中的至少两个查询以及至少两个查询之间的计算算子,构建自然语言问题的结构化查询语言(structuredquerylanguage;sql)语句。

本实施例的问题处理方法的执行主体为问题处理装置,该问题处理装置可以为电子实体,或者也可以为采用软件集成的应用或者插件等等。该问题处理装置能够对知识库接收到的自然语言问题进行处理,尤其是属于计算类问题的自然语言问题,可以将其转换成sql语句,从而可以被知识库所识别,进而使得知识库可以基于sql语句实现对相应的自然语言问题的解答。

本实施例的计算类问题具体指的是不需要经过推理或者计算、仅通过查询便能获得答案的问题之外的其他问题。如查询“2019年店铺a的营业额是多少”,而在知识库的表头中有“2019”、“店铺名称”、“营业额”,此时该自然语言问题可以直接通过查询知识库获取答案,该自然语言问题不需要通过推理或者计算,仅通过查询知识库便能获取答案,这类问题可以统称为查询类问题。而如查询“2019年店铺a比店铺b的营业额多多少”,此类问题的答案在获取过程中,需要分别先查询“2019年店铺a的营业额”以及“2019年店铺b的营业额”,然后再计算查询的“2019年店铺a的营业额”与查询的“2019年店铺b的营业额”的差值。相对于上一问题,这一问题的答案获取过程,仅通过查询是获取不到结果的,而必须经过一定的计算或者推理,才能获取到答案。这类需要经过计算或者推理过程,才能获取到答案的问题,在本实施例中统称为计算类问题。

本实施例中的知识库可以泛指结构化存储的知识存储结构,如可以包括知识图谱、关系型数据库、电子表格等。

进一步可选地,结合知识库的结构,可以理解本实施例的计算类的自然语言问题,主要涉及知识库中的行计算。例如行计算过程中,可以以不同的条件先筛选知识库的表格中的两行,各自的查询结果,然后再进行计算。例如,自然语言问题“2019年宝马比奔驰的销量高多少”,第1组筛选条件可以为“年份=2019and品牌=宝马”、第2组筛选条件可以为“年份=2019and品牌=奔驰”,两组筛选条件分别查询得到对应的“销量”后,再做“减法”运算。

现有技术的知识库中的主流的应用场景中,可以对用户提出的查询类的自然语言问题进行处理,直接基于知识库中查询各自然语言问题的答案,并反馈给用户。但是对于计算类的自然语言问题,现有的知识库的应用场景中,无法进行处理。基于此,本实施例提供一种针对于知识库的计算类的自然语言问题的处理方案。

具体地,在确定知识库接收到的自然语言问题属于计算类问题时,便可以确定该自然语言问题中必然涉及到至少两个查询,那么首先需要挖掘自然语言问题中的至少两个查询。其次,既然属于计算类问题,接下来需要基于至少两个查询的结果做计算。所以,需要识别自然语言问题中的至少两个查询之间的计算算子。例如本实施例的计算算子可以包括所有的数学运算的算子。如可以为基本四则运算加、减、乘或者除的算子;或者还可以为比率计算的算子,如同比、环比、增长率或者下降率的算子。同比、环比也属于增长率的一种,区别在于这类计算的两个子查询的差别条件仅为时间、且默认通常不出现在问题中。

最后,基于自然语言问题中的至少两个查询以及至少两个查询之间的计算算子,可以构建自然语言问题对应的sql语句。这样知识库可以基于得到的自然语言问题的sql语句,进行相应问题的解答。

本实施例的问题处理方法,若知识库接收到的自然语言问题属于计算类问题时,通过挖掘自然语言问题中的至少两个查询;识别自然语言问题中至少两个查询之间的计算算子;基于自然语言问题中的至少两个查询以及至少两个查询之间的计算算子,构建自然语言问题的sql语句,进而可以由知识库识别sql语句,并对sql语句进行处理,从而实现对知识库的计算类的自然语言问题进行处理。因此,本实施例的问题处理方法,能够弥补现有技术的不足,使得知识库可以对计算类的自然语言问题进行有效地处理,进而能够有效地提高知识库对问题的处理能力,丰富知识库的性能。

图2是根据本申请第二实施例的示意图;本实施例的问题处理方法,在上述图1所示实施例的技术方案的基础上,进一步更加详细地介绍本申请的技术方案。如图2所示,本实施例的问题处理方法,具体可以包括如下步骤:

s201、识别知识库接收到的自然语言问题是否属于计算类问题;若属于,执行步骤s202;否则,若不属于,执行步骤s206;

例如,该步骤s201具体实现时,可以通过对该自然语言问题进行分析,识别该自然语言问题是否属于计算类问题。或者也可以直接采用一个预先训练好的模型,直接基于自然语言问题识别该自然语言问题是否属于计算类问题。其中涉及到的模型可以参考现有的神经网络模型的训练过程,具体地,采集具有包括多条训练数据的训练数据集,且各条训练数据中包括自然语言问题以及该自然语言问题是否属于计算类问题的分类,然后采用多条训练数据对该模型进行训练,使得该模型学习到对自然语言问题进行分类的能力,详细可以参考相关的神经网络模型的训练原理,在此不再赘述。

例如,进一步可选地,该步骤s201识别自然语言问题是否属于计算类问题,具体可以包括如下步骤:

(a1)识别自然语言问题中的各条件信息;

本实施例中的自然语言问题中的条件信息,可以指定是问题中涉及到的查询中的条件。例如以自然语言问题“2019年宝马比奔驰的销量高多少”为例。其中涉及到的条件信息可以包括“年份=2019年”、“品牌=宝马”、“品牌=奔驰”。

在该自然语言问题中,查询时,条件信息可以组合,例如“年份=2019and品牌=宝马”以及“年份=2019and品牌=奔驰”均为两个条件信息的组合,分别构成查询中的一组条件信息。其中销量为要查询的“查询的信息”,实际应用中,要查询的“查询的信息”位于知识库所在表格中的列,所以也可以称之为“查询的列”或者也可以称为column。而且知识库所在表格中的列通常标识在表格的表头部分,所以也可以称之为表头。

可选地,该步骤(a1)在具体实现时,可以通过对自然语言问题进行分析,识别其中的各条件信息。或者也可以通过采用预先训练的条件识别模型,识别自然语言问题中的各条件信息。

若通过条件识别模型识别时,具体可以将自然语言问题输入至该条件识别模型中,该条件识别模型可以直接输出识别到的各条件信息。同理,该条件信息识别模型可以通过预先训练得到。例如训练时,采集多条训练数据,各条训练数据中包括一条自然语言问题的语料、并在该自然语言问题中标注已知的条件信息。采用数条训练数据对该条件信息识别模型进行训练,使得该条件信息识别模型学习到如何识别条件信息。例如,训练时,可以将各训练数据中的自然语言问题输入至该条件信息识别模型中,由该条件信息识别模型预测条件信息。接下来比对预测的条件信息与已知的条件信息是否一致,若不一致,调整条件信息识别模型的参数,使得两者趋于一致。采用多条训练数据,按照上述方式不断地对条件信息识别模型进行训练,直至预测的条件信息与已知的条件信息始终一致,使得其学习到条件信息识别的能力,训练结束,此时确定条件信息识别模型的参数,进而确定条件信息识别模型。

上述方案中,可以通过训练的条件信息识别模型识别自然语言问题中的各条件信息,能够进一步提高自然语言问题中的条件信息识别的准确性。

(b1)基于自然语言问题以及自然语言问题中的各条件信息,识别自然语言问题是否属于计算类问题。

可选地,该步骤(b1)中识别自然语言问题是否属于计算类问题,可以直接通过对自然语言问题以及自然语言问题中的各条件信息进行分析得到。或者也可以基于自然语言问题以及自然语言问题中的各条件信息,采用预先训练的问题分类模型识别自然语言问题是否属于计算类问题。具体地,将自然语言问题以及自然语言问题中的各条件信息,输入至该预先训练的问题分类模型中,该问题分类模型可以基于输入的信息,预测并输出该自然语言问题是否属于计算类问题。

该问题分类模型在训练时,采集多条训练数据,各条训练数据中包括一条自然语言问题的语料以及该自然语言问题中包括的各条件信息、并标注该自然语言问题是否属于计算类问题。采用数条训练数据对该问题分类模型进行训练,使得该问题分类模型学习到如何识别自然语言问题的类别,即属于计算类问题还是不属于计算类问题。例如,训练时,可以将各训练数据中的自然语言问题的语料以及该自然语言问题中包括的各条件信息输入至该问题分类模型中,由该问题分类模型预测该自然语言问题是否属于计算类问题。接下来比对预测的结果与标注的结果是否一致,若不一致,调整问题分类模型的参数,使得两者趋于一致。采用多条训练数据,按照上述方式不断地对问题分类模型进行训练,直至预测的结果与标注的结果始终一致,使得该问题分类模型学习到问题分类的能力,训练结束,此时确定问题分类模型的参数,进而确定问题分类模型。

上述方案中,可以通过训练的问题分类模型识别自然语言问题是否属于计算类问题,能够进一步提高自然语言问题的类别识别的准确性。

s202、基于自然语言问题,对自然语言问题中的各条件信息进行类别划分;执行步骤s203;

进一步可选地,步骤s202中,可以直接通过对自然语言问题进行分析,识别自然语言问题中的各条件信息的类别。或者也可以基于自然语言问题,采用预先训练的条件类别识别模型,对各条件信息进行类别划分。具体地,将自然语言问题和自然语言问题中的各条件信息,同时输入至预先训练的条件类别识别模型中,该条件类别识别模型可以预测并输出各条件信息所属的类别。

该条件类别识别模型在训练时,采集多条训练数据,各条训练数据中包括一条自然语言问题的语料以及该自然语言问题中包括的各条件信息、并标注各条件信息所属的类别。采用数条训练数据对该条件类别识别模型进行训练,使得该条件类别识别模型学习到如何识别自然语言问题中的各条件信息的类别。例如,训练时,可以将各训练数据中的自然语言问题的语料以及该自然语言问题中包括的各条件信息输入至该条件类别识别模型中,由该条件类别识别模型预测各条件信息所属的类别。接下来比对预测的结果即预测的各条件信息的类别与标注的结果即标注的各条件信息的类别是否一致,若不一致,调整条件类别识别模型的参数,使得两者趋于一致。采用多条训练数据,按照上述方式不断地对条件类别模型进行训练,直至预测的结果与标注的结果始终一致,使得该条件类别识别模型学习到条件类别识别的能力,训练结束,此时确定条件类别识别模型的参数,进而确定条件类别识别模型。

可选地,本实施例的自然语言问题中的各条件信息可以属于公共条件,或者属于某个查询。也就是说,一个查询里除了包括该查询中条件,还需要包括公共条件。如上述自然语言问题“2019年宝马比奔驰的销量高多少”,其中“年份=2019年”为公共条件,“品牌=宝马”属于查询1的条件、“品牌=奔驰”属于查询2的条件。

本实施例的条件类别识别模型在使用时,可以预先配置一个公共条件,n个查询条件,n的数量可以通过对历史数据中所有的自然语言问题进行分析,获取的最多的查询数量;或者也可以基于经验来设置一个足够大的正整数,以保证能够覆盖自然语言问题中的查询的类别的数量。在使用时,将自然语言问题和自然语言问题中的各条件信息输入至该条件类别识别模型中,该条件类别识别模型可以依次输出每个条件信息对应的类别。例如,可以采用0表示公共条件,采用1、2、……、n之类的正整数表示条件信息所属的对应的查询的类别。

上述方案中,可以通过训练的条件类别识别模型识别自然语言问题中的各条件信息的类别,能够进一步提高自然语言问题中各条件信息的类别识别的准确性。

s203、基于各条件信息的类别以及自然语言问题,挖掘自然语言问题中的至少两个查询;执行步骤s204;

具体地,基于各条件信息的类别,可以将自然语言问题中属于同一查询的条件信息和公共条件信息,一起组合构成该查询的条件信息;然后再结合自然语言问题中的要查询的信息,构成相应的查询。

例如上述自然语言问题“2019年宝马比奔驰的销量高多少”,其中“年份=2019年”为公共条件,“品牌=宝马”属于查询1的条件、“品牌=奔驰”属于查询2的条件,查询的信息为销量。对于查询1,其包括的查询条件为““年份=2019年”and“品牌=宝马””,结合查询信息,其对应的查询可以描述为“查询“年份=2019年”and“品牌=宝马”的销量”。同理,对应的查询2可以描述为“查询“年份=2019年”and“品牌=奔驰”的销量”。

本实施例的步骤s202-s203为上述图1所示实施例中的步骤s101中挖掘自然语言问题中的至少两个查询的一种具体实现方式。

s204、基于自然语言问题和至少两个查询,采用预先训练的算子识别模型,识别至少两个查询之间的计算算子;执行步骤s205;

例如,若自然语言问题中仅涉及到两个查询时,需要采用算子识别模型识别这两个查询之间的计算算子。若自然语言问题涉及到三个查询时,需要采用算子识别模型,识别三个查询之间的计算算子。若自然语言问题涉及到四个及以上查询时,需要采用算子识别模型,识别四个及以上查询之间的所有计算算子。总之,需要对自然语言问题中的所有的查询之间的所有计算算子进行准确识别,才能助于构建相应的sql语句。

例如,具体识别时,将自然语言问题以及各个查询均输入至预先训练的算子识别模型中,该算子识别模型可以基于输入的信息,输出至少两个查询之间的计算算子。如上述图1所示实施例的相关记载,至少两个查询之间的计算算子可以包括加、减、乘或者除基本四则运算的算子;或者还可以为同比、环比、增长率或者下降率之类的比率计算的算子。

本实施例的算子识别模型,也采用的是神经网络模型。该算子识别模型也需要预先训练得到的,其训练时,需要预先采集数条训练数据,各条训练数据中包括自然语言问题、自然语言问题中包括的至少两个查询以及标注的至少两个查询之间的计算算子。

训练时,可以将各训练数据中的自然语言问题、自然语言问题中包括的至少两个查询输入至该算子识别模型中,由该算子识别模型预测两个查询之间的计算算子。接下来比对预测的两个查询之间的计算算子与标注的两个查询之间的计算算子是否一致,若不一致,调整算子识别模型的参数,使得两者趋于一致。采用多条训练数据,按照上述方式不断地对算子识别模型进行训练,直至预测的结果与标注的结果始终一致,使得该算子识别模型学习到识别自然语言问题中的至少两个查询之间的计算算子的能力,训练结束,此时确定算子识别模型的参数,进而确定算子识别模型。

上述方案中,可以通过训练的算子识别模型识别自然语言问题中的至少两个查询之间的计算算子,能够进一步提高自然语言问题中的至少两个查询之间的计算算子识别的准确性。

s205、基于自然语言问题中的至少两个查询以及至少两个查询之间的计算算子,构建自然语言问题的sql语句;结束。

以自然语言问题“2019年汽车月平均销量宝马比奔驰高多少”,对应的知识库中的表头可以包括<年份,月份,品牌,月销量,……>,按照本实施例的上述步骤构建的sql查询语句,具体可以为如下:

上述得到的sql语句,可以被知识库所识别,进而使得知识库能够识别并处理计算类的自然语言问题,提高知识库对自然语言问题的处理能力。

s206、基于自然语言问题,获取目标查询信息,结束。

需要说明的是,上述步骤s202-s205为自然语言问题属于计算类问题时问题的处理方案。参考上述图1所示实施例的相关记载,本实施例的自然语言问题属于计算类问题时,涉及到知识库中的行计算问题。而对于自然语言问题不属于计算类问题时,即可以直接基于自然语言问题,获取目标查询信息,由于此时的自然语言问题不需要推理或者计算,可以由知识库直接基于该目标查询信息,在知识库中查询该目标查询信息对应的答案。

另外,可选地,若自然语言问题不属于计算类问题时,即直接通过查询获取答案。具体地,查询的答案可以为知识库中的表头的内容。例如,此处可以分为两种情况,第一种情况,查询的答案为从知识库中的原始表头的内容中查到的。如某个知识库的原始表头可以包括年份、品牌、销量等等。第二种情况,查询的答案为从知识库中的扩展表头的内容中查到的。如某个知识库的扩展表头可以包括利润率、销售占比等等。

需要说明的是,知识库的扩展表头不属于知识库本身存在的表头,但是可以基于知识库的至少两列进行列计算得到。所以,此时的自然语言问题也可以理解为属于知识库的列计算的问题。但是列计算并不是在接收到自然语言问题时,实时进行的。而是在接收到自然语言问题之前,根据实际经验,预先生成的知识库中的一些扩展表头。例如,在该步骤s206之前,可以包括如下步骤:

(a2)将知识库中的至少一个原始表头,采用预设的映射方式,生成扩展表头;

(b2)并将至少一个原始表头的内容信息,采用预设的映射方式,生成扩展表头的内容信息;

(c2)基于扩展表头和扩展表头的内容信息,扩展知识库。

例如,若知识库中包括两个原始表头利润和营收,基于这两个原始表头,可以采用映射关系利润率=利润÷营收,将利润率作为扩展表头,并基于利润和营收的内容以及相应的映射关系,获取到利润率的内容信息,存储在知识库中的扩展表头利润率中,实现对知识库的扩展。

同理,若知识库中包括原始表头q1销量、q2销量、q3销量、q4销量,可以采用映射关系“q1销售占比=q1销量÷(q1销量+q2销量+q3销量+q4销量)”,生成扩展表头“q1销售占比”,并相应生成内容信息存储在知识库中。

另外,可选地,本实施例中的扩展表头,还可以基于知识库中的至少一个表头及常熟之间的运算得到。例如,假如原始表头中有失败率,可以基于预设的映射关系“失败率=1-成功率”,生成扩展表头“失败率”。

再例如,假如原始表头中出生日期,还可以基于预设的映射关系“年龄=当前时间-出生日期”,其中“当前时间”属于时间常量,进而可以生成扩展表头“年龄”字段及相应的内容信息。

上述预设的映射关系仅为本实施例的举例,实际应用中,还可以存在其他的预设映射关系,在此不再一一举例赘述。需要说明的是,本实施例中可以通过数学、物理应用题库、网页、任务数据集等渠道收集各种公式,进一步可选地,还可以对公式进行规范化和恒等变换。比如由a=b+c,可得b=a-c,c=a-b。然后可以通过schemalinking匹配,将公式中的字段与知识库的表头进行映射,得到预设的映射关系。另外,可选地,本实施例中,还可以由用户手动配置计算公式,建立预设的映射关系,生成知识库的扩展表头及相应的内容信息。

通过采用上述技术方案,可以解决涉及到知识库中的列计算的自然语言问题,进一步增强知识库的问题处理能力。

本实施例的问题处理方法,通过采用上述技术方案,可以使得知识库不仅可以对涉及到行计算的计算类的自然语言问题进行有效地处理,而且可以对涉及到列计算的非计算类问题进行有效处理,能够有效地提高知识库对问题的处理能力,丰富知识库的性能。

图3是根据本申请第三实施例的示意图;如图3所示,本实施例提供一种问题处理装置300,包括:

挖掘模块301,用于若知识库接收到的自然语言问题属于计算类问题时,挖掘自然语言问题中的至少两个查询;

算子识别模块302,用于识别自然语言问题中至少两个查询之间的计算算子;

构建模块303,用于基于自然语言问题中的至少两个查询以及至少两个查询之间的计算算子,构建自然语言问题的结构化查询语言语句。

本实施例的问题处理装置300,通过采用上述模块实现问题处理的实现原理以及技术效果,与上述相关方法实施例的实现相同,详细可以参考上述相关方法实施例的记载,在此不再赘述。

图4是根据本申请第四实施例的示意图;如图4所示,本实施例的问题处理装置300,在上述图3所示实施例的技术方案的基础上,进一步更加详细地介绍本申请的技术方案。

如图4所示,本实施例的问题处理装置300,还包括:

问题识别模块304,用于识别自然语言问题是否属于计算类问题。

进一步可选地,如图4所示,本实施例的问题处理装置300中,问题识别模块304,包括:

条件识别单元3041,用于识别自然语言问题中的各条件信息;

问题识别单元3042,用于基于自然语言问题以及自然语言问题中的各条件信息,识别自然语言问题是否属于计算类问题。

进一步可选地,问题识别单元3042,用于:

基于自然语言问题以及自然语言问题中的各条件信息,采用预先训练的问题分类模型识别自然语言问题是否属于计算类问题。

进一步可选地,条件识别单元3041,用于:

采用预先训练的条件识别模型,识别自然语言问题中的各条件信息。

进一步可选地,如图4所示,本实施例的问题处理装置300中,挖掘模块301,包括:

条件类别划分单元3011,用于基于自然语言问题,对自然语言问题中的各条件信息进行类别划分;

查询挖掘单元3012,用于基于各条件信息的类别以及自然语言问题,挖掘自然语言问题中的至少两个查询。

进一步可选地,条件类别划分单元3011,用于:

基于自然语言问题,采用预先训练的条件类别识别模型,对各条件信息进行类别划分。

进一步可选地,本实施例的问题处理装置300中,算子识别模块302,用于:

基于自然语言问题和至少两个查询,采用预先训练的算子识别模型,识别至少两个查询之间的计算算子。

进一步可选地,如图4所示,本实施例的问题处理装置300中,还包括:

获取模块305,用于若自然语言问题不属于计算类问题,基于自然语言问题,获取目标查询信息。

进一步可选地,如图4所示,本实施例的问题处理装置300中,还包括:

表头生成模块306,用于若目标查询信息中查询的内容为知识库中的扩展表头时,将知识库中的至少一个原始表头,采用预设的映射方式,生成扩展表头;

内容生成模块307,用于将至少一个原始表头的内容信息,采用预设的映射方式,生成扩展表头的内容信息;

扩展模块308,用于基于扩展表头和扩展表头的内容信息,扩展知识库。

本实施例的问题处理装置300,通过采用上述模块实现问题处理的实现原理以及技术效果,与上述相关方法实施例的实现相同,详细可以参考上述相关方法实施例的记载,在此不再赘述。

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

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

如图5所示,电子设备500包括计算单元501,其可以根据存储在只读存储器(rom)502中的计算机程序或者从存储单元508加载到随机访问存储器(ram)503中的计算机程序,来执行各种适当的动作和处理。在ram503中,还可存储电子设备500操作所需的各种程序和数据。计算单元501、rom502以及ram503通过总线504彼此相连。输入/输出(i/o)接口505也连接至总线504。

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

计算单元501可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元501的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元501执行上文所描述的各个方法和处理,例如问题处理方法。例如,在一些实施例中,问题处理方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由rom502和/或通信单元509而被载入和/或安装到电子设备500上。当计算机程序加载到ram503并由计算单元501执行时,可以执行上文描述的问题处理方法的一个或多个步骤。备选地,在其他实施例中,计算单元501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行问题处理方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

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

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

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

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

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

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

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

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