舰船科学技术  2021, Vol. 43 Issue (10): 153-157    DOI: 10.3404/j.issn.1672-7649.2021.10.031   PDF    
基于奇异值分解的盲源提取优化算法
刘裕侃, 黄高明     
海军工程大学 电子工程学院,湖北 武汉 430033
摘要: 针对通信系统中通信信号线性混叠问题,提出2种基于奇异值分解的盲源提取算法。在有噪声的环境中,方法1先利用鲸鱼优化算法和主分量分析实现盲信号的逐一提取,对所提取信号逐一进行基于奇异值分解的去噪处理,得到更为纯净的信号;方法2先对观测信号进行奇异值分解去除噪声分量,再利用鲸鱼算法和主分量分析实现对盲信号的逐一提取。经过计算机仿真实验,验证了2种算法的可行性,能在有噪环境实现线性混叠信号提取和分离,并实现分离信号的去噪。结果表明,方法2比方法1更为有效,具有一定的实际应用意义。
关键词: 盲源提取     线性混叠     奇异值分解    
Optimization algorithm for blind source extraction based on singular value decomposition
LIU Yu-kan, HUANG Gao-ming     
College of Electronic Engineering, Naval University of Engineering, Wuhan 430033, China
Abstract: Aiming at the problem of linear aliasing signals in communication systems, two blind source extraction algorithms based on singular value decomposition are proposed.In an environment existing noise, the first method uses the whale optimization algorithm and principal component analysis to realize the one-by-one extraction of blind signals, and uses singular value decomposition on the extracted signals one by one to obtain a pure signal;The second method is to perform singular value decomposition on the observed signal to remove components of noise, and then use whale algorithm and principal component analysis to realize the extraction of blind signals.Through computer simulation experiments, the feasibility of the two algorithms is verified, which can achieve linear aliasing signal extraction and separation in a noisy environment, and achieve denoising of the separated signals.And the second method is more effective than the first method, and has certain practical application significance.
Key words: blind source extraction     linear aliasing     singular value decomposition    
0 引 言

盲信号处理是当前信号处理领域研究重点,文献[1-5]提出多种针对盲源分离的成熟算法。盲源提取指从观测到的混沌信号中恢复出一个或多个源信号,是盲源分离技术的扩展,国内外学者对盲源提取这一课题做了大量的工作。文献[6]提出及于峭度的稳健特定信号盲提取算法;文献[7-8]提出基于2阶统计量的盲提取算法和基于高阶统计量的自回归参数估计盲信号提取算法;文献[9]提出一种改进的基于线性预测的盲源提取算法,通过利用待提取信号与发射信号强相关的先验知识,采用最小二乘法估计并固定对应线性预测器参数,然后通过构造最小均方预测误差准则,迭代求取解混向量以提取用于匹配检测的期望回波。智能算法由于其较好的性能被越来越多的学者运用到盲源提取中,文献[10]提出了一种针对线性混叠系统的基于鲸鱼优化(WOA)和主成分分析(PCA)的有序盲提取算法,利用鲸鱼优化算法计算抽取向量,同时利用主成分分析对混合信号进行降维,去除已提取信号成分,实现源信号的有序提取。但是该算法基本模型存在一定的缺陷,算法本身忽略了噪声对算法的影响,与实际有所区别。本文在文献[10]基础上,完善了噪声背景下线性混叠信号模型,在此算法基础上提出了2种基于奇异值分解的盲源提取优化算法,方法1(WP-S)在利用文献[10]算法实现源信号初步分离后,对各分离信号进行矩阵化处理,利用奇异值分解去除信号矩阵中权值明显偏小的特征值,实现对信号矩阵的进一步“清洗”,去除噪声成分,达到降噪的目的。仿真过程中发现噪声成分对信号抽取过程影响较大,即使后期对抽取信号做了去噪处理,在波形上有一定的改善,但是在本质上没有巨大改变,不能有效提高抽取效果。方法2(S-WP)先对观测信号进行奇异值分解去除噪声分量,再利用鲸鱼算法和主分量分析实现对盲信号的逐一提取。S-WP算法在信号抽取前进行去噪处理,消除抽取过程中噪声成分对抽取效果的影响,仿真实验发现该方法相较于原算法与WP-S算法在噪声环境中具有更好的盲源抽取效果。

