具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的电力计量知识图谱构建方法,可以由终端或服务器等计算机设备来执行。其中,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图1所示,提供了一种电力计量知识图谱构建方法,该方法可以包括如下步骤:
步骤S101,确定预定义的主体实体和电力计量实体;
其中,可以预先定义好所关注的主体实体和电力计量实体,在一些实施例中,预定义的主体实体的类型可以包括人、场所和组织,其命名格式相对规范,预定义的电力计量实体的类型则可以包括电力计量指标、电力计量对象、电力计量现象和电力计量行为等。在具体应用中,电力计量事件可以使用电力计量实体来表示,还可根据计量任务对电力计量实体做进一步的划分,即实际中所关注的实体数量可以根据计量任务而定,例如可以将电力计量实体划分为4种电力计量实体术语:电力计量指标(I)、电力计量对象(O)、电力计量现象(P)、电力计量行为实体(M),而如单位或者专业人员等则可作为主体实体。
步骤S102,获取电力计量文本;
在具体应用当中,该电力计量文本可以包括电力计量报告等文本信息。
步骤S103,通过预先构建的实体识别模型识别电力计量文本中的主体实体和电力计量实体;
本步骤主要是识别电力计量文本中的主体实体和电力计量实体,具体通过预先构建的实体识别模型识别电力计量文本中的主体实体和电力计量实体。该实体识别模型可以是基于双向LSTM-CRF(Bi-LSTM-CRF)的实体识别模型,即可将电力计量文本输入至基于双向LSTM-CRF(Bi-LSTM-CRF)的实体识别模型,由该实体识别模型识别出电力计量文本中包含的主体实体和电力计量实体。
在一些实施例中,步骤S103具体包括:将电力计量文本中各语句的词向量输入至实体识别模型,获取实体识别模型输出的对目标词向量的标记结果,根据实体识别模型对目标词向量的标记结果,确定电力计量文本中的主体实体和电力计量实体。
本实施例中,目标词向量是指主体实体和电力计量实体对应的词向量。本实施例可将电力计量文本中各语句的词向量输入至基于双向LSTM-CRF(Bi-LSTM-CRF)的实体识别模型,即实体识别模型的输入为语句的词向量,然后实体识别模型输出对所输入的语句中包含的目标词向量的标记结果,即实体识别模型的输出为词向量的标记结果,然后即可根据该标记结果确定电力计量文本中的主体实体和电力计量实体,如利用标注工具对电力计量文本进行相关实体的标注等,由此实现电力计量文本的实体识别。
在一些实施例中,还可以通过如下方式先定义出主体实体和电力计量实体对应的词向量,具体步骤包括:
获取第一电力计量文本语料库,并对第一电力计量文本语料库进行数据清洗得到第二电力计量文本语料库;获取从第二电力计量文本语料库中标注得到的主体实体和电力计量实体,并将主体实体和电力计量实体转化为对应的词向量。
一般来说,公共数据集无法直接用于机器学习模型的训练,本实施例可先构建第一电力计量文本语料库,该电力计量语料库可以包括电力计量相关的中文数据,该中文数据可来自https://www.ceppedu.com/和https://baike.baidu.com/等网站。然后对第一电力计量文本语料库进行数据清洗以剔除不相关信息,得到第二电力计量文本语料库,在第二电力计量文本语料库的基础上进行实体划分。具体的,可以结合电力领域专家知识,针对电力计量事件引入4种对应的电力计量实体术语,即电力计量指标(I)、电力计量对象(O)、电力计量现象(P)和电力计量行为(M)作为电力计量实体,以及将例如人、场所和组织作为主体实体,相关人员可以从第二电力计量文本语料库中对这些实体进行标注,从而可获取得到相关人员在第二电力计量文本语料库中标注的主体实体和电力计量实体,最后可利用Word2Vec模型将主体实体和电力计量实体训练成对应的词向量,完成从主体实体和电力计量实体到词向量的转换。
步骤S104,根据主体实体和电力计量实体在电力计量文本中的关联性,构建主体实体和电力计量实体的知识图谱。
本步骤在识别并标注电力计量文本中的主体实体和电力计量实体后,可根据所关注的主体实体和电力计量实体在电力计量文本中的关联性,构建出所关注的主体实体和与之关联的电力计量实体的知识图谱。
在一些实施例中,步骤S104具体包括:针对该主体实体,在电力计量文本中进行关联电力计量实体的扫描,以该主体实体为父节点并以扫描得到的各关联电力计量实体为子节点,按照各关联电力计量实体的扫出顺序,将子节点连接父节点得到知识图谱。
本实施例针对主体实体在电力计量文本中进行关联电力计量实体的扫描,该关联电力计量实体是指与前述主体实体相关的电力计量实体,即可对电力计量文本进行遍历,逐个扫描出与前述主体实体相关的电力计量实体,而每个电力计量实体便会有相应的扫出顺序(即扫描出现顺序),然后以主体实体为父节点,以及以扫描得到的(扫出的)各关联电力计量实体为子节点,按照每个关联电力计量实体的扫出顺序,依次将对应的子节点连接父节点,最终形成知识图谱。其中,子节点与父节点的连接可以包括直接连接和间接连接,对于直接连接,一般是第一个扫描出来的关联电力计量实体对应的子节点会直接连接连接至父节点,接着扫描出来的关联电力计量实体对应的子节点则继续连接在第一个子节点后面(即对应于间接连接至父节点),以此方式形成知识图谱。
进一步的,在一些实施例中,主体实体包括多个,上述实施例的针对该主体实体,在电力计量文本中进行关联电力计量实体的扫描,则具体包括:针对每一主体实体,分别在电力计量文本中进行关联电力计量实体的扫描;以及上述实施例的以主体实体为父节点并以扫描得到的各关联电力计量实体为子节点,按照各关联电力计量实体的扫出顺序,将子节点连接父节点得到知识图谱,可具体包括:将各主体实体分别作为父节点,并将扫描得到的同一计量事件下的各关联电力计量实体作为所述父节点的同一分支下的子节点,按照各计量事件下的各关联电力计量实体的扫出顺序,在相应分支下将子节点连接父节点形成知识图谱;其中,父节点的分支排列顺序与相应主体实体的计量事件扫出顺序相对应。
结合图2对本实施例进行说明,具体的,假设关注的主体实体包括A、B、C等,那么可先针对主体实体A,在电力计量文本中进行关联电力计量实体的扫描,第一次扫出与主体实体A相关的电力计量实体(假设为电力计量对象实体O)时,可记为电力计量对象实体AO1,则以主体实体A为父节点,以电力计量对象实体AO1为子节点,建立从A到AO1的连接,继续扫描,假如第二次出现与主体实体A相关的电力计量实体(假设是计量行为实体,记为AM1)时,构建从AO1到AM1的连接,以此类推,直至扫描出如主体实体B、C或其他主体实体时,则判断针对主体实体A的一个计量事件结束,且该计量事件对应的分支的构建结束,即前述过程是将主体实体A作为父节点,将扫描得到的一个计量事件下的各关联电力计量实体作为该父节点A的一个分支下的子节点,按照该计量事件下的各关联电力计量实体的扫出顺序,在该分支下将子节点连接父节点以完成一个分支的构建。在此基础上,便可继续遍历文本,若再次出现主体实体A,则此后扫描出来的与主体实体A相关的计量实体(如AI1、AM2、AM3)则需建立在主体实体A的新的分支上,以此类推知道遍历结束文本,在完成主体实体A的遍历后便可继续完成其他如B、C等主体实体的遍历,由此构建得到以A、B、C为根的树结构,该树结构可作为知识图谱。而且,对于每一主体实体,最早扫出的计量事件排列在树的最左分支,以此顺序向右排列,即父节点的分支排列顺序与相应主体实体的计量事件扫出顺序相对应,从此可直观表达出计量实体的上下文关系。
上述电力计量知识图谱构建方法,确定预定义的主体实体和电力计量实体,获取电力计量文本,然后通过预先构建的实体识别模型识别该电力计量文本中的主体实体和电力计量实体,接着根据该主体实体和电力计量实体在电力计量文本中的关联性构建出主体实体和电力计量实体的知识图谱。该方案能够通过预定义的主体实体和电力计量实体以及实体识别模型对电力计量文本进行实体识别处理,并依据识别的主体实体和电力计量实体在电力计量文本中的关联性自动构建出主体实体-电力计量实体的知识图谱,从而得到图形式的主体-计量知识数据集,无需工作人员手动整理电力计量文本,提高形成电力计量知识的效率。
进一步的,在一些实施例中,在获得包含如图2所示的各分支的知识图谱后,还通过如下方式获取计量事件类别,具体步骤包括:
将知识图谱的分支输入至预先构建的图自注意力神经网络,获取图自注意力神经网络输出的该分支对应的计量事件类别。
本实施例主要是通过图神经网络识别主体相关的电力计量事件,本实施例的方案可识别从电力计量报告等电力计量文本中抽取的知识图谱中各主体实体的如计量事件类别等相关计量信息。具体的,对于构建的如图2所示的知识图谱,其树可对应于所关注的主体实体对应的计量事件,本实施例识别每个计量事件的类别,从而有利于相关人员在此基础上进一步分析计量主体的状态,结合计量事件类别识别结果和知识图谱可进一步完成其下一步处理和决策。对此,可构建一图自注意力神经网络,图自注意力神经网络的输入为一个主体实体对应的一个事件树,图自注意力神经网络的输出为树中根节点表示的主体实体的计量事件类别,其中,父节点标签为主体实体标签,子节点标签为电力计量实体标签,图自注意力神经网络可具体识别出根节点的各分支对应的计量事件类别(如图2所示的第1次出现与A相关的计量事件、第2次出现与A相关的计量事件等)。
在一些实施例中,图自注意力神经网络的构建方式可以是:
首先定义相似性函数Similarityij:
Similarityij=Neural(Wfi,Wfj)=Neural(concatenate(Wfi,Wfj));
其中,W表示一个可学习的权值矩阵,f表示的是相似性函数作用的向量,下标i和j表示的是向量的索引,即第i个向量和第j个向量;然后定义注意力系数αij:
其中,exp表示的是指数,Neighbour_i表示的是向量i的邻域;最后定义特征表达hi:
其中,K表示的是多头注意力机制中的头的数量,Wk表示第k个头中的权值参数。
在定义的自注意力特征表示方法基础上,堆叠多层网络结构,构建出图自注意力神经网络,该网络的训练可采用均方误差最小化的方法即:
Loss=(Output-Label)2。
其中,Loss表示损失函数,Output表示模型的输出,Label表示该输入的向量所对应的标签。
本申请提供的电力计量知识图谱构建方法通过预定义的主体实体和电力计量实体,利用实体识别模型对电力计量文本进行实体的识别处理,根据识别和标注的实体自动构建主体-计量实体关系图即树状结构的知识图谱,还可通过图的形式表达实体之间的上下文关系,根据图表达记录主体实体的计量事件,从而形成与主体实体相关的电力计量知识,提高形成电力计量知识的效率,还可针对该树状结构的知识图谱,通过图自注意力神经网络以知识图谱中树为输入,识别根节点表示的主体实体的各计量事件类别,从而有助于相关人员结合计量事件类别识别结果和知识图谱进一步完成其下一步处理和决策。
应该理解的是,虽然如上流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图3所示,提供了一种电力计量知识图谱构建装置,该装置300可以包括:
预定义模块301,用于确定预定义的主体实体和电力计量实体;
文本获取模块302,用于获取电力计量文本;
实体识别模块303,用于通过预先构建的实体识别模型识别所述电力计量文本中的所述主体实体和电力计量实体;
知识图构建模块304,用于根据所述主体实体和电力计量实体在所述电力计量文本中的关联性,构建所述主体实体和电力计量实体的知识图谱。
在一个实施例中,知识图构建模块304,用于针对所述主体实体,在所述电力计量文本中进行关联电力计量实体的扫描;所述关联电力计量实体为与所述主体实体相关的电力计量实体;以所述主体实体为父节点并以扫描得到的各关联电力计量实体为子节点,按照所述各关联电力计量实体的扫出顺序,将子节点连接所述父节点得到所述知识图谱。
在一个实施例中,所述主体实体包括多个;知识图构建模块304,用于针对每一主体实体,分别在所述电力计量文本中进行关联电力计量实体的扫描;将各主体实体分别作为父节点,并将扫描得到的同一计量事件下的各关联电力计量实体作为所述父节点的同一分支下的子节点,按照各计量事件下的各关联电力计量实体的扫出顺序,在相应分支下将子节点连接所述父节点形成所述知识图谱;其中,所述父节点的分支排列顺序与相应主体实体的计量事件扫出顺序相对应。
在一个实施例中,该装置300还可以包括:类别获取模块,用于将所述知识图谱的分支输入至预先构建的图自注意力神经网络,获取所述图自注意力神经网络输出的所述分支对应的计量事件类别。
在一个实施例中,实体识别模块303,用于将所述电力计量文本中各语句的词向量输入至所述实体识别模型,获取所述实体识别模型输出的对目标词向量的标记结果;所述目标词向量为所述主体实体和电力计量实体对应的词向量;根据所述实体识别模型对目标词向量的标记结果,确定所述电力计量文本中的主体实体和电力计量实体。
在一个实施例中,实体识别模块303,还用于获取第一电力计量文本语料库,并对所述第一电力计量文本语料库进行数据清洗得到第二电力计量文本语料库;获取从所述第二电力计量文本语料库中标注得到的主体实体和电力计量实体,并将所述主体实体和电力计量实体转化为对应的词向量。
在一个实施例中,预定义的主体实体的类型包括人、场所和组织;预定义的电力计量实体的类型包括电力计量指标、电力计量对象、电力计量现象和电力计量行为。
关于电力计量知识图谱构建装置的具体限定可以参见上文中对于电力计量知识图谱构建方法的限定,在此不再赘述。上述电力计量知识图谱构建装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储主体实体。电力计量实体、电力计量文本和知识图谱等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种电力计量知识图谱构建方法。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。