王同安,王元红
(山东科技大学计算机科学与工程学院,山东青岛266590)
2004年,Candès,Donoho等人开创性地提出了压缩感知理论[1-2],证明了信号必须满足具有可压缩的特性或者信号在某个变换域上具有稀疏的性质,以低于Nyquist的采样标准对稀疏信号进行采样,使用重构算法以最优的形式还原出原始信号。目前,压缩感知技术广泛的应用在各种信号的处理中。
瓦斯信号具有随机性、非平稳的特点,传统的无损压缩方法包括霍夫曼(Huffman)算法和LZW(Lenpel-Ziv&Welch)算法等,将其运用到瓦斯数据中,虽然重构出来数据与原始瓦斯数据完全一致,但是此算法并不能保证对待像智慧矿山这样的大型项目所产生的数据进行及时的传输和压缩处理,其工作效率是不能被规模稍大的矿山企业所接受的。传统的有损压缩方法包括PCM(脉冲编码调制)和预测编码等,其在数据的压缩过程中,去除了部分次要信息,节约了存储信息的空间,虽然在一定程度上恢复了原始数据信号的特征信息,但是此算法间接去掉了对待危险信号的全分析能力[3-4]。目前常用的信号压缩技术主要有经验模态分解(Empirical Mode Decomposition,EMD)和小波压缩等,小波压缩必须选择合适的小波基进行分解,小波基选择的正确与否关系到信号压缩的成败;EMD方法是一种信号的时频分析方法,可以将信号分离出从高频到低频的多个本征模态函数(Intrinsic Mode Function,IMF)分量,通过选择具有较多信息的分量进行数据压缩,使用重构函数还原出原始数据信号[5];EMD采用递归的方式分解信号,其分解结果依赖于极值点的求法、极值点在载波包络中的插值和停止标准,缺乏数学理论基础,使得EMD方法在压缩感知中不能表现出极大的吸引力。
变分模态分解(Variational Mode Decomposition,VMD)是通过非递归的方式分解信号,拥有完善的数学理论支撑;在对信号分解的过程中,通过寻找最优解来确定变分模态函数分量的带宽和频率中心,实现频域和各个变分模态函数分量的完全分离。VMD方法克服了EMD方法的模态混叠、缺少数学理论支撑和频率效应等缺点,使得VMD在信号分解过程中表现出来了不俗的性能[6-7]。目前,VMD在故障诊断[8]、信号去噪研究[9-10]和脑肌电信号耦合分析[11]等领域广泛应用,基于VMD的瓦斯数据自适应压缩感知的研究却是很少涉及。
通过使用VMD方法对瓦斯数据信号进行分解,分解后得到的变分模态函数分量相对于原始信号具有较好的稀疏性,符合压缩感知的前提条件[12-13]。变分模态函数分量经过稀疏字典进一步稀疏化,通过构造的自适应观测矩阵对稀疏化信号进行投影变换,保证构造的自适应观测矩阵和稀疏字典具有不相干性是压缩感知的关键;最后通过核心的重构算法实现信号的高质量重构。通过实验对瓦斯数据信号进行测试,该方法相对于传统的压缩感知算法具有较好的重构质量。
如果信号x∈RN是稀疏的或者在稀疏字典Ψ∈RN·N下能够稀疏表示,即 x∈Ψθ,θ为稀疏后的信号,则可以通过寻找一个与稀疏字典不相关的观测矩阵Φ∈RM·N(M≪N)且满足有限等距性质(Restricted Isometry Property,RIP),将稀疏信号投影到观测矩阵上,得到样本观测值y,通过样本观测值便可以实现信号的重构[14-15]。
稀疏后的信号x的样本观测值
因为信号 x的稀疏表示为:x∈Ψθ,所以(1)式可以转换为
令η=ΦΨ,则(2)式可以转化为
式中 η称为感知矩阵。
信号要想实现完全重构,观测矩阵的设计必须满足有限等距性质
式中 0<δk<1为等容常数,‖·‖2为2范数。
通过压缩感知理论可得到原始信号x经过稀疏变换得到稀疏信号,然后寻找一个与稀疏字典不相关的观测矩阵满足有限等距性质,投影变换得稀疏信号的M个样本观测值。因为M≪N,故由数学知识可得(3)是一个欠定方程,有无穷多个解。鉴于θ是k稀疏的信号,满足压缩感知理论,因此所得的采样点数相比于传统的压缩过程少,就可以以较少的观测值重构出原始信号x. 信号的重构过程就是求解如下最优问题
式中 ‖·‖0为0范数。
通过压缩感知算法,求解上述基于l0范数的优化问题,贪婪匹配追踪类算法通过逐步迭代来找到最优原子构成支撑集,然后利用最小二乘法求解一个非线性的优化问题,完成信号的重构;贪婪类算法具有较少的计算量,较高的计算精度,并且容易实现等特点,被广泛使用在数据压缩过程中[16-17]。文中主要从信号的稀疏化处理和自适应观测矩阵的构造来改进压缩感知算法,以提高重构精度。
在2014年Konstantin Dragomiretskiy和Dominique Zooso提出了变分模态分解(Variational Mode Decomposition,VMD),VMD方法将信号的模态估计问题转换为变分模态问题,通过搜索最优解将信号非递归的分解为各个模态和中心频率,然后经傅里叶逆变换将各个模态变换到时域。在最近的研究中,基于调制标准将本征模态函数(Intrinsic Mode Function,IMF)定义为调频 -调幅信号,记为
式中 模态分量 uk(t)为由幅值为 Ak(t)、瞬时频率为 ωk(t)组成的信号,Ak(t)≥0,φ′k(t)≥0,且ωk(t)=φ′k(t),即 ωk(t)≥0. 对信号进行 VMD分解,变分约束问题是寻求k个模态函数uk(t),分解后的各个变分模态分量的估计带宽之和最小,且各模态分量之和等于原始输入信号x,具体的构造为
将模态函数uk(t)经过Hilbert变换得到的单边频谱
式中 δ(t)为狄拉克(Dirac)函数;*为卷积,j2=-1.
在单边频谱上加入e-jωkt,把各模态的频谱调制到与之对应的基频带上
式中 e-jωkt为基频带上的预估中心频率。
为了估计各个模态的带宽,可以转换为求解梯度函数的二范数,进而变分约束问题表示形式变为
通过引入增广拉格朗日函数,将求解变分非约束问题间接转换为求解变分约束问题的解,公式如(11)所示
式中 α为二次惩罚因子,用以提高重构质量;λ(t)为拉格朗日乘法算子。
采用交替方向乘子算法求取增广拉格朗日函数中存在的“鞍点”,此“鞍点”为求取模型的最优解。式中
将式(12)经过傅里叶等距变换到频域式中 瓦斯信号x(t)的傅里叶变换变为
将式(13)写成在正频率区间的积分形式,采用ω-ωk代替第一项的ω
为了将(14)变为二次优化问题,则需要将第一项设置为零
观测矩阵的构造是压缩感知的关键,构造的一个和稀疏矩阵不相干的观测矩阵,满足有限等距性质(Restricted Isometry Property,RIP),将稀疏信号投影变换到观测矩阵上得到样本观测值,通过重构算法便可以将原始信号重构[18-19]。
观测矩阵有随机观测矩阵、确定性观测矩阵和自适应观测矩阵等,随机观测矩阵的代表有高斯矩阵等,虽然高斯矩阵被广泛使用,但是其具有算法复杂度高,投影变换不精确等缺点;确定性矩阵的代表有托普利兹矩阵和随机卷积形成的测量矩阵等;自适应观测矩阵主要是根据信号的稀疏性进行构造,随稀疏信号的改变而改变,保留大信息量的信号,剔除不含信息的信号并进行置零。具体构造过程为
1)对高斯矩阵Φ进行分块化处理
2)选择稀疏信号x中Ω个包含大信息量的信号,并记录其位置 A={ρ1,…,ρΩ},设定阈值矩阵:=Ψ-1ΘΨ. 式中,Ψ为原始信号的稀疏矩阵;Θ的取值为
将瓦斯检测设备获取的瓦斯数据信号经过VMD分解,得到变分模态函数分量,设定阈值λ,保留具有稀疏性的含大量信息的变分模态函数分量,不仅减少了信息的传输量,也可以认为是信号的第一次压缩存储;然后将各个变分模态函数分量经过稀疏分解,进一步稀疏化处理;通过构造的自适应观测矩阵投影变换,获得样本观测值实现信号压缩;最后通过重构算法高精度还原瓦斯数据信号。基于VMD的瓦斯信号自适应压缩感知算法(VCSA)流程图,如图1所示。
图1 VCSA算法流程Fig.1 VCSA algorithm flow chart
综上所述,VCSA算法的主要步骤如下
步骤1:定义变分模态分量个数K值与惩罚因子α的值;
步骤2:将瓦斯数据信号x(t)经过VMD分解,得到K个变分模态函数分量。
2)令n=n+1,执行整个循环;
3)执行内层第一个循环,根据式(15)更新u k;
4)令k=k+1,重复步骤3,直到k=K,结束内层第一个循环;
5)执行内层第二个循环,根据式(16)更新ωk;
6)令k=k+1,重复步骤5,直到k=K,结束内层第二个循环;
7)执行外层循环,根据式(17)更新λ;
式中 τ为拉格朗日乘法算子;λ(t)的更新步长参数;
8)重复步骤2至步骤7,直到满足如式(18)所示的迭代停止条件,结束整个循环,得到K个变分模态分量;
式中 ε为求解精度。
步骤3:对K个变分模态函数分量进行频谱分析,计算频谱方差;Dk(k=1,2,…,6),具体包括如下步骤。
1)求各个频谱分量的均值
式中 N为每个模态的长度;S(ω)(ω =0,1,2,…,N-1)为各频谱分量的值。
2)求频谱方差值
3)通过设定硬阈值λ判定各个模态包含的信息
式中 max(Dk)为模态中最大频谱方差;ε为设置的参数;若模态的主频范围值小于50 Hz,Dk≥λ则判定为有用信号,否则为无用信号。
步骤4:将获得的含大量信息的有用信号,经过稀疏矩阵Ψ分解,得到系数信号θ
步骤6:通过压缩感知重构算法,由观测值还原出来原始信号。
通过VMD分解可以得到变分模态函数分量在一定程度上稀疏化了原始信号,并通过设定阈值剔除了无用的信息,可以将其视为第一次对瓦斯数据的压缩,通过构造自适应观测矩阵,满足和稀疏矩阵不相干性,并传递更少的且含关键信息更多的观测值进行瓦斯数据信号重构。
以1 024长度的瓦斯数据为一组,分为10组数据,利用压缩感知算法对其中一组数据进行处理。为了验证算法的重构性能,在MATLAB R2016a的仿真环境下,利用文中算法对一维瓦斯数据信号进行重构,并与 OMP算法、CoSaMP算法和ECoSaMP算法进行对比分析。实验选取瓦斯数据信号长度为N=1 024,观测值M=300,稀疏度k=30,选取的稀疏基为离散余弦变换(DCT),使用构造的自适应观测矩阵,然后通过压缩感知算法对瓦斯数据信号进行重构。
通过以下标准来衡量一维信号重构的质量:r为压缩比、信噪比SNR,匹配度M_rate,相对误差R_err,绝对误差A_err和相似性指标PRD.
x为原始信号;x_r为重构的信号;M为观测数;N为信号的长度,衡量标准可用如下定义
压缩比r
绝对误差A_err
相对误差R_err
匹配度M_rate
信噪比SNR
相似性指标PRD
通过仿真验证文中算法相对于其它算法的优越性能,实验将从重构质量、信噪比、稀疏度与重构概率、稀疏度与观测值数量和重构概率与观测值数量等方面进行对比实验,通过采用不同的压缩感知算法获得重构信号的对比实验图,如图2所示。
图2 瓦斯数据原始信号Fig.2 Gas data original signal
图3为瓦斯数据经过OMP算法进行重构的实验效果,鉴于OMP算法对所有原子进行正交化处理,使得瓦斯数据在保留原始信息的同时恢复出原始信号;图4为瓦斯数据经过CoSaMP算法进行信号重构的效果,相对于OMP算法在原子选择的过程中引入了“回溯”思想,使得其在信号的重构效果上优于OMP算法的重构效果图;图5为瓦斯数据经过基于EMD的压缩采样匹配追踪算法对瓦斯数据信号进行重构的实验效果,通过EMD分解增加了瓦斯信号的重构精度,其在运行时间方面相对于其他几个算法在处理相同量级数据方面表现出了较佳的性能;图6为算法对瓦斯数据进行重构实验的效果,从图6可以看出,信号的重构质量与重构精度明显提升,从信号的稀疏度和观测矩阵的设计方面进行设计压缩感知算法是可行的。
图3 OMP算法重构Fig.3 OMP algorithm reconstruction
图4 CoSaMP算法重构Fig.4 CoSaMP algorithm reconstruction
图5 ECoSaMP算法重构Fig.5 ECoSaMP algorithm reconstruction
图6 VCSA重构算法Fig.6 VCSA reconstruction algorithm
为了验证算法相对于其它几个压缩感知算法在重构质量上表现的优越性能,将从信噪比、重构概率与稀疏度、重构概率与观测值数量和稀疏度与观测值数量等方面进行实验效果分析。重复200次单独的实验,设定数据参数和运行环境保持不变,取实验结果所得的平均值进行分析比较。
瓦斯数据重构信号的信噪比对比图,如图7所示。实验取信号长度为1 024,稀疏度为30,观测数量从100增加到720.随着压缩比的增大,信噪比随之上升。可以得出,文中算法相对于其它几个压缩感知算法具有较高的信噪比,间接的表明了文中算法在重构质量上的优越性能。
图7 不同算法重构信号的信噪比Fig.7 Reconstruction signal SNR of different algorithms
不同算法的稀疏度与观测值数量的对比图,如图8所示。在稀疏度为(0,25)范围内,此算法与其它算法对观测值数量的选择相差不大,但是在稀疏度大于25时,文中算法在观测值的选择上表现了较佳的性能,即文中所提出的算法在相同稀疏度的情况下恢复出原始信号所需要的观测值数量最少;在信号长度固定的情况下,随着稀疏度的增加,文中算法在保证重构质量的同时所需要的观测值数量仍然是最少的。
图8 不同算法稀疏度与观测值数量的关系Fig.8 Relationship between the sparsity and the number of observations of different algorithms
不同算法重构概率与稀疏度的对比图,如图9所示。设定信号长度为1 024,观测值数量为300.在稀疏度小于30的情况下,算法的重构概率高于其它几个压缩感知算法;当稀疏度大于30时,文中算法才表现出了下降的趋势。实验结果图表明文中算法在设定信号长度和观测值数量的前提下,对瓦斯数据处理过程具有较好的性能。
图9 不同算法稀疏度与重构概率的关系Fig.9 Relationship between sparsity and reconstruction probability of different algorithms
不同算法重构概率与观测值数量的对比图,如图10所示。设定信号长度为1 024,稀疏度为30,随着观测值数量的增加,重构信号的精度不断提升。在观测值数量取值为300的情况下,便可实现信号的重构,而其他的压缩感知算法在此刻并未实现信号的重构。在相同的条件下,仿真对比实验表明了,算法相对于其它压缩感知算法能够以较少的观测值数量高概率的重构原始信号。
图10 不同算法观测值数量与重构概率的关系Fig.10 Relationship between the number of observations and the reconstruction probability of different algorithms
文中算法经过VMD分解后使得信号稀疏化,并被认为是瓦斯信号的第一次压缩,故此时传输的样本观测值相对于直接经过稀疏化的信号少了许多;通过构造自适应观测矩阵,使得稀疏矩阵和自适应观测矩阵具有不相干性满足RIP性质,以更优的原子去投影变换稀疏信号,在减少样本观测值的同时减少了信息的存储;文中提出的VCSA算法不仅考虑到信号的稀疏化处理还考虑到了观测矩阵的设计,使得在重构性能上有了大幅度的提高,适用于煤矿瓦斯浓度数据信号的压缩。
各个压缩感知算法在重构信号时,根据衡量指标做出的实验结果对比表,见表1.
表1 压缩感知重构算法实验效果对比Table 1 Compressed sensing reconstruction algorithm experiment effect com parison
从表1可知,算法在对瓦斯数据进行重构时,不论是在信噪比方面还是在相似性指标方面,都表现了大幅度的提升。在重构信号的误差方面,明显小于其它几个压缩感知算法,表明了本算法在恢复信号时丢失的数据信号是非常少的,即能够实现以较少的样本观测值实现信号的高精度重构。本算法对煤矿瓦斯数据处理取得了较好的效果,即文中算法对瓦斯数据信号处理是可行的。
1)VCSA算法通过采用VMD对瓦斯信号进行分解,设定合理阈值,既可以实现信号的稀疏化,同时也实现了信号的初步压缩;通过构造自适应观测矩阵降低了与稀疏矩阵的不相干性,同时实现了信号的自适应分配采样值,以较少的样本观测值实现信号的高精度重构,本算法的提出适应于瓦斯数据的压缩处理;
2)VCSA算法相对于其他压缩感知算法对瓦斯数据重构的运行时间稍长,为了更有效的应对大量瓦斯数据的实时传输和处理,所以接下来的工作将主要从运行时间方面着手进行研究,在提高重构精度的同时,减少程序处理大量数据所消耗的时间。