1 问题的描述

有噪信道的线性混叠通信系统模型如图(1)所示。n个源信号经线性瞬时混频后在接收端收到m个观测信号。

图 1 盲源抽取示意图 Fig. 1 Schematic diagram of blind source extraction

信号混合模型可以表示如下:

${\boldsymbol{X}} = {\boldsymbol{AS}} + {\boldsymbol{N}}\text{,}$ (1)

其中, ${\boldsymbol{X}}{\rm{ = }}{[{{\boldsymbol{x}}_1},{{\boldsymbol{x}}_2},\cdots,{{\boldsymbol{x}}_n}]^{\rm{T}}}$ ,为观测信号矩阵; ${\boldsymbol{S}} = [{{\boldsymbol{s}}_1}, $ $ {{\boldsymbol{s}}_2},\cdots,{{\boldsymbol{s}}_n}]^{\rm{T}}$ ,为源信号矩阵; ${\boldsymbol{N}}{\rm{ = }}{[{{\boldsymbol{n}}_1},{{\boldsymbol{n}}_2},\cdots,{{\boldsymbol{n}}_m}]^{\rm{T}}}$ 为高斯噪声矩阵; ${\boldsymbol{A}}$ $m \times n$ 维的随机混合矩阵。假设噪声与通信信号各统计量独立且方差为 ${\sigma ^2}$

经过盲分离器后的输出:

$ {\boldsymbol{Y}} = {\boldsymbol{WX}}\text{。}$ (2)

式中, ${\boldsymbol{W}}$ 表示分离矩阵,能分离出感兴趣的通信调制信号 ${\boldsymbol{y}}$ ${\boldsymbol{y}}$ 即为所有得到的源信号 ${\boldsymbol{s}}$ 的恢复信号。

$m \geqslant n$ 时,传统方法需要进行n次抽取,按照一定准则逐一抽取出源信号对应的恢复信号,文献[10]利用鲸鱼优化算法对源信号的提取和主成分分析对分离准则的目标函数进行寻优,对观测信号进行降维,只需要n-1次抽取就能实现信号的完全分离,简化了计算复杂度。但其应用的模型过于理想化,不存在噪声的系统是不符合实际情况的,因此,本文在文献[10]的基础上,优化信号混合模型,以有噪模型检验算法性能,提出2种基于奇异值分解的盲源提取优化算法,对所提取的源信号进行去噪处理,提高盲源提取的精度。

2 主要算法 2.1 WOA与PCA

WOA和PCA算法在文献[10]中已经做了详细的介绍。WOA模拟鲸鱼捕食建立模型,具备一定的局部寻优能力和全局寻优能力。以信号峰度绝对值作为寻优的目标函数,实现通信信号以峰度绝对值从大到小的依次提取。PCA在尽可能减少信息损失的情况下对数据进行降维,同时把数据中对方差贡献最大的特征保留下来。该方法对数据集的协方差矩阵进行处理,特征值分解后,去除小特征值及其所对应的特征向量,进行投影空间重构,实现矩阵的降维。具体操作步骤包括计算样本均值、求解协方差矩阵、计算协方差矩阵的特征值和特征向量、去除小特征值后进行空间投影重构。

2.2 基于奇异值分解的信号提纯算法

通过鲸鱼优化算法和主成分分析算法可以将原始信号从噪声环境下的线性混叠信号中逐个抽取出来,但是噪声环境下所抽取的信号质量不如无噪声环境下抽取的信号质量,因此,为了减少噪声对分离纯度的影响,本文提出了2种基于奇异值分解的盲源抽取优化算法,分别是对抽取信号和观测信号进行奇异值分解去噪,其他步骤与文献[10]一致。根据文献[11],利用奇异值分解的方法对每路信号 ${s_i}$ 单独进行去噪提纯的步骤如下:

