本发明实施例涉及信息处理技术领域,尤其涉及一种问答类查询语句的识别方法、装置、设备及存储介质。
背景技术
互联网中在使用搜索引擎进行信息搜索时,用户输入的查询(query)语句可以分为问答类query语句和非问答类query语句。其中,问答类query语句是指需要搜索引擎来回答或者解答的、通过文字的形式可以进行表述的、用户需求确定或者较为确定的query语句。比如,一个可能的query语句为:换乳牙多少岁。
在搜索技术中,需要对问答类query语句对应的搜索结果使用问答技术进行处理,将处理后的答案结果呈现给用户。在这个过程中,需要首先判断一个query语句是否属于问答类query语句。
然而现有技术中还没有能够判断query语句是否属于问答类query语句的技术方案。
技术实现要素:
本发明实施例提供了一种问答类查询语句的识别方法、装置、设备及存储介质,可以提高问答类查询语句识别的准确性。
第一方面,本发明实施例提供了一种问答类查询语句的识别方法,该方法包括:
获取输入的查询语句以及该查询语句对应的搜索结果,并提取所述查询语句对应的特征信息和/或所述搜索结果对应的特征信息;
将提取的特征信息输入预先建立的分类模型,获得所述分类模型输出的所述查询语句是否是问答类查询语句的判定结果;
根据所述判定结果确定所述查询语句是否是问答类查询语句。
第二方面,本发明实施例还提供了一种问答类查询语句的识别装置,该装置包括:
特征信息提取模块,用于获取输入的查询语句以及该查询语句对应的搜索结果,并提取所述查询语句对应的特征信息和/或所述搜索结果对应的特征信息;
判定结果获取模块,用于将提取的特征信息输入预先建立的分类模型,获得所述分类模型输出的所述查询语句是否是问答类查询语句的判定结果;
问答类查询语句确定模块,用于根据所述判定结果确定所述查询语句是否是问答类查询语句。
第三方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明实施例所述的方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例所述的方法。
本发明实施例,首先获取输入的查询语句以及该查询语句对应的搜索结果,并提取查询语句对应的特征信息和/或搜索结果对应的特征信息,然后将提取的特征信息输入预先建立的分类模型,获得分类模型输出的查询语句是否是问答类查询语句的判定结果,最后根据判定结果确定查询语句是否是问答类查询语句。本发明实施例提供的问答类查询语句的识别方法,采用分类模型对查询语句对应的特征信息和/或所述搜索结果对应的特征信息进行识别,确定查询语句是否是问答类查询语句,可以提高问答类查询语句识别的准确性。
附图说明
图1是本发明实施例一中的一种问答类查询语句的识别方法的流程图;
图2是本发明实施例二中的一种问答类查询语句的识别方法的流程图;
图3是本发明实施例三中的一种问答类查询语句的识别方法的流程图;
图4a是本发明实施例三中的另一种问答类查询语句的识别方法的流程图;
图4b是本发明实施例三中的一种问答类查询语句的识别方法的使用场景流程图;
图5是本发明实施例四中的一种问答类查询语句的识别装置的结构示意图;
图6是本发明实施例五中的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种问答类查询语句的识别方法的流程图,本实施例可适用于对问答类查询语句进行识别的情况,该方法可以由问答类查询语句的识别装置来执行,该装置可由硬件和/或软件组成,并一般可集成在电脑、服务器以及所有包含问答类查询语句的识别功能的终端中。如图1所示,该方法具体包括如下步骤。
步骤110,获取输入的查询语句以及该查询语句对应的搜索结果,并提取查询语句对应的特征信息和/或搜索结果对应的特征信息。
其中,查询语句以及该查询语句对应的搜索结果可以是输入搜索网站的查询语句,以及搜索网站根据查询语句查找的搜索结果。搜索网站可以是百度等。查询语句对应的特征信息可以包括查询语句的内容信息、长度信息及查询语句是问答类查询语句的概率值中的至少一个。查询语句的内容信息可以包括查询语句的结尾内容是否是预设内容、查询语句是否涉及黄色或反动内容、是否命中优质词、是否是优质问题等。例如:预设内容可以是“的”+反映查询语句的答案类型的词语,或者其他高质量词。搜索结果对应的特征信息可以包括搜索结果的站点信息。站点信息可以包括:搜索结果对应的站点中问答站的个数、位于第一位的搜索结果对应的站点是否属于百科类或经验类、问答站的分数、相关性等。
具体的,当用户在搜索网站的搜索框输入查询语句后,搜索网站根据查询语句查找对应的搜索结果,获取该查询语句以及该查询语句对应的搜索结果,并对查询语句和搜索结果进行分析,提取查询语句的内容信息、长度信息及查询语句是问答类查询语句的概率值中的至少一个,以及搜索结果对应的特征信站点信息。
可选的,查询语句是问答类查询语句的概率值的获取方法可以是:将查询语句和搜索结果输入预先建立的dnn模型;获得dnn模型输出的查询语句是问答类查询语句的概率值。
深度神经网络(deepneuralnetwork,dnn)模型可以是基于第一训练数据源,采用dnn算法进行训练获得的模型。其中,第一训练数据源可以包括多条标注有是否是问答类查询语句的标识的查询语句以及该多条查询语句对应的搜索结果。本实施例中,将查询语句和搜索结果输入dnn模型后,dnn模型对查询语句和搜索结果进行分析,获得查询语句是问答类查询语句的概率值。
步骤120,将提取的特征信息输入预先建立的分类模型,获得分类模型输出的查询语句是否是问答类查询语句的判定结果。
其中,分类模型可以是基于第二训练数据源,采用最大熵或支持向量机(supportvectormachine,svm)算法进行模型训练获得的模型。第二训练数据源可以包括多条随机查询语句以及预先对所述多条随机查询语句标注的是否是问答类查询语句的结果信息。本实施例中,分类模型的工作原理可以是,将查询语句对应的特征信息和/或搜索结果对应的特征信息输入分类模型后,分类模型对输入的特征信息进行分析,提取各个特征的权重,获得查询语句是否是问答类查询语句的判定结果。判定结果可以是查询语句是问答类查询语句以及查询语句是问答类查询语句的置信度值,或查询语句不是问答类查询语句以及查询语句不是问答类查询语句的置信度值。
步骤130,根据判定结果确定查询语句是否是问答类查询语句。
可选的,若判定结果为查询语句是问答类查询语句,并且对应的置信度值大于预设阈值,则确定查询语句是问答类查询语句,否则,确定查询语句不是问答类查询语句;若判定结果为查询语句不是问答类查询语句,则确定查询语句不是问答类查询语句。
其中,预设阈值可以基于准确率及召回率的auc曲线确定,准确率及召回率是预先使用分类模型判断多条随机查询语句是否是问答类查询语句的结果的准确率及召回率。预设阈值可以是准确率的auc曲线与召回率的auc曲线的交点对应的值。
可选的,在获得分类模型输出的查询语句是否是问答类查询语句的判定结果之后、根据判定结果确定查询语句是否是问答类查询语句之前,还包括如下步骤:确定查询语句是否满足预设规则,若满足,则触发执行根据判定结果确定查询语句是否是问答类查询语句的操作,若不满足,则将查询语句进行删除。
可选的,若查询语句中包含预先设置的黑名单中的词语,或包含预先设定的黄色或反动内容,则不满足预设规则。本实施例中,若查询语句中不包含预先设置的黑名单中的词语,且不包含预先设定的黄色或反动内容,则查询语句满足预设规则。这样的好处是可以净化网络环境。
本实施例技术方案,首先获取输入的查询语句以及该查询语句对应的搜索结果,并提取查询语句对应的特征信息和/或搜索结果对应的特征信息,然后将提取的特征信息输入预先建立的分类模型,获得分类模型输出的查询语句是否是问答类查询语句的判定结果,最后根据判定结果确定查询语句是否是问答类查询语句。本发明实施例提供的问答类查询语句的识别方法,采用分类模型对查询语句对应的特征信息和/或所述搜索结果对应的特征信息进行识别,确定查询语句是否是问答类查询语句,可以提高问答类查询语句识别的准确性。
实施例二
图2为本发明实施例二提供的一种问答类查询语句的识别方法的流程图,以上述实施例为基础,如图2所示,该方法包括如下步骤。
步骤210,获取第一训练数据源。
其中,第一训练数据源可以包括:多条标注有是否是问答类查询语句的标识的查询语句以及该多条查询语句对应的搜索结果。
可选的,获取第一训练数据源可以通过下述方式实施:从问答站获取多条查询语句以及该多条查询语句对应的搜索结果,作为正例;从非问答站获取多条查询语句以及该多条查询语句对应的搜索结果,作为负例;为正例标注表示是问答类查询语句的标识,为负例标注表示不是问答类查询语句的标识。
其中,在问答站中输入的查询语句为问答类查询语句,将从问答站收集的多条查询语句以及该多条查询语句对应的搜索结果作为第一训练数据源中的正例。在非问答站中输入的查询语句为非问答类查询语句,将从非问答站搜集多条查询语句以及该多条查询语句对应的搜索结果作为第一训练数据源中的负例。
本实施中,第一训练数据源的数据规模可以达到几亿的量,例如:42亿。
步骤220,基于第一训练数据源,采用dnn算法进行模型训练,得到dnn模型。
具体的,在获得第一训练数据源后,采用dnn算法不断进行模型训练,在训练过程中,不断调整dnn算法中的参数,直到模型具有准确输出查询语句是问答类查询语句概率值的能力,从而获得dnn模型。示例性的,在进行模型训练时,词向量可以是128维,fc层可以是128维,数据规模为42亿。
步骤230,将查询语句和搜索结果输入预先建立的深度神经网络dnn模型。
步骤240,获得dnn模型输出的查询语句是问答类查询语句的概率值。
本实施例的技术方案,基于第一训练数据源,采用dnn算法进行模型训练,得到dnn模型,可以提高dnn模型确定查询语句是问答类查询语句的概率值的准确性。
实施例三
图3为本发明实施例三提供的一种问答类查询语句的识别方法的流程图,以上述实施例为基础,如图3所示,该方法包括如下步骤。
步骤310,获取第二训练数据源。
第二训练数据源可以包括:多条随机查询语句以及预先对多条随机查询语句标注的是否是问答类查询语句的结果信息。
可选的,获取第二训练数据源可通过下述方式实施:获取多条随机查询语句,判断查询语句是否是问答类查询语句,若是,则对查询语句标注是问答类查询语句,若不是,则对查询语句标注不是问答类查询语句,将标注后的多条查询语句作为第二训练数据源。
步骤320,基于第二训练数据源,采用最大熵或svm算法进行模型训练,得到分类模型。
具体的,在获得第二训练数据源后,采用最大熵或svm算法不断进行模型训练,在训练过程中,不断调整最大熵或svm算法中的参数,直到模型具有准确输出查询语句是否是问答类查询语句的判定结果的能力,从而获得分类模型。
步骤330,获取输入的查询语句以及该查询语句对应的搜索结果,并提取查询语句对应的特征信息和/或搜索结果对应的特征信息。
步骤340,将提取的特征信息输入预先建立的分类模型,获得分类模型输出的查询语句是否是问答类查询语句的判定结果。
步骤350,根据判定结果确定查询语句是否是问答类查询语句。
本实施例的技术方案,基于第二训练数据源,采用最大熵或svm算法进行模型训练,得到分类模型,可以提高分类输出的查询语句是否是问答类查询语句的判定结果的准确性。
图4a为本发明实施例三提供的另一种问答类查询语句的识别方法的流程图。作为对上述实施例的进一步解释,如图4a所示,该方法包括如下步骤。
步骤410,获取输入的查询语句以及该查询语句对应的搜索结果。
步骤420,提取查询语句对应的特征信息。
步骤430,提取搜索结果对应的特征信息。
步骤440,将提取的查询语句对应的特征信息和/或搜索结果对应的特征信息输入预先建立的分类模型,获得分类模型输出的查询语句是否是问答类查询语句的判定结果。
步骤450,确定查询语句是否满足预设规则,若满足,则触发执行根据判定结果确定查询语句是否是问答类查询语句的操作,若不满足,则将查询语句进行删除。
步骤460,若判定结果为查询语句是问答类查询语句,并且对应的置信度值大于预设阈值,则确定查询语句是问答类查询语句,否则,确定查询语句不是问答类查询语句;若判定结果为查询语句不是问答类查询语句,则确定查询语句不是问答类查询语句。
图4b为本发明实施例三提供的一种问答类查询语句的识别方法的使用场景流程图。对于查询语句是否是问答类查询语句,可以基于特征提取、分类等技术实现。如图4b,该流程包括如下步骤。
步骤401,采用特征提取技术提取输入的查询语句的特征信息;
步骤402,获取查询语句对应的搜索结果,并采用特征提取技术提取搜索结果的特征信息;
步骤403,采用分类技术判定查询语句是否是问答类查询语句;
步骤404,若是问答类查询语句,则采用问答技术处理,获得查询语句的答案;
步骤405,将答案输出并展示。
实施例四
图5为本发明实施例四提供的一种问答类查询语句的识别装置的结构示意图。如图5所示,该装置包括:特征信息提取模块510,判定结果获取模块520和问答类查询语句确定模块530。
特征信息提取模块510,用于获取输入的查询语句以及该查询语句对应的搜索结果,并提取查询语句对应的特征信息和/或搜索结果对应的特征信息;
判定结果获取模块520,用于将提取的特征信息输入预先建立的分类模型,获得分类模型输出的查询语句是否是问答类查询语句的判定结果;
问答类查询语句确定模块530,用于根据判定结果确定查询语句是否是问答类查询语句。
可选的,搜索结果对应的特征信息包括:搜索结果的站点信息;
查询语句对应的特征信息包括:查询语句的内容信息、长度信息及查询语句是问答类查询语句的概率值中的至少一个。
可选的,查询语句是问答类查询语句的概率值的获取方法包括:
将查询语句和搜索结果输入预先建立的深度神经网络dnn模型;
获得dnn模型输出的查询语句是问答类查询语句的概率值。
可选的,还包括:
第一训练数据源获取模块,用于获取第一训练数据源;第一训练数据源包括:多条标注有是否是问答类查询语句的标识的查询语句以及该多条查询语句对应的搜索结果;
dnn模型获取模块,用于基于第一训练数据源,采用深度神经网络dnn算法进行模型训练,得到dnn模型。
可选的,第一训练数据源获取模块,还用于:
从问答站获取多条查询语句以及该多条查询语句对应的搜索结果,作为正例;
从非问答站获取多条查询语句以及该多条查询语句对应的搜索结果,作为负例;
为正例标注表示是问答类查询语句的标识,为负例标注表示不是问答类查询语句的标识。
可选的,还包括:
第二训练数据源获取模块,用于获取第二训练数据源;第二训练数据源包括:多条随机查询语句以及预先对多条随机查询语句标注的是否是问答类查询语句的结果信息;
分类模型获取模块,用于基于第二训练数据源,采用最大熵或支持向量机svm算法进行模型训练,得到分类模型。
可选的,问答类查询语句确定模块530还用于:
若判定结果为查询语句是问答类查询语句,并且对应的置信度值大于预设阈值,则确定查询语句是问答类查询语句,否则,确定查询语句不是问答类查询语句;
若判定结果为查询语句不是问答类查询语句,则确定查询语句不是问答类查询语句。
可选的,还包括:
满足预设规则确定模块,用于确定查询语句是否满足预设规则,若满足,则触发执行根据判定结果确定查询语句是否是问答类查询语句的操作,若不满足,则将查询语句进行删除。
实施例五
图6为本发明实施例五提供的一种计算机设备的结构示意图,如图6所示,本实施例提供的一种计算机设备,包括:处理器61和存储器62。该计算机设备中的处理器可以是一个或多个,图6中以一个处理器61为例,所述计算机设备中的处理器61和存储器62可以通过总线或其他方式连接,图6中以通过总线连接为例。
本实施例中计算机设备的处理器61中集成了上述实施例提供的问答类查询语句的识别装置。此外,该计算机设备中的存储器62作为一种计算机可读存储介质,可用于存储一个或多个程序,所述程序可以是软件程序、计算机可执行程序以及模块,如本发明实施例中问答类查询语句的识别方法对应的程序指令/模块。处理器61通过运行存储在存储器62中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述方法实施例中问答类查询语句的识别方法。
存储器62可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器62可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器62可进一步包括相对于处理器61远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器61通过运行存储在存储器62中的程序,从而执行各种功能应用以及数据处理,实现例本发明实施例提供的问答类查询语句的识别方法。
实施例六
本发明实施例六还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例所提供的问答类查询语句的识别方法。
当然,本发明实施例所提供的一种计算机可读存储介质,其上存储的计算机程序不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的问答类查询语句的识别方法中的相关操作。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。