高斯混合模型盲信号分离方法的CUDA实现.pdf

高斯混合模型盲信号分离方法的CUDA实现.pdf

ID:51468587

大小:290.19 KB

页数:5页

时间:2020-03-25

高斯混合模型盲信号分离方法的CUDA实现.pdf_第1页
高斯混合模型盲信号分离方法的CUDA实现.pdf_第2页
高斯混合模型盲信号分离方法的CUDA实现.pdf_第3页
高斯混合模型盲信号分离方法的CUDA实现.pdf_第4页
高斯混合模型盲信号分离方法的CUDA实现.pdf_第5页
资源描述:

《高斯混合模型盲信号分离方法的CUDA实现.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、电信息技术高斯混合模型盲信号分离方法的CUDA实现苏洁洪李宇(广东药学院医药信息工程学院)摘要:对一组线性瞬时混合信号,采用高斯混合模型拟合各个独立源的概率密度分布进行分离,其复杂度随信号源数量、高斯混合模型阶数的增加急剧上升。提出用统一计算设备架构(computeunifieddevicearchitecture,CUDA)对该分离方法进行设计,实现该方法的并行加速处理。实验结果表明,此加速方案可以有效降低该盲分离方法的时间复杂度。关键词:盲分离;高斯混合模型;统一计算设备架构于用GMM表示源信号与观察信号的统计分布,0引言GMM的求解EM算法是

2、个迭代运算,多个GMM的信号盲分离技术在工程界有广泛的应用,如语音求解的运算量对于一般PC的CPU而言耗时过长。混合信号分离、孕妇与胎儿心电信号的分离以及通信目前,CUDA技术受到学术界的重视,可应用于中多用户检测等。一般而言,盲分离按混合条件可以智能算法,如神经网络的实现[引。本文将GMM参数分为卷积混合与瞬时混合两种情况。求解计算在NVIDIA的CUDA平台并行设计,由于对于卷积混合信号,如语音信号的反响听觉混符合CUDA计算的显卡具有约百个并行计算单元,合,有的采用时域分离方法_I之】。更常用的处理方法是得以大大缩减运算时间。通过频域变换,将

3、卷积化为乘积再分离。这样可以采l基于GMM的盲分离]用瞬时混合来分离信号[3],但是频域变换后再分离会产生排列问题。瞬时盲分离方法是卷积频域盲分离方瞬时盲分离问题可以表示为:法的一部分,对其进行工程研究更具有普遍作用。xt·,(1)已有的瞬时盲分离方法一般对源的统计分布有其中,任意向量,=[1.fSK】代表着个在t时刻⋯t,严格的假设要求,如基于累积量方法,在求解过程的独立源信号,用一个LXK(≥)的未知混合矩中对一些参数的选值仅凭经验J,这些局限不利于工阵混合得到观察向量xt=【x1⋯xL.J。盲分离可程应用。近年来,学者对高斯混合模型(Gaus

4、sian以描述为通过估计K~L的分离矩阵(的逆矩阵)mixturemodel,GMM)应用于盲分离进行了研究L6J,来恢复源信号{)户1。这里假设源信号与观察信利用期望最大(expectationmaximization,EM)算法号的个数相等。设t时刻源信号St的联合概率密度估计源分布参数与混合矩阵,但源分布的阶数难以选(probabilitydensityfunction,PDF)为:择,对初始化依赖比较大,实现非常复杂。fs(S,;)=∑COmN(S;Pro,Cm)(2)最近,提出了一种基于GMM描述源分布的BSSm=1方法[。该方法分为两步

5、:首先通过EM算法估计观其中,m表示为均值;表示为方差;表示权察信号的分布参数,获得分离矩阵的对数似然函数的重;为高斯阶数;Ⅳ为数据点数。在t时刻观察信紧下界;然后通过最大化该紧下界求得分离矩阵。该号的联合PDF为:方法不需要初始化,复杂度相对较低,但同样用到;)=∑COmN(xt;rl,Rm)(3)EM算法求GMM分布参数,仍有较大的运算量。由术基金项目:广东省级大学生创新训练项目(1057312043);2013年第34卷第1期自动化与信息工程21广东药学院大学生创新实验项目(85)。其中,ITm-.4/.1m;RA。GMM盲分离方法线程网格的

6、形式执行。分为两步:1)通过GMM的EM算法估计x,的分布EM算法有2部分:E步建立数据模型并计算数^)据点的似然值;M步计算GMM的3类参数。EM算参数0ML;21通过联合对角化公式(4)得到分离矩法在迭代的似然值之差小于某个给定的常数时结束阵。)1M计算。图2是EM算法的CUDA核函数部分代码,Q,)∑m(4)下面结合代码描述EM算法的并行设计。m=l[1]一globalvoidEstep_kernel(float_resp_,float一frac一,[loglDIAG(BRmB)l_loglBRmB1]fl0at*data。float*mea

7、ns,float*sig,flOat*lndets,2CUDA加速实现constunsignedinthumclusts,constunsignedintnumdims,2.1CUDA简介_constunsignedintnumdata)f支持CUDA的GPU可以并行处理大量线程,如[2]一shared_floatloglike[BLOCK_SIZE];GT240显卡可以并行处理96个线程。如图1所示,【3】_resp_[rb+n】=-0.5f*(sum+lndet_k)+logffrac_k);线程在CUDA中以线程网格的形式被分割为多个大//各

8、阶T点的高斯函数[4】_resp_[rb+(knum_data)+n]=小相等的线程块,一块里面有许多线程,块与块之间ex

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。