1)将一维信号 ${{\boldsymbol{s}}_{\boldsymbol{i}}}$ 转化为矩阵

设将一维信号 ${{\boldsymbol{s}}_{\boldsymbol{i}}}$ 的表达式为 ${{\bf{s}}_i} = [s(1)\;\;s(2)\;\;\cdots\;\; s(n)]$ ,则构造奇异值分解矩阵 ${\boldsymbol{A}} $ 的形式为:

${\boldsymbol{A}} = \left[ \begin{array}{*{20}{c}} s(1)&s(2)&\cdots&s(l)\\ {s(2)}&s(3) &\cdots & s(l + 1)\\ \vdots & \vdots &{\rm{ }}&\vdots\\ {s(m)}&{s(m + 1)}&{\cdots}&s(n) \end{array} \right]\text{,}$ (3)

其中 $l,m$ 的取值范围为( $ 0\text{,}n/2$ )的整数。

2)矩阵 ${\boldsymbol{A}}$ 的奇异值分解

$ {\boldsymbol{A}} = {\boldsymbol{V}}\left[ \begin{gathered} \begin{array}{*{20}{c}} {\boldsymbol{S}}&0 \end{array} \\ \begin{array}{*{20}{c}} 0&0 \end{array} \\ \end{gathered} \right]{{\boldsymbol{U}}^H}\text{,}$ (4)

式中, ${\boldsymbol{U}} = ({{\boldsymbol{U}}_1},{{\boldsymbol{U}}_2})$ ,为 $l \times l$ 酉矩阵; ${\boldsymbol{V}} = ({{\boldsymbol{V}}_1},{{\boldsymbol{V}}_2})$ ,为 $m \times m$ 酉矩阵,即

${\boldsymbol{U}} \times {{\boldsymbol{U}}^H}{\rm{ = }}{\boldsymbol{E}},{\boldsymbol{V}} \times {{\boldsymbol{V}}^H}{\rm{ = }}{\boldsymbol{E}}\text{,}$ (5)

${\boldsymbol{A}} $ 的秩为 $r(r < \min (l,m))$ ,则 ${\boldsymbol{S}}$ 是对角阵,即

${\boldsymbol{S}}{\rm{ = }}\left[ {\begin{array}{*{20}{c}} {{\sigma _1}}&{}&0 \\ {}&\ddots &{} \\ 0&{}&{{\sigma _r}} \end{array}} \right]\text{,}$ (6)

正定的Hermite矩阵 ${\boldsymbol{A}}{{\boldsymbol{A}}^H}$ 的特征值为: ${\lambda _1} \geqslant {\lambda _2} \geqslant \cdots $ $ {\lambda _r} > 0$ ${\lambda _{r + 1}} = \cdots{\lambda _l}{\rm{ = }}0$ ,奇异值 ${\sigma _1}{\rm{ = }}\sqrt {{\lambda _1}} ,{\sigma _2}{\rm{ = }}\sqrt {{\lambda _2}} ,\cdots, $ $ {\sigma _r}{\rm{ = }}\sqrt {{\lambda _r}} $

3)矩阵 ${\boldsymbol{S}}'$ 的更新

$\lambda $ 的规范正交特征向量为: $ {\alpha }_{1},{\alpha }_{2},\mathrm{\cdots},{\alpha }_{l}$ ,记 ${{\boldsymbol{U}}_1} = $ $ ({\alpha _1},{\alpha _2},\cdots,{\alpha _r})$ ${{\boldsymbol{U}}_2} = ({\alpha _{r + 1}},{\alpha _{r + 2}},\cdots,{\alpha _l})$ 其中 ${{\boldsymbol{V}}_1} = {\boldsymbol{A}}{{\boldsymbol{U}}_1}{{\boldsymbol{S}}^{ - 1}}$ $m \times r$ 阶矩阵,具有规范正交列 $ \ {\beta }_{1},{\beta }_{2},\mathrm{\cdots},{\beta }_{r}$ ,将其扩充为m维空间的一组标准正交基: $\ {\beta }_{1},{\beta }_{2},\mathrm{\cdots},{\beta }_{m}$ ,其中 ${\boldsymbol{V}}_{1}=({\beta }_{1},{\beta }_{2},\mathrm{\cdots},{\beta }_{r})$ ${\boldsymbol{V}}_{2}=({\beta }_{r+1},{\beta }_{r+2},\mathrm{\cdots},{\beta }_{l})$ 。设 ${\boldsymbol{AHA}}$ 的非零r个特征值中前ss<r)个特征值代表信号的主要成分,后r-s个特征值代表噪声成分,则此时可令 ${\lambda _{s + 1}} = \cdots{\lambda _r}{\rm{ = }}0$ ,矩阵 ${\boldsymbol{S}}'$ 更新为:

