基于改进的AlexNet 模型的家用负载电弧检测∗
2024-01-26杨亦航
李 斌,杨亦航
(辽宁工程技术大学电气与控制工程学院,辽宁 葫芦岛 125105)
电能作为我们日常生活必可不少的能源,与我们的生活中各种领域息息相关,但我们在得到电能带来的便利的同时,还需面临着巨大的电气安全问题。据数据统计,在2021 年全国火灾中,由于电气原因造成的火灾已占据28.4%,而由于各种负载中电弧的产生造成的火灾更比比皆是。发生电弧时,不仅会对用电负载造成影响,严重时更是会引发燃烧爆炸,对人身安全有着重大威胁,因此电弧检测已成为相关领域学者的研究重点。
刘艳丽等[1]通过不同实验条件分析了Mayr-Schwarz 电弧数学模型中的各种参数,为电弧故障诊断识别提供了思路。早期学者常通过时频域信息提取信号平均值、有效值、最大变化率、标准差偏差、高次谐波、能量谱密度等特征,并设置阈值作为判断依据。王尧等[2]提取了故障电弧电流的变化率和有效值两个时域特征以及6 kHz~12 kHz 高频电流信号进行电弧故障识别。卢其威等[3]采用小波变化和奇异值分解对信号进行频域分析。由于电流信号容易受负载的影响,变化很大,采用时频域特征往往会造成误判。随着人工智能的发展,越来越多的算法出现,智能算法和时频特征结合的方法逐渐成为主流。吴春华等[4]基于FFT 和BP 神经网络相结合的方法,取特定频率分段进行检测,但训练过程收敛速度较慢,很可能最终结果迭代到局部最小值。吴珊珊等[5]利用谐波数据,以此为参数作为SVM 的输入进行识别。李亚松等[6]将线路电压的标准差和相应频率谐波功率结合支持向量机进行识别。Schweitzer 等[7]通过计算实际和估计电流值的残差以及状态变量三阶差为特征进行识别。上述方法虽取得一定成效,但一般适用于指定负载,泛化能力较弱,且算法收敛不够快。
随着深度学习的发展,为电弧故障检测提供了新思路,深度学习卷积神经网络[8-10]具有强大的提取深层特征的功能,避免了传统方法依靠人工提取特征以及设置阈值的困难。余琼芳等[11]将电流信号直接输入到深度学习网络中,由网络自主挖掘特征用于识别,但为了充分发挥深度学习提取二维图像深层特征的优势,本文提出一种基于改进的Alexnet 模型的串联故障电弧检测方法,使用Adam算法,加快收敛,引入BN 算法,并改变卷积核的大小,减少网络参数数目。利用短时傅里叶变换构造电流信号的二维时频图作为深度学习网络的输入,通过深度学习卷积神经网络实现故障电弧的检测,经过验证,提出的方法对常用负载电弧具有较高的识别率。
1 串联故障电弧实验
1.1 实验装置
搭载实验平台,如图1 所示,实验电源选用标准工频电源(220 V,50 Hz),负载采用电风扇、电热毯、洗衣机等常用的家庭负载。在实验时,电源与负载之间连接一个断路器,起到保护电路的作用,电弧发生由电弧故障发生器实现,主线路电流数据由电流传感器采集,电弧两端电压数据由电压互感器采集。将上述采集到的数据传输到上位机中,利用MATLAB 软件将采集到的电流数据处理成CSV格式。
图1 实验原理图
故障电弧发生器结构如图2 所示,具体结构由动静触头、固定支架、步进电机等结构组成。在模拟电弧产生实验过程中,步进电机的主要作用是带动动触头缓慢移动,使两触头之间产生很小的间隙,产生串联故障电弧。
图2 故障电弧发生器
本次实验以常用家庭负载为实验对象,如表1所示。每次实验时间为5 min,分别采集不同负载正常状态下和故障状态下的电流数据,每种负载做10 组。
表1 实验方案
1.2 数据分析
实验中,当处于正常状态下,电弧发生器动静触头接触良好,接触电阻很小,电流波形比较光滑,移动故障电弧发生器的动静触头,当两个触头的间距足够小,两端的电压就会大于空气击穿电压,两端之间介质就会发生电离,进一步产生电弧,在电弧状态下,电流波形会由于高次谐波导致波形中出现大量毛刺以及零休现象。
下面对1 kHz 采样频率时部分负载如电风扇和洗衣机的电流信号进行分析。电风扇和洗衣机运行特性如图3 和图4 所示。
图3 电风扇正常和故障电流波形
图4 洗衣机正常和故障电流波形
1.3 短时傅里叶变换
短时傅里叶变换(STFT)在分析电流信号时,能够将一维的电流信号转换为用于卷积神经网络识别的二维图像,能够包含原始信号的时域和频域信息以及能量分布信息。
理论上STFT 的思路非常直观,即先选取一个窗函数g(t),将窗口中心位置移动到t=τ0,对采样信号进行加窗处理得到下式:
再进行傅里叶变换:
窗函数的长度会对分析信号频谱有着一定的影响,窗口越长,时间分辨率越低,频率分辨率越高,窗口越短,时间分辨率越高,频率分辨率就越低,因此窗函数的选取以及窗函数的长度十分重要。
本文利用MATLAB 中Spectrogram 函数来实现电流信号的短时傅里叶变换,将一维的电流信号转换为用于卷积神经网络识别的二维图像。本文选用长度为180 点的汉明窗(hamming)窗,noverlap 为重叠点数。为了得到更清晰的时频谱图,noverlap 选为9。
1.4 时频图数据集
通过上位机采集到主线路电流数据之后,分别对电弧故障电流与正常工作电流数据进行短时傅里叶变换,获取一维信号的时频谱图,形成二维的特征分布,便于后续深度学习卷积神经网络研究。
本文采取1 024 个取样点为一个周期,为了得到更加丰富的数据集,本文通过重叠采样增加样本数量。假设电流信号采集数据长度为N,样本取样点为M,重叠量为ΔX,则一个时间序列能得到的数据集为:
对电风扇时频图进行分析,电风扇正常与故障时频谱图分别如图5 和图6 所示。分析时频图可以看出,系统在正常状态和故障状态时,时频谱图的特征并不相同,主要是因为当发生电弧时,电流信号的能量谱密度会显著增加,而正常工作基本保持不变。因此正常和故障状态下能量谱密度的变化梯度就会有所不同,使得使用卷积神经网络捕捉深层特征,进一步识别故障电弧成为可能。
图5 串联电弧正常状态时频图
图6 串联电弧故障状态时频图
在每种负载下生成正常和故障时频图各200 张,共收集1 600 张时频图用于网络训练,选取1 280 张数据集作为训练集,320 张作为测试集,比例为8 ∶2,以此来进行参数优化。数据集分类如表2 所示。
表2 数据集
2 Alexnet 模型网络结构
2.1 经典Alexnet 模型
Alexnet 为卷积神经网络(Convolutional Neural Networks,CNN)的一种,CNN 以其局部权值共享的特ntg 使网络更加智能化,减少了网络参数,提高了训练速度,性能优于以往的传统神经网络。
AlexNet 网络[11-13]最早由Alex 等人提出,此模型曾在ImageNet 竞赛中大放异彩并夺得最后冠军,相较于传统CNN,该模型是一个深层卷积神经网络。
其中卷积层的计算表达式为:
池化层本文采用最大池化[14],目的是得到有效降维以及提取到有效特征。
Alexnet 网络加入了全连接层,会引进大量参数,增加了计算量,加大训练难度以及影响最终模型效果,出现过拟合的现象。因此在模型中需要引进Dropout 策略,其实质为将一些神经元在传递过程中随机定义为0,引入稀疏性。Dropout 策略有效地减少了运算量,解决过拟合的问题。
2.2 Alexnet 模型改进
2.2.1 Adam 优化算法
本文在训练优化中不再使用梯度下降法(SGD)算法,选用Adam(A Method for Stochastic Optimization)算法,Adam 算法是对传统SGD 的扩展,传统SGD 保持单一的学习率更新权重,而Adam 算法则是计算了梯度的一阶矩估计和二阶矩估计而设计自适应学习率。
优点:可以计算每个参数的自适应学习率,迭代速度快,解决无法收敛的问题,高效性,以及内存需求较小。
Adam 参数计算过程为以下四步:
①计算目标函数当前梯度
②计算一阶矩和二阶矩
③计算下降梯度
④利用下降梯度更新参数
2.2.2 BN 算法
传统Alexnet 使用局部响应归一化算(LRN)进行归一化操作来增强模型的泛化能力和精度,随着任务复杂度的提升,LRN 算法的提升变得十分有限,实际改善效果有限,本文不再使用LRN 而改用批量归一化算法(BN),核心思想就是给定一批次数据,计算其均值和方差来达到特征归一化的目的,引入可拉伸参数与偏移参数进行修正处理。本文选择将BN 算法加入到卷积层和激活函数之间。以下是BN 层的前向传导过程公式:
式中:μB是给定数据集的均值,是给定数据集的方差。
BN 层的优点:①相较于LRN 能加快收敛速度,在优化过程中,更快地走到最优点,防止过拟合。②减少梯度弥散问题和梯度爆炸。③提高网络的泛化性能。
2.2.3 激活函数
使用Relu 函数作为激活函数,和传统激活函数[15]相比,具有如下优点:①解决了梯度消失问题;②呈线性关系,降低模型复杂度,计算速度很快,只需判断输入是否大于0;③加快了网络的收敛速度。
Relu 激活函数表达式如下:
2.3 改进的Alexnet 模型及参数选取
优化算法选择Adam 算法,迭代次数为50 次,损失函数选择交叉熵损失函数[16],dropout 率设置为0.5,初始学习率为0.002。
交叉熵(Cross Entropy)损失函数公式如下:
式中:yi表示样本i的lable,正类为1,负类为0。pi表示样本i预测为正的概率。
以准确率来评价网络的性能,定义公式如下所示:
式中:ncorrect为测试集识别正确的样本个数,n为测试集总个数。
传统的Alexnet 模型中卷积层使用较大的卷积核,本文为了加快计算速度,减少训练时长,在此作了改进,统一将卷积核大小改为3×3,。卷积层后加入BN 算法代替传统的LRN。图7 所示为改进的Alexnet 模型。
图7 改进的Alexnet 模型
本文采用改进的Alexnet 网络模型完成数据集的自动分类,具体流程如图8 所示。
图8 流程图
2.4 网络构建环境
本文实验部分使用的计算机配置:Windows 10家庭中文版,AMD 4800H,16G 内存,Nvidia 1650 显卡,使用使用基于python 的anaconda 科学计算环境,基于Tensorflow2.0 构建AlexNet 深度学习网络。
2.5 实验结果
为了验证改进的Alexnet 网络的训练效果,将处理得到的数据集大小统一设置为128×128,并将训练集图片顺序打乱,避免顺序对网络造成影响,为了体现改进Alexnet 模型的性能,本文将同样的数据集输入到改进的Alexnet,传统的Alexnet 以及常规CNN 网络进行对比,损失曲线和准确率曲线对比如图9 所示。各算法准确率统计如表3 所示。
表3 对比网络训练数据表
图9 对比网络训练过程图
分析图9 可以得到,在输入相同的数据集下,三种模型的准确率曲线均成上升趋势,但改进后的Alexnet 模型在相同数据集上具有更高的准确率,当迭代周期达到30 次后,准确率已超过94%,当迭代周期达到50 次时,准确率已达到98%。损失值呈下降趋势,在迭代周期达到30 次后,损失值已基本趋向于0,得到了稳定的训练模型。并且可以看到改进后的模型训练过程具有较快的收敛速度。由此可见该方法具有较好的识别能力和泛化能力。通过对比可以看到,改进的Alexnet 模型在准确率和损失值方面相较于传统的Alexnet 和CNN 模型具有明显的优势。
针对归一化层,本文对比使用BN 算法和未使用BN 算法两种情况进行仿真。
由图10 可知,使用BN 算法后的Alexnet 模型在训练过程中提高了中间层输出数值的稳定性,降低了损失值,加快了收敛速度,准确率得到了提高。
图10 使用BN 算法对比图
3 结论
本文通过实验采集了常用家庭负载下的主线路电流信号,并将一维时序电流信号通过STFT 变换得到二维图像数据集,利用改进的Alexnet 来深度挖掘图像深层特征,以此进行家用负载电弧的识别。
①通过实验分别采集了常用家庭负载正常以及发生电弧时的电流数据,并进行分析,通过短时傅里叶变换,将电流数据数据转为二维时频图图像形式,建立数据集。
②将传统Alexnet 网络模型进行改进,使用Adam 算法代替SGD 算法,加入了BN 算法代替传统模型中的LRN,对网络数据进行归一化处理。降低了网络训练时长,加快了模型收敛速度。经验证,该模型的电弧故障识别准确率达到了98%。
③本文改进的Alexnet 相较于常规CNN,传统的Alexnet,准确率得到提高,损失值得到降低,可以看出改进的模型性能更加优越。