CN114168615A - 自然语言查询智能变电站scd文件的方法及系统 - Google Patents
自然语言查询智能变电站scd文件的方法及系统 Download PDFInfo
- Publication number
- CN114168615A CN114168615A CN202111496011.XA CN202111496011A CN114168615A CN 114168615 A CN114168615 A CN 114168615A CN 202111496011 A CN202111496011 A CN 202111496011A CN 114168615 A CN114168615 A CN 114168615A
- Authority
- CN
- China
- Prior art keywords
- semantic
- natural language
- cypher
- querying
- sentence
- 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
Images
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
- G06F16/2453—Query optimisation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Machine Translation (AREA)
Abstract
本发明提供了一种自然语言查询智能变电站二次系统SCD文件的方法及系统,包括:将SCD文件导入图数据库;获取输入图数据库的自然语言查询语句,经过知识图谱修正得到建议问句,在所述建议问句中补充省略属性,将专业术语同义词替换为标准参考词;对经过修正的所述自然语言查询语句进行多关系语义信息提取,得到的多关系语义信息表示为语义三元组,将语义三元组转化为Cypher代码段,利用组装模板将Cypher代码段拼装成Cypher查询语句;利用Cypher查询语句在所述图数据库查询相应SCD文件中的内容。本发明可以减轻初学者查询SCD数据的难度,为探索性学习SCL语言和SCD文件的结构提供更加自然、友好的支持。
Description
技术领域
本发明涉及电力系统领域,具体地,涉及一种自然语言查询智能变电站SCD文件的方法及系统。
背景技术
智能变电站是实现坚强智能电网的关键基础设施,智能变电站的设计需要遵循IEC TC57所提出的IEC 61850标准,实现了不同厂家的智能电子装置(IntelligentElectronic Device,IED)之间的互操作性,提高了变电站自动化系统的可拓展性和易维护性。IEC 61850标准第6部分定义的变电站配置语言(Substation ConfigurationLanguage,SCL)是实现IED之间互操作性的基础,SCL文件体系中最关键的SCD(SubstationConfiguration Description)文件描述了智能变电站二次系统的关键配置信息,主要包括IED配置信息、通信参数等信息。
Thomas等提出了变电站自动化的实验设计需要考虑纳入IEC 61850的相关协议以及分析软件。但是,SCL语言的标准体系比较复杂,一般工程技术人员难以直接阅读SCD文件;同时,SCD的文件代码很长,一个典型的220KV智能变电站的SCD文件可能有近千万行代码,依靠XMLSpy、XML Notepad等XML文本编辑工具搜索数据的过程复杂、效率低下。
目前,多个设备厂家和软件公司都开发了二次系统的SCD配置软件,这些软件一般都按照预定的设计与调试业务需求提供SCD的信息浏览功能,查询模式固化,查询条件的输入不够灵活,而且一般不提供查询结果与SCD代码之间的对应,用于学习SCD文件仍旧存在很多局限。目前关于SCD的研究主要集中在SCD文件的版本比对和校验以及虚回路构建方面,但是在如何提高SCD文件查询的灵活性和方便性方面仍有很多可改进的空间。因此,目前的二次系统配置软件难以满足SCD探索性实验的教学需求。
近年一些学者提出了基于自然语言的数据查询技术,探讨了以自然语言问句的形式查询BIM设计文件或数据库,最近有文献探讨了用自然语言结合知识图谱查询建筑物IFC文件的消防信息。但由于SCD文件和IFC文件遵循的标准不同,面向的专业不同,前人提出的基于自然语言的IFC查询技术不适用于SCD文件的查询,需要根据智能变电站二次逻辑系统的设计和管理需求,开发面向SCD文件查询的自然语言交互工具。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种自然语言查询智能变电站SCD文件的方法及系统。
根据本发明提供的一种自然语言查询智能变电站SCD文件的方法,包括:
导入步骤:将SCD文件导入图数据库;
信息补足步骤:获取输入图数据库的自然语言查询语句,经过知识图谱修正得到建议问句,在所述建议问句中补充省略属性,将专业术语同义词替换为标准参考词;
语义信息提取步骤:对经过修正的所述自然语言查询语句进行多关系语义信息提取,将得到的多关系语义信息表示为语义三元组;
转化步骤:根据语义三元组得到通用问句,根据所述通用问句从已有的组装模板数据库中查询相应的组装模板,将语义三元组转化为Cypher代码段,利用根据语义三元组查询得到的组装模板将Cypher代码段组装为图数据库的Cypher查询语句;
查询步骤:利用所述Cypher查询语句在所述图数据库查询相应SCD文件中的内容。
优选地,所述信息补足步骤包括:
利用知识图谱对自然语言查询语句通过添加SCL工程属性,并将专业术语同义词替换为标准参考词。
优选地,所述信息提取步骤包括:
计算经过修正的所述自然语言查询语句中字符的字符向量;
对每个字符的上下文特征进行评估,得到字符之间的语言或语义关系;
根据上下文特征来识别所有主语,并识别每个主语关联的宾语及谓语,得到语义三元组。
优选地,所述转化步骤包括:
根据得到所述Cypher查询语句的一组语义三元组选择组装所述Cypher代码段的所述组装模板。
优选地,经过知识图谱修正得到建议问句包括:查找属性K[1]为值V[1]并且/或者…属性K[n]为值V[n]的节点m的相关节点n的属性L[1]…和属性L[n]。
根据本发明提供的一种自然语言查询智能变电站SCD文件的系统,包括:
导入模块:将SCD文件导入图数据库;
信息补足模块:获取输入图数据库的自然语言查询语句,经过知识图谱修正得到建议问句,在所述建议问句中补充省略属性,将专业术语同义词替换为标准参考词;
语义信息提取模块:对经过修正的所述自然语言查询语句进行语义信息提取,将得到的语义信息表示为语义三元组;
转化模块:根据语义三元组得到通用问句,根据所述通用问句从已有的组装模板数据库中查询相应的组装模板,将语义三元组转化为Cypher代码段,利用根据语义三元组查询得到的组装模板将Cypher代码段组装为图数据库的Cypher查询语句;
查询模块:利用所述Cypher查询语句在所述图数据库查询相应SCD文件中的内容。
优选地,所述信息补足模块包括:
利用知识图谱对自然语言查询语句通过添加SCL工程属性,并将专业术语同义词替换为标准参考词。
优选地,所述信息提取模块包括:
计算经过修正的所述自然语言查询语句中字符的字符向量;
对每个字符的上下文特征进行评估,得到字符之间的语言或语义关系;
根据上下文特征来识别所有主语,并识别每个主语关联的宾语及谓语,得到语义三元组。
优选地,所述转化模块包括:
根据得到所述Cypher查询语句的一组语义三元组选择组装所述Cypher代码段的所述组装模板。
优选地,经过知识图谱修正得到建议问句包括:查找属性K[1]为值V[1]并且/或者…属性K[n]为值V[n]的节点m的相关节点n的属性L[1]…和属性L[n]。
与现有技术相比,本发明具有如下的有益效果:
本发明采用自然语言查询SCD文件,先将SCD文件转换为图数据存储,同时提出从自然语言自动生成Cypher查询语句的方法。基于实际工程案例的SCD文件进行的实验结果表明上述方法可以减轻初学者查询SCD数据的难度,为探索性学习SCL语言和SCD文件的结构提供更加自然、友好的支持。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明的工作流程图;
图2为三元组的提取流程图;
图3为查询语句生成流程图;
图4为本发明的查询结果示意图;
图5为从三元组集合生成Cypher查询语句的示意图;
图6为主体抽取器的结构示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
如图1所示,本实施例提供的一种自然语言查询智能变电站SCD文件的方法,包括如下步骤。
一、导入步骤:将SCD文件导入图数据库。
虽然以XML格式存储的SCD文件数据节点之间的层级关系非常清晰,但是许多二次系统业务查询涉及多个不同层次的节点之间复杂的关联关系。直接以XML文件的形式进行查询,在编程成本和效率方面都是不经济的。如果采用关系型数据库存储SCD文件,进行查询时将产生大量的Join操作,造成查询效率低、算力消耗大的弊端。因此,考虑采用NoSQL数据库存储SCD文件,相对于键值存储数据库和文档数据库,图数据库具有在节点之间按照路径查询效率高、操作简单的优势。
图数据库用节点(Node)数据元素,用两个节点之间的边(Edge)表示数据元素之间的二元关系,节点和边都允许定义属性,因而更加数据对象之间的复杂关系。与其他类型的数据库相比,图更适合基于路径条件进行多层次、网状连接数据的搜索,同时其搜索引擎对关联查询进行了优化,能够有效防止局部数据查询引发的全部数据读取。常用图数据库有Neo4j、JanusGraph和HugeGraph,其中Neo4j的图分析功能相对来说更加完善,支持十亿级数据规模,并且提供了丰富的图论算法,包括路径搜索、相似性、中心性、社区检测、链接预测等,还提供了查询结果的可视化功能,满足大型SCD文件的导入和存储。因此,通过编程把SCD文件导入Neo4J图数据库。
图数据库具有统一的查询语言。Neo4J的查询语言Cypher是一种声明式语言,不需要像传统的过程式编程一样描述具体的计算步骤,只需要用形式化语言描述从数据筛选的结果与约束条件即可,可以更容易地与自然语言问句进行映射。表1列出了常用的Cypher命令,包括数据节点、属性、路径的创建、删除和查询。除了上述基本数据操作命令意外,Cypher查询语句中还可使用扩展函数库,如可使用APOC的字符串拼接函数从ExtRef节点的6个属性接出输出虚端子的引用地址。
表1.Cypher的基本操作命令
特别是,Cypher允许按不确定路径进行查询,不需要显式地定义路径中的各个节点,而只需定义一些关键路径信息即可。如表1的查询的第3个例子所示,需要查询描述为“断路器位置”的虚回路所关联的IED,两个IED之间的连接路径很长,满足desc(描述)属性为“断路器位置”条件的虚回路关联只是上述“路径”上的一个“路段”,这与人类自然语言的查询思维方式非常相似,也是选取Neo4J的一个主要原因。
二、信息补足步骤:获取输入图数据库的自然语言查询语句,经过知识图谱修正得到建议问句,在建议问句中补充省略属性,将专业术语同义词替换为标准参考词。具体的,利用知识图谱对自然语言查询语句通过添加SCL工程属性,并将专业术语同义词替换为标准参考词。
许多现有NLP培训语料库主要来自新闻、社交网络、电子商务网站和科学文献,不幸的是,涉及变电站自动化的术语较少,尤其是SCD文件。许多现有NLP工具仍然难以识别“CYG Sunri”是设备制造商的名称。通过训练现有NLP模型来识别此类专业词汇或命名实体的成本相对较高,因此开发知识图谱以使用下一段内容阐述的信息提取模型来辅助语义信息的提取。加入知识图谱的另一个原因是用“标准”词替换疑问句中的同义词。例如,“电子智能设备”、“智能设备”和“智能设备”实际上都表示IEC 61850标准中定义的智能电子设备的相同概念,其缩写“IED”在SCD文件中正式使用。在知识图谱数据库中,上述所有同义词都等于SCD文件中的单词“IED”。
进一步的,考虑到在本发明的应用背景是专业技术人员查询SCD,在极端情况下指示语义关系的特征词汇甚至被直接省略,给计算机识别语义管理带来很大的困难,为此需要在进行语义分析前进行信息增补。比如,查询用户提出查询问句“给出南瑞继保的IED”,其中省略掉了“生产商”,因为专业人员在此语境下都知道“南瑞继保”是继电保护智能设备的生产厂家。为了解决这个问题,可以从收集工程设计SCD文件中梳理获得SCL属性的值,获得一个命名实体对应SCL关键词的列表,每个命名实体,如“南瑞继保”或“NRR”都对应一个SCL语言的工程属性“LED.manufacture”,其中的IED为XML节点标签,manufacture为IED节点的属性键名。有了这个知识图谱,当自然语言问句中缺少工程属性时,系统可以自动填补,比如上述问句系统可以自动填补为“给出制造商为南瑞继保的IED”,自动填补的“制造商”是同义词库中的标准参考词汇,可以通过知识图谱中的实体名称查询数据库反推其SCL工程属性。
如图2所示,经过信息补充的自然语言问题被输入信息提取模型,该模型用于从经过修正的自然语言查询语句中提取语义三元组。图2显示了从输入问题到生成的语义三元组的语义信息提取管道,主要由四个函数组成。
字符嵌入模块计算查询问题中每个汉字的字符向量。然后,共享语义编码器模块评估每个字符的上下文特征,以获得字符之间的语言或语义关系,此处的上下文指示所指示字符前后的字符,并相应地使用Bi LSTM模型。随后,主语提取器模块使用计算出的上下文特征识别所有候选主语,随后,宾语和谓语提取器模块使用在前一步骤中计算出的上下文特征识别每个已识别主语实体的关联宾语实体和谓语。因此,可以从自然语言问题中提取多个语义三元组。
单纯的一个汉字难以存储有效的语义信息,而一个具体的词语与一个单独的汉字相比,其表示的语义信息更加明确、充分。因此,仅采用字级别的向量化表示,将无法充分利用词语所携带的语义信息,对文本进行分析。特别是,对于本发明而言,一条规范中往往存在大量的领域专用术语,这些专有词汇的语义信息对于分析规范文本数据至关重要。
在获取到规范文本的字向量和词向量表示后,将字向量表示和词向量表示融合。一般的,给定规范语句S={c1,c2,c3,……,cn},其中ci为语句的第i个字符,本文定义第i个字符的字词混合字向量xi如下:
xi=[ec(ci)十WTew(word(ci))],
字词混合的字向量,就是将词向量序列经过一个矩阵变换到跟字向量相同的维度,并将两者相加。在模型训练过程中,固定预训练词向量模型和预训练字向量模型不变,因此需要不断优化变换矩阵。从另一个角度看,也可以认为是通过变换矩阵,将词向量模型中的先验词语语义信息融入到字向量中,既充分利用了词语的先验语义信息,又保留了字向量的灵活性。字词混合的字向量表示只提供了规范条文中每一个字的先验语义信息,仅依赖字词的先验语义信息很难直接表述语句所表达的实际语义信息,需要进一步对字序列进行建模,挖掘序列中携带的语义信息。因此,本发明设计了一种基于双向长短时记忆网络的语义编码器对规范文本进行序列建模,充分挖掘上下文信息,从而抽取潜在的语义特征,并且将抽取的特征作为底层参数共享给下游任务使用,因此也称之为共享语义编码器。
三、信息提取步骤:对经过修正的自然语言查询语句进行多关系语义信息提取,将得到的多关系语义信息表示为语义三元组。具体的,计算经过修正的自然语言查询语句中字符的字符向量,对每个字符的上下文特征进行评估,得到字符之间的语言或语义关系,根据上下文特征来识别所有主语,并识别每个主语关联的宾语及谓语,得到多关系语义三元组。
三元组结构是由主体(Subject Entity)、谓词(Predicate)、客体(ObjectEntity)三部分构成的二元关系模型,表示为“[主体,谓词,客体]”,也记为Subject-Predicate-Object(SPO)三元组。其中,谓词定义了主体和客体之间存在的语义关系(由主体指向客体)。在信息抽取领域,主体也被称为头实体,客体被称为尾实体,谓词又被称为语义关系。语义关系的抽取划分为两类:抽取仅涉及两个命名实体的语义关系,称为二元关系;抽取涉及三个及以上实体之间的语义关系,称为多元关系抽取。一般的,可以通过抽取多个二元语义关系构造多元语义关系。
共享语义编码器核心是采用了双向长短期记忆(Bidirectional Long Short-term Memory,BiLSTM)模型对文本语句的上下文进行建模。传统循环神经网络在处理较长时序数据过程中,难以解决前期记忆消失(梯度弥散)和后期记忆无法写入(梯度爆炸)的问题,长短时记忆网络通过引入门控机制不断修正记忆,从而解决了长依赖学习的问题。
一个LSTM模型包括门机制“记住”(获取新信息)和“忘记”(放弃不必要的信息)。然而,单向的LSTM只能依据之前时刻的时序信息来预测下一时刻的输出,但在有些问题中,当前时刻的输出不仅与之前的状态有关,还可能和未来的状态有关系。例如在本文中,预测规范文本中某几个连续字符是否为命名实体,不仅需要根据前文来判断,还需要考虑它后面的内容,才能做出正确的判断。因此,本文采用了双向LSTM模型,即从前、后两个方向抽取上下文特征。具体的,在前进(顺读)方向,Bi-LSTM网络沿着输入向量序列从左到右计算,而在反(逆读)方向,它从右向左计算。通过这种方式,一个字符与其周围字符(在左边和右边)之间的关联)通过连接前向和后向LSTM隐藏状态进行编码。一般的,BiLSTM模型的输出可以表示为下式:
其中,和分别表示在t时间步前向(从左向右)和后向(从右向左)的隐状态,表示矩阵拼接操作。借助BiLSTM模型,可以抽取出规范文本的上下文特征ht,为了进一步挖掘文本语句的全局特征,本文对BiLSTM模型输出的隐状态进行最大池化(MaxPooling),从而得到语句特征g。最后,将规范文本的上下文特征ht与语句特征g进行拼接,形成任务共享特征[ht;g]。任务共享特征将会被下游模型共同使用,从而实现底层参数共享,达到联合学习的目的。
对每个待处理的句子,先抽取出规范文本中的所有候选主体,然后依据每一个候选主体的语义信息,抽取所述候选主体对应的客体和语义关系。主体抽取器(SubjectExtractor)的功能就是识别规范文本中的所有可能的候选主体。在中文查询语句中,候选主体往往由多个连续的字符组成。为了识别出这些命名实体,并且能够在此基础上进一步发现重叠语义关系,本文引入了一种指针标注结构,将候选主体的抽取问题、客体和语义关系的抽取问题均建模为序列标注任务。此处的重叠语义关系指句子中一个主体可以和多个客体之间存在不同类型的语义关系。
此处采用指针标注结构是为了计算机需要对查询问题进行语义编码,进一步根据编码结果,到相应的文本中找出对应的答案。指针标注结构通过提供一个起始位置指针和终止位置指针在文本中分割片段形成答案。本发明借助指针标注结构,从输入文本中抽取三元组。
主体抽取器在接收共享语义编码器输出的任务共享特征后,首先使用BiLSTM模型从共享特征中抽取任务特定的特征。然后,使用了两个多头自注意力模型分别学习主体的起始位置特征和终止位置特征。借助自注意力模型,可以在多任务学习的每一个子任务中挖掘哪些字/词对于该任务更加重要。
其中d表示BiLSTM层输出的隐状态维度,等于2dh。进一步的,多头自注意力机制就是将多个自注意力连接起来,从操作上来说,它将查询矩阵Q、键矩阵K和值矩阵V通过一个线性映射变为m个Q、K、V。通过多头注意力机制,模型能够使不同序列位置的不同子空间的表征信息来处理序列数据,可以获得更好的识别效果。
假设多头自注意力机制包含m个头,那么第i个注意力头可以由下式表示:
同样的,多头自注意力机制也可以用于学习主体的终止位置特征。考虑到主体起始位置的信息能够为终止位置的预测提供有益帮助,本文将第一个多头自注意力机制的输出hse-sta与任务特定特征hse拼接后初始化第二个多头自注意力机制的Q、K、V参数。直觉上,这种操作能够使模型在预测主体终止位置时充分利用起始位置的信息,强化起始位置与终止位置之间的潜在关联。记第二个多头自注意力机制的输出为那么在主体的终止位置标注过程中,字符ct的标签计算如下式所示:
经过上述过程,主体抽取器就将候选主体的识别分解为了两个序列标注任务,第一个序列标注任务负责识别候选主体的起始位置,若某个字符被识别为候选主体的起始字符,那么该字符对应的位置就会被标注上该主体的命名实体类型标签。第二个序列标注任务负责识别候选主体的终止位置,其标注过程与起始位置标注过程相同。
最终,使用交叉熵衡量主体抽取器预测的概率分布与真实分布之间的损失,主体抽取器的训练损失函数可以写为:
在获取所有候选主体后,客体与语义关系抽取器负责针对每一个候选主体,抽取其对应的所有客体以及与主客体间的语义关系。
对于一个候选主体,其自身的语义信息对预测与其语义关联的客体和语义关系至关重要。因此,在客体与语义关系抽取器中,首先需要对给定的主体进行语义编码。本文将给定主体所对应的任务共享特征的片段,输入到一个LSTM模型中,LSTM模型输出的最后一个隐状态作为给定主体的语义编码。将给定主体的语义编码与任务共享特征的每一个特征向量进行拼接,得到一个新的特征矩阵。这个新的特征矩阵可以被认为是既携带了上下文特征,同时还携带了给定主体特征的语义编码结果。
客体与语义关系抽取器的后续计算流程与主体抽取器相似。第一步,将携带有特定主体语义信息的特征矩阵输入到一个BiLSTM模型中,从而抽取任务特定的特征;第二步,借助两个多头自注意力机制以及全连接层构造两个序列标注任务,第一个序列标注任务负责标注所有候选客体的起始位置,第二个序列标注任务负责标注所有候选客体的终止位置。与主体抽取器不同的是,一个字符若被标注为候选客体的起始位置或终止位置,其标签不是命名实体的类型,而是给定主体与该候选客体的语义关系类型。这样一来,在给定主体的情况下,其客体和对应的语义关系可以同时被抽取。
一般的,对于一个给定主体,客体的起始位置和终止位置标注过程中,字符ct的标签计算分别如下所示:
其中,分别为第一个多头自注意力机制和第二个多头自注意力机制在时间戳t的输出;bope-sta、以及均为训练参数;|T′|为输出标签类型的数量,|T′|取值为语义关系的数量加1。最终,使用交叉熵衡量客体与语义关系抽取器预测的概率分布与真实分布之间的损失,客体与语义关系抽取器的训练损失函数为:
在模型训练阶段,通过共享语义编码器提供的任务共享特征,主体抽取器和客体与语义关系抽取器联合训练。在每个训练实例中,从规范文本的标准数据集中随机选取一个主体作为客体与语义关系抽取器的输入。通过衡量模型预测结果与标准结果之间的差异,计算主体抽取器和客体与语义关系抽取器的损失函数值,最后将两部分损失相加构成联合模型最终的损失函数:
本文使用Adam算法对模型最终的损失函数进行优化,从而使主体抽取、客体与语义关系抽取过程中产生的误差相互影响,每个子任务产生的误差受到其它任务的约束,进而强化命名实体与语义关系之间的潜在相互。模型训练完毕后,使用模型预测规范文本中三元组的推理算法伪代码如表3所示:伪代码1-3行主要展示了使用模型推理前的预备工作:设置规范文本长度参数n,初始化候选主体集合和三元组集合伪代码4-12行描述了根据主体抽取器的标注结果抽取所有候选主体的过程;伪代码13-24行描述了客体以及语义关系的抽取过程。
表3.推理算法伪代码
从上述推理算法可以看出,一般对于一个包含k个主体的规范语句,整个实体关系联合抽取任务被分解为2+2k个序列标注任务,其中前2个序列标注任务在主体抽取器中完成,主要目的是识别语句中的所有候选主体;后2k个序列标注任务在客体与语义关系抽取器中完成,主要目的是根据每一个主体识别其客体和对应的语义关系。
四、转化步骤:根据语义三元组得到通用问句,根据所述通用问句从已有的组装模板数据库中查询相应的组装模板,将语义三元组转化为Cypher代码段,利用根据语义三元组查询得到的组装模板将Cypher代码段组装为图数据库的Cypher查询语句。
图3说明了将自然语言问题转换为查询宇语句的过程。中文问题“查找*IL1101:RPIT/CBXCBR1.Pos.stVal*关联的MAC的地址”首先被补充完善。具体而言,原查询问题中经常存在一些省略,例如“iedname”、“FCDA”和“value”。图3说明了这些被省略的单词在专门为SCD开发的知识图谱的帮助下自动得到补充。同时,汉语单词的同义词“给出”也被标准单词替换“查找”存储在知识图谱数据库中。
随后,系统执行语义信息提取,产生语义三元组的集合,然后将这些语义三元组转换为Cypher代码段,如图3所示。例如,按照预定义的转换规则,将两个语义三元组“Find(Address,Value)”和“Has_Attribute(Mac,Address)”转换为Cypher代码段“MATCH aMac:Mac RETURN aMac.Address”。主要的谓词类型包括Find、Has_Attribute、Has_Connection和Has_Value的转换规则主要有四种。
代码段只是一个完整Cypher查询语句的组成部分,还需要借助典型查询句式的模板,才能将转化得到的Cypher代码段拼装形成完整的Cypher查询语句。从语义三元组派生的Cypher代码段应按照代码汇编模板进一步组装成完整的查询语句。这个组装模板的选择可以从语义三元组集合中推理出来。在采访了国家电网公司的15名工程师和设计师以及变电站自动化专业大学的研究人员后,收集了400多个问题,并从样本库中删除了一些复杂问题,因为这些问题对于计算机来说太难理解。许多被消除的问题然后被分解成几个简单的问题,这些问题可以被NLP工具理解。在所有人类问题中,超过52%的问题遵循图3所示的相似模式。最后,根据组装模板将Cypher代码段自动组装成一个完整的查询语句,如图3所示。
将语义三元组转换为Cypher查询语句分为三个步骤:
首先,将语义三元组转化为相应的Cypher代码段。表4给出了语义三元组转化Cypher代码段的模板。
表4.语义三元组转化Cypher代码段的模板
同时,根据语义三元组得到相应的通用问句,根据通用问句从已有的组装模板数据库中查询相应的组装模板,由此可根据查询得到的组装模板将Cypher代码段组装为完整的Cypher查询语句。根据语义三元组中主体、谓词、客体之间的关系,即可得到一个通用问句,不同的主体、谓词、客体分别可以得到对应的通用问句,组装模板数据库存储有不同的组装模板,每个组装模板分别与一个通用问句相对应,本发明对组装模板和通用问句的数量和形式不做限制。
Cypher代码段只是一个完整Cypher语句的组成部分,还需要借助通用问句对应的组装模板,才能将转化得到的Cypher代码段拼装形成完整的Cypher查询语句。通用问句通过调研访谈法获得。经过对工程技术人员、专业课教师和电力系统及其自动化专业学生的访谈,梳理出了400个典型问句。经过归纳整理,剔除了其中计算机难理解的95个复杂问句,这些被剔除的问句基本可以分解为多个简单的问句。剩余的305个问句经过知识图谱修正后,得到如下一个示例所示通用问句模式:
“查找属性K[1]为值V[1]并且/或者…属性K[n]为值V[n]的节点m的相关节点n的属性L[1]…和属性L[n]”。
针对上述不同的通用问句提供相应的组装模板,用于组装连接从三元组转换而来的Cypher代码段,从而得到Cypher查询语句。上述的通用问句只是举例,本领域技术人员知道,根据不同的主体、谓词、客体分别可以得到不同的通用问句。图5展示了上述示例通用问句与Cypher查询语句的对应关系。上面的示例通用问句是一个比较复杂的句式,有些语言成分是可以删减的。如问句“查找名称是IL1101的智能设备的逻辑节点的类型”,对应的Cypher查询语句是:
MATCH(A:IED)WHERE A.name=“IL1101”MATCH(A)-[*1..10]->(B)RETURNB.lnClass。
五、查询步骤:利用图数据库查询语句在图数据库查询相应SCD文件中的内容。
图4展示了5个典型的自然语言查询问题,对这5个问题系统都给出了正确的查询结果。进一步分析软件的日志文件,可以发现自动生成的Cypher语句也都正确。实验结果表明,原型软件系统正确完成了从自然语言到Cypher语句的翻译,并且输出了正确的查询结果。
本发明的自然语言查询方法可以大大降低新手工程师/设计师查询SCD文件的难度,为探索和学习SCD文件的结构提供更加自然友好的支持。
本发明还提供一种自然语言查询智能变电站SCD文件的系统,包括:
导入模块:将SCD文件导入图数据库。
信息补足模块:获取输入图数据库的自然语言查询语句,经过知识图谱修正得到建议问句,在所述建议问句中补充省略属性,将专业术语同义词替换为标准参考词。
信息提取模块:对经过修正的所述自然语言查询语句进行语义信息提取,将得到的语义信息表示为语义三元组。
转化模块:根据语义三元组得到通用问句,根据所述通用问句从已有的组装模板数据库中查询相应的组装模板,将语义三元组转化为Cypher代码段,利用根据语义三元组查询得到的组装模板将Cypher代码段组装为图数据库的Cypher查询语句。
查询模块:利用所述Cypher查询语句在所述图数据库查询相应SCD文件中的内容。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (10)
1.一种自然语言查询智能变电站SCD文件的方法,其特征在于,包括:
导入步骤:将SCD文件导入图数据库;
信息补足步骤:获取输入图数据库的自然语言查询语句,经过知识图谱修正得到建议问句,在所述建议问句中补充省略属性,将专业术语同义词替换为标准参考词;
语义信息提取步骤:对经过修正的所述自然语言查询语句进行多关系语义信息提取,将得到的多关系语义信息表示为语义三元组;
转化步骤:根据语义三元组得到通用问句,根据所述通用问句从已有的组装模板数据库中查询相应的组装模板,将语义三元组转化为Cypher代码段,利用根据语义三元组查询得到的组装模板将Cypher代码段组装为图数据库的Cypher查询语句;
查询步骤:利用所述Cypher查询语句在所述图数据库查询相应SCD文件中的内容。
2.根据权利要求1所述的自然语言查询智能变电站SCD文件的方法,其特征在于,所述信息补足步骤包括:
利用知识图谱对自然语言查询语句通过添加SCL工程属性,并将专业术语同义词替换为标准参考词。
3.根据权利要求1所述的自然语言查询智能变电站SCD文件的方法,其特征在于,所述信息提取步骤包括:
计算经过修正的所述自然语言查询语句中字符的字符向量;
对每个字符的上下文特征进行评估,得到字符之间的语言或语义关系;
根据上下文特征来识别所有主语,并识别每个主语关联的宾语及谓语,得到语义三元组。
4.根据权利要求1所述的自然语言查询智能变电站SCD文件的方法,其特征在于,所述转化步骤包括:
根据得到所述Cypher查询语句的一组语义三元组选择组装所述Cypher代码段的所述组装模板。
5.根据权利要求4所述的自然语言查询智能变电站SCD文件的方法,其特征在于,经过知识图谱修正得到建议问句包括:查找属性K[1]为值V[1]并且/或者…属性K[n]为值V[n]的节点m的相关节点n的属性L[1]…和属性L[n]。
6.一种自然语言查询智能变电站SCD文件的系统,其特征在于,包括:
导入模块:将SCD文件导入图数据库;
信息补足模块:获取输入图数据库的自然语言查询语句,经过知识图谱修正得到建议问句,在所述建议问句中补充省略属性,将专业术语同义词替换为标准参考词;
语义信息提取模块:对经过修正的所述自然语言查询语句进行语义信息提取,将得到的语义信息表示为语义三元组;
转化模块:根据语义三元组得到通用问句,根据所述通用问句从已有的组装模板数据库中查询相应的组装模板,将语义三元组转化为Cypher代码段,利用根据语义三元组查询得到的组装模板将Cypher代码段组装为图数据库的Cypher查询语句;
查询模块:利用所述Cypher查询语句在所述图数据库查询相应SCD文件中的内容。
7.根据权利要求6所述的自然语言查询智能变电站SCD文件的系统,其特征在于,所述信息补足模块包括:
利用知识图谱对自然语言查询语句通过添加SCL工程属性,并将专业术语同义词替换为标准参考词。
8.根据权利要求6所述的自然语言查询智能变电站SCD文件的系统,其特征在于,所述信息提取模块包括:
计算经过修正的所述自然语言查询语句中字符的字符向量;
对每个字符的上下文特征进行评估,得到字符之间的语言或语义关系;
根据上下文特征来识别所有主语,并识别每个主语关联的宾语及谓语,得到语义三元组。
9.根据权利要求6所述的自然语言查询智能变电站SCD文件的系统,其特征在于,所述转化模块包括:
根据得到所述Cypher查询语句的一组语义三元组选择组装所述Cypher代码段的所述组装模板。
10.根据权利要求6所述的自然语言查询智能变电站SCD文件的系统,其特征在于,经过知识图谱修正得到建议问句包括:查找属性K[1]为值V[1]并且/或者…属性K[n]为值V[n]的节点m的相关节点n的属性L[1]…和属性L[n]。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111496011.XA CN114168615A (zh) | 2021-12-08 | 2021-12-08 | 自然语言查询智能变电站scd文件的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111496011.XA CN114168615A (zh) | 2021-12-08 | 2021-12-08 | 自然语言查询智能变电站scd文件的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114168615A true CN114168615A (zh) | 2022-03-11 |
Family
ID=80484629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111496011.XA Pending CN114168615A (zh) | 2021-12-08 | 2021-12-08 | 自然语言查询智能变电站scd文件的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114168615A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114936271A (zh) * | 2022-06-27 | 2022-08-23 | 阿里云计算有限公司 | 自然语言转换数据库查询语句的方法、设备及介质 |
CN115080756A (zh) * | 2022-06-09 | 2022-09-20 | 广州大学 | 一种面向威胁情报图谱的攻防行为和时空信息抽取方法 |
-
2021
- 2021-12-08 CN CN202111496011.XA patent/CN114168615A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115080756A (zh) * | 2022-06-09 | 2022-09-20 | 广州大学 | 一种面向威胁情报图谱的攻防行为和时空信息抽取方法 |
CN115080756B (zh) * | 2022-06-09 | 2023-05-23 | 广州大学 | 一种面向威胁情报图谱的攻防行为和时空信息抽取方法 |
CN114936271A (zh) * | 2022-06-27 | 2022-08-23 | 阿里云计算有限公司 | 自然语言转换数据库查询语句的方法、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104361127B (zh) | 基于领域本体和模板逻辑的多语种问答接口快速构成方法 | |
Al-Arfaj et al. | Ontology construction from text: challenges and trends | |
CN114168615A (zh) | 自然语言查询智能变电站scd文件的方法及系统 | |
CN110442880B (zh) | 一种机器翻译译文的翻译方法、装置及存储介质 | |
CN116127084A (zh) | 基于知识图谱的微电网调度策略智能检索系统及方法 | |
CN116561264A (zh) | 一种基于知识图谱的智能问答系统的构建方法 | |
CN113255295B (zh) | 一种自然语言到pptl形式化规约自动生成方法及系统 | |
Lin et al. | Research on Named Entity Recognition Method of Metro On‐Board Equipment Based on Multiheaded Self‐Attention Mechanism and CNN‐BiLSTM‐CRF | |
CN116910086B (zh) | 一种基于自注意力句法感知的数据库查询方法和系统 | |
CN110909124B (zh) | 基于人在回路的混合增强智能需求精准感知方法及系统 | |
CN109977514B (zh) | 一种雷达同步数据流图模型调度序列生成方法 | |
CN116701665A (zh) | 基于深度学习的中医古籍知识图谱构建方法 | |
CN116861269A (zh) | 工程领域的多源异构数据融合及分析方法 | |
CN117094390A (zh) | 一种面向海洋工程领域的知识图谱构建及智能搜索方法 | |
CN111831624A (zh) | 数据表创建方法、装置、计算机设备及存储介质 | |
CN116523041A (zh) | 装备领域知识图谱构建方法、检索方法、系统及电子设备 | |
CN115759254A (zh) | 基于知识增强生成式语言模型的问答方法、系统及介质 | |
Liu et al. | Knowledge Graph Construction and Application of Spatial Arrangement of Underground Powerhouse | |
Zhang et al. | Automatic data representation analysis for reconfigurable systems integration | |
CN114036268A (zh) | 基于意图门的任务型多轮对话方法及系统 | |
Liao et al. | An Automatic and Unified Consistency Verification Rule and Method of SG-CIM Model | |
Yiming et al. | Research on the Construction of Maritime Legal Knowledge Graph | |
CN115408506B (zh) | 联合语义解析和语义成分匹配的nl2sql的方法 | |
Todosiev et al. | The Conceptual Modeling System Based on Metagraph Approach | |
Cao et al. | Predict, pretrained, select and answer: Interpretable and scalable complex question answering over knowledge bases |
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 |