CN117009372A - 一种智能问答方法及相关装置 - Google Patents
一种智能问答方法及相关装置 Download PDFInfo
- Publication number
- CN117009372A CN117009372A CN202211221196.8A CN202211221196A CN117009372A CN 117009372 A CN117009372 A CN 117009372A CN 202211221196 A CN202211221196 A CN 202211221196A CN 117009372 A CN117009372 A CN 117009372A
- Authority
- CN
- China
- Prior art keywords
- entity information
- natural language
- fuzzy matching
- target
- matching entity
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 87
- 230000011218 segmentation Effects 0.000 claims abstract description 67
- 238000012545 processing Methods 0.000 claims abstract description 43
- 238000001514 detection method Methods 0.000 claims description 18
- 238000013145 classification model Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 14
- 238000010276 construction Methods 0.000 claims description 7
- 238000005065 mining Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 22
- 238000013139 quantization Methods 0.000 description 20
- 238000005516 engineering process Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 12
- 238000013473 artificial intelligence Methods 0.000 description 10
- 238000012549 training Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000003058 natural language processing Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 238000002372 labelling Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000012216 screening Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000452 restraining effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/243—Natural language query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2452—Query translation
- G06F16/24522—Translation of natural language queries to structured queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2468—Fuzzy queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3334—Selection or weighting of terms from queries, including natural language queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Fuzzy Systems (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Probability & Statistics with Applications (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了一种智能问答方法及相关装置,其中该方法包括:获取自然语言问题,对自然语言问题进行分词处理,得到自然语言问题包括的各个目标分词;基于表格数据,召回各个目标分词各自对应的候选实体信息;对于各个候选实体信息中的模糊匹配实体信息,根据自然语言问题的语义特征和模糊匹配实体信息的语义特征,确定模糊匹配实体信息与自然语言问题是否相关;根据与自然语言问题相关的所述模糊匹配实体信息,确定目标结构化语句;根据目标结构化语句和表格数据,确定自然语言问题对应的回答内容。该方法能够保证确定SQL语句时依据的实体信息的准确性,提高针对自然语言问题给出的回答内容的准确性。
Description
技术领域
本申请涉及人工智能技术领域,尤其涉及一种智能问答方法及相关装置。
背景技术
表格问答是智能问答领域中结构化文档问答下的一个重要分支,其用于根据表格数据给出自然语言问题对应的回答内容。在实际应用中,表格问答通常应用在与专业领域(如金融领域、汽车领域等)相关的问答场景。
在智能问答领域,通常使用NL2SQL(NLP Language to SQL)技术,将自然语言问题转换为可执行的结构化查询语言(Structured Query Language,SQL),进而根据该SQL语句确定自然语言问题对应的回答内容。在表格问答场景中,将自然语言问题转换为SQL语句时,需要在表格数据中召回与自然语言问题相关的实体信息,进而根据所召回的实体信息确定SQL语句。
然而,在实际应用中,用户输入的自然语言问题往往并不标准,难以与表格数据中的实体信息精准匹配,因此,容易导致从表格数据中召回的实体信息不够准确,而这将影响所确定的SQL语句的准确性,进而降低针对自然语言问题给出的回答内容的准确性。
发明内容
本申请实施例提供了一种智能问答方法及相关装置,能够保证确定SQL语句时依据的实体信息的准确性,从而提高针对自然语言问题给出的回答内容的准确性。
有鉴于此,本申请第一方面提供了一种智能问答方法,所述方法包括:
获取自然语言问题,对所述自然语言问题进行分词处理,得到所述自然语言问题包括的各个目标分词;
基于表格数据,召回所述各个目标分词各自对应的候选实体信息;所述候选实体信息与其对应的所述目标分词之间满足预设匹配条件;
对于各个所述候选实体信息中的模糊匹配实体信息,根据所述自然语言问题的语义特征和所述模糊匹配实体信息的语义特征,确定所述模糊匹配实体信息与所述自然语言问题是否相关;所述模糊匹配实体信息为与其对应的所述目标分词不满足完全匹配条件的候选实体信息;
根据与所述自然语言问题相关的所述模糊匹配实体信息,确定所述自然语言问题对应的目标结构化语句;
根据所述目标结构化语句和所述表格数据,确定所述自然语言问题对应的回答内容。
本申请第二方面提供了一种智能问答装置,所述装置包括:
问题处理模块,用于获取自然语言问题,对所述自然语言问题进行分词处理,得到所述自然语言问题包括的各个目标分词;
实体召回模块,用于基于表格数据,召回所述各个目标分词各自对应的候选实体信息;所述候选实体信息与其对应的所述目标分词之间满足预设匹配条件;
相关性检测模块,用于对于各个所述候选实体信息中的模糊匹配实体信息,根据所述自然语言问题的语义特征和所述模糊匹配实体信息的语义特征,确定所述模糊匹配实体信息与所述自然语言问题是否相关;所述模糊匹配实体信息为与其对应的所述目标分词不满足完全匹配条件的候选实体信息;
结构语句构建模块,用于根据与所述自然语言问题相关的所述模糊匹配实体信息,确定所述自然语言问题对应的目标结构化语句;
回答确定模块,用于根据所述目标结构化语句和所述表格数据,确定所述自然语言问题对应的回答内容。
本申请第三方面提供了一种计算机设备,所述设备包括处理器以及存储器:
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序,执行如上述第一方面所述的智能问答方法的步骤。
本申请第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行上述第一方面所述的智能问答方法的步骤。
本申请第五方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面所述的智能问答方法的步骤。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例提供了一种表格问答场景中的智能问答方法,该方法创新性地在构建自然语言问题对应的SQL语句的过程中,增加了对于所召回的模糊匹配实体信息的检测环节。此处的模糊匹配实体信息是基于表格数据召回的、与自然语言问题中的目标分词对应的候选实体信息,模糊匹配实体信息与其对应的目标分词之间不满足完全匹配条件;通过该检测环节,可以根据自然语言问题的语义特征和模糊匹配实体信息的语义特征,检测该模糊匹配实体信息与自然语言问题之间是否相关;进而,利用与自然语言问题相关的模糊匹配实体信息,构建该自然语言问题对应的SQL语句。如此,保证构建SQL语句所依据的实体信息的准确性和可靠性,相应地,可以保证所构建的SQL语句的准确性和可靠性;基于该SQL语句和表格数据确定自然语言问题对应的回答内容,有助于提高所确定的回答内容的准确性,提高智能问答的效果。
附图说明
图1为本申请实施例提供的智能问答方法的应用场景示意图;
图2为本申请实施例提供的智能问答方法的流程示意图;
图3为本申请实施例提供的示例性的表格数据示意图;
图4为本申请实施例提供的示例性的参考字典树的示意图;
图5为本申请实施例提供的基于参考字典树得到的召回结果示意图;
图6为本申请实施例提供的检测模糊匹配实体信息与自然语言问题是否相关的实现架构示意图;
图7为本申请实施例提供的对自然语言问题给出回答内容的应用界面图;
图8为本申请实施例提供的智能问答方法的整体实现架构图;
图9为本申请实施例提供的智能问答装置的结构示意图;
图10为本申请实施例提供的终端设备的结构示意图;
图11为本申请实施例提供的服务器的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习、自动驾驶、智慧交通等几大方向。
自然语言处理(Nature Language processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
本申请实施例提供的方案涉及人工智能技术中的自然语言处理技术,具体通过如下实施例进行说明:
本申请实施例提供的智能问答方法可以由具备自然语言处理能力的计算机设备执行,该计算机设备可以是终端设备或服务器。其中,终端设备包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端、飞行器等。服务器可以是独立的物理服务器,也可以是由多个物理服务器构成的服务器集群或者分布式系统,还可以是云服务器。
为了便于理解本申请实施例提供的智能问答方法,下面以该智能问答方法的执行主体为服务器为例,对该智能问答方法的应用场景进行示例性介绍。
参见图1,图1为本申请实施例提供的智能问答方法的应用场景示意图。如图1所示,该应用场景中包括终端设备110和服务器120,终端设备110与服务器120之间可以通过有线或无线网络,进行直接或间接地通信。
在实际应用中,终端设备110可以接收使用对象输入的自然语言问题;进而,将该自然语言问题通过有线或无线网络传输给服务器120。
服务器120接收到自然语言问题后,可以先对该自然语言问题进行分词处理,得到该自然语言问题包括的各个目标分词,此处的目标分词可以是自然语言问题中具有实质含义的分词,如除“的”、“得”、“吗”、“啊”、“咦”等助词、语气词等外的词。进而,服务器120可以基于表格数据,召回自然语言问题中各个目标分词各自对应的候选实体信息,此处的表格数据为表格问答场景中针对自然语言问题给出回答内容时所依据的表格形式的统计数据,此处所召回的候选实体信息与其对应的目标分词之间应满足预设匹配条件,该预设匹配条件指示了召回过程所允许的匹配误差,即所允许的候选实体信息与其对应的目标分词之间的匹配误差。
在所召回的各个候选实体信息包括模糊匹配实体信息的情况下,服务器120需要根据自然语言问题的语义特征和模糊匹配实体信息的语义特征,确定该模糊匹配实体信息与该自然语言问题是否相关,此处的模糊匹配实体信息为与其对应的目标分词之间不满足完全匹配条件的候选实体信息,所谓完全匹配条件是指候选实体信息与目标分词完全一致。如此,通过检测模糊匹配实体信息与自然语言问题是否相关,筛选模糊匹配实体信息,仅保留与自然语言问题相关的模糊匹配实体信息参与后续处理,剔除与自然语言问题无关的模糊匹配实体信息,避免此类模糊匹配实体信息影响智能问答的准确性。
进而,服务器120可以根据通过上述检测环节确定的、与自然语言问题相关的模糊匹配实体信息,确定该自然语言问题对应的目标SQL语句;此外,若所召回的候选实体信息包括与其对应的目标分词之间满足完全匹配条件的完全匹配实体信息,则可以根据该完全匹配实体信息、以及与自然语言问题相关的模糊匹配实体信息,确定该自然语言问题对应的目标SQL语句。最终根据该目标SQL语句和表格数据,确定该自然语言问题对应的回答内容。由于构建目标SQL语句时使用的模糊匹配实体信息,均是与该自然语言问题语义相关的实体信息,因此,可以在一定程度上保证所构建的目标SQL语句的可靠性和准确性,进而,有利于保证根据该目标SQL语句确定的回答内容的可靠性和准确性。
应理解,图1所示的应用场景仅为示例,在实际应用中,本申请实施例提供的智能问答方法也可以应用在其它场景中,例如,也可以由终端设备110独立执行本申请实施例提供的智能问答方法,实现单机的人机智能对话。在此不对本申请实施例提供的智能问答方法的应用场景做任何限定。
下面通过方法实施例对本申请提供的智能问答方法进行详细介绍。
参见图2,图2为本申请实施例提供的智能问答方法的流程示意图。为了便于描述,下述实施例仍以该智能问答方法的执行主体为服务器为例进行介绍。如图2所示,该智能问答方法包括以下步骤:
步骤201:获取自然语言问题,对所述自然语言问题进行分词处理,得到所述自然语言问题包括的各个目标分词。
在本申请实施例中,服务器可以获取智能问答业务中用户提出的自然语言问题,进而对所获取的自然语言问题进行分词处理,得到该自然语言问题包括的各个目标分词。此处的目标分词是自然语言问题中具有实质性含义的分词,即能够表征实体信息的分词,而非停用词表中无实质性含义的助词、语气词等(如“的”、“得”、“啊”、“吗”、“咦”等)。
在一种示例性的场景中,服务器可以获取终端设备向其传输的自然语言问题。例如,终端设备上运行有具备智能对话功能的应用程序,终端设备的使用对象可以通过该应用程序输入自然语言问题,如手动打字输入文本形式的自然语言问题,或者语音输入自然语言问题(对于语音形式的自然语言问题,终端设备可以通过语音识别技术将其转换为文本形式的自然语言问题),进而,终端设备可以将使用对象输入的自然语言问题通过网络发送给服务器。又例如,终端设备可以为智能语音交互设备,终端设备的使用对象可以语音输入自然语言问题,终端设备将该语音形式的自然语言问题转换为文本形式的自然语言问题后,将该文本形式的自然语言问题发送给服务器。当然,在实际应用中,对于语音形式的自然语言问题,终端设备也可以直接将其发送给服务器,由服务器将其转换为文本形式的自然语言问题。
应理解,在实际应用中,服务器也可以通过其它方式获取自然语言问题,例如,当本申请实施例提供的方法应用在测试场景(如对应用程序中的智能对话功能进行测试、对智能语音交互设备的对话功能进行测试等等)中时,服务器也可以从相关数据库中获取自然语言问题,本申请在此不对服务器获取所需处理的自然语言问题的方式做任何限定。
应理解,当本申请实施例提供的方法的执行主体为终端设备时,终端设备可以直接获取使用对象输入的自然语言问题,例如直接获取使用对象手动打字输入的文本形式的自然语言问题,又例如获取使用对象语音输入的自然语言问题,进而将其转换为文本形式的自然语言问题。
服务器对自然语言问题进行分词处理时,可以采用相关的分词算法,如最大分词匹配算法、最短路径分词算法、基于N-gram模型的分词算法、生成式模型分词算法、判别式模型分词算法、神经网络分词算法等等,执行对于自然语言问题的分词处理,得到该自然语言问题包括的各个分词,进而剔除其中属于停用词表的无实质性含义分词,仅保留其中具有实质性含义的目标分词。
步骤202:基于表格数据,召回所述各个目标分词各自对应的候选实体信息;所述候选实体信息与其对应的所述目标分词之间满足预设匹配条件。
服务器通过对自然语言问题进行分词处理,得到该自然语言问题包括的各个目标分词后,可以针对每个目标分词,基于表格数据召回与该目标分词之间满足预设匹配条件的实体信息,作为该目标分词对应的候选实体信息。
需要说明的是,上述表格数据是表格问答场景中针对自然语言问题给出回答内容时所依据的表格形式的统计数据。表格数据中通常包括大量的实体信息,这些实体信息具体可以分为表头属性实体信息和表值实体信息;其中,表头属性实体信息通常为表格数据中第一行包括的实体信息,其能够指示其所属列中包括的表值实体信息的类型,表值实体信息通常为表格数据中除去第一行包括的实体信息外的其它实体信息。
在本申请实施例中,召回目标分词对应的候选实体信息时,可以仅基于一个表格数据进行召回,即在一个表格数据所涉及的实体信息的范围内召回目标分词对应的候选实体信息;也可以基于多个表格数据进行召回,即在多个表格数据所涉及的实体信息的范围内召回目标分词对应的候选实体信息。通常情况下,不同的表格数据对应的领域不同,图3为本申请实施例提供的示例性的表格数据示意图,其中(a)、(b)和(c)分别展示了对应教育领域、金融领域和汽车领域的表格数据;基于此,对于所属于同一自然语言问题的各个目标分词,其各自对应的候选实体信息应所属于同一表格数据,即需要保证构建SQL语句时使用的候选实体信息对应于同一表格数据,如此,才能基于表格数据查找到与该SQL语句对应的回答内容。
需要说明的是,基于某个目标分词召回的实体信息,即是与该目标分词具有对应关系的候选实体信息。候选实体信息与其对应的目标分词之间满足预设匹配条件,该预设匹配条件是在召回候选实体信息之前设置的、用于约束所召回的候选实体信息的条件,其通常会指示召回过程所允许的实体信息与目标分词之间的匹配误差,即只有与目标分词之间的匹配精度小于该匹配误差的实体信息,才能被召回作为该目标分词对应的候选实体信息。
在一种可能的实现方式中,服务器可以基于表格数据对应的参考字典树,召回各个目标分词各自对应的候选实体信息;此处的参考字典树是根据表格数据包括的各个实体信息构建的,每个实体信息对应参考字典树中的一个节点序列,具有公共前缀的多个实体信息各自对应的节点序列存在共用的、对应于该公共前缀的节点。
具体的,服务器可以预先构建表格数据对应的参考字典树,即Trie树(又可称为单词查找树)。构建该参考字典树时,服务器可以从表格数据中提取表头属性实体信息以及表值实体信息,作为原始实体信息,并挖掘与原始实体信息语义相近的参考实体信息;进而,利用各原始实体信息和各参考实体信息,构建表格数据对应的表值词典;根据该表值词典中包括的各个实体信息、以及各个实体信息之间共用的前缀,构建参考字典树。
示例性的,对于表格问答场景下可依据的所有表格数据,服务器可以从各个表格数据中提取所有的表头属性实体信息(即每个表格数据第一行包括的各个实体信息),以及提取所有的表值实体信息(即每个表格数据中除第一行包括的实体信息外的其它实体信息),也可以理解为,服务器需要将所有表格数据中包括的所有实体信息均提取出来,从表格数据中提取出的实体信息将被视为原始实体信息。进一步的,为了给自然语言问题中的目标分词提供更大的实体信息匹配范围,服务器还可以针对每个原始实体信息,在网络上挖掘与该原始实体信息语义相近的参考实体信息,例如,可以通过网络爬虫,爬取与原始实体信息之间的语义相似度小于预设相似度阈值的实体信息,作为该原始实体信息对应的参考实体信息。然后,利用上述原始实体信息和参考实体信息,组成表格数据对应的表值词典。
进而,可以根据表值词典中包括的各个实体信息构建参考字典树。构建该参考字典树时,将该参考字典树的根节点设为空;对于表值词典中包括的每个实体信息,服务器可以以单个字符为单位对其进行拆分处理,得到该实体信息对应的字符序列,并构建该字符序列对应的节点序列(其中包括字符序列中各个字符各自对应的节点)。对于具有公共前缀的实体信息,例如,实体信息“A项目投资资金a”和“A项目投资资金b”,其中包括公共前缀“A项目投资资金”,因此,“A项目投资资金a”对应的节点序列和“A项目投资资金b”对应的节点序列中包括共用的、对应于该公共前缀的子节点序列“A项目投资资金”;又例如实体信息“B公司证券”和“B公司医疗服务”,其中包括公共前缀“B公司”,因此,“B公司证券”对应的节点序列和“B公司医疗服务”对应的节点序列中包括共用的、对应于该公共前缀的子节点序列“B公司”,图4为本申请实施例提供的示例性的参考字典树的示意图。
需要说明的是,对于参考字典树中的每个节点序列,可以针对其关联存储与其对应的实体信息的属性信息;例如,可以针对参考字典树中每个节点序列的末尾节点,关联存储该节点序列对应的实体信息所属的表格数据的标识、该实体信息在表格数据中的位置(如所属行的标识、所属列的标识)等;对于通过挖掘得到的参考实体信息对应的节点序列,可以将该参考实体信息对应的原始实体信息的属性信息作为该参考实体信息的属性信息,在该参考实体信息对应的节点序列的末尾节点关联存储该属性信息。如此,针对节点序列关联存储其对应的实体信息的属性信息,有利于后续构建SQL语句时,快速地获取到构建SQL语句所需的相关信息,提高SQL语句的构建效率。
基于上述表格数据对应的参考字典树,召回目标分词对应的候选实体信息时,可以针对每个目标分词,在该参考字典树中查找与该目标分词之间的编辑距离小于预设距离阈值的实体信息,作为该目标分词对应的候选实体信息。
具体的,在召回目标分词对应的候选实体信息之前,可以设定预设距离阈值作为召回过程所依据的预设匹配条件,该预设距离阈值用于约束所召回的候选实体信息与目标分词之间的编辑距离,即保证所召回的候选实体信息与其对应的目标分词之间的编辑距离均小于该预设距离阈值。编辑距离(Edit Distance,ED)又被称为莱文斯坦(Levenshtein)距离,其通常用于量化量测两个字符串之间的差异程度,量测方式即是检测至少需要多少次处理才能将一个字符串转换为另一个字符串,例如,若两个字符串之间的ED等于0,则说明这两个字符串完全一致,若两个字符串之间的ED等于2,则说明将其中一个字符串转换为另一个字符串至少需要两次处理。
在本申请实施例中,服务器基于参考字典树查找目标分词对应的候选实体信息时,可以先在参考字典树中与根节点直接相连的一级节点中查找与该目标分词中的第一个字符对应的一级目标节点,若查找到该一级目标节点,则进一步在与该一级目标节点直接相连的二级节点中查找与该目标分词中的第二个字符对应的二级目标节点,若查找到该二级目标节点,则进一步在与该二级目标节点直接相连的三级节点中查找与该目标分词中的第三个字符对应的三级目标节点,以此类推,直至遍历完成目标分词中包括的各个字符。
应理解,若在i级节点中没有查找到与目标分词中的第i个字符对应的i级目标节点,则可以将各个i级节点均视为i级目标节点,进而,在各个i级目标节点直接相连的i+1级节点中继续查找与目标分词中的第i+1个字符对应的i+1级目标节点,同时还需要对本次查找对应的ED值进行加1处理,初始的ED值为0,此处的i包括大于等于1、至小于等于n的各个整数,n为目标分词包括的字符数量。例如,假设服务器在与一级目标节点直接相连的二级节点中没有查找到与该目标分词中的第二个字符对应的二级目标节点,那么服务器可以将与该一级目标节点直接相连的各个二级节点均视为二级目标节点,进而,在各个二级目标节点直接相连的三级节点中继续查找与目标分词中的第三个字符对应的三级目标节点,同时服务器还会对本次查找对应的ED值进行加1处理。
服务器通过上述召回处理,将召回到与目标分词之间的ED小于预设距离阈值的候选实体信息,同时对于所召回的候选实体信息,也会记录其与目标分词之间的ED。图5为本申请实施例提供的基于参考字典树得到的召回结果示意图,如图5所示,对于自然语言问题(query)“A公司港股通精选c的净值是多少?”,针对其中的目标分词(query set)“净值”、“港股”、“港股通”,分别召回了候选实体信息(entity)“净值”、“港股”、“港股通”,且具有对应关系的目标分词与候选实体信息间的ED等于0,针对其中的目标分词“A公司港股通精选c”召回了候选实体信息“A公司港股通精选混合c”,二者之间的ED等于2。
如此,通过上述参考字典树召回自然语言问题中目标分词对应的候选实体信息,由于参考字典树具有查找效率高、处理复杂度低的特点,因此可以有效地提高候选实体信息的召回效率。
在另一种可能的实现方式中,服务器可以基于录入有所述表格数据的搜索引擎,根据自然语言问题包括的各个目标分词,召回各个目标分词各自对应的候选实体信息。
具体的,服务器可以预先将表格问答场景下可依据的所有表格数据录入ES(ElasticSearch)搜索引擎,并相应地针对表格数据中包括的数据构建索引。相应地,当服务器需要召回自然语言问题中的目标分词对应的候选实体信息时,服务器可以将目标分词输入该ES搜索引擎,该ES搜索引擎可以利用自身的数据搜索能力,在已录入的表格数据中搜索与该目标分词相匹配的候选实体信息。
需要说明的是,ES搜索引擎是基于Lucene的搜索服务器,是本质上是一个分布式、高扩展、高实时的搜索与数据分析引擎,其能够方便地使包括有大量实体信息的表格数据具有搜索、分析和探索的能力。ES搜索引擎的工作原理主要包括以下几个步骤:首先将表格问答场景中的表格数据提交到对应的数据库中,再通过分词控制器对表格数据中包括的实体信息进行分词处理,得到分词结果及对应的权重,并将分词结果及其对应的权重一并存入数据库;当需要针对目标分词召回候选实体信息时,可以先召回数据库中存储的与该目标分词相关的分词结果,进而再根据分词结果对应的权重对所召回的各个分词结果进行打分,最终将得分较高的分词结果确定为目标分词对应的候选实体信息。
由于ES搜索引擎具有搜索实时性强、稳定、可靠、快速、安装使用方便等优势,因此利用ES搜索引擎召回目标分词对应的候选实体信息,可以保证候选实体信息的召回效率较高。
需要说明的是,在实际应用中,为了丰富自然语言问题中目标分词对应的召回结果,可以同时利用参考字典树和ES搜索引擎,召回目标分词对应的候选实体信息。当然,在实际应用中,也可以采用其它方式召回目标分词对应的候选实体信息,本申请对此不做任何限定。
步骤203:对于各个所述候选实体信息中的模糊匹配实体信息,根据所述自然语言问题的语义特征和所述模糊匹配实体信息的语义特征,确定所述模糊匹配实体信息与所述自然语言问题是否相关;所述模糊匹配实体信息为与其对应的所述目标分词不满足完全匹配条件的候选实体信息。
通常情况下,通过步骤202召回的各个候选实体信息中会包括模糊匹配实体信息,所谓模糊匹配实体信息即是与其对应的目标分词不满足完全匹配条件的候选实体信息,即与对应的目标分词不完全一致的候选实体信息。对于候选实体信息中的模糊匹配实体信息,服务器将根据自然语言问题的语义特征和该模糊匹配信息的语义特征,检测该模糊匹配实体信息与该自然语言问题是否相关,即检测该模糊匹配实体信息与自然语言问题之间的相关度是否满足预设相关条件。对于与自然语言问题相关的模糊匹配信息,可以保留用作后续处理,对于与自然语言问题不相关的模糊匹配信息,可以剔除,以避免其影响后续处理流程的准确性和可靠性。
具体的,通过步骤202召回的候选实体信息可以分为两类,一类是完全匹配实体信息,另一类是模糊匹配实体信息。其中,完全匹配实体信息即是与其对应的目标分词满足完全匹配条件的候选实体信息,其可以与目标分词字面一致;模糊匹配实体信息即是与其对应的目标分词不满足完全匹配条件的候选实体信息,其可以与目标分词的字面相近、但不完全一致。本申请实施例重点关注模糊匹配实体信息,旨在对所召回的模糊匹配实体信息进行筛选,仅利用与自然语言问题语义相关的模糊匹配实体信息参与后续处理,保证所构建的SQL语句的准确性和可靠性。
在基于参考字典树召回候选实体信息的实现方式中,与其对应的目标分词之间的ED等于0的候选实体信息,即属于上述完全匹配实体信息,而与其对应的目标分词之间的ED大于0(但小于预设距离阈值)的候选实体信息,即属于上述模糊匹配实体信息。例如,针对自然语言问题“华安沪深300量化增强证券投资基金A的净值是多少?”,服务器可以召回ED等于0的完全匹配实体信息“华安沪深300量化增强证券投资基金A”和“净值”;又例如,针对自然语言问题“华安沪深300量化A的净值是多少?”,服务器可以召回ED大于0且小于2的模糊匹配实体信息“华安沪深300量化增强证券投资基金A”和“华安沪深300量化增强证券投资基金B”,以及ED等于0的完全匹配实体信息“净值”。
在基于ES搜索引擎召回候选实体信息的实现方式中,由于ES搜索引擎通常默认以一定的匹配误差来召回候选实体信息,因此可以将ES引擎召回的候选实体信息均视为模糊匹配实体信息。例如,针对自然语言问题“华安沪深300量化A的净值是多少?”,通过ES引擎可以召回模糊匹配信息“华安沪深300量化增强证券投资基金A”、“华安沪深300量化增强证券投资基金B”、“净值”、“华安沪深有限公司”。需要说明的是,考虑到ES搜索引擎自身处理过程中可能存在容错操作,因此,对于通过该方式召回的与目标分词字面一致的候选实体信息,通常会被视为模糊匹配实体信息。
在一种可能的实现方式中,服务器可以通过以下方式确定模糊匹配实体信息与自然语言问题是否相关:通过语义特征编码模型,根据自然语言问题和模糊匹配实体信息,确定该自然语言问题的语义特征和该模糊匹配实体信息的语义特征;进而,通过相关性分类模型,根据模糊匹配实体信息的语义特征和自然语言问题的语义特征,确定模糊匹配实体信息的相关性分类结果;该相关性分类结果指示该模糊匹配实体信息与该自然语言问题是否相关。
具体的,服务器可以选择任一种具备语义特征编码能力的神经网络模型,作为上述语义特征编码模型,进而利用该语义特征编码模型对自然语言问题和模糊匹配实体信息进行编码处理,得到该自然语言问题的语义特征和该模糊匹配实体信息的语义特征。示例性的,服务器可以选择BERT(Bidirectional Encoder Representations fromTransformer)模型作为语义特征编码模型,BERT模型的目标是利用大规模无标注语料训练、获得文本对应的包含丰富语义信息的Representation,即文本的语义表示;在实际应用中,可以通过遮盖(mask)句子中的部分文本,并使模型预测被遮盖的文本来训练BERT模型,也可以通过使模型预测两个句子是否为上下文来训练BERT模型。当然,在实际应用中,服务器也可以选择其它Transformer encoder-decoder模型中的encoder模块,作为语义特征编码模型,本申请对于该语义特征编码模型的模型结构不做任何限定。
当服务器选择BERT模型作为语义特征编码模型时,具体可以通过以下方式得到自然语言问题的语义特征和各个模糊匹配实体信息的编码特征:拼接自然语言问题对应的字符序列、以及各个模糊匹配实体信息各自对应的字符序列,得到目标输入数据,在该目标输入数据中,自然语言问题对应的字符序列前设置有分类标识符,每相邻的两个字符序列之间设置有分割标识符;然后,通过BERT模型处理该目标输入数据,得到该目标输入数据中各个符号位各自的编码特征;进而,根据分类标识符的编码特征,确定自然语言问题的语义特征;根据相邻的两个所述分割标识符之间的各个符号位各自的编码特征,确定位于这两个分割标识符之间的所述模糊匹配实体信息的语义特征。
参见图6,图6为本申请实施例提供的一种检测模糊匹配实体信息与自然语言问题之间是否相关的实现架构示意图。如图6所示,服务器可以将自然语言问题对应的字符序列与模糊匹配实体信息对应的字符序列拼接起来;例如,假设自然语言问题为“华安沪深300量化A的净值是多少”,针对该自然语言问题召回的模糊匹配实体信息包括“华安沪深300量化增强证券投资基金A”和“华安沪深300量化增强证券投资基金B”,服务器拼接上述自然语言问题对应的字符序列和模糊匹配实体信息对应的字符序列时,可以将自然语言问题“华安沪深300量化A的净值是多少”对应的字符序列作为第一个输入片段,并在该自然语言问题对应的字符序列前设置分类标识符[CLS],将模糊匹配实体信息“华安沪深300量化增强证券投资基金A”对应的字符序列作为第二个输入片段,拼接在第一个输入片段之后,并在这两个输入片段之间设置分割标识符[SEP],将模糊匹配实体信息“华安沪深300量化增强证券投资基金B”对应的字符序列作为第三个输入片段,拼接在第二个输入片段之后,并在这两个输入片段之间也设置分割标识符[SEP]。如此,拼接上述自然语言问题对应的字符序列和模糊匹配实体信息对应的字符序列,得到目标输入数据。
在实际应用中,除了可以将上述目标输入数据输入语义特征编码模型进行处理外,还可以将目标输入数据中各个符号位各自的位置特征和所属片段标识一同输入语义特征编码模型,以便该语义特征编码模型在处理过程中参考更多信息,提高所确定的自然语言问题和模糊匹配实体信息的语义特征的准确性。应理解,符号位的位置特征为该符号位在目标输入数据中所处位置的标识,例如,对于目标输入数据中的分类标识符[CLS],由于其位于目标输入数据中的第一位,因此其位置特征为1,对于自然语言问题对应的字符序列中的字符“华”,由于其位于目标输入数据中的第二位,因此其位置特征为2,以此类推。符号位的所属片段标识用于表征该符号位属于目标输入数据中的哪个片段,例如,对于目标输入数据中的分类标识符[CLS],其被视为属于自然语言问题对应的字符序列的输入片段,因此其所属片段标识位为0,对于自然语言问题对应的字符序列与第一个模糊匹配实体信息对应的字符序列之间的分割标识符[SEP],其被视为属于第一个模糊匹配实体信息对应的字符序列,因此其所属片段标识位为1,以此类推。
如图6所示,将上述目标输入数据、以及该目标输入数据中各个符号位各自的位置特征和所属片段标识一同输入BERT模型,该BERT模型通过对输入的数据进行分析处理,将得到目标输入数据中各个符号位各自的编码特征。进而,服务器可以直接将设置在自然语言问题对应的字符序列前的分类标识符[CLS]的编码特征,作为该自然语言问题的语义特征。针对每个模糊匹配实体信息,服务器可以计算该模糊匹配实体信息对应的字符序列中各个字符各自的编码特征的特征均值,即计算两个分割标识符[SEP]之间的各个符号位各自的编码特征的特征均值,作为位于这两个分割标识符[SEP]之间的模糊匹配实体信息的语义特征。
进而,服务器可以逐一检测每个模糊匹配实体信息与自然语言问题之间是否相关。具体的,针对每个模糊匹配实体信息,服务器可以将该模糊匹配实体信息的语义特征和自然语言问题的语义特征一同输入相关性分类模型,该相关性分类模型通过对输入的两个语义特征进行分析处理,将输出对应的相关性分类结果,即输入0或1;相关性分类结果等于0表示该模糊匹配实体信息与自然语言问题不相关,相关性分类结果等于1表示该模糊匹配实体信息与自然语言问题相关。
需要说明的是,上述相关性分类模型是服务器预先训练的。示例性的,服务器可以获取若干标注训练样本,其中包括训练自然语言问题、训练模糊匹配实体信息、以及对应的标注相关性分类结果,该标注相关性分类结果用于表征该训练模糊匹配实体信息与该训练自然语言问题是否相关;进而,基于有监督训练机制,利用上述标注训练样本训练初始的相关性分类模型,直至该相关性分类模型达到训练结束条件为止,例如,直至对于该相关性分类模型的训练次数达到预设次数阈值,或者测试出该相关性分类模型的性能满足预设性能要求。上述相关性分类模型可以为任意二分类模型结构,本申请实施例在此不对该相关性分类模型的结构做任何限定。
此外,在实际应用中,服务器也可以采用其它方式,根据自然语言问题的语义特征和模糊匹配实体信息的语义特征,检测模糊匹配实体信息与自然语言问题是否相关;例如,服务器可以计算模糊匹配实体信息的语义特征与自然语言问题的语义特征之间的相似度,在该相似度大于预设相似度阈值时,认为该模糊匹配实体信息与该自然语言问题相关,在该相似度不大于预设相似度阈值时,认为该模糊匹配实体信息与该自然语言问题无关。本申请在此不对检测模糊匹配实体信息与自然语言问题是否相关的方式做任何限定。
可选的,在一些情况下,服务器通过步骤202召回的模糊匹配实体信息的数量可能较多,为了减少执行步骤203检测模糊匹配实体信息与自然语言问题之间是否相关时耗费的计算资源,提高计算效率,本申请实施例可以在执行步骤203之前,对通过步骤202召回的模糊匹配实体信息进行筛选。
具体的,当目标分词对应于多个模糊匹配实体信息时,服务器可以在述自然语言问题中确定这多个模糊匹配实体信息各自对应的匹配区域;根据这多个模糊匹配实体信息各自对应的匹配区域之间的分布关系,剔除多个模糊匹配实体信息中的噪声模糊匹配实体信息;此处的噪声模糊匹配实体信息对应的匹配区域被多个模糊匹配实体信息中至少一个模糊匹配实体信息对应的匹配区域覆盖。
示例性的,对于对应于同一目标分词的多个模糊匹配实体信息,服务器可以根据这多个模糊匹配实体信息各自包括的字符,在自然语言问题中确定这多个模糊匹配实体信息各自对应的匹配区域;此处模糊匹配实体信息对应的匹配区域,是自然语言问题中与该模糊匹配实体信息存在最多匹配字符的字符片段所处的区域。例如,假设自然语言问题为“华安沪深量化增强证券投资基金A的净值是多少”,针对其中的目标分词“华安沪深量化增强证券投资基金A”,召回到模糊匹配实体信息“华安沪深量化增强证券投资基金”和“投资基金”,其中,模糊匹配实体信息“华安沪深量化增强证券投资基金”对应的匹配区域为自然语言问题中的1至14位,模糊匹配实体信息“投资基金”对应的匹配区域为自然语言问题中的11至14位。
进而,服务器可以根据多个模糊匹配实体信息各自对应的匹配区域之间的分布关系,检测是否存在某模糊匹配实体信息的匹配区域被其它模糊匹配实体信息的匹配区域所覆盖的情况,若存在,则将该被覆盖的匹配区域对应的模糊匹配实体信息视为噪声模糊匹配实体信息,进而将其剔除,不参与后续的处理。例如,对于模糊匹配实体信息“华安沪深量化增强证券投资基金”和“投资基金”,其中,“华安沪深量化增强证券投资基金”对应的匹配区域为自然语言问题中的1至14位,“投资基金”对应的匹配区域为自然语言问题中的11至14位,可见,华安沪深量化增强证券投资基金”对应的匹配区域覆盖了“投资基金”对应的匹配区域,因此,可以确定模糊匹配实体信息“投资基金”为噪声模糊匹配实体信息,可以将其剔除。
如此,通过上述方式对所召回的模糊匹配实体信息进行筛选,剔除其中的噪声模糊匹配实体信息,可以有效地减少后续相关性检测环节所需耗费的计算资源,提高相关性检测环节的执行效率,同时也不会影响整体处理流程的准确性和可靠性。
步骤204:根据与所述自然语言问题相关的所述模糊匹配实体信息,确定所述自然语言问题对应的目标结构化语句。
服务器从召回的模糊匹配实体信息中筛选出与自然语言问题相关的模糊匹配实体信息后,即可根据与自然语言问题相关的模糊匹配实体信息,确定该自然语言问题对应的目标SQL语句。
相关技术中,通常采用序列到序列(Sequence to Sequence,seq2seq)框架,根据所召回的实体信息确定自然语言问题对应的SQL语句。本申请实施例考虑到seq2seq框架复杂度较高,基于其确定SQL语句往往需要耗费较长的时间,因此提出了采用词槽填充的方案,根据所召回的实体信息构建自然语言问题对应的SQL语句,从而降低构建SQL语句的复杂度,减少处理耗时,提高SQL语句的构建效率。
在一种可能的实现方式中,服务器可以确定各个目标分词各自对应的、与自然语言问题相关的模糊匹配实体信息,作为各个目标分词各自对应的目标匹配实体信息;进而,根据各个目标分词各自对应的目标匹配实体信息在表格数据中的属性信息,将各个目标匹配实体信息填充至结构化语句模板的词槽中,得到目标SQL语句。
示例性的,假设自然语言问题为“华安沪深300量化A的净值是多少?”,采用ES搜索引擎召回各个目标分词各自对应的模糊匹配实体信息(此处采用ES搜索引擎召回的实体信息均被视为模糊匹配实体信息);目标分词“华安沪深300量化A”对应的、与该自然语言问题相关的模糊匹配实体信息为“华安沪深300量化增强证券投资基金A”,即目标分词“华安沪深300量化A”对应的目标模糊匹配实体信息为“华安沪深300量化增强证券投资基金A”,目标分词“净值”对应的目标模糊匹配实体信息为“净值”。
根据自然语言问题,可以确定“净值”为所要搜索的目标,因此可以将目标模糊匹配实体信息“净值”填充在SQL语句模板中选择(Select)词槽中。此外,根据目标模糊匹配实体信息“净值”和“华安沪深300量化增强证券投资基金A”各自的属性信息,可以确定这些目标模糊匹配实体信息均属于表格数据“理财表”,因此可以将“理财表”填充在SQL语句模板中来源(from)词槽中。根据目标模糊匹配实体信息“华安沪深300量化增强证券投资基金A”的属性信息,可以确定该目标模糊匹配实体信息属于表格数据“理财表”中“基金名称”这一列,因此可以将“基金名称”填充在在SQL语句模板中位置(where)词槽中。基于此,可以得到自然语言问题“华安沪深300量化A的净值是多少?”对应的目标SQL语句为,Select净值from理财表where基金名称=华安沪深300量化增强证券投资基金A。
在另一种可能的实现方式中,服务器可以针对每个目标分词,确定该目标分词对应的候选实体信息中是否包括满足完全匹配条件的完全匹配实体信息;若是,则确定该完全匹配实体信息作为该目标分词对应的目标匹配实体信息;若否,则确定该目标分词对应的、与自然语言问题相关的模糊匹配实体信息,作为该目标分词对应的目标匹配实体信息;进而,根据各个目标分词各自对应的目标匹配实体信息在表格数据中的属性信息,将各个目标匹配实体信息填充至结构化语句模板的词槽中,得到目标SQL语句。
示例性的,假设自然语言问题为“华安沪深300量化A的净值是多少?”,基于参考字典树召回各个目标分词各自对应的候选实体信息。针对目标分词“华安沪深300量化A”召回的候选实体信息包括“华安沪深300量化增强证券投资基金A”、“华安沪深300量化增强证券投资基金B”和“华安沪深有限公司”,这三个候选实体信息均为模糊匹配实体信息,经步骤203的相关性检测,确定与自然语言问题相关的模糊匹配实体信息为“华安沪深300量化增强证券投资基金A”,因此确定目标分词“华安沪深300量化A”对应的目标模糊匹配实体信息为“华安沪深300量化增强证券投资基金A”。针对目标分词“净值”召回的候选实体信息包括“净值”,其与目标分词完全匹配,即属于完全匹配实体信息,因此确定目标分词“净值”对应的目标模糊匹配实体信息为“净值”。
进而,可以根据各个目标分词各自对应的目标模糊匹配实体信息的属性信息,将各个目标分词各自对应的目标模糊匹配实体信息相应地填充至SQL语句模板中的词槽,具体将目标模糊匹配实体信息填充至SQL语句模板中的词槽现方式与上一种实现方式中的相关方式相同,此处不再赘述,详细可参见上文的相关介绍内容。
需要说明的是,在一些情况下,若用户输入的自然语言问题较为标准,针对各个目标分词均可以召回对应的完全匹配实体信息,此时,可以直接根据各个目标分词各自对应的完全匹配实体信息及其属性信息,构建自然语言问题对应的SQL语句。例如,假设自然语言问题为“华安沪深300量化增强证券投资基金A的净值是多少?”,针对其中的目标分词“华安沪深300量化增强证券投资基金A”和“净值”,均可以召回对应的完全匹配实体信息,此时,可以直接根据“华安沪深300量化增强证券投资基金A”和“净值”的属性信息,构建自然语言问题对应的SQL语句:Select净值from理财表where基金名称=华安沪深300量化增强证券投资基金A。
应理解,在实际应用中,若针对自然语言问题中各个目标分词均能召回对应的完全匹配实体信息,则可以跳过上述步骤202和步骤203,直接根据自然语言问题中各个目标分词各自对应的完全匹配实体信息,构建自然语言问题对应的目标SQL语句。当然,为了保证后续确定的回答内容可以覆盖更多与自然语言问题相关的信息,也可以正常执行步骤202和步骤203,根据目标分词对应的模糊匹配实体信息,构建自然语言问题对应的目标SQL语句,并在后续相应地基于根据模糊匹配实体信息构建的目标SQL语句,给出对应的回答内容。
应理解,本申请实施例对于针对一个自然语言问题构建的目标SQL语句的数量不做任何限定,即针对一个自然语言问题,可以构建对应的一个目标SQL语句,也可以构建对应的多个目标SQL语句。
步骤205:根据所述目标结构化语句和所述表格数据,确定所述自然语言问题对应的回答内容。
服务器构建出自然语言问题对应的目标SQL语句后,即可根据该目标SQL语句,在表格数据中搜索该自然语言问题对应的回答内容。例如,对于目标SQL语句“Select净值from理财表where基金名称=华安沪深300量化增强证券投资基金A”,服务器可以在理财表这一表格数据中,查找基金名称为华安沪深300量化增强证券投资基金A对应的净值数据,进而将查找到的净值数据作为该自然语言问题对应的回答内容。
应理解,若服务器在步骤201中获取的自然语言问题为终端设备传输过来的、其使用对象输入的自然语言问题,那么服务器确定出该自然语言问题对应的回答内容后,可以相应地将该回答内容反馈给该终端设备,以便该终端设备向其使用对象显示该自然语言问题对应的回答内容,或者语音播报该自然语言问题对应的回答内容。
图7为本申请实施例提供的一种针对自然语言问题给出回答内容的应用界面示意图。如图7所示,使用对象可以在终端设备显示的与智能分析助手的对话界面中输入自然语言问题“2020年A小有多少教师”,然后,该终端设备可以将该自然语言问题发送给智能分析助手的后台服务器,后台服务器接收到该自然语言问题后,可以采用上文介绍的智能问答方法,确定该自然语言问题对应的目标SQL语句“Select教师数量from教师统计表where时间=2020年and单位=A小学”,进而在教师统计表中查找对应的回答内容,并将该回答内容反馈给该终端设备,最终,终端设备可以在该对话界面中显示该回答内容“150”。此外,后台服务器还可以针对自然语言问题确定其它类型的回答内容,如统计分布图等,本申请在此不对回答内容的形式做任何限定。
本申请实施例提供了的智能问答方法,创新性地在构建自然语言问题对应的SQL语句的过程中,增加了对于所召回的模糊匹配实体信息的检测环节。此处的模糊匹配实体信息是基于表格数据召回的、与自然语言问题中的目标分词对应的候选实体信息,模糊匹配实体信息与其对应的目标分词之间不满足完全匹配条件;通过该检测环节,可以根据自然语言问题的语义特征和模糊匹配实体信息的语义特征,检测该模糊匹配实体信息与自然语言问题之间是否相关;进而,利用与自然语言问题相关的模糊匹配实体信息,构建该自然语言问题对应的SQL语句。如此,保证构建SQL语句所依据的实体信息的准确性和可靠性,相应地,可以保证所构建的SQL语句的准确性和可靠性;基于该SQL语句和表格数据确定自然语言问题对应的回答内容,有助于提高所确定的回答内容的准确性,提高智能问答的效果。
为了便于进一步理解本申请实施例提供的智能问答方法,下面结合图8所示的该智能问答方法的整体实现架构图,对该智能问答方法进行整体示例性介绍。
如图8所示,对于表格问答场景依据的表格数据,可以先从该表格数据中提取表头属性实体信息和表值实体信息,作为原始实体信息,并通过网络挖掘与原始实体信息语义相近的参考实体信息。然后利用上述原始实体信息和参考实体信息,构建表格数据对应的表值词典。进而,根据该表值词典中包括的各个实体信息、以及各个实体信息之间的前缀共用关系,构建参考Trie树,表值词典中的实体信息与该参考Trie树中的节点序列对应,具有公共前缀的多个实体信息各自对应的节点序列存在共用的、对应于该公共前缀的节点。此外,还可以将表格数据录入ES搜索引擎,即使得该表格数据作为ES搜索引擎的搜索源。
服务器接收到终端设备传输过来的、其使用对象输入的自然语言问题后,可以基于参考Trie树,使用完全匹配和模糊匹配两种机制,召回该自然语言问题中各个目标分词各自对应的候选实体信息;所谓完全匹配机制即是召回与目标分词之间的ED等于0的完全匹配实体信息,所谓模糊匹配机制即是召回与目标分词之间的ED大于0、但小于预设距离阈值的模糊匹配实体信息。此外,服务器还会使用ES搜索引擎,召回自然语言问题中各个目标分词各自对应的模糊匹配实体信息。
对于所召回的候选实体信息中的模糊匹配实体信息,服务器可以先利用BERT模型,确定自然语言问题的语义特征和模糊匹配实体信息的语义特征,进而利用相关性分类模型,根据自然语言问题的语义特征和模糊匹配实体信息的语义特征,检测各个模糊匹配实体信息与该自然语言问题是否相关,对于与该自然语言问题相关的模糊匹配实体信息,服务器可以保留其参与后续处理,对于与该自然语言问题不相关的模糊匹配实体信息,服务器可以将其剔除。
对于所召回的候选实体信息中的完全匹配实体信息,服务器可以直接根据该完全匹配实体信息的属性信息,将其填充至SQL语句模板中对应的词槽。对于经相关性检测处理确定出的与自然语言问题相关的模糊匹配实体信息,服务器可以根据该模糊匹配实体信息的属性信息,将其填充至SQL语句模板中对应的词槽。待SQL语句模板的填充程度满足可搜索条件时,即可得到该自然语言问题对应的目标SQL语句。进而,可以在表格数据中,搜索该自然语言问题对应的回答内容。
针对上文描述的智能问答方法,本申请还提供了对应的智能问答装置,以使上述智能问答方法在实际中得以应用及实现。
参见图9,图9是与上文图2所示的智能问答方法对应的一种智能问答装置900的结构示意图。如图9所示,该智能问答装置900包括:
问题处理模块901,用于获取自然语言问题,对所述自然语言问题进行分词处理,得到所述自然语言问题包括的各个目标分词;
实体召回模块902,用于基于表格数据,召回所述各个目标分词各自对应的候选实体信息;所述候选实体信息与其对应的所述目标分词之间满足预设匹配条件;
相关性检测模块903,用于对于各个所述候选实体信息中的模糊匹配实体信息,根据所述自然语言问题的语义特征和所述模糊匹配实体信息的语义特征,确定所述模糊匹配实体信息与所述自然语言问题是否相关;所述模糊匹配实体信息为与其对应的所述目标分词不满足完全匹配条件的候选实体信息;
结构语句构建模块904,用于根据与所述自然语言问题相关的所述模糊匹配实体信息,确定所述自然语言问题对应的目标结构化语句;
回答确定模块905,用于根据所述目标结构化语句和所述表格数据,确定所述自然语言问题对应的回答内容。
可选的,所述相关性检测模块903包括:
语义编码子模块,用于通过语义特征编码模型,根据所述自然语言问题和所述模糊匹配实体信息,确定所述自然语言问题的语义特征和所述模糊匹配实体信息的语义特征;
相关性检测子模块,用于通过相关性分类模型,根据所述模糊匹配实体信息的语义特征和所述自然语言问题的语义特征,确定所述模糊匹配实体信息的相关性分类结果;所述相关性分类结果指示所述模糊匹配实体信息与所述自然语言问题是否相关。
可选的,所述语义编码子模块具体用于:
拼接所述自然语言问题对应的字符序列、以及各个所述模糊匹配实体信息各自对应的字符序列,得到目标输入数据;在所述目标输入数据中,所述自然语言问题对应的字符序列前设置有分类标识符,每相邻的两个字符序列之间设置有分割标识符;
通过所述语义特征编码模型处理所述目标输入数据,得到所述目标输入数据中各个符号位各自的编码特征;
根据所述分类标识符的编码特征,确定所述自然语言问题的语义特征;根据相邻的两个所述分割标识符之间的各个符号位各自的编码特征,确定位于所述两个分割标识符之间的所述模糊匹配实体信息的语义特征。
可选的,所述装置还包括:
实体信息筛选模块,用于当所述目标分词对应于多个所述模糊匹配实体信息时,在所述自然语言问题中确定所述多个模糊匹配实体信息各自对应的匹配区域;根据所述多个模糊匹配实体信息各自对应的匹配区域之间的分布关系,剔除所述多个模糊匹配实体信息中的噪声模糊匹配实体信息;所述噪声模糊匹配实体信息对应的匹配区域被所述多个模糊匹配实体信息中至少一个模糊匹配实体信息对应的匹配区域覆盖。
可选的,所述实体召回模块902具体用于:
基于所述表格数据对应的参考字典树,召回所述各个目标分词各自对应的候选实体信息;所述参考字典树是根据所述表格数据包括的各个实体信息构建的,每个所述实体信息对应于所述参考字典树中的一个节点序列,具有公共前缀的多个所述实体信息各自对应的节点序列存在共用的、对应于所述公共前缀的节点。
可选的,所述实体召回模块902具体用于:
针对每个所述目标分词,在所述参考字典树中查找与所述目标分词之间的编辑距离小于预设距离阈值的实体信息,作为所述目标分词对应的候选实体信息;其中,与所述目标分词之间的编辑距离大于零的所述候选实体信息为所述模糊匹配实体信息,与所述目标分词之间的编辑距离等于零的所述候选实体信息为满足所述完全匹配条件的完全匹配实体信息。
可选的,所述装置还包括字典树构建模块,所述字典树构建模块用于:
从所述表格数据中提取表头属性实体信息以及表值实体信息,作为原始实体信息,挖掘与所述原始实体信息语义相近的参考实体信息;
利用各所述原始实体信息和各所述参考实体信息,构建所述表格数据对应的表值词典;
根据所述表值词典中包括的各个实体信息、以及所述各个实体信息之间共用的前缀,构建所述参考字典树。
可选的,所述实体召回模块902具体用于:
基于录入有所述表格数据的搜索引擎,根据所述各个目标分词,召回所述各个目标分词各自对应的模糊匹配实体信息。
可选的,所述结构语句构建模块904具体用于:
确定所述各个目标分词各自对应的、与所述自然语言问题相关的模糊匹配实体信息,作为所述各个目标分词各自对应的目标匹配实体信息;
根据所述各个目标分词各自对应的目标匹配实体信息在所述表格数据中的属性信息,将各个所述目标匹配实体信息填充至结构化语句模板的词槽中,得到所述目标结构化语句。
可选的,所述结构语句构建模块904具体用于:
针对每个所述目标分词,确定所述目标分词对应的候选实体信息中是否包括满足所述完全匹配条件的完全匹配实体信息;若是,则确定所述完全匹配实体信息作为所述目标分词对应的目标匹配实体信息;若否,则确定所述目标分词对应的、与所述自然语言问题相关的模糊匹配实体信息,作为所述目标分词对应的目标匹配实体信息;
根据所述各个目标分词各自对应的目标匹配实体信息在所述表格数据中的属性信息,将各个所述目标匹配实体信息填充至结构化语句模板的词槽中,得到所述目标结构化语句。
本申请实施例提供了的智能问答装置,创新性地在构建自然语言问题对应的SQL语句的过程中,增加了对于所召回的模糊匹配实体信息的检测环节。此处的模糊匹配实体信息是基于表格数据召回的、与自然语言问题中的目标分词对应的候选实体信息,模糊匹配实体信息与其对应的目标分词之间不满足完全匹配条件;通过该检测环节,可以根据自然语言问题的语义特征和模糊匹配实体信息的语义特征,检测该模糊匹配实体信息与自然语言问题之间是否相关;进而,利用与自然语言问题相关的模糊匹配实体信息,构建该自然语言问题对应的SQL语句。如此,保证构建SQL语句所依据的实体信息的准确性和可靠性,相应地,可以保证所构建的SQL语句的准确性和可靠性;基于该SQL语句和表格数据确定自然语言问题对应的回答内容,有助于提高所确定的回答内容的准确性,提高智能问答的效果。
本申请实施例还提供了一种用于实现智能问答的计算机设备,该计算机设备具体可以是终端设备或者服务器,下面将从硬件实体化的角度对本申请实施例提供的终端设备和服务器进行介绍。
参见图10,图10是本申请实施例提供的终端设备的结构示意图。如图10所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端可以为包括手机、平板电脑、个人数字助理(Personal DigitalAssistant,PDA)、销售终端(Point of Sales,POS)、车载电脑等任意终端设备,以终端为计算机为例:
图10示出的是与本申请实施例提供的终端相关的计算机的部分结构的框图。参考图10,计算机包括:射频(Radio Frequency,RF)电路1010、存储器1020、输入单元1030(其中包括触控面板1031和其他输入设备1032)、显示单元1040(其中包括显示面板1041)、传感器1050、音频电路1060(其可以连接扬声器1061和传声器1062)、无线保真(wirelessfidelity,WiFi)模块1070、处理器1080、以及电源1090等部件。本领域技术人员可以理解,图10中示出的计算机结构并不构成对计算机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储器1020可用于存储软件程序以及模块,处理器1080通过运行存储在存储器1020的软件程序以及模块,从而执行计算机的各种功能应用以及数据处理。存储器1020可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1020可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器1080是计算机的控制中心,利用各种接口和线路连接整个计算机的各个部分,通过运行或执行存储在存储器1020内的软件程序和/或模块,以及调用存储在存储器1020内的数据,执行计算机的各种功能和处理数据。可选的,处理器1080可包括一个或多个处理单元;优选的,处理器1080可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1080中。
在本申请实施例中,该终端所包括的处理器1080还用于执行本申请实施例提供的智能问答方法的任意一种实现方式的步骤。
参见图11,图11为本申请实施例提供的一种服务器1100的结构示意图。该服务器1100可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)1122(例如,一个或一个以上处理器)和存储器1132,一个或一个以上存储应用程序1142或数据1144的存储介质1130(例如一个或一个以上海量存储设备)。其中,存储器1132和存储介质1130可以是短暂存储或持久存储。存储在存储介质1130的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1122可以设置为与存储介质1130通信,在服务器1100上执行存储介质1130中的一系列指令操作。
服务器1100还可以包括一个或一个以上电源1126,一个或一个以上有线或无线网络接口1150,一个或一个以上输入输出接口1158,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图11所示的服务器结构。
其中,CPU 1122还可以用于执行本申请实施例提供的智能问答方法的任意一种实现方式的步骤。
本申请实施例还提供一种计算机可读存储介质,用于存储计算机程序,该计算机程序用于执行前述各个实施例所述的一种智能问答方法中的任意一种实施方式。
本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前述各个实施例所述的一种智能问答方法中的任意一种实施方式。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储计算机程序的介质。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (15)
1.一种智能问答方法,其特征在于,所述方法包括:
获取自然语言问题,对所述自然语言问题进行分词处理,得到所述自然语言问题包括的各个目标分词;
基于表格数据,召回所述各个目标分词各自对应的候选实体信息;所述候选实体信息与其对应的所述目标分词之间满足预设匹配条件;
对于各个所述候选实体信息中的模糊匹配实体信息,根据所述自然语言问题的语义特征和所述模糊匹配实体信息的语义特征,确定所述模糊匹配实体信息与所述自然语言问题是否相关;所述模糊匹配实体信息为与其对应的所述目标分词不满足完全匹配条件的候选实体信息;
根据与所述自然语言问题相关的所述模糊匹配实体信息,确定所述自然语言问题对应的目标结构化语句;
根据所述目标结构化语句和所述表格数据,确定所述自然语言问题对应的回答内容。
2.根据权利要求1所述的方法,其特征在于,所述根据所述自然语言问题的语义特征和所述模糊匹配实体信息的语义特征,确定所述模糊匹配实体信息与所述自然语言问题是否相关,包括:
通过语义特征编码模型,根据所述自然语言问题和所述模糊匹配实体信息,确定所述自然语言问题的语义特征和所述模糊匹配实体信息的语义特征;
通过相关性分类模型,根据所述模糊匹配实体信息的语义特征和所述自然语言问题的语义特征,确定所述模糊匹配实体信息的相关性分类结果;所述相关性分类结果指示所述模糊匹配实体信息与所述自然语言问题是否相关。
3.根据权利要求2所述的方法,其特征在于,通过语义特征编码模型,根据所述自然语言问题和所述模糊匹配实体信息,确定所述自然语言问题的语义特征和所述模糊匹配实体信息的语义特征,包括:
拼接所述自然语言问题对应的字符序列、以及各个所述模糊匹配实体信息各自对应的字符序列,得到目标输入数据;在所述目标输入数据中,所述自然语言问题对应的字符序列前设置有分类标识符,每相邻的两个字符序列之间设置有分割标识符;
通过所述语义特征编码模型处理所述目标输入数据,得到所述目标输入数据中各个符号位各自的编码特征;
根据所述分类标识符的编码特征,确定所述自然语言问题的语义特征;根据相邻的两个所述分割标识符之间的各个符号位各自的编码特征,确定位于所述两个分割标识符之间的所述模糊匹配实体信息的语义特征。
4.根据权利要求1所述的方法,其特征在于,在所述根据所述自然语言问题的语义特征和所述模糊匹配实体信息的语义特征,确定所述模糊匹配实体信息与所述自然语言问题是否相关之前,所述方法还包括:
当所述目标分词对应于多个所述模糊匹配实体信息时,在所述自然语言问题中确定所述多个模糊匹配实体信息各自对应的匹配区域;
根据所述多个模糊匹配实体信息各自对应的匹配区域之间的分布关系,剔除所述多个模糊匹配实体信息中的噪声模糊匹配实体信息;所述噪声模糊匹配实体信息对应的匹配区域被所述多个模糊匹配实体信息中至少一个模糊匹配实体信息对应的匹配区域覆盖。
5.根据权利要求1所述的方法,其特征在于,所述基于表格数据,召回所述各个目标分词各自对应的候选实体信息,包括:
基于所述表格数据对应的参考字典树,召回所述各个目标分词各自对应的候选实体信息;所述参考字典树是根据所述表格数据包括的各个实体信息构建的,每个所述实体信息对应于所述参考字典树中的一个节点序列,具有公共前缀的多个所述实体信息各自对应的节点序列存在共用的、对应于所述公共前缀的节点。
6.根据权利要求5所述的方法,其特征在于,所述基于所述表格数据对应的参考字典树,召回所述各个目标分词各自对应的候选实体信息,包括:
针对每个所述目标分词,在所述参考字典树中查找与所述目标分词之间的编辑距离小于预设距离阈值的实体信息,作为所述目标分词对应的候选实体信息;其中,与所述目标分词之间的编辑距离大于零的所述候选实体信息为所述模糊匹配实体信息,与所述目标分词之间的编辑距离等于零的所述候选实体信息为满足所述完全匹配条件的完全匹配实体信息。
7.根据权利要求5所述的方法,其特征在于,所述参考字典树是通过以下方式构建的:
从所述表格数据中提取表头属性实体信息以及表值实体信息,作为原始实体信息,挖掘与所述原始实体信息语义相近的参考实体信息;
利用各所述原始实体信息和各所述参考实体信息,构建所述表格数据对应的表值词典;
根据所述表值词典中包括的各个实体信息、以及所述各个实体信息之间共用的前缀,构建所述参考字典树。
8.根据权利要求1所述的方法,其特征在于,所述基于表格数据,召回所述各个目标分词各自对应的候选实体信息,包括:
基于录入有所述表格数据的搜索引擎,根据所述各个目标分词,召回所述各个目标分词各自对应的模糊匹配实体信息。
9.根据权利要求1所述的方法,其特征在于,所述根据与所述自然语言问题相关的所述模糊匹配实体信息,确定所述自然语言问题对应的目标结构化语句,包括:
确定所述各个目标分词各自对应的、与所述自然语言问题相关的模糊匹配实体信息,作为所述各个目标分词各自对应的目标匹配实体信息;
根据所述各个目标分词各自对应的目标匹配实体信息在所述表格数据中的属性信息,将各个所述目标匹配实体信息填充至结构化语句模板的词槽中,得到所述目标结构化语句。
10.根据权利要求1所述的方法,其特征在于,所述所述根据与所述自然语言问题相关的所述模糊匹配实体信息,确定所述自然语言问题对应的目标结构化语句,包括:
针对每个所述目标分词,确定所述目标分词对应的候选实体信息中是否包括满足所述完全匹配条件的完全匹配实体信息;若是,则确定所述完全匹配实体信息作为所述目标分词对应的目标匹配实体信息;若否,则确定所述目标分词对应的、与所述自然语言问题相关的模糊匹配实体信息,作为所述目标分词对应的目标匹配实体信息;
根据所述各个目标分词各自对应的目标匹配实体信息在所述表格数据中的属性信息,将各个所述目标匹配实体信息填充至结构化语句模板的词槽中,得到所述目标结构化语句。
11.一种智能问答装置,其特征在于,所述装置包括:
问题处理模块,用于获取自然语言问题,对所述自然语言问题进行分词处理,得到所述自然语言问题包括的各个目标分词;
实体召回模块,用于基于表格数据,召回所述各个目标分词各自对应的候选实体信息;所述候选实体信息与其对应的所述目标分词之间满足预设匹配条件;
相关性检测模块,用于对于各个所述候选实体信息中的模糊匹配实体信息,根据所述自然语言问题的语义特征和所述模糊匹配实体信息的语义特征,确定所述模糊匹配实体信息与所述自然语言问题是否相关;所述模糊匹配实体信息为与其对应的所述目标分词不满足完全匹配条件的候选实体信息;
结构语句构建模块,用于根据与所述自然语言问题相关的所述模糊匹配实体信息,确定所述自然语言问题对应的目标结构化语句;
回答确定模块,用于根据所述目标结构化语句和所述表格数据,确定所述自然语言问题对应的回答内容。
12.根据权利要求11所述的装置,其特征在于,所述相关性检测模块包括:
语义编码子模块,用于通过语义特征编码模型,根据所述自然语言问题和所述模糊匹配实体信息,确定所述自然语言问题的语义特征和所述模糊匹配实体信息的语义特征;
相关性检测子模块,用于通过相关性分类模型,根据所述模糊匹配实体信息的语义特征和所述自然语言问题的语义特征,确定所述模糊匹配实体信息的相关性分类结果;所述相关性分类结果指示所述模糊匹配实体信息与所述自然语言问题是否相关。
13.一种计算机设备,其特征在于,所述设备包括处理器及存储器;
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序执行权利要求1至10中任一项所述的智能问答方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行权利要求1至10中任一项所述的智能问答方法。
15.一种计算机程序产品,包括计算机程序或者指令,其特征在于,所述计算机程序或者所述指令被处理器执行时,实现权利要求1至10中任一项所述的智能问答方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211221196.8A CN117009372A (zh) | 2022-10-08 | 2022-10-08 | 一种智能问答方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211221196.8A CN117009372A (zh) | 2022-10-08 | 2022-10-08 | 一种智能问答方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117009372A true CN117009372A (zh) | 2023-11-07 |
Family
ID=88567900
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211221196.8A Pending CN117009372A (zh) | 2022-10-08 | 2022-10-08 | 一种智能问答方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117009372A (zh) |
-
2022
- 2022-10-08 CN CN202211221196.8A patent/CN117009372A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110765257B (zh) | 一种知识图谱驱动型的法律智能咨询系统 | |
CN108804521B (zh) | 一种基于知识图谱的问答方法及农业百科问答系统 | |
US20220004714A1 (en) | Event extraction method and apparatus, and storage medium | |
US10210245B2 (en) | Natural language question answering method and apparatus | |
CN111475623A (zh) | 基于知识图谱的案件信息语义检索方法及装置 | |
CN108664599B (zh) | 智能问答方法、装置、智能问答服务器及存储介质 | |
CN111292751B (zh) | 语义解析方法及装置、语音交互方法及装置、电子设备 | |
CN112270196A (zh) | 实体关系的识别方法、装置及电子设备 | |
CN110825867B (zh) | 相似文本推荐方法、装置、电子设备和存储介质 | |
CN110175585B (zh) | 一种简答题自动批改系统及方法 | |
CN111597356B (zh) | 智能化教育知识图谱构建系统与方法 | |
CN107301164B (zh) | 数学公式的语义解析方法及装置 | |
CN111339269A (zh) | 模板自动生成的知识图谱问答训练及应用服务系统 | |
CN107301163A (zh) | 包含公式的文本语义解析方法及装置 | |
CN116561538A (zh) | 问答评分方法、问答评分装置、电子设备及存储介质 | |
CN113312922B (zh) | 一种改进的篇章级三元组信息抽取方法 | |
CN113742493A (zh) | 一种病理知识图谱的构建方法及装置 | |
CN111626042A (zh) | 指代消解方法及装置 | |
CN111831624A (zh) | 数据表创建方法、装置、计算机设备及存储介质 | |
CN114840685A (zh) | 一种应急预案知识图谱构建方法 | |
CN113157887A (zh) | 知识问答意图识别方法、装置、及计算机设备 | |
CN112667819A (zh) | 一种实体描述推理知识库构建与推理证据量化信息获取方法和装置 | |
CN116049376B (zh) | 一种信创知识检索回复的方法、装置和系统 | |
CN111492364A (zh) | 数据标注方法、装置及存储介质 | |
CN114842982B (zh) | 一种面向医疗信息系统的知识表达方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |