佟 敏,崔亚茹,党 乐,陈忠源
(国家电网内蒙古东部电力有限公司 电力科学研究院,内蒙古 呼和浩特 010000)
变压器是电网运行中的重要设备,一旦发生故障,将会给电力系统和生产生活带来重大损失[1-4].目前,对变压器故障的早期诊断最优方法是油中溶解气分析方法(dissolved gas analysis),并且油中溶解气体的分析方法作为充油电力设备状态异常分析手段,在电力系统中得到有效应用[5].另外,变压器油中溶解气体浓度预测的研究解决了溶解气体在线监测技术的实时性问题,推动了在线监测技术的发展,变压器油中溶解气体浓度预测研究具有实用价值.
随着近20 a人工智能领域的飞速发展,机器学习也在变压器油中溶解气体浓度预测领域得到广泛应用.机器学习方法分为传统机器学习、集成学习和深度学习.传统机器学习方法包括支持向量机(support vector machine)、前馈神经网络(feedforward neural network)等;集成学习方法包括Boosting算法、Bagging算法等;深度学习方法包括卷积神经网络(convolution neural network)、长短期记忆神经网络(long-short term memory neural network).随机森林算法是一种由决策树构成的集成学习算法,相较于其他算法,其具有需要调整的参数少、训练效率高、容错性好和不易过拟合等优点[6-9].目前随机森林算法在油中溶解气研究中的应用,主要问题是随机森林算法中的关键参数都是根据经验设定的,而这些参数取值对随机森林算法的仿真时间和仿真结果都影响显著.
本文中,笔者首先深入剖析随机森林算法,确定对算法性能最有影响的关键参数,然后利用遗传算法对随机森林算法的5个关键参数进行优化,最后将优化后的参数值代入随机森林算法中,并对变压器油中溶解气体进行浓度预测,获得了理想仿真结果,证明所改进的随机森林算法具有更好的适用性和可行性.
为了弥补决策树算法的不足,2011年Breiman 借鉴集成学习的思想,利用Bagging方法提出随机森林算法.随机森林算法对大规模数据具有良好性能,核心思想是结合随机特征子空间方法形成性能较弱的多个分类回归决策树,经过一定规则组成森林,最终结果由森林中所有的决策树投票得出[7].
图1 随机森林算法原理图Fig.1 Schematic Diagram of Random Forest Algorithm
如图1所示,随机森林算法流程主要包括3个步骤:对训练数据集进行随机抽取获得训练子集、随机选取特征子集形成决策树、并行训练每个决策树获得对应结果.
设X是一个包含m个特征的输入向量,Y是输出值,Sn是一个包含n个观测值(Xi,Yi)的训练集[8],其中
Sn={(X1,Y2),…,(Xn,Yn)},X∈Rm,Y∈R.
(1)
决策树的生成采用分类和回归树CART(classification and regression tree)算法,该算法将输入空间递归地划分为二叉树,根据最小损失函数,每个节点只向下分裂成2个区域,最终基于最小二乘偏差生成回归决策树.
最小损失函数为
f=min[∑(yi-c1)2+∑(yi-c2)2],
(2)
其中c1和c2分别表示2个区域R1和R2的平均值.
随机森林算法抽取数据采用的是有放回抽样中的无权重抽样,根据事先设定的决策树数量n,对训练集数据进行n次有放回抽样,每次抽样产生相应的决策树,由于是随机采样,每棵决策树的训练数据不同,决策树之间存在着差异,通过这种方式可以有效克服单棵决策树产生的过拟合问题.
遗传算法是模拟达尔文自然选择进化和遗传学生物进化过程的最优搜索方法.与传统优化方法相比,遗传算法从问题解的串集开始搜索,搜索范围广,不易陷入局部最优.
如图2所示,遗传算法流程是设置M个个体形成初始种群,评估每个个体的适应度,根据适应度进行选择、交叉、变异和克隆操作,生成p+1代个体M个,然后判断终止条件,如果条件满足,则最大适应度个体就是最优输出,否则继续遗传操作.
随着大数据时代的来临,预测问题中的海量数据对很多经典预测方法提出了挑战.随机森林算法的参数取值将直接影响到算法的预测准确性.对随机森林算法的重要参数进行寻优,获得最优参数组合有利于提升模型的预测准确率.影响随机森林算法性能的参数有17个,本研究只考虑了影响最大的5个参数.
1) 决策树数目(n_estimators),是决策树的棵数,其取值对随机森林算法的性能影响较大,如果取值过小会导致模型欠拟合,模型预测效果差;随着其取值的增大算法的精度也会提升,但会导致计算时间过久、效率过低的问题,取值过高甚至会导致模型过拟合.
2) 决策树最大深度(max_depth),其与数据量和数据特征关系密切,在数据量大、特征较多时,必须考虑 max_depth 的取值.
3) 节点可分最小样本数(min_samples_split),是决策树生成中的关键参数.
4) 叶子节点的最小样本数(min_samples_leaf),当节点样本数少于节点可分最小样本数,那么决策树停止划分.
5) 最大叶子节点数(max_leaf_nodes),是决策树生成中的关键参数.
上述2)~5)参数,对样本量大的情况,都需要调整取值.带参数优化的随机森林算法流程如图3所示.
图2 遗传算法原理图Fig.2 Schematic Diagram of Genetic Algorithm
图3 带参数优化的随机森林算法流程Fig.3 Random Forest Algorithm Flow with Parameter Optimization
具体流程如下:
1) 对上述5个参数进行遗传编码,并生成初始种群;
2) 将种群中每个个体的参数代入随机森林算法,进行回归分析,得到预测结果;
3) 采用可决系数R2作为适应度
(3)
4) 判断遗传算法的终止条件是否满足,如果满足则结束计算,当前最好的随机森林预测结果就是最终结果,否则就通过选择、交叉、变异和克隆重新生成足量个体进而形成种群;
5) 重复2),3)和4)步骤.
以蒙东电网某220 kV变压器2020年4月18日~2021年6月8日油色谱数据为例,观测周期为24 h,共415组数据,去掉无效数据后剩余410组数据.将360组数据(2020年4月18日~2021年4月18日)作为训练集,其余50组数据(2021年4月19日~2021年6月8日)作为测试集.
利用Matlab软件,分别对乙炔、甲烷、氧气等9种气体进行预测分析.
以随机森林算法中5个参数(决策树的数目、决策树最大深度、节点可分最小样本数、叶子节点的最小样本数和最大叶子节点数)为研究对象,验证不同参数对乙炔气体浓度预测的影响,结果如图4~8所示.仿真中没有说明的关键参数取默认值.决策树的数目默认值为100、决策树最大深度默认值为2、节点可分最小样本数默认值为10、叶子节点的最小样本数默认值为5、最大叶子节点数默认值为5.
图4 决策树数量对乙炔气体浓度预测的影响 Fig.4 Influence of Decision Tree Number on Acetylene Concentration Prediction
图5 决策树最大深度对乙炔气体浓度预测的影响Fig.5 Influence of Maximum Depth of Decision Tree on Acetylene Concentration Prediction
图6 叶子节点最小样本数对乙炔气体浓度预测的影响Fig.6 Influence of the Minimum Sample Number of Leaf Nodes on Acetylene Concentration Prediction
图7 节点最小可分样本数对乙炔气体浓度预测的影响Fig.7 Influence of Minimum Separable Sample Number on Acetylene Concentration Prediction
图8 最大叶子节点数对乙炔气体浓度预测的影响Fig.8 Influence of the Maximum Number of Leaf Nodes on Acetylene Concentration Prediction
表1 5个参数不同取值的平均误差结果Tab.1 Average Error Results of Different Values of Five Parameters
由表1可知,5个关键参数取值的不同对气体浓度预测影响明显,因此需要对取值做遗传算法优化.
进行遗传编码时,待优化参数取值为1~500,因此采用9位二进制对一个参数编码,因为有5个待优化参数,所以采用45位二进制码对5个参数进行编码.随机生成100个初始个体形成种群.终止条件是迭代次数小于105次.遗传操作中采用轮盘赌方式进行选择,交叉概率为0.7,变异概率为0.01,克隆概率为0.02.
为满足可决系数最大的条件,取决策树数目为200、最大树深为3、节点可分最小样本数为20、叶子节点最小样本数为10、最大叶子节点数为10.
在上述工作的基础上,利用遗传算法得到的最优化参数,以选定的蒙东电网原始数据进行随机森林算法仿真.随机森林算法采用Bootstrap方式进行有放回采样形成200个决策树训练集.最后将200个决策树预测结果取均值作为最终结果.
对乙炔的预测结果如图9所示,未进行参数优化的随机森林算法平均误差为3.24 %,进行了参数优化的随机森林算法平均误差为2.66 %.
图9 乙炔的预测结果Fig.9 Prediction Results of Acetylene
对甲烷的预测结果如图10所示,未进行参数优化的随机森林算法平均误差为3.27 %,进行了参数优化的随机森林算法平均误差为2.92 %.
图10 甲烷的预测结果Fig.10 Prediction Results of Methane
对氧气的预测结果如图11所示,未进行参数优化的随机森林算法平均误差为3.61 %,进行了参数优化的随机森林算法平均误差为2.38 %.
图11 氧气的预测结果Fig.11 Prediction Results of Oxygen
在上述工作的基础上,采用相同的参数优化方法进行参数优化并分别采用随机森林算法进行浓度预测,对其他气体预测所得结果如表2所示.可见,采用带遗传算法参数优化的随机森林算法比传统随机森林算法具有更低的平均相对误差和最大相对误差,说明所改进的随机森林算法具有更好的预测稳定性和可靠性.
表2 其他油中溶解气体的预测结果Tab.2 Prediction Results of Other Dissolved Gases in Oil %
在对随机森林算法参数分析的基础上,确定5个关键参数并利用遗传算法对参数进行优化.然后,以蒙东电网220 kV变压器油中溶解气体数据为研究对象,利用随机森林算法进行360组数据的训练.最后,对50组数据进行预测.仿真结果表明,采用所提出的改进随机森林算法预测包括乙炔在内的9种气体浓度时,无论是平均相对误差还是最大相对误差,数值都低于传统随机森林算法相应的预测结果,证明了所改进算法的实用性和鲁棒性.