基于机器学习的舰船通信网络故障检测方法
2023-05-05潘志安庞国莉王小英
潘志安,庞国莉,王小英
(防灾科技学院 信息工程学院,河北 三河 065201)
0 引 言
舰船信息传输的关键是舰船通信网络。舰船通信网络可确保舰船航行过程中,舰船内部与外部间信息的安全交互[1]。当舰船通信网络出现故障时,则会导致舰船不能及时接收航行相关信息,影响航行安全[2,3]。为此,研究高效、精准的舰船通信网络故障检测方法非常重要。朱圳等[4]通过分析原始通信网络数据,挖掘数据内的潜在特征,通过LightGBM 算法,对挖掘的潜在特征实施重要性评估,筛选较为重要的通信网络数据特征,在集成学习模型内输入筛选获取的重要特征,输出通信网络故障检测结果。该方法的通信网络故障检测精度较高。陈红红等[5]在萤火虫算法内,引入莱维飞行,对该算法进行改进,通过极限学习机建立通信网络故障检测目标函数,利用改进萤火虫算法优化目标函数,得到通信网络故障检测结果[5]。该方法可有效检测通信网络故障,且故障检测准确率较高。但这2 种方法均需要大量故障标签数据,而实际舰船通信网络中,获取大量故障标签数据并非易事,从而影响故障检测效果。机器学习是指令计算机具备人的学习能力,可在海量繁琐的数据内,学习到有价值的知识[6],在原始数据样本较少情况下,依旧具备较优的学习能力,提升故障检测效果。常见的机器学习算法有Softmax 回归与神经网络等。本文,研究基于机器学习的舰船通信网络故障检测方法,提升故障检测效果。
1 舰船通信网络故障检测方法
1.1 基于自编码神经网络的舰船通信网络故障检测
利用常见机器学习算法内的自编码(auto encoder,AE) 神经网络,对舰船通信网络,实施故障检测。AE 内输入层为O1、隐层O2、输出层是O3。O1、O3内神经元数量一致,均为m个。O2内神经元数量为n,且n≤m。O1至O2的变换过程是编码,在O1内输入原始舰船通信网络数据样本x,作为O2的输入,O2的输出结果为:
其中:S(·)为编码时的Sigmoid 函数;wO2和bO2分别为O2的权重、偏置;u为舰船通信网络故障特征。
O2至O3的变换过程是解码,在O3内输入u,O3的输出结果为:
其中:S′(·)为解码时的Sigmoid 函数;wO3和bO3分别为O3的权重、偏是;y为舰船通信网络故障检测结果。
预训练AE,就是寻找最佳wO2,bO2,wO3,bO3,y与x间是误差降至最低,即损失函数Q(w,b) 降至最小。Q(w,b)的计算公式为:
式中:H为原始舰船通信网络数据样本数量;xi和yi分别为第i个样本的输入与输出向量;η为AE 的网络层数;nl为第l层神经元数量;为第l层第j个神经元和第l+1层第a个神经元间的权值;γ为权值衰减系数。
1.2 基于相关性稀疏自编码神经网络的故障检测
在AE 的隐层内,添加稀疏性限制,令大多数隐层神经元处于非激活状态,提升舰船通信网络故障特征提取效果。损失函数Q(w,b)中添加稀疏惩罚项,公式如下:
式中:β为稀疏惩罚项的权值;z为平均活跃度;zj为O2内第j个神经元的平均活跃度;L(Z||zj)为z与zj间相对熵。其计算公式为:
zj的计算公式为:
式中:对于xi,第j个神经元的激活度为αj。
利用AE 提取舰船通信网络故障特征时,需要考虑舰船通信网络数据样本间的相关性,才会避免影响原始舰船通信网络数据结构特征的提取。因此,在式(4)的基础上,添加输入数据相关性限制,变更后的损失函数为:
式中:R(xi),R(yi)为xi和yi的相关性;ω为输入数据相关性的权值。
R(xi)的本质是xi与的乘积,其中,T 为转置符号。因此,损失函数为:
在AE 内添加稀疏性限制与输入数据相关性限制后,建立相关性稀疏自编码神经网络(SRAE),将多个SRAE 堆叠形成SSRAE,就是上个SRAE 隐层的输出是下一个SRAE 的输入。以预训练与有监督微调的方式,确定SSRAE 的最佳w与b。以逐层贪婪法预训练SSRAE,通过海量无标签训练样本,计算各SRAE 的Q′′(w,b)取得最小值情况下,对应的w与b。以持续迭代降低各SRAE 的Q′′(w,b)值的方式,将Q′′(w,b)降至指定值,获取最终的w与b。
通过反向传播算法有监督微调SSRAE,利用反向传播算法再次迭代更新预训练阶段获取的各SRAE 的w与b,以达到最大迭代次数位置,输出各SRAE 的最佳w与b。w与b的更新公式如下:
1.3 通信网络故障检测的实现
以Softmax 分类器为SSRAE 的输出层,将SSRAE隐层提取的舰船通信网络故障特征h,作为Softmax 分类器的输入,输出舰船通信网络故障检测结果。舰船通信网络故障类别数量为K,Softmax 分类器的输出结果为:
其中:P(Gk|ui)为舰船通信网络故障属于各类别的后验概率;ui为第i个舰船通信网络故障特征;G1,G2,…,Gk为舰船通信网络故障类别。
舰船通信网络故障检测的决策准则是最小错误率,舰船通信网络故障特征检测结果是类故障时的错误概率为:
舰船通信网络故障检测的最小错误率决策准则是argminPe(Gk|u)。结合式(11)可知,最小错误率即最大后验概率argmaxP(Gk|u)。
舰船通信网络故障检测类型及其编码如表1 所示。
表1 故障检测类型及其编码Tab.1 Fault detection type and code
2 实验结果与分析
以某舰船的通信网络数据为实验对象,该数据集内记录了2 个月的舰船通信网络连接数据,共包含近1 百万条数据。该数据集内有7 种类型的舰船通信网络数据,具体信息如表2 所示。
表2 舰船通信网络数据集具体信息Tab.2 Specific information of ship communication network data set
利用本文方法对该数据集内的舰船通信网络数据进行故障特征提取,通过主成分分析提取故障特征的前3 个主成分,以可视化形式呈现本文方法引入稀疏性限制与输入数据相关性限制前后,故障特征提取效果。舰船通信网络故障特征提取的可视化结果如图1所示,以信号丢失故障特征、端口故障特征、通信线路故障特征、通信网IP 冲突故障特征为例。分析图1(a)可知,本文方法添加稀疏性限制与输入数据相关性限制前,可有效提取舰船通信网络故障特征,但提取的4 种故障特征边界存在混淆情况。分析图1(b) 可知,添加稀疏性限制与输入数据相关性限制后,本文方法提取的各类型舰船通信网络故障特征聚集效果较优,各类型故障特征的边界较为清晰,在舰船通信网络故障检测方面更具优势。实验证明:本文方法可有效提取舰船通信网络故障特征,且提取的故障特征间并无混淆情况,边界非常清晰。
图1 改进前后的舰船通信网络故障特征提取结果Fig.1 Fault feature extraction results of ship communication network before and after improvement
在该数据集内随机选择35 个样本,各数据类型的样本数量均为5 个,利用本文方法对这35 个样本进行舰船通信网络故障诊断,故障诊断结果如图2 所示。可知,本文方法可有效检测舰船通信网络故障,对比表2 可知,0~5 号样本的故障检测结果为路由器故障,其中仅有一个样本的故障检测结果错误;11~15 号样本的故障检测结果为通信网IP 冲突故障,其中,也仅有一个样本的故障检测结果错误。6~10 号样本故障检测结果为网卡故障;16~20 号样本故障检测结果为通信线路故障;21~25 号样本故障检测结果为端口故障;26~30 号样本故障检测结果为信号丢失故障;31~35 号样本故障检测结果为无故障。实验证明,本文方法可精准检测舰船通信网络故障,为提升舰船通信质量提供保障。
图2 舰船通信网络故障诊断结果Fig.2 Fault diagnosis results of ship communication network
3 结 语
舰船通信质量与舰船航行安全息息相关,为此,研究基于机器学习的舰船通信网络故障检测方法,及时发现并解决通信网络故障,提升舰船通信质量,确保舰船航行过程中能够随时接收内部与外部的交互信息,制定安全的航行路径,提升舰船航行的安全性。