${\boldsymbol{S}}'{\rm{ = }}\left[ {\begin{array}{*{20}{c}} {{\sigma _1}}&{}&{}&{}&{}&0 \\ {}&\ddots &{}&{}&{}&{}\\ {}&{}&{{\sigma _s}}&{}&{} &{} \\ {}&{}&{}&0&{}&{}\\ {}&{}&{}&{}&\ddots &{}\\ 0&{}&{}&{}&{}&0 \end{array}} \right]\text{。}$ (7)

4)计算矩阵 ${\boldsymbol{A}}'$

由矩阵 ${\boldsymbol{S}}'$ 更新后得到矩阵 $A'$

$ {\boldsymbol{A}}' = {\boldsymbol{V}}\left[ \begin{gathered} \begin{array}{*{20}{c}} {{\boldsymbol{S}}'}&0 \end{array} \\ \begin{array}{*{20}{c}} 0&0 \end{array} \\ \end{gathered} \right]{{\boldsymbol{U}}^H}\text{。}$ (8)

5)信号还原

根据矩阵 ${\boldsymbol{A}}$ 的构成方式,通过对 ${\boldsymbol{A'}}$ 中各元素按顺序重新组合排序,就可以得到还原后的信号,设 ${\boldsymbol{A'}}$ 的任一行为 ${R_i}$ ,则还原后的信号为:

${\boldsymbol{x}}(n) = [{L_1}{R_1}{L_2}{R_2}\cdots{L_m}{R_m}]\text{。}$ (9)

式中, ${L_1},{L_2},\cdots,{L_m}$ 为组合系数。

3 盲信号抽取步骤

本文提出2种基于奇异值分解的盲源提取优化算法,分别为WP-S算法和S-WP算法。2种算法实现步骤如下:

1)WP-S算法盲提取步骤

步骤1 当前信号预处理(中心化、白化);

步骤2 利用WOA根据峰度绝对值最大准则从当前信号抽取源信号;

步骤3 对当前信号做退化处理,得到不含以提取信号成分的退化信号,并更新当前信号;

步骤4 利用PCA对当前信号做降维处理,并更新当前信号;

步骤5 跳至步骤1,直至降维后信号维度为1;

步骤6 利用奇异值分解去除各提取信号的噪声成分。

2)S-WP算法盲提取步骤

步骤1 对观测信号进行信号预处理(中心化、白化);

步骤2 利用奇异值分解去除各路观测信号的噪声成分;

步骤3 利用WOA根据峰度绝对值最大准则从当前信号抽取源信号;

步骤4 对当前信号做退化处理,得到不含以提取信号成分的退化信号,并更新当前信号;

步骤5 利用PCA对当前信号做降维处理,并更新当前信号;

步骤6 跳至步骤3,直至降维后信号维度为1。

4 仿真结果分析

利用Matlab平台仿真验证2种算法在无噪声环境及有噪声环境中的性能,仿真中采用的信号如下:

$ \begin{array}{l}{s}_{1}=\mathrm{sin}[2\text{π} \cdot 2t/(fs)]\cdot \mathrm{cos}[2\text{π} \cdot 50t/(fs)]\text{,}\\ {s}_{2}=0.5\cdot \mathrm{sin}[2\text{π} \cdot 9t/(fs)]\cdot \mathrm{sin}[2\text{π} \cdot 100t/(fs)]\text{,}\\ {s}_{3}=\mathrm{sin}[2\text{π} \cdot 50t/(fs)]\text{,}\end{array} $ (10)

