CN116737756A - 一种数据查询方法、装置、设备及存储介质 - Google Patents
一种数据查询方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116737756A CN116737756A CN202311026467.9A CN202311026467A CN116737756A CN 116737756 A CN116737756 A CN 116737756A CN 202311026467 A CN202311026467 A CN 202311026467A CN 116737756 A CN116737756 A CN 116737756A
- Authority
- CN
- China
- Prior art keywords
- current
- historical
- text
- query
- feature
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 117
- 238000003860 storage Methods 0.000 title claims abstract description 28
- 230000004927 fusion Effects 0.000 claims abstract description 95
- 238000012545 processing Methods 0.000 claims description 53
- 230000007246 mechanism Effects 0.000 claims description 50
- 238000012549 training Methods 0.000 claims description 44
- 238000013507 mapping Methods 0.000 claims description 41
- 238000006243 chemical reaction Methods 0.000 claims description 33
- 238000004590 computer program Methods 0.000 claims description 28
- 238000000605 extraction Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 11
- 230000002776 aggregation Effects 0.000 claims description 4
- 238000004220 aggregation Methods 0.000 claims description 4
- 238000012804 iterative process Methods 0.000 claims description 4
- 230000009466 transformation Effects 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 34
- 238000013473 artificial intelligence Methods 0.000 abstract description 18
- 238000010586 diagram Methods 0.000 description 43
- 238000013528 artificial neural network Methods 0.000 description 39
- 239000013598 vector Substances 0.000 description 25
- 230000006870 function Effects 0.000 description 24
- 239000011159 matrix material Substances 0.000 description 24
- 238000003062 neural network model Methods 0.000 description 19
- 238000004891 communication Methods 0.000 description 10
- 125000004122 cyclic group Chemical group 0.000 description 10
- 238000010801 machine learning Methods 0.000 description 10
- 230000004913 activation Effects 0.000 description 9
- 238000003058 natural language processing Methods 0.000 description 9
- 210000002569 neuron Anatomy 0.000 description 9
- 230000010006 flight Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 7
- 238000013527 convolutional neural network Methods 0.000 description 6
- 239000000284 extract Substances 0.000 description 6
- 238000011160 research Methods 0.000 description 5
- 230000011218 segmentation Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000000306 recurrent effect Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000006698 induction Effects 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000033001 locomotion Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 230000007704 transition Effects 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/2433—Query languages
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/194—Calculation of difference between files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0499—Feedforward networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种数据查询方法、装置、设备及存储介质,涉及人工智能技术领域,可应用于云技术、人工智能、智慧交通、辅助驾驶等各种场景;包括:分别提取历史查询文本、当前查询文本和目标文件语义特征,获取历史语义特征、当前语义特征和文件语义特征;根据历史查询文本对当前查询文本改写,并提取获得的改写查询文本中的改写内容,在历史查询文本和当前查询文本中的目标位置信息,基于目标位置信息,对历史语义特征和当前语义特征进行编码,将获得的历史上下文特征、当前上下文特征、文件语义特征进行特征融合,并基于获得的目标融合特征,获得目标查询请求,从目标文件中获得与目标查询请求匹配的信息,以提高数据查询准确性。
Description
技术领域
本申请涉及人工智能技术领域,尤其涉及一种数据查询方法、装置、设备及存储介质。
背景技术
结构化查询语言(Structured Query Language,SQL)是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统,即,SQL语句就是对数据库进行操作的一种语言。SQL语句普遍应用在多种场景的数据查询过程中,通过转换方法,可以将文本形式的查询请求转换为系统可识别和执行的SQL查询语句,将执行SQL查询语句获得的数据内容作为查询结果返回。SQL语句应用的场景有表格问答场景、浏览器查询场景等。
相关技术中,一般采用如图1所示意的转换方式,利用转换模型,将历史查询请求和当前查询请求,及其查询的目标表格进行转换获得SQL查询语句,基于SQL查询语句对目标表格中的数据内容进行查询。这种方式虽然可以在一定程度上,采用历史查询请求中的语义信息补充当前查询请求中的语义,以期获得更准确的SQL查询语句,但是当历史查询请求中的查询焦点与当前查询请求中的查询焦点是变化的,则可能导致获得的SQL查询语句是不准确的,进而使得反馈的查询结果不准确。
如,若当历史查询请求中的查询焦点与当前查询请求中的查询焦点未发生变化,历史查询请求为:有多少可以到达A城市的航班?当前查询请求为:那些是直达的?则可以将“到达A城市的航班”的语义信息补充至当前查询请求中,获得具有完整语义的SQL查询语句。若当历史查询请求中的查询焦点与当前查询请求中的查询焦点发生变化,历史查询请求为:有多少可以到达A城市的航班?当前查询请求为:到达B城市的呢?则历史查询请求中的“到达A城市的航班”的语义信息补充至当前查询请求中,获得的SQL查询语句并不准确。
因此,现在亟需重新设计一种数据查询方法,以及克服上述缺陷。
发明内容
本申请实施例提供一种数据查询方法、装置、设备和存储介质,用以提高数据查询准确性。
第一方面,本申请实施例提供一种数据查询方法,该方法包括:
分别对获得的历史查询文本、当前查询文本和目标文件进行语义特征提取,获取相应的历史语义特征、当前语义特征和文件语义特征;
根据所述历史查询文本对所述当前查询文本进行改写处理,获得改写查询文本,并提取所述改写查询文本中的改写内容,在所述历史查询文本和所述当前查询文本中的目标位置信息;
基于所述目标位置信息,分别对所述历史语义特征和所述当前语义特征进行编码,获得相应的历史上下文特征和当前上下文特征;
将所述历史上下文特征、所述当前上下文特征和所述文件语义特征进行特征融合,并基于获得的目标融合特征,获得目标查询请求,并从所述目标文件中获得与所述目标查询请求匹配的信息。
第二方面,本申请实施例提供一种数据查询装置,该装置包括:
特征提取单元,用于分别对获得的历史查询文本、当前查询文本和目标文件进行语义特征提取,获取相应的历史语义特征、当前语义特征和文件语义特征;
改写单元,用于根据所述历史查询文本对所述当前查询文本进行改写处理,获得改写查询文本,并提取所述改写查询文本中的改写内容,在所述历史查询文本和所述当前查询文本中的目标位置信息;
上下文单元,用于基于所述目标位置信息,分别对所述历史语义特征和所述当前语义特征进行编码,获得相应的历史上下文特征和当前上下文特征;
特征融合单元,用于将所述历史上下文特征、所述当前上下文特征和所述文件语义特征进行特征融合,并基于获得的目标融合特征,获得目标查询请求,并从所述目标文件中获得与所述目标查询请求匹配的信息。
可选的,所述改写单元具体用于,
对所述历史查询文本和所述当前查询文本进行拼接处理,获得查询文本序列;
基于预设权重参数,对所述查询文本序列中各关键词进行权重处理,获得所述各关键词之间的语义关联关系;
基于所述语义关联关系,对所述查询文本序列进行改写处理,获得改写查询特征;
将所述改写查询特征转换为所述改写查询文本。
可选的,所述改写单元具体用于,
将所述改写查询文本与所述当前查询文本进行比对,从所述改写查询文本中,确定出相较于所述当前查询文本的改写内容,并确定所述改写内容在所述当前查询文本中的当前位置信息;其中,所述改写内容包括替换文本内容和插入文本内容中的至少一种;
将所述改写内容和所述历史查询文本进行匹配处理,获得所述改写内容在所述历史查询文本中的历史位置信息;
基于所述当前位置信息和所述历史位置信息,获得所述目标位置信息。
可选的,所述特征融合单元具体用于,
对所述历史查询文本和所述当前查询文本,以及所述目标文件的文本进行拼接处理,获得关系文本序列;
基于预设映射参数,对所述关系文本序列中各关键词进行匹配映射处理,获得所述各关键词之间的匹配映射关系;
基于所述匹配映射关系,分别对所述历史语义特征、所述当前语义特征和所述文件语义特征之间,具有匹配映射关系的特征元素进行编码,获得相应的历史关系特征、当前关系特征和文件关系特征;
将所述历史上下文特征、所述当前上下文特征与所述历史关系特征、所述当前关系特征和所述文件关系特征进行特征融合,获得所述目标融合特征,并基于所述目标融合特征,获得目标查询请求。
可选的,所述特征融合单元具体用于,
将所述历史上下文特征、所述当前上下文特征分别与所述历史关系特征、所述当前关系特征进行相对应的特征元素相加聚合处理,获得历史融合特征和当前融合特征;
将所述历史融合特征和所述当前融合特征,以及所述文件关系特征进行拼接处理,获得所述目标融合特征。
可选的,所述特征提取单元还用于,
基于获得的所述当前查询文本的文本内容,确定所述当前查询文本查询的所述目标文件,并获取所述目标文件关联的各历史查询文本中,符合预设选取条件的所述历史查询文本,所述预设选取条件包含以下至少一种:历史查询文本在所述当前查询文本前的设定时段内、历史查询文本的数量不大于设定数量阈值。
可选的,所述上下文单元具体用于,
基于注意力机制,采用所述目标位置信息,分别对所述历史语义特征和所述当前语义特征进行编码,获得所述历史上下文特征和所述当前上下文特征。
可选的,训练单元,具体用于:所述方法是通过目标转换模型执行的,所述目标转换模型的训练过程如下:
基于预设的训练样本集对原始转换模型进行多轮迭代训练,获得所述目标转换模型,每个训练样本包括历史样本、当前样本、文件样本和请求标签,所述历史样本和所述当前样本,用于从所述文件样本中获得与所述请求标签匹配的信息;其中,在一轮迭代过程中,执行以下操作:
分别对一个训练样本中的历史样本、当前样本、文件样本进行语义特征提取,获取相应的历史样本特征、当前样本特征和文件样本特征;
根据所述历史样本对所述当前样本进行改写处理,获得的改写样本文本,并提取所述改写样本文本中的改写内容,在所述历史样本和所述当前样本中的文本位置信息;
基于所述文本位置信息,分别对所述历史样本和所述当前样本进行编码,将获得的历史样本上下文特征和当前样本上下文特征,与所述文件样本特征进行特征融合,并基于获得的样本融合特征,获得预测请求;
基于所述预测请求和所述请求标签的差异,进行模型调参。
第三方面,本申请实施例提供的一种计算机设备,包括处理器和存储器,其中,所述存储器存储有计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器执行上述第一方面中任意一种数据查询方法。
第四方面,本申请实施例提供的一种计算机可读存储介质,其包括计算机程序,当所述计算机程序在计算机设备上运行时,所述计算机程序用于使所述计算机设备执行上述第一方面中任意一种数据查询方法。
第五方面,本申请实施例提供的一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序存储在计算机可读存储介质中;当计算机设备的处理器从计算机可读存储介质读取所述计算机程序时,所述处理器执行所述计算机程序,使得所述计算机设备执行上述第一方面中任意一种数据查询方法。
本申请有益效果如下:
本申请实施例提供的一种数据查询方法、装置、计算机设备和存储介质,包括:采用历史查询文本对当前查询文本进行改写处理,获得具有较为准确完整的语义的改写查询文本。如此,可以实现采用历史查询文本对当前查询文本中的省略语、指代语等进行补全,初步获得具有较为准确完整的语义的改写查询文本。从而使得改写查询文本中大概率包含当前查询文本中不包含的、且改写方式符合预设标准的改写内容,则可以从改写查询文本中提取出改写内容,并确定改写内容在历史查询文本和当前查询文本中的目标位置信息;在对历史查询文本、当前查询文本和目标文件进行语义特征提取,获取相应的历史语义特征、当前语义特征和文件语义特征之后,可以基于目标位置信息,分别对历史语义特征和当前语义特征进行编码,获得相应的历史上下文特征和当前上下文特征。如此,使得历史上下文特征和当前上下文特征中改写内容对应的特征的表达更强,并基于特征上下文后获得的历史上下文特征和当前上下文特征,以及文件语义特征进行特征融合,获得的目标融合特征,对目标融合特征解码获得更准确的目标查询请求,消除相关技术中由于相邻查询文本之间语言互相依赖的,导致当前查询文本对应的SQL查询语句,可能仅是相邻历史查询文本的SQL查询语句的重复的问题,以及消除相关技术中不能很好捕捉相邻查询文本之间查询焦点的变化的问题,提高生成SQL查询语句的准确性。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种相关技术中的文本与SQL查询语句的转换方式示意图;
图2为本申请实施例提供的又一种相关技术中的文本与SQL查询语句的转换方式示意图;
图3为本申请实施例提供的一种应用场景的一个可选的示意图;
图4为本申请实施例提供的一种数据查询方法的流程示意图;
图5为本申请实施例提供的一种语义特征提取示意图;
图6为本申请实施例提供的一种BERT模型结构示意图;
图7为本申请实施例提供的一种获得历史语义特征、当前语义特征和文件语义特征的多头注意力机制示意图;
图8为本申请实施例提供的一种获取目标位置信息的方法示意图;
图9为本申请实施例提供的一种融合文本获取方法的流程示意图;
图10为本申请实施例提供的一种获得改写查询文本的示意图;
图11为本申请实施例提供的一种BERT模型结构示意图;
图12为本申请实施例提供的一种融合文本获取方法的流程示意图;
图13为本申请实施例提供的一种当前查询请求和改写查询文本的比较示意图;
图14为本申请实施例提供的一种在历史查询文本中,匹配替换文本内容和插入文本内容的匹配示意图;
图15为本申请实施例提供的一种获得目标位置信息示意图;
图16为本申请实施例提供的一种获取获得历史上下文特征和当前上下文特征的多头注意力结构示意图;
图17为本申请实施例提供的一种获取目标查询请求的方法流程示意图;
图18为本申请实施例提供的一种获得匹配映射关系的示意图;
图19为本申请实施例提供的一种获得历史关系特征、当前关系特征和文件关系特征的多头注意力机制示意图;
图20为本申请实施例提供的一种数据查询方法示意图;
图21为本申请实施例提供的一种模型训练方法示意图;
图22为本申请实施例提供的一种数据查询装置的装置示意图;
图23为应用本申请实施例的一种计算机设备的一个硬件组成结构示意图;
图24为应用本申请实施例的另一种计算机设备的一个硬件组成结构示意图。
实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
可以理解的是,在本申请的下述具体实施方式中,涉及到历史查询文本、当前查询文本和目标文件等相关的数据,当本申请的各实施例运用到具体产品或技术中时,需要获得相关许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。例如,在需要获得相关的数据时,可以通过招募相关志愿者并签署志愿者授权数据的相关协议,进而可以使用这些志愿者的数据进行实施;或者,通过在已授权允许的组织内部范围内进行实施,通过采用组织内部成员的数据实施下述的实施方式来向内部成员进行相关推荐;或者,具体实施时所采用的相关数据均为模拟数据,例如可以是虚拟场景中产生的模拟数据。
为便于理解本申请实施例提供的技术方案,这里先对本申请实施例使用的一些关键名词进行解释:
结构化查询语言(Structured Query Language,SQL),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
关系数据库系统,指对应于一个关系模型的所有关系的集合。关系数据库系统建立了关系模型,并用它来处理数据,关系模型在表中将信息与字段关联起来(也就是schemas),从而存储数据。数据库管理系统需要结构在存储数据之前被定义出来。例如,表结构,有了表,每一列(字段)都存储一个不同类型(数据类型)的信息。数据库中的每个记录,都有自己唯一的key,作为属于某一表的一行,行中的每一个信息都对应了表中的一列——所有的关系一起,构成了关系模型。
BERT(基于Transformer 的双向编码器表征):一种预训练模型,「双向」表示模型在处理某一个词时,它能同时利用前面的词和后面的词两部分信息。随机遮掩一些词,并利用所有没被遮掩的词进行预测。
前馈神经网络(feed forward neural network,FNN),简称前馈网络,是人工神经网络的一种。前馈神经网络采用一种单向多层结构。其中每一层包含若干个神经元。在此种神经网络中,各神经元可以接收前一层神经元的信号,并产生输出到下一层。第0层叫输入层,最后一层叫输出层,其他中间层叫做隐含层(或隐藏层、隐层)。隐层可以是一层,也可以是多层,整个网络中无反馈,信号从输入层向输出层单向传播,经过每层网络提取不同的特征,最终输出结果。
全连接层:是每一个结点都与上一层的所有结点相连,用来把前边提取到的特征综合起来。由于其全相连的特性,一般全连接层的参数也是最多的,可以减少特征位置对于分类结果的影响,提高了整个深度神经网络的鲁棒性。
深度神经网络(Deep Neural Networks,DNN):是一种具有多层网络架构的神经网络。
正则化层:包括LN(layer normalization,层正态化),是针对自然语言处理领域提出的,为了把输入转化成均值为0方差为1的数据的方法。Normalization(标准化,或归一化)一般是在把数据送入激活函数之前进行的,目的是希望输入数据不要落在激活函数的饱和区。缓解DNN训练中的梯度消失/梯度爆炸现象,加快模型的训练速度。
激活函数(Activation Function),在人工神经网络的神经元上运行的函数,负责将神经元的输入映射到输出端。Sigmoid函数常被用作神经网络的激活函数,将变量映射到0,1之间,为双侧饱和激活函数。relu函数被用作神经网络的激活函数,在大于0的部分梯度为常数,relu函数在小于0时的导数为0 ,所以一旦神经元激活值进入负半区,梯度就会为0,这个神经元不会经历训练。 只有神经元激活值进入正半区,才会有梯度值,此时神经元才会对此进行一次(加强)训练。
自注意力机制,用于让机器注意到整个输入中不同部分之间的相关性,自注意力机制解决的情况是:神经网络接收的输入是很多大小不一的向量,并且不同向量与向量之间有一定的关系,但是神经网络在实际训练的时候,无法充分发挥这些输入之间的关系而导致模型训练结果效果极差。比如,机器翻译问题、词性标注问题、语义分析问题等。自注意力机制则可以针对全连接神经网络,对于多个相关的输入无法建立起相关性的这个问题,让机器注意到整个输入中不同部分之间的相关性。它的一种实现方法简单来说,就是有多个输入向量,分别对这多个输入向量,执行以下步骤:
自注意力机制中包含权重矩阵Wq、权重矩阵Wk、权重矩阵Wv,针对一个输入向量X1,分别计算X1*Wq= Q1、X1*Wk=K1,X1*Wv=V1,获取这一个输入向量分别与其他输入向量(X2、X3…Xn)的相关性,得到相关性矩阵QK1,对这一相关性矩阵做softmax操作或者relu操作,得到相关性表达矩阵QK1’,进一步,再根据输入向量的含义,获得Z1= QK1’*V1,如此,输出结果Z1中既包含这一输入向量X1本身的意义,又包含这一输入向量X1与其他各输入向量(X2 、X3…Xn)之间的相关性。基于前述,可以理解的,自注意力机制的本质是通过非线性变换,把原始数据空间上的各输入向量(X1 、X2…Xn)的输入矩阵X点位置,映射到新空间上的输出结果的输出矩阵点Z上。
跨注意力机制,也可以称作是多头注意力机制(Multi-Head Self-Attention),其中,多头是指针对同一个输入向量执行几次自注意力操作,则相比于自注意力机制,可以捕捉更加丰富的特征信息,效果更好。
它的一种实现方法简单来说,就是有多个输入向量,分别对这多个输入向量,执行以下步骤:
跨注意力机制中包含权重矩阵Wq、权重矩阵Wk、权重矩阵Wv,假设跨注意力机制是8头注意力机制,则针对每个输入向量都执行8次如上述自注意力机制中的步骤,获得Z11、Z12…Z18,再将Z11、Z12…Z18进行拼接后降维,获得Z1’,显然,多头注意力机制中得到的Z1’相比自注意力机制中Z1,捕捉的特征信息更加丰富。
Word2vec,是一群用来产生词向量的相关模型。这些模型为浅而双层的神经网络,用来训练以重新建构语言学之词文本。网络以词表现,并且需猜测相邻位置的输入词,在word2vec中词袋模型假设下,词的顺序是不重要的。训练完成之后,word2vec模型可用来映射每个词到一个向量,可用来表示词对词之间的关系,该向量为神经网络之隐藏层。
本申请实施例的技术方案涉及人工智能、自然语言处理和机器学习技术,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习、自动驾驶、智慧交通等几大方向。
其中,自然语言处理(Nature Language processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、表格问答、知识图谱等技术。
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如,常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服、车联网、自动驾驶、智慧交通等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供的方案涉及人工智能的自然语言处理技术和机器学习技术。在本申请实施例提出的目标转换模型主要应用于基于当前查询文本确定目标文件,进而获得历史查询文本,采用获得的历史查询文本对当前查询文本中的指代语、省略语等缺失信息进行补充,以转换获得具有完整语义的目标查询请求,执行目标查询请求从目标文件中获得与目标查询请求匹配的信息。目标转换模型的训练和使用方法可以分为两部分,包括训练部分和应用部分;其中,训练部分涉及到自然语言技术和机器学习这一技术领域,在训练部分中,目标转换模型通过自然语言技术对当前样本、历史样本、文件样本和请求标签进行文本处理、语义理解等,并通过机器学习这一技术训练目标转换模型,通过优化算法不断调整模型参数,直至模型收敛,其中,训练样本通过目标转换模型后,获得相应的模型内相关参数;应用部分涉及到自然语言技术和机器学习这一技术领域,在应用部分中,目标转换模型通过自然语言技术对当前查询文本、历史查询文本和目标文件进行文本处理、语义理解等,并通过机器学习这一技术,采用在训练部分训练得到的目标转换模型及其模型内相关参数,获得当前查询文本输入目标转换模型后,得到的目标查询请求等。另外,还需要说明的是,本申请实施例中人工神经网络模型可以是在线训练也可以是离线训练,在此不做具体限定,在本文中是以离线训练为例进行举例说明的。
下面对本申请实施例的设计思想进行简要介绍:
自然语言转换方法(Natural Language to SQL,NL2SQL):是一种自然语言处理技术,可以将自然语言查询转换为标准的SQL查询语句,也就是说,NL2SQL可以将查询文本转换为SQL查询语句。其中,NL2SQL也是表格问答的主流技术之一。
目前,在很多种应用或业务系统中,都会应用到关系数据库系统,采用关系型数据库存储应用或业务系统的相关数据,相应的,使用对象可以在应用客户端或业务系统的使用界面输入查询文本,则应用或业务系统基于NL2SQL将查询文本转换为SQL查询语句,计算机执行SQL查询语句在关系型数据库中查询获取相应的查询信息返回。
如,在表格问答场景中,可以在关系数据库中存储表格数据,应用或业务系统基于NL2SQL将查询文本转换为SQL查询语句,计算机执行SQL查询语句在关系型数据库中查询获取相应的表格数据返回。
很多场景中,往往查询文本(查询问题)不止一个,使用对象在多轮输入不完全相同的多个查询文本时,后续的查询文本很有可能会有省略语、指代语,这些省略语和指代语通常可以在前面的查询文本中获得。
因此,相关技术中采用NL2SQL获取SQL查询语句,如图2所示,为相关技术中的一种NL2SQL模型结构,先采用融合模型,将历史查询请求和当前查询请求进行融合,获得语义完整的查询请求,继而采用转换模型,将查询请求及其相应目标表格进行转换获得SQL查询语句,基于SQL查询语句对目标表格中的数据内容进行查询,以期基于具有完整语义的SQL查询语句,从目标表格中查询准确信息,但这仅是一种理想的情况,因为在使用对象的多轮查询文本中,相邻查询文本之间语言上往往是互相依赖的,有时采用NL2SQL获得的当前查询文本对应的SQL查询语句,可能仅是相邻历史查询文本的SQL查询语句的重复,而且这种方式很难捕捉相邻查询文本之间查询焦点的变化,即使采用归纳偏见来生成多轮查询文本之间的丰富的上下文关系,对相邻查询文本之间的依赖关键仍然不能很好的指导,使得获得的SQL查询语句的准确性较低。
例如,第一轮查询文本为:三年一班有多少女孩子?NL2SQL将第一轮查询文本转换为SQL查询语句,计算机执行SQL查询语句在关系型数据库中查询三年一班的学生基本信息表(以学号为行名,以性别为列名),对学生基本信息表中的性别为女性的行数计数,获得女孩子数量并返回。第二轮查询文本为:那老师有多少呢?可能得到的SQL查询语句为:三年一班有多少女老师?但实际SQL查询语句应该是:三年一班有多少老师?
鉴于此,本申请实施例提供了一种数据查询方法、装置、设备及存储介质包括:在接收当前查询文本后,基于当前查询文本中的关键词,确定需要查询的目标文件,针对目标文件,可以采用窗口获取方法或数量获取方法等,在设定时间窗口内获取至少一个历史查询文本,或获取设定数量的历史查询文本,采用历史查询文本对当前查询文本进行改写处理,获得具有较为准确完整的语义的改写查询文本。如此,可以实现采用历史查询文本对当前查询文本中的省略语、指代语等进行补全,初步获得具有较为准确完整的语义的改写查询文本。
相应的,改写查询文本中大概率包含当前查询文本中不包含的、且改写方式符合预设标准的改写内容,则从改写查询文本中提取出改写内容,并确定改写内容在历史查询文本和当前查询文本中的目标位置信息,进而,在对历史查询文本、当前查询文本和目标文件进行语义特征提取,获取相应的历史语义特征、当前语义特征和文件语义特征之后,可以基于目标位置信息,分别对历史语义特征和当前语义特征中,与改写内容关联的特征元素进行编码,获得相应的历史上下文特征和当前上下文特征。如此,使得历史上下文特征和当前上下文特征中改写内容对应的特征的表达力增强,并基于特征上下文后获得的历史上下文特征和当前上下文特征,以及文件语义特征进行特征融合,获得的目标融合特征,对目标融合特征解码获得更准确的目标查询请求,消除相关技术中由于相邻查询文本之间语言互相依赖的,导致当前查询文本对应的SQL查询语句,可能仅是相邻历史查询文本的SQL查询语句的重复的问题,以及消除相关技术中不能很好捕捉相邻查询文本之间查询焦点的变化的问题,提高生成SQL查询语句的准确性。
以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请,并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
如图3所示,其为本申请实施例的应用场景示意图。该应用场景图中包括多个终端设备中的任一终端设备310和多个服务器中的任一个服务器320。
在本申请实施例中,终端设备310包括但不限于手机、平板电脑、笔记本电脑、台式电脑、电子书阅读器、智能语音交互设备、智能家电、车载终端等设备;终端设备上可以安装有与数据查询业务相关的客户端,该客户端可以是软件(例如浏览器、通讯软件等),也可以是网页、小程序等,服务器320则是与软件或是网页、小程序等相对应的后台服务端,或者是专门用于向客户端数据查询的后台服务端,本申请不做具体限定。服务器320可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
需要说明的是,本申请实施例中的数据查询方法可以由计算机设备执行,该计算机设备可以为服务器320或者终端设备310,即,该方法可以由服务器320或者终端设备310单独执行,也可以由服务器320和终端设备310共同执行。比如,由终端设备310和服务器320共同执行时,终端设备310中客户端接收当前查询文本,并将当前查询文本发送至服务器320。服务器320接收当前查询文本后,确定当前查询文本要查询的目标文件,进而针对目标文件,确定查询目标文件的至少一个历史查询文本,分别对至少一个历史查询文本、当前查询文本和目标文件进行语义特征提取,获取相应的历史语义特征、当前语义特征和文件语义特征,采用历史查询文本对当前查询文本进行改写处理,获得改写查询文本,提取改写查询文本中的改写内容,并确定改写内容在历史查询文本和当前查询文本中的目标位置信息,基于目标位置信息,分别对历史语义特征和当前语义特征进行编码,获得相应的历史上下文特征和当前上下文特征,将历史上下文特征、当前上下文特征和文件语义特征进行特征融合,并基于获得的目标融合特征,获得目标查询请求,并从目标文件中获得与目标查询请求匹配的信息,服务器320将获得的与目标查询请求匹配的信息返回至终端设备310,还可以在终端设备310中展示与目标查询请求匹配的信息。
又比如,由终端设备310或服务器320单独执行时,则可以由终端设备310或服务器320接收输入的当前查询文本,确定目标文件和至少一个历史查询文本,经过如上述示例相同的方法,获取目标查询请求,获得与目标查询请求匹配的信息,若终端设备310或服务器320具有显示屏,则可以将与目标查询请求匹配的信息在终端设备310或服务器320的显示屏上展示。需要说明的是,上述应用场景仅为本方案的一种示例,并不对本方案的具体实施做限制,如,服务器310还可以外接其它业务系统的数据库,或者其它数据库系统。
需要说明的是,图3所示只是举例说明,实际上终端设备和服务器的数量和通信方式均不受限制,在本申请实施例中不做具体限定。
终端设备310包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端等。
此外,本申请实施例数据查询可应用于各种场景,如,短视频查询、新闻搜索查询、小说搜索查询、表数据查询等场景。
下面结合上述描述的应用场景,参考附图来描述本申请示例性实施方式提供的数据查询方法,需要注意的是,上述应用场景仅是为了便于理解本申请的精神和原理而示出,本申请的实施方式在此方面不受任何限制。
参见图4所示,为本申请实施例提供的数据查询方法的流程示意图,这里是以服务器为执行主体为例进行举例说明的,该方法的具体实施流程如下:
步骤401、分别对获得的历史查询文本、当前查询文本和目标文件进行语义特征提取,获取相应的历史语义特征、当前语义特征和文件语义特征。
在一种实施例中,目标文件可以是表格文件、文档文本等,这里对目标文件的形式具体不做限制,可以根据需要设置。
在一种实施例中,历史查询文本和当前查询文本均是针对目标文件的查询文本,如,若目标文件中记录有某一品牌的各种型号的汽车价格及汽车性能信息,则历史查询文本可以为:价格区间在20万-30万之间的汽车有哪些?当前查询文本可以为:**性能的汽车有哪些?其中,历史查询文本可以是一个或多个,可以根据当前查询文本所处的时间窗口,选择同样处于这一时间窗口的一个或多个历史查询文本,或者还可以选择最近的设定数量的历史查询文本,这里对查询文本数量具体不做限制。
在一种实施例中,假设当前查询文本可以为:**性能的汽车有哪些?,根据当前查询文本中的关键词“汽车”(需要说明的是,当前查询文本中用于确定目标文件的文本内容,具体不做限制,可以根据关键词、关键字或关键词和关键字的组合等),确定文件名为:汽车基本信息记录的目标文件,从而基于这一目标文件,确定这一目标文件关联的历史查询文本。其中,在每次接收历史查询文本,基于历史查询文本转换获得对应的历史查询请求,并基于历史查询请求执行获得查询结果后,将历史查询文本与目标文件关联,关联方式可以为针对目标文件生成一个查询记录,查询记录中包含目标文件的文件名、目标文件的唯一标识和历史查询文本,关联方式也可以是将历史查询文本挂载在目标文件的目录下等,这里对关联方式不做限制。另外,在当前查询文本成功获得目标查询请求,并基于目标查询请求获得匹配的信息后,将当前查询文本与目标文件关联。
在一种实施例中,如图5所示,为本申请实施例提供的一种语义特征提取示意图。可以采用BERT模型,对历史查询文本、当前查询文本和目标文件进行语义特征提取,获取相应的历史语义特征、当前语义特征和文件语义特征,具体的,将历史查询文本、当前查询文本和目标文件的文件名、关键词、关键字等关键信息拼接为一个文本序列,将文本序列作为BERT模型的输入,获得BERT模型输出的特征元素序列,按照历史查询文本、当前查询文本和目标文件的文件名、关键词、关键字等关键信息的长度,对特征元素序列划分,得到相应的历史语义特征、当前语义特征和文件语义特征。若目标文件为表格文件,则可以将历史查询文本、当前查询文本和目标文件的表名、列名、对应的列值和行名等关键信息拼接为一个文本序列,作为BERT模型的输入。
在一种实施例中,如图6所示,为本申请实施例提供的一种BERT模型结构示意图,上述BERT模型可以是包含6层多头注意力机制、12层多头注意力机制、15层多头注意力机制等(这里对采用的多头注意力机制的层数具体不做限制,可以根据需要设置),先采用BERT模型中的编码层,对输入的文本序列进行编码,获得模型可计算序列,再采用每层多头注意力机制中的权重矩阵,对输入数据进行权重处理,最终输出特征元素序列。
在一种实施例中,如图7所示,为本申请实施例提供的一种获得历史语义特征、当前语义特征和文件语义特征的多头注意力机制示意图,多头注意力机制中每头注意力机制中都有相应的权重参数Wk、Wv和权重矩阵Q,以及掩码矩阵MASK,图中采用下标的方式,区分1-n个头各自的权重参数Wk、Wv和权重矩阵Q,以及掩码矩阵MASK,以及掩码矩阵MASK,假设输入每头注意力机制的数据为编码层输出的编码后的,模型可计算序列,或在前的多头注意力机制输出的X,则可以采用相应的权重参数Wk、Wv和权重矩阵Q,以及掩码矩阵MASK对X进行权重处理和预测,获得相应的Z,最终获得多头注意力机制的Z1 、Z2 …Zn,将Z1 、Z2…Zn进行拼接后,降维处理,获得与X维度相同的输出数据Z’。此处需要说明的是,获得历史语义特征、当前语义特征和文件语义特征的多头注意力机制层数可以是2、4、6、12层,具体不做限制。
在一种实施例中,可以采用Word2vec模型、循环神经网络语言模型等,将文本序列作为Word2vec模型、循环神经网络语言模型这些相应模型的输入,获得模型输出的特征元素序列,按照历史查询文本、当前查询文本和目标文件的文件名、关键词、关键字等关键信息的长度,对特征元素序列划分,得到相应的历史语义特征、当前语义特征和文件语义特征。
在一种实施例中,历史查询文本和当前查询文本还可以是使用对象针对目标文件的多轮查询文本,假设目标文件为用户上传的教师统计记录,如下表1所示:
表1
输入历史查询文本1:2021年人大附中有多少教师?
历史查询请求1: select count(jsid) from teacher_table where xn = 2021and xxmc = 人大附中;
输入历史查询文本2:2022年人大附中有多少教师?
历史查询请求2: select count(jsid) from teacher_table where xn = 2022and xxmc = 人大附中;
输入当前查询文本:那2023年呢?
目标查询请求: select count(jsid) from teacher_table where xn = 2023and xxmc = 人大附中。
步骤402、根据历史查询文本对当前查询文本进行改写处理,获得改写查询文本,并提取改写查询文本中的改写内容,在历史查询文本和当前查询文本中的目标位置信息。
在一种实施例中,其中,改写内容包含:在改写处理过程中,改写方式符合预设标准的文本内容。如,预设标准为替换文本改写方式标准、插入文本改写方式标准等。
在一种实施例中,可以将历史查询文本和当前查询文本拼接得到的查询文本序列,将查询文本序列输入循环神经网络语言模型,通过循环神经网络语言模型中的编码层获得编码后的序列,经过多层神经网络处理,获得处理后的序列,再经过解码层,将获得的处理后的序列解码得到改写查询文本。此处,循环神经网络语言模型中神经网络的层数具体不做限制,可以根据需要设置。其中,也可以采用Word2vec模型、卷积神经网络语言模型等,将查询文本序列作为Word2vec模型、卷积神经网络语言模型这些相应模型的输入,获得模型输出的改写查询文本,其中的Word2vec模型、卷积神经网络语言模型等,均具有编码层和解码层。需要说明的是,此处对获得历史查询文本和当前查询文本具体使用的模型种类不做限制,可以根据需要设置。
在一种实施例中,如图8所示,为本申请实施例提供的一种获取目标位置信息的方法示意图,可以采用词向量生成模型(如,word2vec模型,可以在保留原始文本中每个文本分词的含义的同时,将原始文本中每个文本分词转化为对应的词向量),分别将历史查询文本和当前查询文本,以及改写查询文本进行分词处理,获得历史查询文本和当前查询文本,以及改写查询文本各自的分词向量,将历史查询文本和当前查询文本,以及改写查询文本各自的分词向量输入神经网络模型,采用神经网络模型中的多层神经网络,映射提取改写查询文本中各分词在历史查询文本和当前查询文本的中间位置信息,并采用对神经网络模型中的多层神经网络,提取历史查询文本和当前查询文本的上下文信息,将中间位置信息与历史查询文本和当前查询文本的上下文信息进行融合,对历史查询文本和当前查询文本中,相对于改写查询文本产生替换或插入的分词进行相应的权重计算,获得包含语义特征和位置特征的目标位置信息。其中,神经网络模型可以采用诸如基于循环神经网络、卷积神经网络、双向递归神经网络。由于神经网络模型的实现机制以及对于文本的学习过程为较为成熟的技术,在此不再赘述。
基于图4中的方法流程,本申请实施例提供了一种融合文本获取方法,如图9所示,在步骤402中,将历史查询文本和当前查询文本进行改写处理,获得改写查询文本,包括:
步骤901、对历史查询文本和当前查询文本进行拼接处理,获得查询文本序列;
步骤902、基于预设权重参数,对查询文本序列中各关键词进行权重处理,获得各关键词之间的语义关联关系;
步骤903、基于语义关联关系,对查询文本序列进行改写处理,获得改写查询特征;
步骤904、将改写查询特征转换为改写查询文本。
在一种实施例中,如图10所示,为本申请实施例提供的一种获得改写查询文本的示意图,可以将历史查询文本和当前查询文本拼接得到的查询文本序列,将查询文本序列输入BERT模型,通过编码层获得编码后的序列,经过多层多头注意力机制处理,基于多头注意力机制各自的预设权重参数,获得处理后的序列,再经过解码层,将获得的处理后的序列解码得到改写查询文本。此处,BERT模型中多头注意力机制的层数具体不做限制,可以根据需要设置。为了清晰阐述本方案,如图11所示,为本申请实施例给出一种BERT模型结构示意图。
基于图4中的方法流程,本申请实施例提供了一种融合文本获取方法,如图12所示,在步骤402中,提取所述改写查询文本中的改写内容,在历史查询文本和当前查询文本中的目标位置信息,包括:
步骤1201、将改写查询文本与当前查询文本进行比对,从改写查询文本中,确定出相较于当前查询文本的改写内容,并确定改写内容在当前查询文本中的当前位置信息;其中,改写内容包括替换文本内容和插入文本内容中的至少一种;
步骤1202、将改写内容和历史查询文本进行匹配处理,获得改写内容在历史查询文本中的历史位置信息;
步骤1203、基于当前位置信息和历史位置信息,获得目标位置信息。
在一种实施例中,假设历史查询文本1为:列出所有拥有目的地机场的城市;历史查询文本2为:按照到达航班数对他们进行排序;当前查询文本为:那个地方最多?
采用上述示例中循环神经网络语言模型,或图9的BERT模型,或其他可以将历史查询文本和当前查询文本融合,获得改写查询文本:哪个城市有最多的到达航班数?之后,采用文本匹配和映射的方式,获取目标位置信息,具体步骤如下:
步骤1、将当前查询请求和改写查询文本进行比较,如图13所示,为本申请实施例提供的一种当前查询请求和改写查询文本的比较示意图,找到替换文本内容和插入文本内容的当前位置信息,记做替换:(sx1,sx2,…,sxn,),插入:(ix1,ix2,…,ixm,);
步骤2、如图14所示,为本申请实施例提供的一种在历史查询文本中,匹配替换文本内容和插入文本内容的匹配示意图,匹配步骤1中的替换文本内容和插入文本内容在历史查询文本中的历史位置信息,记做替换:(sy1,sy2,…,syn,),插入:(iy1,iy2,…,iym,);
步骤3、如图15所示,为本申请实施例提供的一种获得目标位置信息示意图,将步骤1和步骤2中的替换文本内容和插入文本内容,在当前查询文本中的当前位置信息和历史请求文本中的历史位置信息进行配对,变成二维坐标,替换:{(sx1,sy1),(sx2,sy2),…,(sxn,syn)},插入:{(ix1,iy1),(ix2,iy2),…,(ixm,iym)}。其中,替换文本坐标id=1、插入文本坐标id=2、其余部分无操作id=0。如图所示,获得目标位置信息可以采用矩阵形式表示,为。
步骤403、基于目标位置信息,分别对历史语义特征和当前语义特征进行编码,获得相应的历史上下文特征和当前上下文特征;
在一种实施例中,可以将包含语义特征和位置特征的目标位置信息,以及历史语义特征和当前语义特征输入神经网络进行权重增强处理,获得历史上下文特征和当前上下文特征,具体的,采用目标位置信息中的语义特征相应的位置特征,对历史语义特征和当前语义特征中相应特征元素进行权重上下文。
在一种实施例中,可以将图15方法中获得目标位置信息,以及历史语义特征和当前语义特征输入神经网络进行权重增强处理,基于目标位置信息中的关键词的操作信息,对相应的历史语义特征和当前语义特征中的特征元素进行权重上下文,获得历史上下文特征和当前上下文特征。
基于图4中的方法流程,本申请实施例提供了一种获取历史上下文特征和当前上下文特征的方法,在步骤403中,基于目标位置信息,分别对历史语义特征和当前语义特征进行编码,获得相应的历史上下文特征和当前上下文特征,包括:
基于注意力机制,采用目标位置信息,分别对历史语义特征和当前语义特征进行编码,获得历史上下文特征和当前上下文特征。
在一种实施例中,可以将图15方法中获得目标位置信息,以及历史语义特征和当前语义特征输入多头注意力机制进行编码,与图7中的BERT模型相似的,如图16所示,为本申请实施例提供的一种获取获得历史上下文特征和当前上下文特征的多头注意力结构示意图,将目标位置信息矩阵作为权重矩阵G,历史语义特征和当前语义特征拼接的特征序列作为输入Y,获得的输出L’为历史上下文特征和当前上下文特征的拼接特征,可以采用标记分割点标签或记录特征序列长度方式,分割获得历史上下文特征和当前上下文特征。此处需要说明的是,获得历史上下文特征和当前上下文特征的多头注意力机制层数可以是2、4、6、12层,具体不做限制。
步骤404、将历史上下文特征、当前上下文特征和文件语义特征进行特征融合,并基于获得的目标融合特征,获得目标查询请求,并从目标文件中获得与目标查询请求匹配的信息。
在一种实施例中,将历史上下文特征、当前上下文特征和文件语义特征输入神经网络模型,采用神经网络模型,获得目标融合特征。其中,神经网络模型可以是多层感知机神经网络模型、卷积神经网络模型、循环神经网络模型等,此领域中针对文本特征的分析和融合处理,已经较为成熟,这里具体不再赘述。
基于上述图4中的方法流程,本申请实施例提供了一种获取目标查询请求的方法流程示意图,如图17所示,在步骤404中,将历史上下文特征、当前上下文特征和文件语义特征进行特征融合,并基于获得的目标融合特征,获得目标查询请求,包括:
步骤1701、对历史查询文本和当前查询文本,以及目标文件的文本进行拼接处理,获得关系文本序列;
步骤1702、基于预设映射参数,对关系文本序列中各关键词进行匹配映射处理,获得各关键词之间的匹配映射关系;
步骤1703、基于匹配映射关系,分别对历史语义特征、当前语义特征和文件语义特征之间,具有匹配映射关系的特征元素进行编码,获得相应的历史关系特征、当前关系特征和文件关系特征;
步骤1704、将历史上下文特征、当前上下文特征与历史关系特征、当前关系特征和文件关系特征进行特征融合,获得目标融合特征,并基于目标融合特征,获得目标查询请求。
在一种实施例中,假设历史查询文本1为:列出所有拥有目的地机场的城市;历史查询文本2为:按照到达航班数对他们进行排序;当前查询文本为:那个地方最多?
假设目标文件为机场航班记录,如下表2所示:
表2
以表2为例,目标文件的文本为:起始机场(行数、列数)BJXX南机场(行数、列数)BJXX北机场(行数、列数)SHXX机场(行数、列数)DBXX机场(行数、列数)目的机场(行数、列数)CQ机场…,则将历史查询文本和当前查询文本,以及目标文件的文本进行拼接处理,获得关系文本序列。
在一种实施例中,基于上述实施例,可以采用word2vec模型,分别将历史查询文本和当前查询文本,以及目标文件的文本的关系文本序列进行分词处理,获得历史查询文本和当前查询文本,以及目标文件的文本各自的分词向量,将历史查询文本和当前查询文本,以及目标文件的文本各自的分词向量输入神经网络模型,采用神经网络模型中的多层神经网络映射提取历史查询文本和当前查询文本中各分词在目标文件的文本的映射关联关系,并采用对神经网络模型中的多层神经网络,提取历史查询文本和当前查询文本的上下文信息,以及目标文件的文本的上下文信息,将映射关联关系与历史查询文本和当前查询文本的上下文信息,以及目标文件的文本的上下文信息进行融合,获取历史查询文本和当前查询文本中各分词,与目标文件的文本中各分词的语义匹配关联关系和位置映射的关联关系,得到匹配映射关系Rlink。其中,神经网络模型可以采用诸如基于循环神经网络、卷积神经网络、双向递归神经网络。由于神经网络模型的实现机制以及对于文本的学习过程为较为成熟的技术,在此不再赘述。
在一种实施例中,基于上述实施例,采用与图13、图14和图15的方式相似的,如图18所示,为本申请实施例提供的一种获得匹配映射关系的示意图,可以将目标文件的文本作为横轴匹配维度,将历史查询文本和当前查询文本作为纵轴匹配维度,获得的矩阵为匹配映射关系Rlink。在一种实施例中,将匹配映射关系,以及历史语义特征、当前语义特征和文件语义特征输入神经网络模型,进行权重增强处理,获得相应的历史关系特征、当前关系特征和文件关系特征。
在一种实施例中,基于图7和图16中多头注意力机制结构示意图,本申请实施例提供了一种获得历史关系特征、当前关系特征和文件关系特征的多头注意力机制示意图,如图19所示,将匹配映射关系作为多头注意力机制中的权重矩阵O,以及历史语义特征、当前语义特征和文件语义特征作为输入H,输入多头注意力机制进行编码,获得相应的E’历史关系特征、当前关系特征和文件关系特征。此处需要说明的是,获得历史关系特征、当前关系特征和文件关系特征的多头注意力机制的层数具体不做限制,本领域的使用对象可以根据需求具体设置。
在一种实施例中,可以将历史上下文特征、当前上下文特征与默认特征序列(与文件关系特征的维度相同)拼接获得第一拼接特征,将历史关系特征、当前关系特征和文件关系特征拼接获得第二拼接特征,将第一拼接特征和第二拼接特征采用神经网络模型进行特征融合,获得目标融合特征,进一步,采用解码层对目标融合特征进行解码,获得目标查询请求。
此处,在上述图4的方法流程及其各实施例中,可以看出本方案采用目标位置信息,对历史语义特征、当前语义特征中,与改写内容关联的特征元素进行权重增强处理,使得参与后续特征融合的历史上下文特征和当前上下文特征中的改写内容更“突出”,从而消除相关技术中由于相邻查询文本之间语言互相依赖的,导致当前查询文本对应的SQL查询语句,可能仅是相邻历史查询文本的SQL查询语句的重复的问题,以及消除相关技术中不能很好捕捉相邻查询文本之间查询焦点的变化的问题,提高生成SQL查询语句的准确性。
基于上述图16中的方法流程,本申请实施例提供一种获得目标融合特征的方法流程,在步骤1604中,将历史上下文特征、当前上下文特征与历史关系特征、当前关系特征和文件关系特征进行特征融合,获得目标融合特征,包括:
步骤a、将历史上下文特征、当前上下文特征分别与历史关系特征、当前关系特征进行相对应的特征元素相加聚合处理,获得历史融合特征和当前融合特征;
步骤b、将历史融合特征和当前融合特征,以及文件关系特征进行拼接处理,获得目标融合特征。
在一种实施例中,可以将历史上下文特征中各特征元素分别与历史关系特征中各特征元素相加聚合,得到历史融合特征,将当前上下文特征中各特征元素分别与当前关系特征中各特征元素相加聚合,得到当前融合特征,将历史融合特征和当前融合特征,以及文件关系特征进行拼接处理,获得目标融合特征。
基于图4中的方法流程,本申请实施例提供了一种获取历史查询请求方法,分别对获得的历史查询文本、当前查询文本和目标文件进行语义特征提取,获取相应的历史语义特征、当前语义特征和文件语义特征之前,还包括:
基于获得的当前查询文本的文本内容,确定当前查询文本查询的目标文件,并获取目标文件关联的各历史查询文本中,符合预设选取条件的历史查询文本,预设选取条件包含以下至少一种:历史查询文本在当前查询文本前的设定时段内、历史查询文本的数量不大于设定数量阈值。
在一种实施例中,预设选取条件可以为,选取接收当前查询文本的当前时间往前的设定时段内的历史查询文本,或者距离当前时间最近的不大于设定数量阈值的至少一个历史查询文本,或者在当前时间往前的设定时段内的同一查询对象的历史查询文本等,这里对预设选取条件具体不做限制。
在一种实施例中,还有可能未获取符合预设选取条件的目标文件关联的历史查询文本,则分别对当前查询文本和目标文件进行语义特征提取,获取相应的查询文本特征和文件文本特征;再基于默认位置信息,对查询文本特征中特征元素进行权重处理,获得相应的查询上下文特征;将查询上下文特征和文件文本特征进行特征融合,并基于获得的目标查询特征,获得目标查询请求。
基于上述图4、图9、图12、图17中的方法流程及其实施例,本申请实施例提供了一种数据查询方法,如图20所示,为一个完整的目标转换模型基于当前查询文本获取目标查询请求的示意图,目标转换模型中包含BERT模型(改写模型)、BERT模型(通用预训练模型)、多头自注意力机制(改写编辑关系编码器Rw)和多头自注意力机制(表格信息映射匹配关系编码器Link),可见,采用的是双关系编码器融合的NL2SQL模型的结构,目标转换模型基于当前查询文本获取目标查询请求具体执行方法,包括:采用BERT模型(改写模型)获取历史查询文本:U1、U2…Ut-1和当前查询文本Ut的查询文本序列,的改写查询文本,进而获得Rrw;
根据历史查询文本、当前查询文本和目标文件的文本,获取匹配映射关系Rlink,假设目标文件是表格,则目标文件的文本为表格信息{ t1,…tn,c1,…cm},将历史查询文本:U1、U2…Ut-1和当前查询文本Ut,以及表格信息{ t1,…tn,c1,…cm}输入 BERT模型(通用预训练模型,不包含解码层,且其中的模型参数不同于前述获取改写查询文本的改写模型),获取当前语义特征Xu、历史语义特征Xctx和文件语义特征Xsc,将当前语义特征Xu、历史语义特征Xctx;
以及Rrw输入多头自注意力机制(改写编辑关系编码器Rw),获取当前上下文特征Hu rw和历史上下文特征Hctx rw(表示为:改写编辑关系编码器Rw:该编码器将目标位置信息(改写编辑矩阵)Rrw作用在transformer结构的中的attention机制中。该编码器需要输入:当前语义特征Xu和历史语义特征Xctx,它们通过该关系编码器的结果为:[Hu rw,Hctx rw]=Rw(Xu,Xctx|Rrw));
将Rlink和当前语义特征Xu、历史语义特征Xctx 和文件语义特征 Xsc输入多头自注意力机制(表格信息映射匹配关系编码器Link),获取当前关系特征Hu link、历史关系特征Hctx link和文件关系特征Hsc link(该编码器需要输入:当前语义特征Xu、历史语义特征Xctx和 文件语义特征Xsc,它们通过该关系编码器的结果为:[Hu link,Hctx link,Hsc link]= Link(Xu,Xctx,Xsc|Rlink));
获取到两个不同关系编码器输出之后,将历史上下文特征、历史关系特征,当前上下文特征、当前关系特征进行逐特征元素相加聚合:Hu= Hu rw + Hu link,Hctx= Hctx rw +Hctx link;最终的双关系编码器输出H为:H=Concat(Hu,Hctx,Hsc link);
最终生成的目标查询语句(SQL查询语句)为:SQL= Decoder(H);
基于上述图4、图9、图12、图17中的方法流程及其实施例,本申请实施例提供了一种模型训练方法,如图21所示,方法是通过目标转换模型执行的,目标转换模型的训练过程如下:
基于预设的训练样本集对原始转换模型进行多轮迭代训练,获得目标转换模型,每个训练样本包括历史样本、当前样本、文件样本和请求标签,历史样本和当前样本,用于从文件样本中获得与请求标签匹配的信息;其中,在一轮迭代过程中,执行以下操作:
步骤2101、分别对一个训练样本中的历史样本、当前样本、文件样本进行语义特征提取,获取相应的历史样本特征、当前样本特征和文件样本特征;
步骤2102、根据历史样本对当前样本进行改写处理,获得的改写样本文本,并提取所述改写样本文本中的改写内容,在历史样本和当前样本中的文本位置信息;
步骤2103、基于文本位置信息,分别对历史样本和当前样本进行编码,将获得的历史样本上下文特征和当前样本上下文特征,与文件样本特征进行特征融合,并基于获得的样本融合特征,获得预测请求;
步骤2104、基于预测请求和请求标签的差异,进行模型调参。
在一种实施例中,历史样本为历史查询文本样本、当前样本为当前查询文本样本、文件样本中包含历史样本和当前样本查询的信息,请求标签为当前样本的具体查询请求。
在一种实施例中,对应上述图4的方法流程中的步骤401,步骤2101中可以采用相应的BERT模型Word2vec模型、循环神经网络语言模型等,分别对一个训练样本中的历史样本、当前样本、文件样本进行语义特征提取,获取相应的历史样本特征、当前样本特征和文件样本特征。
在一种实施例中,对应上述图4的方法流程中的步骤402,步骤2102中可以采用相应的BERT模型Word2vec模型、循环神经网络语言模型等,以及类似于图13-15所示的目标位置信息获取方法,将历史样本和当前样本进行语义融合,并确定获得的改写样本文本中改写内容,在历史样本和当前样本中的文本位置信息。
在一种实施例中,对应上述图4的方法流程中的步骤403,步骤2103中可以采用相应的神经网络、注意力机制等,基于文本位置信息,分别对历史样本和当前样本进行权重增强处理,获得历史样本上下文特征和当前样本上下文特征,
并对应上述图4的方法流程中的步骤404,步骤2103中,可以采用相应的多层感知机神经网络模型、卷积神经网络模型、循环神经网络模型等,将获得的历史样本上下文特征和当前样本上下文特征,与文件样本特征进行特征融合,并基于获得的样本融合特征,获得预测请求,基于预测请求和请求标签的差异,进行模型调参。
第二方面,本申请实施例提供一种数据查询装置2200,该装置2200包括:
特征提取单元2201,用于分别对获得的历史查询文本、当前查询文本和目标文件进行语义特征提取,获取相应的历史语义特征、当前语义特征和文件语义特征;
改写单元2202,用于根据所述历史查询文本对所述当前查询文本进行改写处理,获得改写查询文本,并提取所述改写查询文本中的改写内容,在所述历史查询文本和所述当前查询文本中的目标位置信息;
上下文单元2203,用于基于所述目标位置信息,分别对所述历史语义特征和所述当前语义特征进行编码,获得相应的历史上下文特征和当前上下文特征;
特征融合单元2204,用于将所述历史上下文特征、所述当前上下文特征和所述文件语义特征进行特征融合,并基于获得的目标融合特征,获得目标查询请求,并从所述目标文件中获得与所述目标查询请求匹配的信息。
可选的,所述改写单元2202具体用于,
对所述历史查询文本和所述当前查询文本进行拼接处理,获得查询文本序列;
基于预设权重参数,对所述查询文本序列中各关键词进行权重处理,获得所述各关键词之间的语义关联关系;
基于所述语义关联关系,对所述查询文本序列进行改写处理,获得改写查询特征;
将所述改写查询特征转换为所述改写查询文本。
可选的,所述改写单元2202具体用于,
将所述改写查询文本与所述当前查询文本进行比对,从所述改写查询文本中,确定出相较于所述当前查询文本的改写内容,并确定所述改写内容在所述当前查询文本中的当前位置信息;其中,所述改写内容包括替换文本内容和插入文本内容中的至少一种;
将所述改写内容和所述历史查询文本进行匹配处理,获得所述改写内容在所述历史查询文本中的历史位置信息;
基于所述当前位置信息和所述历史位置信息,获得所述目标位置信息。
可选的,所述特征融合单元2204具体用于,
对所述历史查询文本和所述当前查询文本,以及所述目标文件的文本进行拼接处理,获得关系文本序列;
基于预设映射参数,对所述关系文本序列中各关键词进行匹配映射处理,获得所述各关键词之间的匹配映射关系;
基于所述匹配映射关系,分别对所述历史语义特征、所述当前语义特征和所述文件语义特征之间,具有匹配映射关系的特征元素进行编码,获得相应的历史关系特征、当前关系特征和文件关系特征;
将所述历史上下文特征、所述当前上下文特征与所述历史关系特征、所述当前关系特征和所述文件关系特征进行特征融合,获得所述目标融合特征,并基于所述目标融合特征,获得目标查询请求。
可选的,所述特征融合单元2204具体用于,
将所述历史上下文特征、所述当前上下文特征分别与所述历史关系特征、所述当前关系特征进行相对应的特征元素相加聚合处理,获得历史融合特征和当前融合特征;
将所述历史融合特征和所述当前融合特征,以及所述文件关系特征进行拼接处理,获得所述目标融合特征。
可选的,所述特征提取单元2201还用于,
基于获得的所述当前查询文本的文本内容,确定所述当前查询文本查询的所述目标文件,并获取所述目标文件关联的各历史查询文本中,符合预设选取条件的所述历史查询文本,所述预设选取条件包含以下至少一种:历史查询文本在所述当前查询文本前的设定时段内、历史查询文本的数量不大于设定数量阈值。
可选的,所述上下文单元2203具体用于,
基于注意力机制,采用所述目标位置信息,分别对所述历史语义特征和所述当前语义特征进行编码,获得所述历史上下文特征和所述当前上下文特征。
可选的,训练单元2205,具体用于:所述方法是通过目标转换模型执行的,所述目标转换模型的训练过程如下:
基于预设的训练样本集对原始转换模型进行多轮迭代训练,获得所述目标转换模型,每个训练样本包括历史样本、当前样本、文件样本和请求标签,所述历史样本和所述当前样本,用于从所述文件样本中获得与所述请求标签匹配的信息;其中,在一轮迭代过程中,执行以下操作:
分别对一个训练样本中的历史样本、当前样本、文件样本进行语义特征提取,获取相应的历史样本特征、当前样本特征和文件样本特征;
根据所述历史样本对所述当前样本进行改写处理,获得的改写样本文本,并提取所述改写样本文本中的改写内容,在所述历史样本和所述当前样本中的文本位置信息;
基于所述文本位置信息,分别对所述历史样本和所述当前样本进行编码,将获得的历史样本上下文特征和当前样本上下文特征,与所述文件样本特征进行特征融合,并基于获得的样本融合特征,获得预测请求;
基于所述预测请求和所述请求标签的差异,进行模型调参。
数据查询方法与上述方法实施例基于同一发明构思,本申请实施例中还提供了一种计算机设备。在一种实施例中,该计算机设备可以是服务器,如图3所示的服务器320。在该实施例中,计算机设备的结构可以如图23所示,包括存储器2301,通讯模块2303以及一个或多个处理器2302。
存储器2301,用于存储处理器2302执行的计算机程序。存储器2301可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及运行即时通讯功能所需的程序等;存储数据区可存储各种即时通讯信息和操作指令集等。
存储器2301可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器2301也可以是非易失性存储器(non-volatilememory),例如只读存储器,快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);或者存储器2301是能够用于携带或存储具有指令或数据结构形式的期望的计算机程序并能够由计算机存取的任何其他介质,但不限于此。存储器2301可以是上述存储器的组合。
处理器2302,可以包括一个或多个中央处理单元(central processing unit,CPU)或者为数字处理单元等等。处理器2302,用于调用存储器2301中存储的计算机程序时实现上述数据查询方法。
通讯模块2303用于与终端设备和其他服务器进行通信。
本申请实施例中不限定上述存储器2301、通讯模块2303和处理器2302之间的具体连接介质。本申请实施例在图23中以存储器2301和处理器2302之间通过总线2304连接,总线2304在图23中以粗线描述,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线2304可以分为地址总线、数据总线、控制总线等。为便于描述,图23中仅用一条粗线描述,但并不描述仅有一根总线或一种类型的总线。
存储器2301中存储有计算机存储介质,计算机存储介质中存储有计算机可执行指令,计算机可执行指令用于实现本申请实施例的数据查询方法方法。处理器2302用于执行上述的数据查询方法,如图4、图9、图12、图17所示。
在另一种实施例中,计算机设备也可以是其他计算机设备,如图3所示的终端设备310。在该实施例中,计算机设备的结构可以如图24所示,包括:通信组件2410、存储器2420、显示单元2430、摄像头2440、传感器2450、音频电路2460、蓝牙模块2470、处理器2480等部件。
通信组件2410用于与服务器进行通信。在一些实施例中,可以包括电路无线保真(Wireless Fidelity,WiFi)模块,WiFi模块属于短距离无线传输技术,计算机设备通过WiFi模块可以帮助用户收发信息。
存储器2420可用于存储软件程序及数据。处理器2480通过运行存储在存储器2420的软件程序或数据,从而执行终端设备310的各种功能以及数据处理。存储器2420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。存储器2420存储有使得终端设备310能运行的操作系统。本申请中存储器2420可以存储操作系统及各种应用程序,还可以存储执行本申请实施例中的数据查询方法的计算机程序。
显示单元2430还可用于显示由用户输入的信息或提供给用户的信息以及终端设备310的各种菜单的图形用户界面(graphical user interface,GUI)。具体地,显示单元2430可以包括设置在终端设备310正面的显示屏2432。其中,显示屏2432可以采用液晶显示器、发光二极管等形式来配置。显示单元2430可以用于显示本申请实施例中的数据查询方法用户界面等。
显示单元2430还可用于接收输入的数字或字符信息,产生与终端设备310的用户设置以及功能控制有关的信号输入,具体地,显示单元2430可以包括设置在终端设备310正面的触控屏2431,可收集用户在其上或附近的触摸操作,例如点击按钮,拖动滚动框等。
其中,触控屏2431可以覆盖在显示屏2432之上,也可以将触控屏2431与显示屏2432集成而实现终端设备310的输入和输出功能,集成后可以简称触摸显示屏。本申请中显示单元2430可以显示应用程序以及对应的操作步骤。
摄像头2440可用于捕获静态图像,用户可以将摄像头2440拍摄的图像通过应用发布评论。摄像头2440可以是一个,也可以是多个。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给处理器2480转换成数字图像信号。
终端设备还可以包括至少一种传感器2450,比如加速度传感器2451、距离传感器2452、指纹传感器2453、温度传感器2454。终端设备还可配置有陀螺仪、气压计、湿度计、温度计、红外线传感器、光传感器、运动传感器等其他传感器。
音频电路2460、扬声器2461、传声器2462可提供用户与终端设备310之间的音频接口。音频电路2460可将接收到的音频数据转换后的电信号,传输到扬声器2461,由扬声器2461转换为声音信号输出。终端设备310还可配置音量按钮,用于调节声音信号的音量。另一方面,传声器2462将收集的声音信号转换为电信号,由音频电路2460接收后转换为音频数据,再将音频数据输出至通信组件2410以发送给比如另一终端设备310,或者将音频数据输出至存储器2420以便进一步处理。
蓝牙模块2470用于通过蓝牙协议来与其他具有蓝牙模块的蓝牙设备进行信息交互。例如,终端设备可以通过蓝牙模块2470与同样具备蓝牙模块的可穿戴计算机设备(例如智能手表)建立蓝牙连接,从而进行数据交互。
处理器2480是终端设备的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器2420内的软件程序,以及调用存储在存储器2420内的数据,执行终端设备的各种功能和处理数据。在一些实施例中,处理器2480可包括一个或多个处理单元;处理器2480还可以集成应用处理器和基带处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,基带处理器主要处理无线通信。可以理解的是,上述基带处理器也可以不集成到处理器2480中。本申请中处理器2480可以运行操作系统、应用程序、用户界面显示及触控响应,以及本申请实施例的数据查询方法。另外,处理器2480与显示单元2430耦接。
在一些可能的实施方式中,本申请提供的数据查询方法的各个方面还可以实现为一种程序产品的形式,其包括计算机程序,当程序产品在计算机设备上运行时,计算机程序用于使计算机设备执行本说明书上述描述的根据本申请各种示例性实施方式的数据查询方法中的步骤,例如,计算机设备可以执行如图4、图9、图12、图17中所示的步骤。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本申请的实施方式的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括计算机程序,并可以在计算机设备上运行。然而,本申请的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被命令执行系统、装置或者器件使用或者与其结合使用。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由命令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的计算机程序,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。计算机程序可以完全地在用户计算机设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算机设备上部分在远程计算机设备上执行、或者完全在远程计算机设备或服务器上执行。在涉及远程计算机设备的情形中,远程计算机设备可以通过任意种类的网络包括局域网(LAN)或广域网(WAN)连接到用户计算机设备,或者,可以连接到外部计算机设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
此外,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (14)
1.一种数据查询方法,其特征在于,所述方法包括:
分别对获得的历史查询文本、当前查询文本和目标文件进行语义特征提取,获取相应的历史语义特征、当前语义特征和文件语义特征;
根据所述历史查询文本对所述当前查询文本进行改写处理,获得改写查询文本,并提取所述改写查询文本中的改写内容,在所述历史查询文本和所述当前查询文本中的目标位置信息;
基于所述目标位置信息,分别对所述历史语义特征和所述当前语义特征进行编码,获得相应的历史上下文特征和当前上下文特征;
将所述历史上下文特征、所述当前上下文特征和所述文件语义特征进行特征融合,并基于获得的目标融合特征,获得目标查询请求,并从所述目标文件中获得与所述目标查询请求匹配的信息。
2.如权利要求1所述的方法,其特征在于,所述根据所述历史查询文本对所述当前查询文本进行改写处理,获得改写查询文本,包括:
对所述历史查询文本和所述当前查询文本进行拼接处理,获得查询文本序列;
基于预设权重参数,对所述查询文本序列中各关键词进行权重处理,获得所述各关键词之间的语义关联关系;
基于所述语义关联关系,对所述查询文本序列进行改写处理,获得改写查询特征;
将所述改写查询特征转换为所述改写查询文本。
3.如权利要求1所述的方法,其特征在于,所述提取所述改写查询文本中的改写内容,在所述历史查询文本和所述当前查询文本中的目标位置信息,包括:
将所述改写查询文本与所述当前查询文本进行比对,从所述改写查询文本中,确定出相较于所述当前查询文本的改写内容,并确定所述改写内容在所述当前查询文本中的当前位置信息;其中,所述改写内容包括替换文本内容和插入文本内容中的至少一种;
将所述改写内容和所述历史查询文本进行匹配处理,获得所述改写内容在所述历史查询文本中的历史位置信息;
基于所述当前位置信息和所述历史位置信息,获得所述目标位置信息。
4.如权利要求1所述的方法,其特征在于,所述将所述历史上下文特征、所述当前上下文特征和所述文件语义特征进行特征融合,并基于获得的目标融合特征,获得目标查询请求,包括:
对所述历史查询文本和所述当前查询文本,以及所述目标文件的文本进行拼接处理,获得关系文本序列;
基于预设映射参数,对所述关系文本序列中各关键词进行匹配映射处理,获得所述各关键词之间的匹配映射关系;
基于所述匹配映射关系,分别对所述历史语义特征、所述当前语义特征和所述文件语义特征之间,具有匹配映射关系的特征元素进行编码,获得相应的历史关系特征、当前关系特征和文件关系特征;
将所述历史上下文特征、所述当前上下文特征与所述历史关系特征、所述当前关系特征和所述文件关系特征进行特征融合,获得所述目标融合特征,并基于所述目标融合特征,获得目标查询请求。
5.如权利要求4所述的方法,其特征在于,所述将所述历史上下文特征、所述当前上下文特征与所述历史关系特征、所述当前关系特征和所述文件关系特征进行特征融合,获得所述目标融合特征,包括:
将所述历史上下文特征、所述当前上下文特征分别与所述历史关系特征、所述当前关系特征进行相对应的特征元素相加聚合处理,获得历史融合特征和当前融合特征;
将所述历史融合特征和所述当前融合特征,以及所述文件关系特征进行拼接处理,获得所述目标融合特征。
6.如权利要求1-5中任一所述的方法,其特征在于,分别对获得的历史查询文本、当前查询文本和目标文件进行语义特征提取,获取相应的历史语义特征、当前语义特征和文件语义特征之前,还包括:
基于获得的所述当前查询文本的文本内容,确定所述当前查询文本查询的所述目标文件,并获取所述目标文件关联的各历史查询文本中,符合预设选取条件的所述历史查询文本,所述预设选取条件包含以下至少一种:历史查询文本在所述当前查询文本前的设定时段内、历史查询文本的数量不大于设定数量阈值。
7.如权利要求1-5中任一所述的方法,其特征在于,所述基于所述目标位置信息,分别对所述历史语义特征和所述当前语义特征进行编码,获得相应的历史上下文特征和当前上下文特征,包括:
基于注意力机制,采用所述目标位置信息,分别对所述历史语义特征和所述当前语义特征进行编码,获得所述历史上下文特征和所述当前上下文特征。
8.如权利要求1-5中任一所述的方法,其特征在于,所述方法是通过目标转换模型执行的,所述目标转换模型的训练过程如下:
基于预设的训练样本集对原始转换模型进行多轮迭代训练,获得所述目标转换模型,每个训练样本包括历史样本、当前样本、文件样本和请求标签,所述历史样本和所述当前样本,用于从所述文件样本中获得与所述请求标签匹配的信息;其中,在一轮迭代过程中,执行以下操作:
分别对一个训练样本中的历史样本、当前样本、文件样本进行语义特征提取,获取相应的历史样本特征、当前样本特征和文件样本特征;
根据所述历史样本对所述当前样本进行改写处理,获得的改写样本文本,并提取所述改写样本文本中的改写内容,在所述历史样本和所述当前样本中的文本位置信息;
基于所述文本位置信息,分别对所述历史样本和所述当前样本进行编码,将获得的历史样本上下文特征和当前样本上下文特征,与所述文件样本特征进行特征融合,并基于获得的样本融合特征,获得预测请求;
基于所述预测请求和所述请求标签的差异,进行模型调参。
9.一种数据查询装置,其特征在于,所述装置包括:
特征提取单元,用于分别对获得的历史查询文本、当前查询文本和目标文件进行语义特征提取,获取相应的历史语义特征、当前语义特征和文件语义特征;
改写单元,用于根据所述历史查询文本对所述当前查询文本进行改写处理,获得改写查询文本,并提取所述改写查询文本中的改写内容,在所述历史查询文本和所述当前查询文本中的目标位置信息;
上下文单元,用于基于所述目标位置信息,分别对所述历史语义特征和所述当前语义特征进行编码,获得相应的历史上下文特征和当前上下文特征;
特征融合单元,用于将所述历史上下文特征、所述当前上下文特征和所述文件语义特征进行特征融合,并基于获得的目标融合特征,获得目标查询请求,并从所述目标文件中获得与所述目标查询请求匹配的信息。
10.如权利要求9所述的装置,其特征在于,所述改写单元具体用于,
对所述历史查询文本和所述当前查询文本进行拼接处理,获得查询文本序列;
基于预设权重参数,对所述查询文本序列中各关键词进行权重处理,获得所述各关键词之间的语义关联关系;
基于所述语义关联关系,对所述查询文本序列进行改写,获得改写查询特征;
将所述改写查询特征转换为所述改写查询文本。
11.如权利要求9所述的装置,其特征在于,所述改写单元具体用于,
将所述改写查询文本与所述当前查询文本进行比对,从所述改写查询文本中,确定出相较于所述当前查询文本的改写内容,并确定所述改写内容在所述当前查询文本中的当前位置信息;其中,所述改写内容包括替换文本内容和插入文本内容中的至少一种;
将所述改写内容和所述历史查询文本进行匹配处理,获得所述改写内容在所述历史查询文本中的历史位置信息;
基于所述当前位置信息和所述历史位置信息,获得所述目标位置信息。
12.如权利要求9所述的装置,其特征在于,所述特征融合单元具体用于,
对所述历史查询文本和所述当前查询文本,以及所述目标文件的文本进行拼接处理,获得关系文本序列;
基于预设映射参数,对所述关系文本序列中各关键词进行匹配映射处理,获得所述各关键词之间的匹配映射关系;
基于所述匹配映射关系,分别对所述历史语义特征、所述当前语义特征和所述文件语义特征之间,具有匹配映射关系的特征元素进行编码,获得相应的历史关系特征、当前关系特征和文件关系特征;
将所述历史上下文特征、所述当前上下文特征与所述历史关系特征、所述当前关系特征和所述文件关系特征进行特征融合,获得所述目标融合特征,并基于所述目标融合特征,获得目标查询请求。
13.一种计算机可读非易失性存储介质,其特征在于,所述计算机可读非易失性存储介质存储有程序,当所述程序在计算机上运行时,使得计算机实现执行权利要求1至8中任一项权利要求所述的方法。
14.一种计算机设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于调用所述存储器中存储的计算机程序,按照获得的程序执行如权利要求1至8任一项权利要求所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311026467.9A CN116737756B (zh) | 2023-08-15 | 2023-08-15 | 一种数据查询方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311026467.9A CN116737756B (zh) | 2023-08-15 | 2023-08-15 | 一种数据查询方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116737756A true CN116737756A (zh) | 2023-09-12 |
CN116737756B CN116737756B (zh) | 2023-11-03 |
Family
ID=87901614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311026467.9A Active CN116737756B (zh) | 2023-08-15 | 2023-08-15 | 一种数据查询方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116737756B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190220471A1 (en) * | 2018-01-18 | 2019-07-18 | Samsung Electronics Company, Ltd. | Methods and Systems for Interacting with Mobile Device |
CN112800474A (zh) * | 2021-03-19 | 2021-05-14 | 北京安华金和科技有限公司 | 一种数据脱敏方法、装置、存储介质及电子装置 |
WO2022000934A1 (zh) * | 2020-06-28 | 2022-01-06 | 北京百度网讯科技有限公司 | 检索项改写方法、装置、设备以及存储介质 |
CN114547274A (zh) * | 2022-04-26 | 2022-05-27 | 阿里巴巴达摩院(杭州)科技有限公司 | 多轮问答的方法、装置及设备 |
CN114625759A (zh) * | 2022-03-18 | 2022-06-14 | 腾讯科技(深圳)有限公司 | 模型训练方法、智能问答方法、设备、介质及程序产品 |
CN115587598A (zh) * | 2022-11-03 | 2023-01-10 | 思必驰科技股份有限公司 | 多轮对话改写方法、设备及介质 |
CN115994211A (zh) * | 2022-12-19 | 2023-04-21 | 镁佳(北京)科技有限公司 | 一种文本处理方法、装置、电子设备及存储介质 |
-
2023
- 2023-08-15 CN CN202311026467.9A patent/CN116737756B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190220471A1 (en) * | 2018-01-18 | 2019-07-18 | Samsung Electronics Company, Ltd. | Methods and Systems for Interacting with Mobile Device |
WO2022000934A1 (zh) * | 2020-06-28 | 2022-01-06 | 北京百度网讯科技有限公司 | 检索项改写方法、装置、设备以及存储介质 |
CN112800474A (zh) * | 2021-03-19 | 2021-05-14 | 北京安华金和科技有限公司 | 一种数据脱敏方法、装置、存储介质及电子装置 |
CN114625759A (zh) * | 2022-03-18 | 2022-06-14 | 腾讯科技(深圳)有限公司 | 模型训练方法、智能问答方法、设备、介质及程序产品 |
CN114547274A (zh) * | 2022-04-26 | 2022-05-27 | 阿里巴巴达摩院(杭州)科技有限公司 | 多轮问答的方法、装置及设备 |
CN115587598A (zh) * | 2022-11-03 | 2023-01-10 | 思必驰科技股份有限公司 | 多轮对话改写方法、设备及介质 |
CN115994211A (zh) * | 2022-12-19 | 2023-04-21 | 镁佳(北京)科技有限公司 | 一种文本处理方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116737756B (zh) | 2023-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111026842B (zh) | 自然语言处理方法、自然语言处理装置及智能问答系统 | |
CN113704388A (zh) | 多任务预训练模型的训练方法、装置、电子设备和介质 | |
CN116720004B (zh) | 推荐理由生成方法、装置、设备及存储介质 | |
CN111046275A (zh) | 基于人工智能的用户标签确定方法及装置、存储介质 | |
CN115131638B (zh) | 视觉文本预训练模型的训练方法、装置、介质和设备 | |
CN114238690A (zh) | 视频分类的方法、装置及存储介质 | |
CN115114395A (zh) | 内容检索及模型训练方法、装置、电子设备和存储介质 | |
CN116186197A (zh) | 话题推荐方法、装置、电子设备及存储介质 | |
CN116628345B (zh) | 一种内容推荐方法、装置、电子设备和存储介质 | |
CN113868451A (zh) | 基于上下文级联感知的社交网络跨模态对话方法及装置 | |
CN113761280A (zh) | 媒体数据处理方法、装置、电子设备及计算机存储介质 | |
CN116977701A (zh) | 视频分类模型训练的方法、视频分类的方法和装置 | |
CN116737756B (zh) | 一种数据查询方法、装置、设备及存储介质 | |
CN116956183A (zh) | 多媒体资源推荐方法、模型训练方法、装置及存储介质 | |
CN112861474B (zh) | 一种信息标注方法、装置、设备及计算机可读存储介质 | |
Ullah et al. | A review of multi-modal learning from the text-guided visual processing viewpoint | |
CN115130461A (zh) | 一种文本匹配方法、装置、电子设备及存储介质 | |
CN114529761A (zh) | 基于分类模型的视频分类方法、装置、设备、介质及产品 | |
CN113761933A (zh) | 检索方法、装置、电子设备及可读存储介质 | |
CN115146645A (zh) | 一种语义解析方法以及相关设备 | |
CN116956908A (zh) | 一种自然语言处理方法及装置 | |
CN117711001B (zh) | 图像处理方法、装置、设备和介质 | |
CN116955636A (zh) | 一种知识图谱处理方法及相关装置 | |
CN117573842B (zh) | 文档检索方法以及自动问答方法 | |
CN117540024B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |