2. 中国科学院大学, 北京 100049;
3. 国家电网公司东北分部, 沈阳 110180;
4. 吉林大学 计算机科学与技术学院, 长春 130000
2. University of Chinese Academy of Sciences, Beijing 100049, China;
3. State Grid Corporation Northeast Division, Shenyang 110180, China;
4. College of Computer Science and Technology, Jilin University, Changchun 130000, China
现阶段随着社会的飞速发展, 无论是个人、集体, 对电的使用需求也同样旺盛. 为了保障用户的正常和安全用电, 除了在供电方做好必备工作外, 在电力调度中也必须保证连贯性和可靠性. 所以, 依托于某电力调控分中心, 在系统基础平台之上, 建设了电力调度自动化资源系统管理平台. 该平台充分利用了物联网、无线网络和三维建模等先进技术, 采用分布式分区结构, 具有一定的自动化工艺水平. 但是在实际中, 故障发生的概率相对较高, 而且在发生故障时, 由于结构的复杂性, 难以对系统结构、功能和状态等进行有效的描述, 因而给故障诊断工作带来了很大的负担.
近年来, 随着模式识别和神经网络理论的引入, 给以上工作带来了不同于以往的技术思路. 但在实际电力调度系统运行过程中, 要想获得全部故障类型及故障位置几乎不可能, 因为现实发生的故障不会把所有的故障类型全部一一覆盖, 而且对系统进行故障检测的目的就是在未发生故障前就采取措施来挽回不必要的损失. 如果电力调度系统已经出现故障, 再加以故障分析和预测, 意义就不大了.
假设要对电力调度自动化系统进行状态监测和故障诊断, 但现在只有该系统在正常运转, 未出现异常情况. 为了检测到该系统未来可能会出现的故障, 就需要用到神经网络, 来清楚分辨正常状态和故障状态的区别, 下一步对发生故障的部位做细致的分析[1].
为解决上述的问题, 可以采用SOM神经网络. SOM神经网络作为一典型的神经网络, 其特点尤为鲜明: 网络两端, 即输入端和输出端上的变量充分考虑了实际生产中涉及因素较多等情况, 其关系大多呈现非线性映射特性, 网络承载的信息呈分布式存储, 采用并行方式处理数据, 并在全局集体应用, 自主学习能力很强. 这些都促使SOM神经网络成为辅助实际故障检修不可缺少的方法. 为了让SOM网络训练学习最后结果更为精确, 本文结合LVQ网络和SOM网络构建了新的故障诊断模型, 对SOM网络中存在的初始权值具有不确定性和分类信息不足这两点进行优化, 有效解决了无监督SOM网络在学习中存在分类信息不足的缺点. 在电力调度系统故障检测中引入该模型, 较大提高了系统检测性能和精度.
1 SOM神经网络基本原理 1.1 SOM神经网络概述SOM (Self-Organizing feature Map, 自组织特征映射)神经网络是一种无导师学习方法, 具有良好的自组织、可视化等特性[2]. 在学习训练时, 采用“竞争”学习方式, 每个输入向量都能够找到一个匹配的且距离最近的节点, 称为获胜神经元(winning neuron). 随后对其参数权值进行调整. 鉴于SOM网络中的神经元间关系紧密这一特性, 贯穿于整个权值调整过程中, 这里采用函数的形式, 把权值调整的规则形成权值调整函数, 按照此规则函数对获胜神经元周边的神经元进行权值调整, 在调整过程中需要考虑两神经元间距离远近这一因素. 随着学习训练的不断进行, 从开始得到一个获胜神经元, 到围绕着获胜神经元周边与其相关的数据集合, 最后形成一个具有鲜明特征的聚类集合[3].
1.2 SOM神经网络结构典型的SOM网络结构如图1所示. 在底层输入层, 神经元呈线性矩阵排列, 这里神经元的个数是不固定的, 具体有多少输入神经元, 需要看预备输入到SOM网络的向量数. 输入神经元主要用于探测和接收网络外部的输入向量, 在正式训练前, 将输入向量根据某种特征进行排列分布, 这充分说明SOM网络具有的一个特殊的性能, 即SOM可以选取输入信号向量模式. 竞争层的神经元, 则按照二维平面方式分布, 输入与输出层的神经元通过权值连接在一起[4]. 当输入层检测到外部信号输入时, 类似于人的神经网络, 输出层的某个神经元便会对输入信号向量模式进行系统化的学习和训练, 找出规律将相似特征的向量数据聚合成集合.
1.3 SOM神经网络学习算法[5–7]
(1)网络初始化
初始化的变量有: 一是定义输入神经元的个数, 这里我们设置为m个; 二是定义输入层与输出层神经元的权值, 并给予权值以初值, 一般给予的初值都会较大, 方便后续算法的学习和训练.
(2)输入向量的输入
把待学习的样本X
(3)寻找获胜神经元
SOM网络算法的实质是通过前期的竞争, 让输入神经元从学习中脱颖而出, 成为能够影响周边神经元权值的获胜神经元. 所以寻找获胜神经元是SOM算法前期尤为关键的一步. 用公式(1)计算第j个神经元和输入层中输入向量的欧式距离:
${d_j} = \left\| {X - {W_j}} \right\| = \sqrt {\sum\limits_{i = 1}^m {{{\left( {{x_i}\left( t \right) - {w_{ij}}\left( t \right)} \right)}^2}} } $ | (1) |
式中, wij(t)代表输入层的i神经元和映射层的j神经元之间的权值. 在计算上述距离的过程中, 找到距离最小时的神经元, 即为获胜神经元, 记为j*.
(4)定义优胜邻域
我们假设Nj*(t)为以j*为中心确定t时刻的权值调整域, 这里, 对于权值调整域形状的选择, 这里选六边形即可. 一般定义初始邻域Nj*(0)较大, 随着SOM网络训练的进行, Nj*(t)领域范围会不停向聚类中心靠拢, 直至为0[8].
(5)权值的学习
SOM神经网络是一种无监督的竞争型网络. 在各神经元相互竞争的过程中, 可以学习得到对输入向量模式的分类结果, 以此达到将具有相同特征的向量聚集在一起的目的. 但竞争层进行的分类绝大多数取决于输入向量之间的距离, 如果两个不同类输入向量之间的距离非常近, 则在竞争层中就很有可能把他们归为一类, 这样得到的聚类效果就会大打折扣. 在竞争层的设计中, 若出现上述任意两输入向量距离过近情况, 则对于他们是否属于同一类并没有严格区别[9]. 为了减少SOM网络在这一方面的不足, 这里我们使用LVQ (Learning Vector Quantization, 学习向量量化)网络学习这一将无监督、有监督和竞争学习思想结合的算法, 在SOM网络中神经元已经被标识为它们所代表的类型之后, 每个训练模式对应的获胜神经元权值向量进行调整: 如果获胜神经元与连接向量具有相同的类型标签, 则权值向量被调整接近连接向量. 相反地, 如果获胜神经元与连接向量具有不同类型标签, 那么权值向量被调整偏离被误分类的连接向量, 重复该过程, 整个训练集循环执行多次, 实现对输入向量模式的准确分类[10]. 这样改进后的SOM神经算法将使得学习训练的准确度有进一步的提升[11].
LVQ具体的网络结构如图3所示, LVQ竞争层是由若干组不同神经元构成, 且每个神经元皆与输出层神经元相连接[12,13], 每个竞争层神经元指定一个子分类, 输出层中的每个神经元指定竞争层中的每一个子分类. 可以发现, LVQ比SOM网络多了一个输出层. 由上述算法可知, 根据式(1)计算欧式距离, 得到相关数据, 按距离数据搜索离它最近的两个神经元, 对于同类神经元采取拉拢, 异类神经元采取排斥, 这样相对于只拉拢不排斥就能加快算法收敛的速度, 最终得到数据的分布模式. 经LVQ网络改造后的SOM结构简单, 通过神经元间的相互作用就可以完成复杂的分类处理.
在网络训练中, 可以通过式(1)计算找出获胜神经元, 根据最后获胜神经元具有的类型标签与连接向量具有的类型标签是否一致来调整优胜邻域Nj*(t)内所有“邻接神经元”的权值, 若一致采用式(2)调整权值, 否则采用式(3)进行计算[14].
$\begin{array}{l}\Delta {w_{ij}} = {w_{ij}}\left( {t + 1} \right) - {w_{ij}}\left( t \right)\\\quad \quad = + \eta \left( {t,N} \right)\left( {{x_i}^p - {w_{ij}}\left( t \right)} \right)\end{array} $ | (2) |
$\begin{array}{l}\Delta {w_{ij}} = {w_{ij}}\left( {t + 1} \right) - {w_{ij}}\left( t \right)\\ \quad \quad = {\rm{ - }}\eta \left( {t,N} \right)\left( {{x_i}^p - {w_{ij}}\left( t \right)} \right)\end{array}$ | (3) |
式中, t为网络在学习训练上花费的时间, N代表邻域内第j个神经元与获胜神经元j*之间的拓扑距离,
上述用LVQ对SOM网络训练改进的方法执行要构成一个循环往复的过程, 以此来达到更为准确的分类结果, 减少在训练集中误分类数量. 同时, 跟SOM相比, LVQ是一个有监督的学习过程, 即要实现明确训练集中训练模式的标签. 但在用LVQ改进前, SOM网络依然以无监督学习方式来训练确定权值.
(6)结束训练学习
若
由上述改进后SOM神经网络结构和学习方法可知, 对应于不同的故障就会对应于不同处理方法, 然而一个完整的电力调度自动化系统是由多个子系统组成, 当不同的系统出现不同的问题时, 这就可以应用SOM神经网络将先前历史故障数据聚集到一起, 经过仿真之后, 确定某种故障属于预先设定好的第几种故障, 从而达到修理目的[3].
将SOM神经网络应用于电力调度自动化系统故障检测诊断的模型如图4所示.
首先, 初始化后根据原始数据样本, 选取故障特征, 组成故障样本库, 作为输入向量输入到网络的输入层; 接着运行程序, 确定好输入故障特性后, 在初始化SOM神经网络中, 学习训练每一个输入量. 待训练结束后, 从输出层中找出最大神经元, 并把它规定为标准故障. 随后让SOM网络接收待检测的数据, 利用经LVQ网络改进后的SOM网络对输入与竞争神经元间的权值向量进行调整, 并按照标准故障类型进行分类. 最后对分类结果分析, 比较竞争层中在训练和测试结果中神经元的位置, 若前后两个位置是相同的, 说明待检测样本属于该标准故障[15]. 若不相同, 则此样本介于几种标准故障样本的位置之间, 相似度与其测试位置距离相应标准位置的欧式距离有关[16], 需要使用改进的SOM网络进一步的优化.
3 实验构建和分析结果
为了验证上述故障诊断模型是否有效, 本文采用了某电力调控分中心提供的故障样本数据集. 该电力调度自动化系统资源管理平台的业务重点主要集中在机房IT设备及系统运维管理、机房档案资料综合管理、机房资源管理、机房运行状态监测及告警管理、机房环境监测数据集成管理等方面. 其中, 在状态监测中, 监测的数据较为全面, 比如针对服务器, 监测数据如表1所示.
3.1 建立故障样本库利用在表1介绍的服务器常见监测数据, 在此时间T1~T8提取的样本数据集共有8个故障样本, 每个故障样本中有8个特征, 分别是P1(网口)、P2(电源)、P3(内存)、P4(硬盘)、P5(CPU)、P6(温度)、P7(风扇)、P8(应用进程), 使用SOM神经网络进行故障诊断. 所有数据均为归一化后的结果, 如表2所示.
3.2 实验设备和条件
本实验的硬件平台: 操作系统为Windows 8.1专业版, CPU为英特尔酷睿TMi3-4030U, 1.90 GHz, 内存4 GB, 硬盘150 GB, 软件平台为MATLAB R2016a.
在本实验中, 我们使用MATLAB语言来创建SOM神经网络并用数据在网络中学习训练. MATLAB为我们提供了丰富的工具函数[17], 本实验用到的工具函数如表3所示.
3.3 实验结果和分析
在实验中, 由表2中的归一化数据, 通过改变训练步数来逐渐提升训练精度. 首先采用SOM神经网络对其进行网络诊断的结果如表4所示, 接着采用改进的SOM网络再进行一次实验, 实验结果如表5所示.
通过表4数据表明, 在改进前, 使用SOM网络正常训练学习, 当进一步提升训练强度, 可以发现, 若训练步数调整到200, 每一类训练样本都划分成一类故障, 这样就可以显而易见地观察到分类效果了. 当训练步数在200以上再提升时, 样本划分的结果是一样的, 所以可以推断若进一步提高训练步数, 不仅不会提高精确度, 反而降低了学习速度. 但和表5数据对比, 可以发现, 在用LVQ网络改进SOM算法后, 聚类效果也是有了显著的提升. 在表5中, 随着训练步数的增加, 分类的结果开始向第一类故障P1聚集. 最后经改进的SOM网络将未知的故障样本分到了第一类故障中. 可以看出经LVQ改进的SOM神经网络的效果比SOM网络要好, 这也表明LVQ神经网络用于故障检测是有效的.
在这里设置竞争层神经元有6*6=36个神经元. 图5和图6为SOM网络改进前后训练临近神经元之间的距离情况, 在图中, 紫色六边形代表神经元, 红线表示各神经元间存在的一定连接, 每个四边形中的颜色表示神经元间相距的远近程度, 颜色由浅入深, 说明神经元间由近致远. 由图可以看到, 图6相比于图5, 浅色所占的比例更大, 且更为集中, 说明神经元间的聚合程度比改进前有了较大的提高, 在电力调度系统故障检测中, 可以充分利用此方法, 更为精确地明确故障原因, 排除其他故障.
各神经元在经过改进SOM网络训练前后, 最后得出的分类情况如图7和图8所示, 紫色六边形表示在竞争获得胜利的神经元, 每一个获胜的神经元代表着一类具体的故障. 由分类情况可以发现, 改进前各故障之间分布相对集中, 尤其在图7中, 左下角的部分两个神经元彼此相邻, 这两种故障的界定就不是很明显, 在诊断时容易误诊, 因此需要进一步的诊断. 但在改进SOM后, 各神经元之间分布相对分散, 对故障比改进前有了更为精确的分类.
4 结束语
本文在分析SOM神经网络原理基础上, 围绕着电力调度自动化系统的故障检测问题, 利用LVQ网络和SOM网络, 初步设计实现了改进SOM神经网络的故障检测模型, 并利用数据进行了仿真实验. 结果表明, 改进SOM神经网络算法可以初步解决电力系统故障诊断问题, 故障检测能力也优于SOM网络, 在实际生产实践中有着重要的现实意义. 虽然本文对SOM作出了一些实效性的改进, 但对于SOM算法本身, 仍然发现了一些不足, 比如关于学习速度和最终权值向量的稳定性, SOM算法不能兼顾两者等问题. 这将是要在下一步需要努力攻克的. 当然, 在本文实验中, 实验环境等其他一些忽略的故障因素等问题, 也是今后要考虑解决的.
[1] |
谢天才, 张玉娟, 杨宏刚. SOM神经网络在风力发电机组故障诊断中的应用. 电子技术与软件工程, 2016(10): 30-32. |
[2] |
彭红毅, 蒋春福, 朱思铭. 一种改进的高维数据可视化模型. 计算机科学, 2007, 34(4): 175-178. |
[3] |
高飞. 基于计算智能技术的精益物流信息化平台的研究与实现[硕士学位论文]. 杭州: 浙江理工大学, 2016.
|
[4] |
周晶, 余家祥, 司南, 等. 基于SOM神经网络的航舵故障分类方法. 信息与电子工程, 2012, 10(3): 339-342. |
[5] |
张静. 基于SOM的变压器故障诊断研究. 电力学报, 2014, 29(4): 318-321. |
[6] |
印洪浩, 彭中波. 船用离心泵故障SOM网络诊断方法. 中国航海, 2012, 35(2): 24-28. |
[7] |
王小川, 史峰, 郁磊, 等. Matlab神经网络43个案例分析. 北京: 北京航空航天大学出版社, 2013: 8.
|
[8] |
王智勇. 基于统计降维和Kohonen网络的文本聚类和分类研究[硕士学位论文]. 天津: 天津大学, 2005.
|
[9] |
周豫苹, 郑荔萍. 基于LVQ算法的SOM神经网络在入侵检测系统中的应用. 电脑与信息技术, 2009, 17(6): 1-3. |
[10] |
刘文轩, 严凤, 田霖, 等. 基于LVQ神经网络的配电网故障定位方法. 电力系统保护与控制, 2012, 40(5): 90-95. DOI:10.7667/j.issn.1674-3415.2012.05.017 |
[11] |
夏飞, 罗志疆, 张浩, 等. 混合神经网络在变压器故障诊断中的应用. 电子测量与仪器学报, 2017, 31(1): 118-124. |
[12] |
Martín-Valdivia MT, Ureña-López LA, García-Vega M. The learning vector quantization algorithm applied to automatic text classification tasks. Neural Networks, 2007, 20(6): 748-756. DOI:10.1016/j.neunet.2006.12.005 |
[13] |
Nayef BH, Sahran S, Hussain RI, et al. Brain imaging classification based on learning vector quantization. Proceedings of the 1st International Conference on Communications, Signal Processing, and Their Applications. Sharjah, Sharjah. 2013. 1–6.
|
[14] |
朱玉斌, 李华聪. 基于LVQ网络的航空发动机气路故障特征提取方法研究. 测控技术, 2014, 33(6): 24-27. |
[15] |
董文龙. 基于性能特征和故障征兆的数控机床故障诊断方法[硕士学位论文]. 武汉: 华中科技大学, 2013.
|
[16] |
马旭凯, 谷立臣, 李世龙. 基于SOM神经网络的柴油机故障诊断. 机械制造与研究, 2009, 38(2): 81-83. |
[17] |
董长虹. Matlab神经网络与应用. 北京: 国防工业出版社, 2007.
|