采样频率为5000 Hz,采样点数为5000,混叠矩阵为:

$ {\boldsymbol{A}} = \left[ {\begin{array}{*{20}{c}} {1.6}&1&1 \\ 1&{1.8}&1 \\ 1&1&2 \end{array}} \right]\text{。}$ (11)

在鲸鱼优化算法环节中,设置鲸鱼种群数为30,寻优次数为100。

仿真结果如图2图6所示,其中图2图5仿真过程中信噪比设定为10 dB。

图 2 源信号 Fig. 2 Source signal

图 5 S-WP算法抽取信号 Fig. 5 S-WP algorithm extracted signal

图 6 算法性能分析图 Fig. 6 Algorithm performance analysis chart

图2为源信号,图3为在信噪比为10 dB的通信环境中得到的线性混叠信号,图4为利用WP-S算法得到的盲源抽取信号。可以直观看出,该方法在此信噪比下虽然能够消除抽取信号中的噪声成分,但不能完全有效的抽取出三路源信号,只有源信号1能够实现有效抽取。

图 3 有噪线性混叠信号 Fig. 3 Noisy linear alias signal

图 4 WP-S算法抽取信号 Fig. 4 WP-S algorithm extracted signal

为更具体描述算法抽取效果,引入抽取信号与源信号的相关系数矩阵 $\xi $ ,衡量算法的抽取效果,经计算,WP-S算法进行去噪步骤前后对应的相关系数矩阵 ${\boldsymbol{\xi} _1}$ ${{\boldsymbol{\xi}}_2}$ 为:

$ {{\boldsymbol{\xi}}_1}{\rm{ = }}\left( {\begin{array}{*{20}{c}} {0.12}&{0.08}&{0.67} \\ {0.31}&{0.24}&{0.27} \\ {0.64}&{0.52}&{0.11} \end{array}} \right)\text{,}{{\boldsymbol{\xi}} _2}{\rm{ = }}\left( {\begin{array}{*{20}{c}} {0.00}&{0.06}&{0.67} \\ {0.31}&{0.24}&{0.27} \\ {0.64}&{0.52}&{0.12} \end{array}} \right) \text{。} $ (12)

从系数矩阵内值的分布可以得到,WP-S算法虽然能去除噪声成分,但是并不能有效提高与源信号的相关性。这是因为观测信号中存在的噪声成分会降低算法抽取效果,后期的去噪处理无法改善抽取本身造成的分离性能不理想问题。

图5为S-WP算法得到的盲源抽取信号,明显能够看出,该算法能够有效地还原三路源信号。未使用去噪算法的相关系数矩阵 ${{\boldsymbol{\xi}} _1}$ 与S-WP算法相关系数矩阵 ${{\boldsymbol{\xi}} _2}$ 为:

$ {\boldsymbol{\xi}_1}{\rm{ = }}\left( {\begin{array}{*{20}{c}} {0.10}&{0.66}&{0.16} \\ {0.23}&{0.29}&{0.24} \\ {0.61}&{0.46}&{0.03} \end{array}} \right) \text{,} {{\boldsymbol{\xi}} _2}{\rm{ = }}\left( {\begin{array}{*{20}{c}} {0.18}&{0.22}&{0.94} \\ {0.02}&{0.93}&{0.24} \\ {0.98}&{0.05}&{0.18} \end{array}} \right)\text{。} $ (13)

相关系数矩阵 ${{\boldsymbol{\xi}} _2}$ 每一行每一列有且仅有一个数值接近1,说明算法实现了在混叠信号中对源信号的高度还原。

对本文所提WP-S算法、S-WP算法以及文献[10]所提算法在信噪比为0~30 dB范围内各进行1000次重复实验,取各信噪比下试验所得源信号与抽取信号相关系数的平均值作为算法抽取效果的评价标准,得到仿真曲线(见图6)。

