电力领域数据驱动建模实践与思考
2022-12-26王慧芳叶睿恺吴雪峰刘建敏
王慧芳,叶睿恺,罗 斌,张 波,吴雪峰,刘建敏
(1.浙江大学 电气工程学院,杭州 310027;2.国网浙江省电力有限公司金华供电公司,浙江 金华 321017)
0 引言
“3060”双碳战略目标的实施,促进了“双高”特征的新型电力系统快速发展[1]。电力系统的源、网、荷各侧都出现了强非线性运行特征的元件,且比例不断提高,使得原有的适用于线性特征的系统分析方法难以适用[2]。若对这些元件进行机理建模,分析计算过程需要迭代,影响快速性。为此,一些基于数据驱动的分析计算方法被提出[3-4]。同时,新型电力系统要求有更智能、高效的运维技术与管理手段[5],由此产生了文本、图像等类型的数据驱动建模研究[6-7]。因此,数据驱动建模逐渐成为电力领域的研究热点之一。
数据驱动建模已在优化控制、流程工业、生物学等一些依靠机理建模研究成本高、难度大的传统领域获得了成功应用。如生物领域,Deep-Mind 公司使用公开数据集进行端对端模型训练,建立了可以快速准确预测蛋白质结构的AlphaFold模型,预测结果得分比药物模拟实验得分更高,破解了多年的难题[8]。在电力领域,数据驱动建模也进行了较多研究,除一些分散应用外,根据待解决问题的特点,大致可以分为以下三类:
第一类是针对难以理论建模的问题,如负荷预测、新能源发电预测[9]、窃电检测、用户行为分析等。这类问题由于只能采用数据驱动建模,因此研究较早、成果较多。以负荷预测为例,在中国知网进行精确检索,近20年就能检索到2 300多篇中文期刊文章。能够吸引大量研究的原因主要有:问题较为熟悉;用于建模的数据类型具有多样性和发展性,建模需求持续被认可;可用于预测的算法多且发展快;对模型的性能要求及验证较为宽容。然而,对于应用者来说,在数据公开有限、采用自参考模型验证的情况下,成果越多反而越难找到适合自身负荷特点的预测模型。因此,该研究迫切需要分类和总结负荷对象的特点,给出如何挑选合适的负荷预测模型的指导。
第二类是针对理论建模性能欠佳的问题。这类问题进行数据驱动建模的初衷是为了避免由于假设或简化而导致理论模型不够准确,或者为了避免理论模型需要迭代计算而导致模型计算速度慢。如IIDG(逆变器型分布式电源)接入后的电网暂态安全评估[10-11]、潮流计算[3]、短路电流计算[4]等问题。这类研究是在新能源发展与接入电网后被提出来的,所以研究时间短,成果数量少,工程应用效果还有待检验。
第三类是基于文本、图像等非结构化数据的特定业务建模问题。关于该问题的研究成果在逐渐丰富,主要原因是非结构化数据的自动理解本身较为困难,一般需采用自然语言或图像处理等专门技术,同时又需电力领域知识,研究门槛相对较高。另一方面,研究对数据的质量和数量有要求,但要求又较难量化,导致基于未经评估数据建立的模型性能方面不稳定,与工程应用要求还有差距。
综上,电力领域数据驱动建模的发展并不均衡,尤其后两类问题的研究还有较大的拓展和深化空间。由于数据驱动建模,仅通过文献研究很难深刻体会不同建模过程蕴含的建模难点,实践是非常关键的环节,因此本文将介绍和总结后两类数据驱动建模实践,分享对数据驱动建模的理解以及一些体会。
1 针对理论建模性能欠佳问题的数据驱动建模实践
1.1 实践情况与分析
目前主要对三个方面的问题开展了数据驱动建模实践。第一个是针对电力系统暂态稳定、电压稳定问题,分别建立了用于稳定判断的两分类暂态稳定评估模型[11]、基于后果评估的节点故障暂态稳定评估模型[12]以及电压稳定裕度评估模型[13]。第二个是针对配电网单相接地故障区段定位问题,进行了多分类模型建模实践[14];第三个是以含IIDG配电网短路电流计算为目标,进行了数据驱动的回归模型建模实践[4,15]。其中,对于第一个问题,基于时域仿真的暂态稳定和基于连续潮流计算的电压稳定评估方法由于受到计算速度的限制,较难在线应用,所以该问题较早地被提出采用数据驱动进行建模,成果相对较多,基本实现了准确、快速预测暂态稳定和电压稳定的目的。因此,下面主要对后两个实践的建模依据和实践结果进行讨论。
1.1.1 配电网单相接地故障定位数据驱动建模
配电网中性点一般不直接接地,单相接地故障定位问题是存在已久的难题。理论建模的不足之处在于故障位置的电气量信息特征微弱而导致阈值设置困难,偏高偏低均可能产生误判或漏判。建立数据驱动的故障区段定位多分类模型的依据是:配电网仿真可以提供任意数量的样本;配电网发生单相接地故障时,故障线路和非故障线路的各相电流变化情况是存在差别的,即使IIDG接入后依然有该特点,即各线路故障前后各相电流有效值构成的信息包含着故障发生的区段且区段唯一。因此,可以建立以0和线路编号为标签的多分类模型,其中0表示无故障。文献[14]详细介绍了该数据驱动模型的建立和验证过程。
研究结果表明,数据驱动建立的故障区段定位模型,可以避免阈值的设置,且适用于多种配电网不直接接地场景,包括中性点不接地、经消弧线圈接地、小电阻接地等,对于过渡电阻在一定范围内的单相接地故障具有可靠识别能力。能否进一步建立回归模型,实现故障区段中故障位置的定位,是下一步需要研究的问题。研究表明,若仅用各线路的各相电流有效值及变化量是难以建立回归模型的,因为同一区段内发生不同位置的单相接地故障,各线路各相电流有效值变化的差异非常小,每一个样本对应的故障位置唯一性不明显,因此若要建立故障定位回归模型,需探索新特征。
1.1.2 含IIDG配电网短路电流计算数据驱动建模
IIDG 本身具有多样性和复杂性,详细建模易引起维数灾难,简化建模又会降低准确性。此外,受低压穿越等控制策略影响,IIDG 具有强非线性,在采用机理分析计算时,不可避免地需要迭代。且迭代规律与传统电网潮流计算过程中连续的非线性过程不同。迭代次数、是否收敛受电网规模、非线性元件数量、元件模型简化程度、初值选择等因素影响较大。为了克服理论建模存在的计算速度与准确性间的矛盾,可建立数据驱动的含IIDG配电网短路电流回归模型。其依据为在运行方式和故障情况确定后,各支路的短路电流稳态值是确定且唯一的。通过仿真可获得充裕样本,也有适合的学习算法进行回归建模。文献[4]和[15]分别介绍了以单输出和多输出为目标的模型建立和验证过程。
实践结果表明,强非线性元件的接入对数据驱动模型的训练和在线应用速度不会产生直接影响,仅会增加离线获取仿真样本的时间。为提高获得仿真样本的速度,除适当简化强非线性元件模型进而加快仿真速度外,更适合的方法是减少需要的样本数量。如文献[4]提出将IIDG 未接入时的短路电流作为特征之一,可以减少对IIDG接入时的样本数量要求,进而减少样本获得时间。此外,该类数据驱动建模是通过仿真建模让计算较慢的理论模型提前实现大量样本,然后训练模型并最终实现快速应用,其本质是进行了时间腾挪。目前该模型应用于工程还需进一步研究的问题主要是样本数据如何自动更新以适应网络规模和结构的变化。
1.2 建模过程总结
上述建模实践解决的问题不同,建立的模型形式也不同,但都通过仿真获得大量数据样本,因此建模过程存在一些共性步骤。
1.2.1 确定输出量
数据驱动建模首先要确定模型的输出是什么。不同输出对输入数据的要求不同,也会影响算法的选择。以配电网单相接地故障为例,若只判断配电网是否故障,采用零序电压就能实现理论模型,不必建立数据驱动模型;若要判断哪个区段故障,则可以建立基于各线路、各相电流有效值的多分类数据驱动模型;若要输出故障详细位置,则要研究基于其他电气量信息的回归模型。因此,不同输出不仅决定模型类型,也影响输入特征选择。
1.2.2 输入特征选择
一般来说,特征选择不全面将导致建模失败;合理的特征选择可以提高模型准确度和计算速度。一方面,特征数目越多,基于智能算法的模型训练和使用速度越慢;另一方面,未经选择的特征中往往包含一些质量较低的特征,会对模型本身造成干扰,降低模型准确度。特征选择常以输出为导向,通过理论分析或智能算法确定哪些特征对于最终的输出有更大的帮助,以此剔除冗余特征,实现特征降维。比如,配电网单相接地故障区间定位未采用电压量数据。一方面,配电网的实际情况是电压互感器比电流互感器配置得少;另一方面,实验表明,电压量与电流量之间存在信息冗余,增加电压数据后反而会降低模型性能。
1.2.3 数据样本的获得
确定问题的特征和输出后,需获得训练模型所需的样本数据。本节实践所用的样本数据均来自仿真,获取时考虑了以下三个方面:
1)建立的电网仿真模型是否有代表性。较多研究采用IEEE不同规模的电网为算例,但与我国国情不符。为此,实践中仅采用网架结构和参数,而对电压等级、频率等与我国不同的参数进行适应性修改,但需要特别关注修改的完善性。例如把配电网电压等级从24.9 kV 改为10.5 kV,需要考虑供电半径相应缩小,即各线路长度和负荷需要修改,否则仿真结果将不合理。
2)运行方式是否考虑全面、合理。仿真容易通过修改运行方式和故障条件获得充裕的样本,然而也容易出现类别不平衡、不合理的情况。类别不平衡将导致样本偏斜,训练得到的模型很可能会过拟合。对于不合理的情况,如模拟新能源不同渗透率,不能仅修改新能源的接入容量、接入位置,还需要修改系统等值电源的等值阻抗,否则会出现不存在的运行方式。
3)适当考虑仿真数据与实际量测数据的误差以及数据的丢失情况,为此引入一定的白噪声,并设置一定的数据缺失比例。
1.2.4 算法选择与改进
通常根据要解决的具体问题的特点和难度,选择具有相应学习能力的智能算法。从功能角度,最常见的模型有分类模型和回归模型;从输出数量角度,模型可分为单输出模型和多输出模型。上述任何一类模型都有很多算法可供选择,因此需要研究算法的适用条件及优缺点。针对每一种算法,为提升模型性能,不仅仅需要通过训练集和测试集的交叉验证法进行调参,有时还需根据应用场景进行适应性改进。比如,暂态稳定评估中,将不稳定评估成稳定,其危害远大于将稳定评估成不稳定。为此选定的算法需要额外考虑代价敏感差异,如引入注意力机制对损失函数进行改进[11]。更多的情况是需要通过多种算法对比,甚至多种算法综合运用,实现优势互补,最终形成解决问题的建模算法。
1.2.5 模型性能分析
模型训练完成后,还需分析模型的应用性能。常见性能包括模型误差、时间开销、存储开销、可解释性等。针对模型误差,不同功能模型的性能度量指标会有差异。对于分类模型,常采用查准率、查全率、两者的调和平均F1进行评价;对于回归模型常采用偏差、方差等指标。其他性能分析由具体问题的特点来决定,如在线应用问题则要重视时间开销。可解释性是数据驱动建模的弱项,阻碍了其在一些特定场景的应用。
2 基于非结构化数据的驱动建模实践
2.1 基于电力文本数据的驱动建模实践
电力文本数据较为特定,一般为某业务部门所专有,建模目的往往是为提升业务管理能力和效益,因此建模需求和建模过程具有特定性。以电力公司运检部门的电力设备缺陷记录文本为对象,进行了缺陷文本质量评价与提升[16-18]、缺陷严重程度自动定级[6,17]、缺陷精细化统计[19]、缺陷文本自动检索与匹配[20-21]等建模实践。此外,进行了基于对话文本的电力设备供应商评价研究[22],还尝试了一些电力长文本的数据驱动建模实践。基于上述实践,有以下三点体会。
1)电力文本数据驱动建模一般需要经历文本预处理、文本表示和具体的挖掘算法研究三个阶段。每一个阶段有多种技术可供选择。但有些建模有自身的特色。如缺陷精细化统计[19]只采用了文本预处理技术,然后自定义了语义槽并进行槽填充,方便依据槽信息进行统计。再如缺陷文本检索与辨识也是在经历了预处理技术后,分别采用了知识图谱[20]和依存句法树[21]技术实现检索与辨识。此外,同一建模需求也有多重实现方法。如缺陷文本质量提升既可以采用基于知识图谱的图搜索技术实现质量问题提示[18],也可以采用基于缺陷文本质量评价的质量问题提示[16]。因此文本数据驱动建模应根据建模目的选择适合的方法,不必过于拘泥于通用流程。
2)电力文本数据驱动建模离不开专业领域知识,若直接采用通用领域的一些方法,往往难以达到最佳效果。因此需要结合电力领域知识及文本特点对建模方法进行补充与改进。如为提升电力文本分词的准确性,可增加电力领域本体字典[23]。
3)基于短文本的建模方法较难直接应用于长文本。电力设备缺陷文本往往是几十个字的短文本,内容上比较有规律,一般包含缺陷发生的设备类型、具体部件和部位、现象和程度,因此适合采用知识图谱技术进行一些建模应用[18,20]。然而诸如新设备启动方案、调度预案等长文本,一般有数页,关键词汇分散且词频不高,因此难以移植短文本的技术进行建模。若由人工构建类似于程序流程图的知识图谱,则只是形似而神不似,失去了数据驱动建模的意义。此外,知识图谱构建是自动地从大量语料库中提取共性知识,因此不适合把具体个体名称放入知识图谱中。长文本的建模方法还有较大探索空间,如尝试阅读理解方法等。
2.2 基于电力图像数据的驱动建模实践
在图像数据建模方面,针对变压器图像进行了多部件目标检测[24]、小部件智能识别[25]的建模实践;针对变电站指针式仪表图像进行了读数建模[7];针对隔离开关图像进行了状态自动识别建模[26]。基于上述实践,有以下两点体会。
1)电力图像数据驱动建模中常用到图像目标检测技术和图像分割技术,这些技术往往有多种算法,具体采用哪种需要分析对比,有时还要针对图像特点进行算法改进。如在图像目标检测中,文献[24]对Faster R-CNN 网络进行了两处改进。一是通过提取多个卷积层的信息,使模型可以动态地适应部件大小差异,提高对小目标的检测准确性;二是在单目标检测的基础上,加入多目标之间的相对位置关系信息,从而提升了检测准确率。应用改进后的模型,变压器多部件自动识别的查全率和查准率获得了较大提升。文献[7]在采用图像分割模型时也对U-Net 网络进行了两处改进。一是增加网络下采样次数,并对邻层特征进行融合、叠加,增强了网络对低层特征信息的提取,将不同层次神经元的感受野控制在更加合理的水平;二是使用Dice 损失函数计算真实轮廓和预测轮廓的相似度,缓解类别不平衡问题。应用改进后的模型,分割仪表刻度线和指针的准确率获得较大提升。
2)为提高建模准确性,除针对建模对象的图像特点进行算法改进外,提升图像样本的质量和数量也是重要途径。图像质量受雨、雾等天气和灰尘、光线等环境因素影响,常采用去雾算法等技术手段提升图像质量。此外还可以采用管理手段,如对灰尘进行定期清扫以保障图像质量。图像数量扩充的常用方法有平移、缩放、旋转、改变亮度等基于二维图像本身进行变换的方法,文献[26]则提出了模拟摄像机拍摄角度变化的基于三维形状先验知识的图像变换方法。以隔离开关为实验对象,通过隔离开关的二维图像位置反推其三维空间的坐标;然后以拍摄点为参照,以隔离开关较近的绝缘柱为轴进行有限角度的旋转,目的是为避免旋转角度过大导致图像失真;最后再利用透视投影变换重新生成隔离开关的二维图像,实现了图像数据的扩充。算例分析表明该扩充方法有效提升了目标检测模型训练效果。
3 对电力领域数据驱动建模的思考
3.1 数据驱动建模的定义
虽然数据驱动建模尚无统一定义,但通过上述实践可以认为:相对于理论研究建模来说,数据驱动建模是利用丰富的数据样本,运用多变量统计分析等理论或者机器学习等智能算法,从样本数据中找出问题的内在规律,进而建立起输入、输出间的映射模型。最常见的模型有分类模型和回归模型,但无论哪类模型都无法直接用数学公式进行表达。此外,建模所依赖的数据可以是多类型、多模态的,其中有些数据需要经过一定的预处理后才能被计算机所应用。
3.2 数据驱动建模的条件与基本步骤
由于理论模型可以用数学公式进行表达和推理,因此具有明确的可解释性;而数据驱动建模较多采用机器学习算法,可解释性不足。因此,数据驱动建模一般适用于理论分析太复杂、数学模型未知或不确定性很大但能获得充分样本的问题。进行数据驱动建模,大抵需要具备以下条件:有针对具体问题的明确建模需求;有与问题密切相关且数量充足的样本数据,样本数据既包含输入的特征数据也包含输出的标签数据,且标签具有唯一性;有与问题相匹配的具备自学习能力的算法。
为此,电力领域数据驱动建模至少要经历3个基本步骤:
1)通过电力领域理论分析或工程经验确定待建模问题的特征因素和模型标签,即确定问题的输入、输出。
2)分析现有数据能否满足建模要求,若不能满足要求,需扩大数据采集范围或采用实验手段进行数据补充。
3)算法研究既可以采用数理统计等传统方法,也可以采用包含深度学习在内的机器学习算法,目前较多采用多种方法融合的智能算法,通过训练和测试建立从输入特征到输出标签的映射模型,并进行模型性能验证。
3.3 数据驱动建模的优势与风险
从上述步骤可知,与理论建模相比,数据驱动建模是一种能够融合理论、实验、数据三大研究方式优势的建模方法。当前,人工智能、芯片、大数据等国家战略的实施,促进了数据驱动建模所需的算法、算力和数据的快速发展,因此,数据驱动建模具有良好的发展前景。尤其是模型具有应用速度快的优点,促进了其在实时问题中的应用。
然而,数据驱动建模能否成功,既与问题本身难度有关,也与数据本身的数量和质量有关,还与选择的智能算法有关。智能算法本身无法对依赖于数据的模型质量进行全面的评价和反馈。理论上,只要有数据和算法,总能训练出模型,而模型是否准确反映了问题只能依靠测试进行验证。过拟合、欠拟合是数据驱动建模中常见的问题,通常采用增大训练和测试样本来避免,但依然很难彻底解决[27]。若不精心设计验证集,过拟合问题甚至很难发现,其表现为:模型在训练集和测试集上表现出很好的泛化能力,而在之外的样本上却不能很好地拟合。综上,目前数据驱动建立的模型,科学性既无法理论证明,也无法穷尽测试,所以数据驱动建模总是存在一定的风险。但是,当问题太复杂难以建立理论模型,或者理论模型过于复杂难以工程应用时,若恰好满足数据驱动建模条件,尝试数据驱动建模则可以为问题解决提供一种可能途径。
4 电力领域数据驱动建模应重视的问题
1)建模需求
电力领域的数据驱动建模是目标导向、问题导向的应用性研究,因此确定需求是建模的首要任务。建模需求包括要解决的问题或要实现的模型功能,以及模型要达到的性能。但目前出现了一些只重视算法、而忽略了领域问题本身的研究,如未分析建模条件、建模依据,或者忽略了模型应用场景、模型性能。为防止建模失败,需要在建模前进行建模需求分析,以最小代价确定是否适合数据驱动建模。
2)数据质量和样本数量
数据是数据驱动建模的根本基础。保证样本数量和数据质量是降低模型风险的重要手段之一。传感器与传感技术的发展与进步,确实为获得高质量的工程数据提供了条件,然而电网绝大部分时间是正常运行的,工程数据的价值密度偏低。对于电网故障和异常问题的研究,样本往往需要通过数字仿真技术或理论模型计算来获得,因此充裕的样本积累是数据驱动建模中最为耗时的。样本数量不足将导致模型欠拟合或过拟合,是容易被发现并解决的;但不同类型样本数量偏斜导致的过拟合,不容易被发现,尤其是文本、图像类数据,对其进行数据评估较为困难,研究还比较欠缺。
3)数据预处理
一般文本、图像等非结构化数据需要经过预处理后再进行建模。某些结构化数据根据具体问题的不同也需要进行预处理,即根据不同数据项的价值、作用、获取频度、质量、相关性等差异,对初始数据进行转化、融合、重新组织等预处理,可以提高模型性能。然而,预处理方法会对模型性能产生较大影响,因此数据预处理方法也需要进行对比后选择。
4)算法选择
由于近年来常采用人工智能算法进行数据驱动建模,而算法的发展又非常快速,因此容易出现以下两种情况:一种只用熟悉的方法;另一种只用最新的方法。对于具体问题来说,只有算法自身的优缺点与问题相匹配才是最合适的算法,脱离具体问题讨论什么算法更好是无意义的[27]。因此,算法选择要有依据,并通过比较进行验证。
5)模型验证
模型验证是降低数据驱动建模风险的最有效途径之一。目前的模型验证往往是为了表明模型正确,然而数据驱动建模的风险已表明,模型既无法理论证明也无法穷尽测试,因此,对于要进行工程应用的模型来说,验证的目的应是找出模型潜在的错误。只有正确认识验证目的以及验证具有不彻底的特性,才能精心设计最能暴露错误的样本构成验证集。由于智能算法的内部结构及处理过程复杂,难以通过逻辑路径覆盖设计样本,所以一般采用黑盒测试法设计样本。具体地,通过分析模型各种应用场景的输入、输出数据,综合采用等价类划分法、边界值分析法、错误猜测法等方法设计验证样本,用有限的样本去发现尽可能多的错误。等价类划分法、边界值分析法是黑盒测试中常用的方法,不仅能验证模型在正确输入情况下是否能获得正确的输出,还能验证在不正确输入情况下是否有不应该的输出。验证过程中若发现有不正确的输出,需要分析原因,从中总结出影响模型的因素,并针对性地进行改进和解决。训练样本数量不足、应用场景分析不足导致样本偏斜或者算法不合适,都可能造成模型不准确,因此验证集需要严谨分析、精心设计,随机选择一些典型样本进行验证是难以表明模型正确性的。
5 结语
虽然在负荷预测等问题上,数据驱动建模已有较长的研究历史,但电力领域业务面广量多,总体上数据驱动建模经验还相对缺乏,建模失败难以完全避免,因此及时总结建模经验非常必要。
新型电力系统的发展以及智能化要求的提升,越来越多的建模需求被提出。数据驱动建模成功案例的示范将会激发越来越多数据驱动建模研究。本文针对理论建模性能欠佳问题和基于非结构化数据的特定业务建模问题,介绍了数据驱动建模的实践情况,总结了对数据驱动建模的理解和体会。
电力系统有高可靠性的要求,不适合的建模需求或不恰当的建模过程都可能误导业务人员甚至危害电网安全。但是,对于机理分析太复杂、数学模型未知或不确定性很大的问题,还是可以尝试进行数据驱动建模,即使建模不成功也可以从原因分析中获得启迪。为此,对电力领域数据驱动建模的综合建议是大胆尝试、小心求证。