1.一种基于BiGRU‑VAE和Deep SVDD的工业控制系统数据异常检测方法,其特征在于,包括:获取待检测的安全水处理数据和/或水分配数据,
对安全水处理数据和/或水分配数据进行预处理,得到预处理后的数据;
将预处理后的数据输入训练好的基于BiGRU‑VAE重构模型进行重构,得到重构误差;
对所述重构误差进行指数加权移动平均值EMWA平滑处理得到平滑处理后的重构误差;
将平滑处理后的重构误差输入训练好的基于Deep SVDD的数据异常检测模型;
根据数据异常检测模型的输出,确定数据异常检测结果;
其中所述基于BiGRU‑VAE重构模型、基于Deep SVDD的数据异常检测模型的训练方法包括:获取经过预处理的安全水处理数据集、水分配数据集;
将所述数据集输入预构建的基于BiGRU‑VAE重构模型进行训练,获取对于当前任务模型准确率最高的模型参数,得到训练好的基于BiGRU‑VAE重构模型,以及所述模型输出的重构误差;
对所述重构误差进行指数加权移动平均值EMWA平滑处理得到平滑处理后的重构误差;
将平滑处理后的重构误差输入预构建的基于Deep SVDD的数据异常检测模型中进行训练,以确定阈值通过Deep SVDD找到最优的超球体的中心和半径,得到训练好的基于Deep SVDD的数据。
2.根据权利要求1所述的基于BiGRU‑VAE和Deep SVDD的工业控制系统数据异常检测方法,其特征在于,所述进行预处理包括:利用线性插值方法对数据进行缺失值处理后,标准化处理得到归一化后的数据;
利用预设的滑动窗口对归一化后的数据每个时间序列进行分割切成段的集合G。
3.根据权利要求2所述的基于BiGRU‑VAE和Deep SVDD的工业控制系统数据异常检测方法,其特征在于,利用线性插值方法对数据进行缺失值处理包括:根据缺失值前后的数据计算斜率b:
其中,xp+1,xp‑1分别表示缺失值xp前后的数据,tp+1,tp‑1分别表示缺失值xp前后的时间步;
根据斜率b来计算缺失值xp:
xp=xp‑1+b×(tp‑tp‑1)
其中,tp表示缺失值xp的时间步。
4.根据权利要求2所述的基于BiGRU‑VAE和Deep SVDD的工业控制系统数据异常检测方法,其特征在于,标准化处理得到归一化后的数据,包括:其中x表示原始数据,xmax表示数据最大值,xmin表示数据最小值,xnorm表示归一化后的数据。
5.根据权利要求2所述的基于BiGRU‑VAE和Deep SVDD的工业控制系统数据异常检测方法,其特征在于,利用预设的滑动窗口对归一化后的数据每个时间序列进行分割切成段的集合G,包括:基于预设的窗口大小Ω,窗口滑动的步长固定为1,给定时间序列X={x1,x2,…,xn},其中xm是第i个时间戳处的m维读数,其中包含有关m个不同通道的信息,n表示时间序列中数据长度,给出t段时间序列的状态为:xt={xt‑Ω+1,…,xt},在滑动窗口对时间序列进行分割后,时间序列X被分成段的集合G={xΩ,…,xt,…,xn}。
6.根据权利要求1所述的基于BiGRU‑VAE和Deep SVDD的工业控制系统数据异常检测方法,其特征在于,所述基于BiGRU‑VAE重构模型包括:VAE是一种深度生成模型,旨在学习数据x中的概率分布p(x),并从数据分布中采样重构生成新数据 服从p(x);
首先编码器先将数据x转换为潜在变量z的概率分布,然后对潜在变量z随机采样,再由解码器解码成重构输出,拟合x‑>z的神经网络称为推理网络 拟合 的神经网络称为生成网络pθ(z|x):其中φ,θ分别为识别网络和生成网络的参数; 代表编码器,Dθ(·)代表解码器;
为捕捉数据输入数据的时间相关性和依赖性,利用GRU的记忆功能将GRU网络单元引入VAE网络中,实现在隐藏层中提取适当的特征并重建输入序列;
通过具有激活功能的BiGRU对编码器进行参数化:样本数为n,输入个数为d,隐藏单元n×d个数为h,给定时间步t的小批量的输入数据Xt∈R 与上一层正向时间步的隐藏状态和下一层反向时间步的隐藏状态 计算时间步t的正向候选隐藏状态 和反向的候选隐藏状态其中 为权重参数, 为偏差参数,Rt为重置门,
tanh(·)为激活函数;
根据当前时间步的更新门Zt来对正向时间步的隐藏状态 和正向候选隐藏时间步反向时间步的隐藏状态 和反向的候选隐藏状态 以生成两个方向的隐藏状态序列:向前→和向后←;两边最终编码器隐藏状态相互连接,以产生向量通过编码器生成服从高斯分布的均值和方差μ和σ,μ和∈分别使用具有线性和Softplus激活的两个完全连接的层从最终的编码器隐藏状态Ht中得出:其中 为权重参数,bμ,bσ为偏差参数,Softplus为激活函数;
在重构误差时,从近似后验 进行随机采样,采用重参数化技巧,取ε~N(0,I)辅助噪声变量,⊙代表元素乘积量。
7.根据权利要求1所述的基于BiGRU‑VAE和Deep SVDD的工业控制系统数据异常检测方法,其特征在于,基于BiGRU‑VAE重构模型训练时采用损失函数其中 代表重构误差,DKL(qφ(z|x)||pθ(z)是真实分布pθ(z)与选择的分布 之间的KL散度,鼓励分布 在训练中接近真实分布pθ(z);
为确保KL散度分布的期望下限为正,使用批量训练BN应用于编码器输出的均值向量,其中k是潜变量的维数,b是批量样本的大小;μi,j、σi,j分别为均值和方差;
将上述样本的样本均值来用期望代替,得到KL散度:
其中μi、σi分别为均值和方差;Var[μi]表示无偏估计;
批量归一化用来约束均值的分布,使均值控制在一个合理的范围;
通过后验分布平均值计算:
是μi经过BN处理后的均值;μBi和σBi代表的是μi的均值和标准差;通过在KL式中替换μi得到下式:β和γ是批量归一化中的参数,分别控制μi分布的方差和均值;合理控制β和γ参数,KL散度项就一直保持有正的下界。
8.根据权利要求1所述的基于BiGRU‑VAE和Deep SVDD的工业控制系统数据异常检测方法,其特征在于,对所述重构误差进行指数加权移动平均值EMWA平滑处理得到平滑处理后的重构误差,包括:在时间k,根据原始重构误差dk得到平滑处理后的重构误差ek,通过控制α(0<α<1)决定EWMA跟踪数据突然变化的能力:ek=αdk+(1‑α)ek‑1
其中α表示超参数,dk表示原始重构误差,ek表示平滑处理后的重构误差。
9.根据权利要求1所述的基于BiGRU‑VAE和Deep SVDD的工业控制系统数据异常检测方法,其特征在于,基于Deep SVDD的数据异常检测模型包括:通过神经网络将原始数据从输入空间映射到高维特征空间上,然后在特征空间上找出包含尽可能多正常样本的超球体,而异常样本尽可能排出在超球体中,当使用超球体识别新样本时,如果样本在超球体边界内,则认为是正常样本,否则为异常样本:从输入空间 到特征空间 令 M→N是具有L个隐藏层和权重
1 L
集W={W ,…,W},其中 指的是 层的权重;
目标训练样本为经过平滑处理后的重构误差,即 表示为e={e1,e2,et,…,en},其中n为样本数;
Deep SVDD的目标是共同学习网络参数W,并且希望最小化超球体的半径的同时具有一定的容错能力;边界是由特征空间中心C以及中心到特征空间中数据点之间的距离半径R指定;目标函数Ldeep svdd为:其中惩罚因子τ∈(0,1]控制球体体积和平衡是否违反边界,λ是网络参数W的超参数,||·||F是Frobenius范数;
第一项 表示代表最大程度减小超球体的体积,第二项
是对经过网络后位于超球体外部点的惩罚项,第
三项 代表权重衰减正则化器。
10.一种基于BiGRU‑VAE和Deep SVDD的工业控制系统数据异常检测装置,其特征在于,包括处理器及存储介质;
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行根据权利要求1至9任一项所述方法的步骤。