图6可知,原算法与WP-S算法在信噪比较低的环境下抽取效果不理想,且信噪比越低,抽取效果越不理想,WP-S算法虽然去除了抽取信号中的噪声成分,对抽取信号波形具有一定的改善作用,但是无法提升信号抽取的效果,抽取效果与原算法基本没有差异。S-WP算法在整个信噪比范围内都有较好的抽取效果,具有较强的稳定性,在信噪比较低的环境中仍然能有效地实现信号的抽取,该算法性能显著优于原算法与WP-S算法。

必须说明的是,S-WP算法抽取效果稳定在0.9附近而不是接近于1,造成这个现象的原因是鲸鱼优化算法是一种基于随机数的启发式搜索算法,由于自动生成的随机数的不同会造成最终抽取结果有好有坏,上述性能分析实验结果为1000次重复实验数据平均值,包含所有理想与不理想的实验结果,不理想实验结果导致抽取效果稳定在0.9附近。在实验过程中,经过辨别,实际抽取效果能够实现接近于1。

5 结 语

为解决噪声环境中通信信号线性混叠问题,本文提出2种基于奇异值分解的盲源提取算法。方法1(WP-S)利用WOA和PCA算法初步实现信号的逐一抽取,再利用奇异值分解对抽取信号进行去噪处理;方法2(S-WP)先利用奇异值分解对各路观测信号进行去噪处理,利用WOA和PCA算法对去噪后信号进行注逐一抽取。仿真实验证明,相较于原算法,所提2种算法均能有效去除噪声,但WP-S不能有效提高噪声环境算法抽取效果,S-WP能有效提高算法在噪声环境下的效果,且在低信噪比环境下依然能保持良好的抽取效果。存在的问题是一方面算法本身受到固定常数项以及选择随机数的影响较大,有需要进一步改进的方面;另一方面选择的模型为正定模型,对于欠定、超定的混叠信号还有待进一步研究。

参考文献
[1]
陈雷, 张立毅, 郭艳菊, 等. 基于时间可预测性的差分搜索盲信号分离算法[J]. 通信学报, 2014, 35(6): 117-125. DOI:10.3969/j.issn.1000-436x.2014.06.015
[2]
张银雪, 田学民, 邓晓刚. 基于改进人工蜂群算法的盲源分离方法[J]. 电子学报, 2012, 40(10): 2026-2030.
[3]
CRUCES-ALVAREZ S A, CICHOCKI A, AMARI S. From blind signal extraction to blind instantaneous signal separation: criteria, algorithms, and stability[J]. IEEE Transactions on Neural Networks, 2004, 15(4): 859-873. DOI:10.1109/TNN.2004.828764
[4]
张朝柱, 张健沛, 孙晓东. 基于自适应粒子群优化的盲源分离[J]. 系统工程与电子技术, 2009, 31(6): 1275-1278. DOI:10.3321/j.issn:1001-506X.2009.06.002
[5]
魏乐. 基于非负矩阵分解算法进行盲信号分离[J]. 电光与控制, 2004, 11(2): 38-41. DOI:10.3969/j.issn.1671-637X.2004.02.011
[6]
李亚东, 郑坚, 贾长治, 等. 基于峭度的稳健特定信号盲提取[J]. 系统仿真学报, 2008, 20(22): 6097-6099.
[7]
李勇, 陈明, 张建跃. 基于二阶统计量的盲提取算法[J]. 石油地球物理勘探, 2011, 46(2): 272-274.
[8]
任婕, 朱立东. 基于自回归高阶估计的盲信号提取算法[J]. 空间电子技术, 2012(03): 9-12+79.
[9]
罗俊杰, 王朋, 张春华. 基于盲源提取的强混响背景下 LFM 信号回波检测[J]. 信号处理, 2019, 35(9): 1513-1519. DOI:10.16798/j.issn.1003-0530.2019.09.008
[10]
褚鼎立, 陈红, 王旭光. 基于WOA和PCA的盲信号提取算法[J]. 电光与控制, 2019(7). DOI:10.3969/j.issn.1671-637X.2019.07.021
[11]
穆峰. 语音信号的奇异值分解去噪[J]. 智慧工厂, 2014(9): 105-109.