1.案例背景
1.1 PNN概述
概率神经网络(probabilistic neural networks. PNN)是 D.F.Specht博士在1989年首先提出的,是一种基于Bayes分类规则与Parzen窗的概率密度函数估计方法发展而来的并行算法。它是一类结构简单、训练简洁,应用广泛的人工神经网络。在实际应用中,尤其是在解决分类问题的应用中,PNN 的优势在于用线性学习算法来完成非线性学习算法所做的工作,同时保持非线性算法的高精度等特性;这种网络对应的权值就是模式样本的分布,网络不需要训练,因而能够满足训练上实时处理的要求。
PNN 网络是由径向基函数网络发展而来的一种前馈型神经网络,其理论依据是贝叶斯最小风险准则(即贝叶斯决策理论),PNN作为径向基网络的一种,适合于模式分类。当分布密度 SPREAD的值接近于0时,它构成最邻分类器;当SPREAD的值较大时,它构成对几个训练样本的临近分类器。PNN的层次模型,由输入层、模式层、求和层、输出层共4层组成,其基本结构如图24-1所示。
输入层接收来自训练样本的值,将特征向量传递给网络,其神经元数目和样本矢量的维数相等。模式层计算输入特征向量与训练集中各个模式的匹配关系,模式层神经元的个数等于各个类别训练样本数之和,该层每个模式单元的输出为
第3层是求和层,是将属于某类的概率累计,按式(24-1)计算,从而得到故障模式的估计概率密度函数。每一类只有一个求和层单元,求和层单元与只属于自己类的模式层单元相连接,而与模式层中的其他单元没有连接。因此求和层单元简单地将属于自己类的模式层单元的输出相加,而与属于其他类别的模式层单元的输出无关。求和层单元的输出与各类基于内核的概率密度的估计成比例,通过输出层的归一化处理,就能得到各类的概率估计。网络的输出决策层由简单的阈值辨别器组成,其作用是在各个故障模式的估计概率密度中选择一个具有最大后验概率密度的神经元作为整个系统的输出。输出层神经元是一种竞争神经元,每个神经元分别对应于一个数据类型即故障模式,输出层神经元个数等于训练样本数据的种类个数,它接收从求和层输出的各类概率密度函数,概率密度函数最大的那个神经元输出为1,即所对应的那一类为待识别的样本模式类别,其他神经元的输出全为0。
1.2变压器故障诊断系统相关背景
故障诊断(Fault Diagnosis,FD)始于机械设备故障诊断。现代设备技术水平和复杂度不断提高,设备故障对生产的影响也显著增加,因此要保证设备可靠、,有效地运行,充分发挥其效益,必须发展故障诊断技术。故障诊断技术借助于现代测试、监控和计算机分析等手段,研究设备在运行中或相对静止条件下的状态信息,分析设备的技术状态,诊断其故障的性质和起因,并预测故障趋势,进而确定必要的对策。利用故障诊断技术可以早发现故障征兆和原因,有利于及早排除故障和安全隐患﹐避免不必要的损失,因而具有很高的经济和社会效益。
运行中的变压器发生不同程度的故障时,会产生异常现象或信息。故障分析就是搜集变压器的异常现象或信息,根据这些现象或信息进行分析,从而判断故障的类型、严重程度和故障部位。因此,变压器故障诊断的目的首先是准确判断运行设备当前处于正常状态还是异常状态。若变压器处于异常状态有故障,则判断故障的性质,类型和原因。如是绝缘故障、过热故障还是机械故障:若是绝缘故障,则是绝缘老化、受潮,还是放电性故障;若是放电性故障又是哪种类型的放电等。变压器故障诊断还要根据故障信息或根据信息处理结果预测故障的可能发展即对故障的严重程度、发展趋势做出诊断;提出控制故障的措施,防止和消除故障;提出设备维修的合理方法和相应的反事故措施;对设备的设计,制造、装配等提出改进意见,为设备现代化管理提供科学依据和建议。
对变压器油中溶解气体进行分析是变压器内部故障诊断的重要手段。我国当前大量应用的是改良三比值法,但利用三比值法作为变压器故障诊断的判据存在两方面的不足,即所谓编码缺损和临界值判据缺损。人工神经网络以其分布式并行处理、自适应、自学习,联想记忆以及非线性映射等优点,为解决这一问题开辟了新途径。当前变压器故障诊断系统大多数都是采用BP网络模型,但由于BP网络自身结构的特点,在训练样本较大且要求精度较高时,网络常常不收敛且容易陷入局部最优。
2.模型建立
任何神经网络建模中,选取的输人特征向量,必须能够正确地反映问题的特征。如果所基于的故障特征没有包括足够的待识别信息或未能提取反映故障特征的信息,则诊断结果往往会受到很大的影响。油中溶解气体分析的方法能很好地反映变压器的潜伏性故障,且在各种诊断方法中以改良三比值法的判断准确率最高,所以选择油中溶解气体含量的三对比值作为神经网络的输入特征向量,而输出特征向量则选用变压器的故障类型。
在此思路的基础上,经过以下几个步骤设计PNN 网络模型,流程图如图24-2所示。
概率神经网络结构简单、训练简洁,利用概率神经网络模型的强大的非线性分类能力,将故障样本空间映射到故障模式空间中,可形成一个具有较强容错能力和结构自适应能力的诊断网络系统,从而提高故障诊断的准确率。本案例在对油中溶解气体分析法进行深入分析后,以改良三比值法为基础,建立基于概率神经网络的故障诊断模型。案例数据中的data. mat是33×4维的矩阵,前3列为改良三比值法数值,第4列为分类的输出,也就是故障的类别。使用前23个样本作为 PNN训练样本,后10个样本作为验证样本。
3.MATLAB代码
%% 清空环境变量
clc;
clear all
close all
nntwarn off;
warning off;
%% 数据载入
load data
%% 选取训练数据和测试数据
Train=data(1:23,:);
Test=data(24:end,:);
p_train=Train(:,1:3)';
t_train=Train(:,4)';
p_test=Test(:,1:3)';
t_test=Test(:,4)';
%% 将期望类别转换为向量
t_train=ind2vec(t_train);
t_train_temp=Train(:,4)';
%% 使用newpnn函数建立PNN SPREAD选取为1.5
Spread=1.5;
net=newpnn(p_train,t_train,Spread)
%% 训练数据回代 查看网络的分类效果
% Sim函数进行网络预测
Y=sim(net,p_train);
% 将网络输出向量转换为指针
Yc=vec2ind(Y);
%% 通过作图 观察网络对训练数据分类效果
figure(1)
subplot(1,2,1)
stem(1:length(Yc),Yc,'bo')
hold on
stem(1:length(Yc),t_train_temp,'r*')
title('PNN 网络训练后的效果')
xlabel('样本编号')
ylabel('分类结果')
set(gca,'Ytick',[1:5])
subplot(1,2,2)
H=Yc-t_train_temp;
stem(H)
title('PNN 网络训练后的误差图')
xlabel('样本编号')
%% 网络预测未知数据效果
Y2=sim(net,p_test);
Y2c=vec2ind(Y2);
figure(2)
stem(1:length(Y2c),Y2c,'b^')
hold on
stem(1:length(Y2c),t_test,'r*')
title('PNN 网络的预测效果')
xlabel('预测样本编号')
ylabel('分类结果')
set(gca,'Ytick',[1:5])
运行结果:
由图可见,在训练后,将训练数据作为输入代人已经训练好的PNN 网络中,只有两个样本判断错误,并且用预测样本进行验证时候,也只有两个样本即两种变压器的故障类型判断错误。最后得到的PNN 网络可以用来进行更多样本的预测。
4案例扩展
4.1与BP网络相比,PNN的优势。
①PNN过程简单,收敛速度快。BP网络的输人输出和 PNN相同,但其隐藏层单元的选取没有确定性法则,需要根据经验反复试算得到。而PNN需调节的参数少,不需确定隐藏层数、隐藏层中的神经元个数等网络结构,比较容易使用。BP网络的学习算法收敛速度慢,而且易陷入局部最优值。PNN 的训练过程一步到位,训练样本可直接赋值给网络,其训练时间仅仅略大于数据读取的时间,且不存在局部最优值。
②PNN总收敛于 Bayes 优化解,稳定性高。
BP网络的分类规则是没有确定解释的,缺乏透明度。PNN是基于贝叶斯最小风险准则对对象进行分类的,可以最大限度地利用故障先验知识,无论分类问题多么复杂,只要有足够多的训练样本,概率神经网络能够保证获得贝叶斯准则下的最优解,而BP神经网络却可能在一个局部最优值处中断,无法保证得到一个全局最优值。
③样本的追加能力强,且可以容忍个别错误的样本。
如果在故障诊断过程中有新的训练样本加入或需要除去某些旧的训练样本,PNN 只需增加或减少相应的模式层单元,新增加的输入层至模式层的连接权值只需将新样本直接赋值。而对于BP网络,修改训练样本后则需要重新进行训练,网络的连接权值全部需要重新赋值,相当于重新建立整个网络。
在实际应用中,需要建立变压器故障样本库,其内容会随着变压器故障的增加、变化而产生变化,此时 PNN样本追加能力强的优越性就可得到充分的体现。综上所述,PNN变压器故障诊断系统在诊断速度、追加样本的能力以及在实际应用中的诊断准确率等几个方面的性能都要优于BP变压器故障诊断系统。
4.2 SPREAD 的作用
如果SPREAD值接近于0,则创建的概率神经网络可以作为一个最近邻域分类器。随着SPREAD的增大,需要更多地考虑该网络附近的设计向量。具体请参见7.4.2中关于SPREAD的讨论。
4.3 其他需要注意的问题
PNN模型故障特征的选择要使得故障特征样本包含最大故障信息量,因此要深人分析故障产生机理及故障信息传递关系,选择最能反映故障的特征量,对一些无关或关系较小的故障特征量应不予考虑,以保证生成的 PNN规模最小。