基于知识图谱的分布式光伏运维方案匹配方法
2021-08-12欧一鸣苏雍贺倪玮晨
欧一鸣,苏雍贺+,靳 健,倪玮晨,陶 飞
(1.北京航空航天大学 自动化科学与电气工程学院,北京 100191;2.北京师范大学 政府管理学院,北京 100875;3.国网天津市电力公司 电力科学研究院,天津 300384)
1 问题的提出
近年来,分布式光伏产业呈现爆发式增长,电站数量显著增多。与大规模集中式电站不同,分布式电站与运维站点距离过远、运维资金有限,组建高专业度团队的运维模式覆盖范围不足,不能满足分布式光伏的运维需求。因此,目前的分布式光伏运维工作大多是将工单派发给第三方公司或个人,这些人员专业度普遍不高,往往导致故障判断不准确,进而降低运维效率。分布式光伏电站结构复杂,主要由太阳能电池组件、逆变器、汇流箱、基座等多个部件组成,每个部件的作用、原理和构造均不相同,如图1所示,这更加剧了分布式光伏运维人员专业度不足的矛盾。因此,亟需一种智慧运维手段,根据运维诉求提供精准的方案支持,改善当前的运维现状。在实际运维工作中,常常出现多个故障组成的复合型诉求、要素缺失的不完整诉求等,这些特殊诉求也对智慧运维的方案支持能力提出了挑战。
辅助人员从运维诉求中获取信息、得出运维方案的方案匹配智能化应用可以降低运维工作的专业度门槛,减轻对运维人员时间、精力的负担,对分布式光伏智慧运维具有重要意义。而知识图谱(knowledge graph)可以对智慧运维系统提供专业度的支撑。如雷兵[1]使用OWL(Web ontology language)描述语言构建了图谱形式的知识库,通过专业领域的知识库可以有效地对深层次的专业需求进行理解。对于分布式光伏运维领域而言,有了知识图谱作为支撑,智慧运维系统就可以更准确地识别用户诉求,并以更高的专业度匹配运维方案。
这种输入诉求、输出运维方案的智能化应用可以看作是一种基于知识图谱的问答系统。近年来,针对知识图谱问答系统的研究主要集中在开放领域,这类系统主要面向大范围、专业度较低的简单问答[2](如“中国的首都是哪”)。相比之下,专业领域的问答系统需要回答范围更小、专业性更高的问题,需要更深入地从图谱和诉求文本中获取回答。
基于知识图谱的专业领域问答系统主要分为检索图谱本身和利用图谱选择答案两类[3]。检索图谱本身是指搜索知识图谱中的目标节点或连接作为答案输出。如“油枕从属于什么设备”这一问题,系统经过搜索找到知识图谱中的三元组[油枕,从属关系,油式变压器],即可回答“油枕从属于油式变压器”。目前,微软必应、谷歌、百度等搜索引擎大多采用此类方法来回答简单问题[4-5]。而利用图谱选择答案则是利用知识图谱作为媒介,在备选回答中进行选择,输出最匹配的一个回答。如电网智能运维中,存在一种基于知识图谱的电力设备维修记录检索方法,将图谱节点之间的路径作为特征,检索相应的设备维修记录文本,为运维人员提供指导[6]。当前,分布式光伏领域的主要数据来源于运维手册等含有文本形式的方案库,因此更适用于利用图谱选择答案的模式。
实际工作中,运维诉求的提供者通常是分布式光伏电站的所有者(户主),这类人群普遍缺乏专业性,往往出现诉求中实体要素缺失的问题,且当前运维流程也不具备通过对话[7]等方式补充要素的条件,给方案的准确检索造成了困难。
本文从分布式光伏运维行业现状出发,为了缓解运维工作专业度门槛高、智能化程度低的情况,设计了一种基于知识图谱的分布式光伏运维方案匹配方法。这套流程以分布式光伏运维知识图谱作为中介,使用图搜索方法将输入的运维诉求与文本方案库中的故障描述相匹配,从而得出相应的方案。对于实践中常常出现的多种故障描述组合成的复合型运维诉求,本文利用知识图谱对诉求进行拆分再匹配,相比用依存句法树作为中间流程的方法,具有更高的准确度。针对方案匹配过程中,诉求文本的实体要素不全,导致无法执行匹配流程的问题,本文设计了基于知识图谱联想能力的要素补全方法以及相应的匹配策略,所设计的方案匹配系统自动化程度较高,对于分布式光伏运维行业而言,可以有效减少人工成本。同时方案匹配流程能够在低专业度人员操作下运行,相较其他方案匹配方法,准确性和可靠性也有了一定的提高。
2 国内外研究现状
2.1 方案匹配方法在智慧运维中的应用现状
在智慧运维中应用的方案匹配方法主要分为专家系统和问答系统两种。专家系统含有专家级知识和经验,可以模仿专家解决专业领域的复杂问题。近年来,随着机器学习技术的发展,许多研究利用维修案例数据训练专家系统来进行故障诊断和方案匹配[8]。这种故障诊断专家系统,可以应对如重型机床领域[9]的高复杂度、高专业度的情况。但分布式光伏运维是新兴领域,没有足够的有标注案例数据支撑,不适用此类方法。问答系统以文本作为输入,系统从诉求文本中获取信息,通过文本搜索等手段匹配到与诉求最相符的运维方案,并反馈给用户。如可以用深度卷积神经网络[10]等方法提取诉求文本的特征,搜索并找到相似度最高的案例作为回答。这种方法可以不依赖大量的有标注数据,更适用于当前缺乏有标注数据的状况。但基于问答系统的方案匹配方法对于本文分布式光伏运维背景的适用性,还需进一步探究。
2.2 基于问答系统的方案匹配方法研究现状
在本研究中,数据来源主要是运维手册中的文字说明与文本方案库,因此问答系统形式主要包括基于文本分析的问答和知识图谱问答两类[11]。基于文本分析的问答系统主要根据输入的文本进行分类或检索。例如使用神经网络可以对变压器运维领域的缺陷文本进行深度信息挖掘,给出设备故障类型的诊断[12]。但这种方法只以文本作为依据来给出回答,忽略了领域词汇之间的内在联系[13],在分布式光伏运维等专业领域中,容易导致匹配失准[14]。知识图谱问答指的是借助知识图谱中包含的知识,对自然语言形式的问题进行回答,根据过程的不同可以细分为图谱检索和答案选择。图谱检索指的是问答系统在理解问题后,根据问题语义从图谱中检索答案,答案通常为图谱蕴含的实体或关系[15-16]。答案选择则是利用图谱中蕴含的知识,从候选答案中找出最匹配的一个[17],如ZHAO等[18]使用图神经网络对自由文本知识图谱(free-text knowledge graph)进行推理以选择答案。本研究需要从文本形式的运维方案库中找出最符合运维诉求的方案,因此方案匹配任务对应答案选择类型的方法。但是在分布式光伏和智慧运维领域,基于知识图谱的应用研究目前较少,还需进一步分析相关方法。
2.3 基于知识图谱问答系统的方案匹配方法研究现状
基于知识图谱的方案匹配方法主要分为基于模板、基于图谱向量和基于图搜索的方法。基于模板的方法通常利用模板来理解输入的问题,如ABDALGHANI等[19]使用自动生成模板的方法将问题分割为多个简单句法树,再结合知识图谱对问题进行回答。但这类方法对模板有较高要求,分布式光伏数据量不足以支撑此类方法,因此无法使用;基于图谱向量的方法是根据图谱节点之间的连接关系,训练出某种模型进行图谱的分布式表示,将节点表示成向量,使计算机可以直接对图谱进行运算,如TransE[20]系列模型和node2vec[21]等图神经网络模型,转化为向量后可以根据向量空间中的距离来获取回答[22]。另一些研究将过程转化为类似QQP(quora question pairs)问题进行求解[23]。这类方法对有标注的训练语料(如表示同样内容的不同提问句式)数量有较高的要求,而当前分布式光伏领域的可用数据多为手册、书籍中的无标注文本,不能满足模型训练所需;基于图搜索的方法是将方案匹配转化为一个子图匹配问题,再设计搜索策略等进行匹配,如CHOWDHURY等[24]构建了一种“选择—评估(SCALE)”框架来实现高效的图搜索过程,但实践中容易出现由多个故障描述组合成的复合型提问或关键实体名词要素缺失问题,无法直接精确匹配,需要进行搜索流程的优化。
3 基于知识图谱的分布式光伏运维方案匹配问题描述
为了将分布式光伏领域的运维诉求与文本形式的方案库相匹配,需要利用知识图谱来进行专业领域问题的搜索。文本方案库由文本形式的故障描述与对应解决方案组成,首先将故障描述映射到分布式光伏知识图谱中,形成方案库的故障描述子图;用户输入运维诉求时,运维诉求同样映射到知识图谱中,形成运维诉求子图;再利用知识图谱进行图搜索,将用户的运维诉求子图与方案库的故障描述子图相匹配,最终得出运维方案。整体流程如图2所示。
已有的分布式光伏运维知识图谱是通过实体提取和实体关系提取两个步骤,从分布式光伏运维手册中获取信息构建的[25],并经过少量人工调整使其准确度满足方案匹配所需。该图谱由实体和实体关系两部分组成,如图3所示。实体包括分布式光伏领域的部件设备(如组件、变压器等)和领域概念(如短路、异响等)。实体关系包括“因果关系”等8类有向关系:“因果关系”指故障造成现象的因果,如“过热”会导致“报警”;“作用关系”指某部件起到某种作用,如“蓄电池”是用来“蓄电”;“产生关系”表示部件会发生的故障,如“电缆”会产生“短路”;“包含关系”是概念上的包含,如“短路”是一种“故障”;“位于关系”表示位置上的联系,如“光伏板”位于“支架”上;“从属关系”代表设备由哪些部件组成,如“油枕”从属于“油式变压器”;“同义词关系”如“空开”、“空气开关”与“空气断路器”是同义词;“其他关系”则是其他不能直接概括的关系。描述实体关系的基本单元为三元组:[头实体(Head),实体关系(Relation),尾实体(Tail)],许多个三元组将实体连接起来形成知识图谱。
如图4所示,以油式变压器为例,其设备由油枕、分接开关、套管等多个部件组成,还有声响等现象,分别会出现着火、破损、放电等故障,产生相应诉求。将诉求蕴含的实体映射到分布式光伏运维知识图谱中,根据知识图谱里的实体关系相互连接,则得到运维诉求的子图化形式。
本文将从单一故障完整诉求、多故障复合型诉求和实体要素缺失的不完整诉求3种情况出发,分别设计方案匹配流程。
(1)单一完整诉求,如输入诉求在进行同义词替换后为“变压器的风机发出异响”,该诉求包含实体{变压器,风机,异响}和实体关系{[风机,从属,变压器],[风机,产生,异响]},对应知识图谱中的一个子图{变压器→风机→异响};而文本方案库中有描述同样映射到图谱中{变压器→风机→异响}这个子图,则认为匹配成功,输出方案库中该描述的对应方案,如果方案库中没有相应的子图,则无法直接匹配,要判断是复合型还是不完整诉求,进入相应的匹配流程。
(2)在实践中,往往还存在由多个故障描述组成的复合型诉求,如“变压器的风机发出异响,铁芯也有异响”,方案库中没有完全匹配的故障描述子图,只有{变压器→风机→异响}和{变压器→铁芯→异响}两个覆盖了一部分的子图,不能直接匹配,需要将原诉求拆分为多个单一子诉求再分别匹配方案。
(3)实体缺失的不完整诉求也很常见。如业主可能只会告诉客服“变压器有异响”,或者由于业主专业度不高而表达为“变压器里散热的东西很响”,同义词替换和实体对齐后也只能获取{变压器,异响}两个实体。该情况导致诉求子图缺失了中间的实体无法直接匹配,而由于当前运维流程,方案匹配系统无法获取更多信息判断“变压器”的哪个部件有“异响”。此时,需要通过知识图谱联想将诉求补全为{变压器→风机→异响}和{变压器→铁芯→异响}等几个可能的诉求,再同时匹配方案。
4 单一故障完整诉求的分布式光伏运维方案匹配方法
一些研究[19,26]会使用依存句法、词性分析等工具从文本中提取实体对,再将实体对映射到图谱中。由于这些手段在短文本中使用的准确率并不稳定[27],会降低整个流程的可靠性,本文认为构建同义词表并统一替换后直接从文本中找出即可,限定领域的小规模知识图谱本身可以为实体和关系提供足够的约束。
同义词表的构建主要属于共指消解任务,因为分布式光伏运维诉求一类的短文本几乎不考虑代词[28],所以只针对名词进行构建。本文使用知识图谱中的“同义词”关系与词向量共同构建同义词表。知识图谱中的“同义词”关系提取自有明确记载的分布式光伏领域文本,如手册中记载“光伏组件又称太阳电池组件”;词向量则是根据一个词汇的上下文语境训练得到,本文使用Skip-Gram模型,设定词向量维度为300维,通过向量空间中的余弦相似度来判断是否为同义词。
匹配的详细算法过程如算法1所示。
算法1要素齐全的运维诉求与故障描述匹配算法。
步骤1输入运维诉求X与故障描述q。
步骤2故障描述q包含实体集合N={n1,n2,…,nn},将N在图谱中标记出来。
步骤4判断节点n′是否被标记,如被标记,进入步骤5,若没有被标记,则转步骤3。
步骤5判断诉求X中是否存在未选定过的实体,若存在则循环执行步骤3~步骤5,否则进入步骤6。
步骤6判断集合N中是否还存在未选定过的节点,若存在则匹配失败,否则匹配成功。
5 复合型诉求的分布式光伏运维方案匹配方法
复合型的运维诉求在实际运维工作中十分常见。在分布式光伏电站出现多个故障的时候,往往会形成复合型的运维诉求,在方案库中对应多个解决方案。如“变压器发出共振声,且出现高温”这一诉求,X={变压器,共振,高温}是由x1={变压器,共振}和x2={变压器,高温}两个子问题组成的,即X={x1,x2}。对于复合型诉求的拆分,本文认为:在一个子问题中,有且只有一条实体关系路径,且同种的实体关系方向都相同。拆分示意图如图7所示。
拆分过程是通过知识图谱中实体关系的跳转来实现的,一个节点通过一次实体关系的跳转到达相邻节点的距离称为“1跳”。拆分后,对每个子问题单独进行方案匹配。算法2为复合型诉求的拆分及匹配过程。
算法2复合型运维诉求的匹配算法。
步骤2在X中不重复地随机选定一个节点n′。
步骤3在选定的节点周围1跳范围内进行广度优先的节点搜索,选定下一个节点n″。
步骤4判断最新选取的实体之间关系的方向是否与已有同种方向相反,若相反则转步骤3重新选取n″,否则进入步骤5。
步骤5判断n″周围是否存在未选定过的节点,若存在则转步骤3选定下一跳的节点,否则认为完成了对单个子问题的拆分,进入步骤6。
步骤6对该子问题遍历方案库中的故障描述,并执行算法1,若算法1通过则将该方案加入解集,若全部不通过则认为该子问题在方案库中没有对应描述,转步骤3拆分下一个子问题。
步骤7如果步骤3中最初选定的节点也没有未选定过的相邻节点,则判断集合X中是否存在未选定过的节点,若存在则转步骤2,否则结束算法2,输出解集。
6 不完整诉求的分布式光伏运维方案匹配方法
在分布式光伏电站的实际运维工作中,由于光伏业主们普遍不具备较高的专业性,运维诉求中容易缺失实体要素。由于目前“业主——客服——运维人员”的运维模式,运维人员也无法通过其他信息来源补全诉求,即不可能确切地知道具体缺失了哪个实体。本文方案匹配方法作为人员的辅助,将利用现有信息,借助图谱的联想能力最大限度地补全诉求、搜索可能的方案。
如果运维诉求中,一个子问题没有匹配到任何方案库中方案,则可以认为该子问题是不完整的。考虑到通常子问题的实体数量不超过4个,本文仅考虑要素缺失数量为1的情况。要素补全的核心是利用图谱搜索已知实体要素1跳范围内的节点,形成新的子问题。补全示意图如图8所示。
补全诉求信息之后,会得到多个可能的子问题,之后的过程类似复合型问题,将子问题分别与方案库中的故障描述进行匹配,得到用户诉求的解集。完整的匹配流程如算法3所示。得到解集后可根据杰卡德系数(Jaccard Index)进行排序,获取最可能的Top-N匹配方案。
算法3要素不全运维诉求的匹配算法。
步骤2在x中不重复地随机选定一个节点n′。
步骤3在节点n′周围1跳范围内进行广度优先的节点搜索,选定一个节点n″作为补全的实体要素。
步骤4判断节点n″与n′的实体关系方向是否与子问题x中已有同种方向相反。若相反则转步骤3重新选取n″;否则将节点n″划入该子问题,进入步骤5。
步骤5在节点n″周围1跳范围内搜索节点,判断是否存在子问题x以外的、属于运维诉求X的其他节点n‴;若存在则进入步骤6,否则进入步骤7。
步骤6判断节点n‴能否划入该子问题,若不能则退回步骤6,否则将节点n‴划入该子问题,进入步骤8。
步骤7对新的子问题执行算法1,若算法1通过,则将匹配到的方案加入解集,若全部不通过则认为该子问题在方案库中没有对应描述,转步骤3重新选择补全的实体要素。
步骤8判断x中是否还存在未选定过的节点,若存在则转步骤2,否则结束算法3,输出解集。
7 验证分析
7.1 验证设置与评价指标
7.1.1 验证数据来源
本文采用国家电网提供的《分布式光伏电站系列操作手册—运行维护》和书籍[29]作为该领域的文本数据来源,分为文本说明和文本方案库两个独立部分,文本说明部分约6 000条句子、共40万字,文本方案库部分包含142条分布式光伏设备的故障描述及对应方案。知识图谱构建使用文本说明部分,采用实体提取和实体关系提取两个步骤的自动化构建方法[25],并通过人工校正使其准确度满足方案匹配要求,图谱规模为341个领域实体和1 257条实体关系。知识图谱存储在neo4j图数据库中,部分图谱的可视化展现示意图如图9所示。
7.1.2 评价指标设置
在单一完整诉求的方案匹配,以准确率(Accuracy)作为评价指标,采用小批次人工抽验的方式,重复多次求平均值。准确率A的计算公式如下:
(1)
式中:T为正确的样本数;F为错误的样本数。复合型诉求的方案匹配,同样用准确率(Accuracy)作为匹配性能的评价指标。
对于要素不全诉求的方案匹配,需要衡量在信息缺失的情况下搜索可能方案的能力,因此绘制Top-N召回率曲线来进行评价。召回率
(2)
7.2 验证结果与分析
7.2.1 单一故障完整诉求的方案匹配方法
在理想情况下,将本文所设计的基于图搜索的方案匹配方法与单纯的文本分析方法(LDA模型、word2vec聚类)进行对比,随机抽取50条单一问题完整诉求进行测试,共测试5个批次,准确率结果如表1所示。
表1 单一故障完整诉求的方案匹配准确率
由该结果可知,基于知识图谱的方案匹配方法在专业问题上的表现优于纯文本的分析方法。纯文本方法在专业领域中,对于句式相似的问题,分辨能力不如具备专业知识的图搜索方法。利用分布式光伏运维知识图谱约束的匹配方法,可以精准地捕捉到运维诉求所包含的设备部件以及故障信息,而纯文本方法会倾向于将句式相近的描述匹配到一起。因此,基于知识图谱的匹配方法在分布式光伏智能运维背景下具有更高的准确度。
7.2.2 复合型诉求的方案匹配方法
复合型诉求的方案匹配使用准确率作为匹配性能的评价指标。本文随机将2~5条单一完整的故障描述相组合后,生成复合型提问,并输入方案匹配流程。本次实验每次生成100条诉求,共生成5个批次,本文方法与使用句法树分解问题的匹配方法准确率如表2所示。
表2 复合型诉求的方案匹配准确率
可以看出,本文设计的基于图谱拆分问题再匹配的方法,相比使用依存句法树分解问题的匹配方法,准确率更优。一个可能的原因是依存句法树本身的准确度不高,不太适合作为知识图谱深度应用的中间环节。在分析术语较多的短文本的情况下,依存句法树存在将词汇的词性标为名词的倾向。例如句子“电缆头电晕放电”,其中包含的“电缆头”、“电晕”、“放电”3个词汇虽然都具有名词词性,但组合在一起应当是“主语+谓语”的结构,依存句法树会将其看作3个并列的名词,从而不能有效地拆分诉求结构。而本文基于图谱的拆分方法以图谱蕴含的关系方向等作为拆分诉求的依据与约束,相比于仅分析句子结构的依存句法树方法,中间环节更少,避免了错误率叠加的问题。而且有了知识图谱作为支撑,方案匹配中对专业性较高的诉求分析能力更强。因此,在复合型诉求方案匹配中,本文所使用的方法具有更优的效果。
7.2.3 不完整诉求的方案匹配方法
对于要素补全的情况,选取95条单一问题完整诉求,测试时每条诉求随机删除其中的一个实体要素,返回匹配到的所有可能的结果,取其中的TOP-N计算召回率,绘制TOP-1~TOP-5的召回率曲线。本文知识图谱联想补全方法与实体杰卡德系数排序和word2vec聚类方法对比测试结果如图10所示。由该曲线可以看出,本文的方法如果仅计算TOP-1召回率,结果是不理想的,相比word2vec方法落后较多。但本文方法在TOP-2时召回率开始升高,到TOP-4达到较高的水平。分析原因,本文方法基于知识图谱联想补全不完整诉求时将给出所有可能的结果,再用Jaccard Index排序,虽然通过知识图谱设定条件做出了约束,但仍然会给出数个可能的结果。在没有其他信息渠道的情况下,即使是分布式光伏领域的专家也很难确定哪个结果能够满足诉求,因此全部都要作为结果输出,但真正的原始诉求只有一个。一般诉求中包含的实体不超过4个,排序后很容易发生并列的情况,从而造成TOP-1的召回率不理想,但当返回更多可能结果时,正确的原始诉求就有更高的可能被输出。也正是由于在排序前使用知识图谱进行了补全和约束,预先排除了一些错误的故障描述,本文方法的召回率在TOP-N曲线中均高于单纯对实体使用杰卡德系数排序的方法。实验结果表明,在输出TOP-4时,正确诉求有很大的可能被找到,即运维人员只要依据前几个最可能的方案进行多方面准备,就能够提高运维的准确度,这也证明了利用图谱补全诉求的有效性。因此可以认为,本文设计的基于知识图谱匹配不完整诉求的方法提高了方案匹配流程的健壮性。
8 结束语
近年来,分布式光伏产业飞速发展,该行业对于智慧运维的需求也随之增长。因此,设计一种针对分布式光伏领域的、高专业度的运维方案匹配方法,在提升运维工作的智能化程度、标准化规范化运维流程、降低从业人员门槛等方面都具有重要作用。本文采用基于知识图谱的图搜索方法进行方案匹配,相比传统句法树方法准确率更高。同时,针对运维实践中面临的复合型运维诉求与不完整诉求两类问题,改进了方案匹配流程,提升了分布式光伏运维的可靠性。但该流程仍有许多不足,如复合型诉求包含实体较多或要素补全的可能的组合较多时,要判断的子问题数量可能会急剧增大,导致匹配效率降低。本文的不完整诉求方案匹配方法,是在当前分布式光伏运维流程缺乏补充信息的背景下采用的方法。未来可以结合额外的信息来源,如大量的运维记录或能够与户主沟通等,改进基于知识图谱的方案匹配方法。此外,图搜索属于NP-Hard问题,本文使用知识图谱关系方向作为约束,提升了在分布式光伏运维这一小规模知识图谱中的搜索速度,未来可以借助神经网络、node2vec等手段,设计一套更加先进高效的流程。