普光气田天然气净化厂是中国石化建设的第一座高含硫天然气净化厂 [1],由于工艺过程中酸性物质会腐蚀设备[2-3],且存在其他安全隐患,为确保净化厂安全平稳地运行,全厂共安装了6套监测监控系统。其中,H2S探头1 600余台 [4]、在线腐蚀监测点156个[5],并配备尾气排放检测等多套系统。
对于繁多的设备和监检测点位,涉及的生产资料或运维资料也是海量的,文本式的资料使缺乏经验的新晋工作人员难以有效查阅和学习。当特定监测点需要运维操作时,新晋工作人员无法及时做出反应,而是过度依赖资深工作人员和专家指导。这大大降低了运维效率,增加了培训成本,导致新晋工作人员的“培训期”过长。
知识图谱作为一种前沿技术,因其在存储和管理天然气净化过程中所涉及的数据方面的独特优势而受到关注。此外,知识图谱还能够有效支持故障溯源和诊断等关键任务,已被广泛应用于多个工业应用场景中,以提高故障诊断效率和可靠性[6-7]。例如,刘国强等[8]构建了油气层测井知识图谱,并在此基础上提出知识驱动的神经网络油气层评价模型;龚仁彬等[9]开发了一种基于知识图谱的油气勘探开发知识共享平台。
知识图谱是由“头部实体”“关系”和“尾部实体”构成的三元组结构化数据网络。而工业生产数据资料大多是一些以文本为主的生产资料或运维资料,因此,知识抽取技术应运而生。双向长短期记忆(Bidirectional Long Short-Term Memory, BiLSTM)神经网络与条件随机场(Conditional Random Fields, CRF,一种判别式概率模型)被广泛用于各领域的知识抽取任务中。戴志辉等[10]提出了一种基于MacBERT-BiLSTM-CRF的模型,用于继电保护装置的知识抽取,实现了对继电保护装置文档的知识抽取。于艳秋等[11]提出了一种BiLSTM-CRF的模型,用于油气勘探领域的知识抽取,可实现油气勘探领域相关文档的知识抽取。
净化厂为了使天然气净化更加的高效和环保,采用MDEA法与催化水解结合的方式进行脱硫脱碳,采用TEG 法脱水,采用克劳斯热转化与二级催化转化法结合的方式进行硫磺回收,同时还采用了在线制氢还原吸收、热焚烧尾气处理等工艺方法,满足了天然气净化的要求[12]。本研究以脱硫和硫磺回收两个单元中的部分设备为例来介绍知识图谱的构建。图1所示为硫磺回收工艺流程图。
脱硫单元采用两级吸收的醇胺脱硫工艺[13],集成Black&Veatch 公司的级间冷却技术[14],用于加强对 CO2吸收的控制;采用固定床反应水解羰基硫工艺,降低天然气中有机硫含量,以满足产品气对总硫含量的要求:胺液系统采用质量分数为47%~53%的MDEA 溶剂。
硫磺回收装置是天然气净化厂高含硫天然气净化的配套装置,采用Black&Veatch公司的专利技术及 PDP 工艺包,每套装置包括一个热反应段和两个催化反应段,设计硫回收率为 93%~95%(质量分数),处理能力为556 t/d,设计年运行时间8 000 h,操作弹性为30%~130%[15-16]。
知识图谱构建整体实施方案如图2所示。首先采集天然气净化工业过程的生产资料或运维资料,作为原始语料,如工艺技术规程、故障处置日志等;然后对原始语料进行预处理,选取部分数据进行标注,作为模型的训练集,利用训练好的模型对所有的数据进行命名实体识别,采用规则匹配的方法实现关系抽取及实体对齐,得到结构为“头部实体(Eh),关系(R),尾部实体(Et)”的三元组;最后将数据存储在图数据库中。
为了保证知识抽取的精度,本研究采取逐句识别的方式进行命名实体识别和关系匹配。数据预处理的主要内容为原始数据分割,将输入的原始数据逐句分割存入列表中,列表中的每一个元素为分割好的一个句子。
由于预处理得到的列表整体长度较长,所以选取其中的部分数据进行数据标注,作为模型的训练集,再用训练好的模型对余下的数据进行知识抽取。常用的数据标注方法有BIO(Begin-Inside-Outside)、BMEOS(Begin-Middle-End-Single-Outside)等[17]。本研究采用BMEOS标注策略。该策略将词汇中的字划分为5种不同的关系。若词汇无标签,则所有汉字标注为“O”;若词汇有标签“T”,则单字词汇标注为“S-T”,多字词汇中每个字的标签如式(1)所示。
式中:lq为第$q$个字的标签;$ {\mathrm{start}} $为首个汉字所在的位置;$ {\mathrm{end}} $为结尾汉字所在的位置。
例如,若词汇“执行器”对应的标签为“Dev”,则采用BMEOS格式标注后的结果为“执 B-Dev,行 M-Dev,器 E-Dev”。若词汇“阀”对应的标签为“Dev”,则标注后的结果为“阀 S-Dev”。
与BIO相比,BMEOS标注策略多出了两种标签类型,可以更好地区分词汇中字体间的关系,更有利于模型的训练[18]。
命名实体识别任务主要依托于BiLSTM-CRF模型完成,该部分的模型结构如图3所示。图3中$X$表示输入的句子,包含$m$个词汇;${W_m}$表示句子中包含的第$m$个词汇;${E_m}$表示经过词嵌入后,第$m$个词汇的向量映射;$T{_n}$表示第$n$个标签;$T_{{n,p}}$表示第$n$个标签的预测概率;Var、Dev、Mark为模型预测的每个词汇的标签,分别表示“变量”“设备”“编号”;FC-11104和FV-11104分别为流量控制器编号和流量执行器编号。
预处理后的语料在输入模型之前,会先对其作进一步的分词和词嵌入处理,以得到句子中每个词汇的向量映射。将得到的向量作为模型的输入,BiLSTM会输出每一个词汇所有标签的概率,将所有词汇的全部概率输入CRF模型中,学习标签之间的依赖信息,计算出概率最大的标签序列,作为最终的预测结果。
将预测出的标签与对应的实体进行配对,得到结构为“实体,实体标签”的二元组序列,对序列中的所有二元组进行两两配对,构成结构为“实体1,实体1标签,实体2,实体2标签”的四元组序列。
若输入的句子X为“流量控制器FC-11104连接流量执行器FV-11104”,则命名实体识别输出的二元组序列和配对后最终输出的四元组。
在本研究涉及的知识图谱构建任务中,关系的类型较为简单,仅有“连接”和“导致”两类关系。因此,采用基于规则模板的关系匹配与实体对齐方法,该部分的方案如图4所示。
图4中的元组序列全部被包含在句子X中,将元组序列中的四元组逐个输入,首先将其中的两个实体标签输入关系分配器,分配器按照式(2)进行关系分配。同时,对所述的句子X进行分词操作,将实体1、实体2及分词后的词汇序列F一同输入至实体定位模块中,以进行实体1定位和实体2定位。
式中:R为实体1和实体2的关系;$ {{L}}_1 $为实体1的标签;$ {{L}}_2 $为实体2的标签;fault为故障类型的实体标签;other为其他类型的实体标签。
在实体定位模块中,首先要对输入的实体与词汇序列F中的词汇进行词嵌入,以得到实体与词汇的向量映射,词嵌入工作借助Word2 Vec完成。随后,将所有词汇序列 F 的向量分别与输入的实体 1(E1)或实体2(E2)的向量进行相似度计算,得到一个相似度集合S,选取其中的最大值作为相似度的输出,同时,记录当前相似度对应的词汇序列F中的词汇${W_i}$的位置,分别记作$id({{{E}}_1})$或$id({{{E}}_2})$,最终实体定位模块会输出结构为“实体,实体位置,相似度”的三元组。
在实体对筛选模块中,主要依靠实体定位模块输出的实体位置和相似度进行实体对的筛选,若满足筛选条件,则输出结构为“头部实体(Eh),关系(R),尾部实体(Et)”的三元组;若不满足筛选条件,则说明当前实体对不是真实存在的,会继续对元组序列中的下一个四元组进行匹配。
首先,图4中的实体1和实体2的相似度应满足式(3)所示的条件,即实体1和实体2 的相似度均要大于相似度阈值,以保证二者都存在于句子X中。
式中:$ S_{\text{α}} $为实体1相似度;$ S_{\text{β}} $为实体2相似度;$\lambda $为相似度阈值。
其次,实体1和实体2在句子X中的位置应满足式(4),即实体1和实体2之间的距离不能大于实体对失效阈值,否则认为二者不能构成实体对。实体对失效阈值取词汇列表F长度的三分之二。
式中:$ {{id}}({{{E}}_1}) $为实体1在句子中的位置标识;$ {{id}}({{{E}}_2}) $为实体2在句子中的位置标识;$\theta $为实体对失效阈值;$ {\mathrm{len}}({{F}}) $为词汇列表F的长度。
头部实体和尾部实体按照式(5)所示的规则进行确定,将位置靠前的实体作为头部实体,另一个实体作为尾部实体。
式中:$ {E\mathrm{_h}} $为头部实体;$ {E\mathrm{_1}} $为实体1;$ {E\mathrm{_t}} $为尾部实体;$ {E\mathrm{_2}} $为实体2。
最后,将式(2)得到的关系R,与式(5)得到的头部实体$ E{\mathrm{_h}} $以及尾部实体$ E{\mathrm{_t}} $组成结构为$({{E_{\mathrm{h}},R,E_{\mathrm{t}}}})$的三元组,完成关系匹配与实体对齐,进而完成知识抽取任务,以便构建知识图谱。
如图4所示,示例句子X为“流量控制器FC-11104连接流量执行器FV-11104”,输入后会被处理成词汇列表F,F中含有“流量,控制器,FC-11104,连接,流量,执行器,FV-11104”共7个词汇。命名实体识别模块将输出这个句子包含的若干四元组序列,此处以其中的“FV-11104,Mark,FC-11104,Mark”作为示例元组。示例元组中的标签输入到关系分配器中,按照式(2)的规则进行分配,得到关系R为“连接”。示例元组中的实体1为FV-11104,实体2为FC-11104,其在词汇列表中的位置分别为6和2,即对应的id为6和2,假定二者相似度满足式(3),则进入下一步的实体对有效性的判别。经计算,满足式(4)的条件,再按照式(5)确定头部实体和尾部实体。最后,输出得到三元组“FV-11104,连接,FC-11104”。
本研究选取天然气净化工艺中的关键设备——闪蒸罐作为研究对象。首先,依据领域专家的知识和经验,构建该装置的节点关系对照图。随后,对与闪蒸罐装置相关的生产资料或运维资料进行标注,将处理后的数据输入至模型中,分析并抽取出关键信息,形成三元组。最终,基于这些三元组,构建知识图谱。闪蒸罐的节点关系对照图如图5所示,图中箭头方向代表由头部实体指向尾部实体。
结果表明,本研究提出的方法可以准确地抽取各类实体,同时,还可以较为准确地抽取实体间关系。例如,在图5中,“FC-11102”与“FV-11102”的标准关系是前者指向后者。图6为抽取出的三元组构建的知识图谱,其中“FC-11102”与“FV-11102”之间的关联关系与图5保持一致,其他节点的关联关系也得到了准确的表示。实验结果验证了所构建知识图谱的结构与原始数据的高度一致性,表明该方法能够精确地映射出闪蒸罐中涉及的各类变量和位号之间的结构性联系。实验证实了所提出的模型在天然气净化设备知识抽取任务上具有较高的可靠性和实用价值。
对目标生产单元的生产资料或运维资料进行标注与预处理,将处理后的数据输入模型,以执行知识抽取。基于抽取得到的三元组,构建知识图谱,并根据专家经验对部分三元组进行微调,以提高准确性。最终,利用图数据库对知识进行存储管理。
同时,本研究设计了一个天然气净化典型设备的交互式可视化界面。该界面通过读取图数据库中存储的三元组数据,实现了知识图谱的构建和可视化展示,同时,集成了图谱微调的功能,包括图谱中节点增加、节点属性修改、节点删除、节点关系修改等。
本研究提出了一种结合BiLSTM-CRF和规则匹配的知识抽取方法,构建了天然气净化装置的知识图谱。同时,设计了一个可交互的可视化界面来展示构建的图谱。以闪蒸罐为例,根据专家经验构建了该装置的经验知识图谱,并与本研究提出的方法构建的图谱进行了对比。对比结果显示,两种图谱的实体类型完全一致,结构基本相同,验证了本方法的有效性。然而,由于关系匹配部分采用了基于规则的方法,其在处理并列关系的性能上仍有提升空间。