王新艳 潘 巍
(首都师范大学信息工程学院 北京 100048) (首都师范大学北京市电子系统可靠性与故障预测联合研究中心 北京 100048) (首都师范大学北京市电子系统与集成电路设计联合实验室 北京 100048)
支持向量机算法应用于2FSK信号分类
王新艳 潘 巍
(首都师范大学信息工程学院 北京 100048) (首都师范大学北京市电子系统可靠性与故障预测联合研究中心 北京 100048) (首都师范大学北京市电子系统与集成电路设计联合实验室 北京 100048)
支持向量机算法在解决小样本、非线性及高维模式识别问题中存在特有优势,广泛应用于统计分类及回归分析中。传统的频移键控解码在低信噪比下的误码率较高,解码结果受器件性能的影响较大,因此提出将支持向量机用于频移键控解码。构建分类训练样本点集,通过仿真训练找出合适的核函数,获得解码结果。该方法与相干检测、非相干检测以及基于神经网络的解码方法针对同一信源解码,将不同信噪比下的误码率进行对比分析。实验结果表明,该方法在较低信噪比情况下仍然显示出很好的解码性能和良好的稳健性,优于已有信号解码方法。
支持向量机 解码 频移键控 核函数 误码率
支持向量机(SVM)是建立在统计学习理论、V C维理论和结构风险最小化原理基础上的机器学习方法。它在很大程度上克服了“维数灾难”和“过学习”等[1]问题。因为它具有坚实的理论基础,简单明了的数学模型,因此,被广泛应用于文本分类[2]、人脸识别[3]、遥感分类[4]和时间序列预测[5]等。
对于支持向量机在调制和解调等信号处理方面的研究,国外学者Kumar等[6]将其用于脑电信号的模式识别以及硬件在测试阶段的参数提取;Mehta等[7]提出支持向量机应用于生物医学领域的信号处理;国内的陈贤卿等[8]学者采用支持向量机分类判决法改善了扩展的二元相移键控的解码性能,也有学者将其与模糊聚类相结合用于信号识别[9]。文献[10]中将信号的高阶累积量作为分类特征向量构造最优超平面实现信号分类,高阶累积量能够有效地抑制噪声,但是表达式复杂,影响计算效率。结合FSK信号在实际中的应用,本文采用信号的幅值和频率作为特征向量用于分类,相对计算更加简单,算法处理速度快。
传统的对频移键控信号的解码方法基本分为相干检测和非相干检测。一般是变换到频域通过滤波、载波同步等实现,但由于判决器、模拟带通滤波器等器件的性能不同,解调的结果会受到很大的影响[11]。如果传输信道中噪声过大,传统的解码方法误码率较高,而且以往方法大多需要经过大量运算,实时性不高。改进的基于神经网络的FSK解码方法[12]等在低信噪比情况下解码效果仍然不理想。支持向量机支持小样本点,对于非线性可分的情况引入核函数[13],将低维数据映射到高维寻找最优分类面,对于分类存在独特优势。本文介绍了FSK信号的基本通信原理和支持向量机的算法原理,同时对核函数的选择也作出相应的讨论。在实际应用的信噪比区间内对不同算法的解码效果进行了比较和分析。
1.1 频移键控
频移键控是指以数字信号控制载波频率变化的一种调制方式,它在信息传输中使用的比较早。二进制频移键控的基本原理是采用两个不同频率的载波来承载二元数字信号“0”和“1”,其中,载波频率f1(2 200 Hz)对应数字信号“0”,载波频率f2(1 200 Hz)对应数字信号“1”。f1与f2之间的改变是在瞬间完成的,而其振幅和初始相位不变。其表达式为:
(1)
2FSK典型波形如图1所示。
图1 2FSK信号波形图
图1中,一个2FSK信号波形可以分解成两个不同频率的波形,即一个2FSK信号可以看作是两个不同载频的二进制幅移键控(2ASK)信号的叠加。2FSK信号的时域表达式为:
(2)
式中,g(t)代表单个矩形脉冲,Ts代表脉冲持续时间。
φn和θn分别表示第n个信号码元(1或0)的初始相位,一般令其为0。因此,2FSK信号的表达式可以简化为:
e2FSK(t)=s1(t)cosω1t+s2(t)cosω2t
(3)
2FSK信号的产生是通过模拟调频电路或采用键控法。
1.2 支持向量机基本理论
支持向量机是一种分类算法。它是一种二类分类模型,其基本模型可以定义为特征空间上的间隔最大的线性分类器。所以支持向量机的学习策略便是间隔最大化。其基本思想是在n维空间中找到一个分类超平面,将空间上的点分类。具体情况如图2所示。
图2 二维线性可分最优分类线
图2中,Margin为最大分类间隔,中间的实线为最优分类面。在两侧虚线上的元素为支持向量。
在实际应用中会遇到很多非线性的情况,这时采用引入核函数进而升维的方法,将非线性可分的输入样本映射到高维的特征空间。在高维特征空间中样本变为线性可分。因此就将非线性可分问题变为线性可分了。
支持向量机算法常用的一些核函数有:
1) 线性核函数(Linear Kernel):
k(x,xi)=xTxi+c
(4)
2) 多项式核函数(Polynomial Kernel):
k(x,xi)=(axTxi+c)d
(5)
3) 径向基核函数(Radial Basis Kernel):
k(x,xi)=exp(-γ‖x-xi‖2)
(6)
4) 双曲正切核函数(Sigmoid Kernel):
k(x,xi)=tanh[a(xi·x)+b]
(7)
1.3 支持向量机用于2FSK解码
首先对2FSK信号进行采样,采样频率fs为24 000 Hz,波特率为1 200 bit/s,采样周期为tS,采样时间为T,采样点数为N。例如:
ts=1/1 200(s)
(8)
T=1/24 000(s)
(9)
(10)
2FSK信号经过采样和信号处理之后,就会得到离散的量化数据,每比特的采样点数为20,因为随机采样的原因,样本点也随机分布。对于不同频率的正弦波波形,同一幅度在同一时刻的采样不同;而不同时刻采样幅值不同,因此可以根据采样值判断出某一时刻的不同频率。在不同幅度的波形图中,不同电平的正弦波形在不同时刻幅值不同,这样就可以采用支持向量机根据不同频率的波形的特征,找到最优分界面,判断出信号的频率。
支持向量机在处理非线性可分的样本点集时会引入一个映射函数Φ(xi),由映射函数把样本点集变换到高维特征空间,再进行处理。因此,选取合适的核函数对于分类或者解码效果是很关键的。本文对核函数的选择做了研究和讨论。核函数K(xi,xj)代表映射函数Φ(xi)的内积形式,表示为:
K(xi,xj)=[Φ(xi)·Φ(xj)]
(11)
本文对几种常用的核函数进行了MATLAB仿真实验,通过实验结果对比,选择最适宜的核函数。表1显示的是实验中实际正弦波信号训练样本集(20个数据点)的幅值和时间。
表1 正弦波信号训练样本集
每一对相对应的幅值和时间代表一个训练样本点的横坐标和纵坐标,常用的几种不同核函数的分类效果如图3所示。
图3 不同核函数得到的分界面图形
图3中分类效果最好的是二次核函数,其次是多项式核函数。为了得到更加明确和量化的对比,本文采用不同核函数对调制后的2FSK正弦波信号进行实际解码,相同条件下的解码结果如表2所示。
表2 不同核函数分类仿真结果统计表
实际仿真结果也显示采用二次核函数分类正确率为90%,分类效果最好,因此,用于本文的支持向量机解码。
3.1 信号采样和调制
在本次应用支持向量机方法对2FSK信号进行解码的过程中,采用基带信号码元数n为20,采样频率fs为24 000 Hz,两载波频率f1和f2分别为1 200 Hz和2 200 Hz。其中1 200 Hz用01比特序列中的‘1’代表,2 200 Hz用‘0’代表。图4中显示的是01比特序列原信号和经过载波频率f1和f2调制之后的波形图。
图4 基带信号波形和调制信号波形
3.2 选取训练样本点集
在支持向量机训练中,选择1 200 Hz正弦波作为正样本点的集合,用S+表示;其他不同频率和电平的波形作为负样本点的集合,用S-表示。训练集可表示为:
T={(xi,yi),i=1,2,…,l}∈(Rn×Y)l
(12)
其中,xi∈Rn={S+,S-}为输入,输入即为两种不同频率的正弦波,yi∈Y={+1,-1}为输出,l为训练样本点的总个数。
因为支持向量机对小样本点的情况也能够取得很好的分类效果,因此文中选取正半周期的数据点作为样本训练集合。仿真样本集合分别为以下矩阵:
3.3 支持向量机分类
采用支持向量机对通过加噪信道之后的调制信号进行解码。信噪比为10 dB时,支持向量机能够实现完全无错误的解码,解码结果与基带信号的对比如表3所示。
表3 信噪比为10 dB时支持向量机对2FSK的解码结果
为了比较支持向量机的解码性能,本文选择在给定的不同信噪比的情况下,通过实验得到支持向量机的解码效果,如表4所示。
表4 不同信噪比下数据分类情况统计表
表4中,不同信噪比的情况下,支持向量机对测试数据的分类效果不同。本次统计的测试是在训练数据的数目为100的情况下进行的,因为训练数据过大会降低MATLAB运行速度。但是在一定的运行时间内,训练数据数目越大,支持向量机对测试数据的分类效果越好。因此在实际应用中,需要通过实验测试,选择适宜的训练数据数目。如何依据实际通信的情况选择合适的训练数据数目,是进一步深入研究的内容。
3.4 与已有解码方法的比较
图5显示了在不同信噪比下支持向量机方法的误码率变化。根据实际应用的要求,测定信噪比的区间为[-30,20] dB,在不同的信噪比的情况下,解码中误码的个数记为k,误码率的计算为:
(13)
图5 不同信噪比下的误码率统计
为了使结果更加客观和真实,图5中给出了叠加平滑计算1 000次之后的支持向量机方法的分类曲线。从图5中可以看出在信噪比为[-5,20] dB时,支持向量机几乎能实现无错解码,体现出很好的解码性能。结果显示支持向量机的方法在FSK解码中可以很好的实现,同时也验证了本文提出的分类方法的有效性。
为了与已有的FSK解码方法相对比,观察支持向量机的解码性能,本文给出了FSK相干检测方法、非相干检测方法以及基于神经网络的FSK解调方法与支持向量机方法在同一信号源下的解码,并统计出解码结果的误码率统计图。图6中是不同方法的解码结果。
图6 支持向量机方法与已有算法误码率比较
对同一调制方式而言,相干解调方式的误码率相对非相干解调较低,信噪比越大,2FSK系统的相干解调和非相干解调的误码率差距越小。从图6中可以观察到,在信噪比区间为[-10,5] dB的情况下,支持向量机的解码方法显示出较大的优势。经典的相干检测和非相干检测方法在选择的信噪比区间内都存在一定的误码。改进的基于神经网络的FSK解码方法在较低信噪比,特别是当信噪比为负的情况下显示出劣势,甚至不如传统解码方法。但支持向量机方法在低信噪比情况下仍然保持较低的误码率,在信噪比为正的情况下能够实现无错解码。除此之外,运用支持向量机解码还有在小样本的情况下也能较准确地解码,这样节省解码时间,提高实时性。实验结果表明,支持向量机的解码方法应用在FSK解码中有较好的可靠性和可行性。
本文运用支持向量机的解码方法对二进制频移键控信号解码,在MATLAB软件上进行系统仿真,选定适宜的核函数,得到分类结果。实验结果体现支持向量机在解码分类上的优越性能。本文采用同一信源与经典的解码方法以及已有改进后的基于神经网络的解码方法进行对比,绘制误码率曲线图。对比中体现支持向量机在较低的信噪比的情况下良好的解码性能,表现了支持向量机系统抗噪的功能。本文的仿真结果为以后支持向量机方法应用到实际的通信系统,提供了有效的实验基础和理论依据。
[1] Han H.Analyzing Support Vector Machine Overfitting on Microarray Data[M]//Intelligent Computing in Bioinformatics,2014:148-156.
[2] 平源.基于支持向量机的聚类及文本分类研究[D].北京:北京邮电大学,2012.
[3] 董兰芳,任乐乐,董玉德.复杂光照下的人脸姿态估计[J].小型微型计算机系统,2016,37(3):598-602.
[4] 臧淑英,张策,张丽娟,等.遗传算法优化的支持向量机湿地遥感分类[J].地理科学,2012,32(4):434-441.
[5] 田中大,高宪文,石彤.用于混沌时间序列预测的组合核函数最小二乘支持向量机[J].物理学报,2014,63(16):1-11.
[6] Kumar P N,Kareemullah H.EEG signal with feature extraction using SVM and ICA classifiers[C]//International Conference on Information Communication and Embedded Systems.IEEE,2015:1-7.
[7] Mehta S S,Lingayat N S.Biomedical signal processing using SVM[J].IET Seminar Digest,2007,2007(2):527-532.
[8] 陈贤卿,吴乐南,靳一.基于SVM分类的EBPSK信号解调判决[J].东南大学学报(自然科学版),2011,41(4):672-677.
[9] 顾敏剑.基于模糊C均值聚类和支持向量机的信号识别方法[J].计算机与数字工程,2013,41(3):367-370.
[10] 徐闻,王斌.一种基于支持向量机的信号调制分类方法[J].计算机工程,2013,39(8):223-230.
[11] 李龙涛.CTCS应答器信号与报文检测仪和FSK调制解调设计与实现[D].成都:电子科技大学,2013.
[12] 李岷.基于神经网络的FSK信号解调技术研究[D].成都:电子科技大学,2009.
[13] 刘琰.支持向量机核函数的研究[D].西安:西安电子科技大学,2012.
SUPPORTVECTORMACHINEAPPLIEDTOBINARYFREQUENCYSHIFTKEYINGSIGNALCLASSIFICATION
Wang Xinyan Pan Wei
(CollegeofInformationEngineering,CapitalNormalUniversity,Beijing100048,China) (BeijingElectronicPrognosticJointResearchCenter,CapitalNormalUniversity,Beijing100048,China) (BeijingElectronicsSystemandIntegratedCircuitDesignLaboratory,CapitalNormalUniversity,Beijing100048,China)
SVM algorithm has unique advantages in solving small sample, nonlinear and high dimensional pattern recognition problems, and it is widely used in statistical classification and regression analysis. Traditional frequency shift keying decoding algorithms have higher bit error rate in low signal to noise ratio, and greater impact on the result of decoding by performance of devices. In this paper, SVM algorithm is applied to decoding frequency shift keying. It constructed sample points set for classification training, and found out the most suitable kernel function through simulation training to obtain the decoding result. The method is compared with coherent detection, non-coherent detection and decoding method based on neural networks for the same source, and analyzes the bit error rate under different SNR. The experimental results show that the method still shows good decoding performance and good robustness at lower SNR, which is superior to the existing signal decoding method.
Support vector machine Decoding Frequency shift keying Kernel function Bit error rate
TP391
A
10.3969/j.issn.1000-386x.2017.09.051
2016-10-09。国家自然科学基金项目(61202027);北京市属高等学校创新团队与教师职业发展计划项目(IDHT20150507)。王新艳,硕士生,主研领域:计算机视觉,模式识别。潘巍,副教授。