基于BP算法构建的深度神经网络大规模MIMO系统检测方法与流程

文档序号:15151466发布日期:2018-08-10 21:08阅读:465来源:国知局

本发明涉及深度神经网络以及大规模mimo系统检测方法,特别是涉及一种基于信息传播迭代算法构建的深度神经网络大规模mimo系统检测方法。



背景技术:

目前,基于大规模mimo系统因子图的信息传播迭代算法,特别是置信传播(beliefpropagation,以下简称bp)迭代检测算法,实现了低复杂度的基于符号的大规模mimo检测。其存在的两个主要问题也都有了相应的解决方案:一、bp在相干信道下检测效果差的问题,可以由阻尼置信传播(dampedbp)算法解决;二、bp迭代中的除法运算带来的复杂度问题,可以利用最大和置信传播(max-sumbp,以下简称ms)算法解决。然而,使用这两种算法时都需要确定相应的修正系数,包括阻尼置信传播算法的阻尼系数(dampingfactor)和最大和置信传播算法的标准化系数(normalizedfactor)以及补偿系数(offsetfactor)。这些修正系数的选择和优化会对运算结果产生非常大的影响。当前确定这些修正系数的方法主要是基于蒙特卡洛实验的尝试法,该方法离线运算量大且依靠经验,缺乏适用于多场景的系统框架,也无法保证找到最优系数。确定阻尼系数的新方法,自动探索(heuristicautomaticdamping,以下简称had)算法,是一个可自动选择阻尼系数的算法,然而它增加了在线运算量,并且也无法确保找到最优系数。因此,bp还面临的一个主要问题是:修正系数的选择和优化。

深度神经网络技术在大规模mimo系统检测中已经有了初步的应用。最新的一种基于深度神经网络和线性mimo检测算法的大规模mimo检测算法为detnet。该算法建立在线性mimo检测算法的基础上,并且假设信道估计信息未知,因此建构的深度神经网络层次较多,增加了离线训练和在线检测的复杂度。因此,深度神经网络技术应用于大规模mimo系统检测,还面临以下问题:一、普适性:需要构建适用于各种场景的统一框架;二、复杂度:建立的深度神经网络需要具备低复杂度的在线检测运算能力和可接受复杂度的离线训练能力;三、稳健性:在不同场景需要得到稳健的结果。



技术实现要素:

发明目的:针对现有技术的不足,本发明的目的是提出一种基于信息传播迭代算法构建的深度神经网络的大规模mimo系统检测方法,通过建立一种基于信息传播迭代算法来构建深度神经网络大规模mimo检测算法的系统框架,在不增加在线运算复杂度的情况下,达到更低的误码率,并且对各种信道状况和天线配比都具有稳健性。

技术方案:为实现上述发明目的,本发明采用以下技术方案:

一种基于bp算法构建的深度神经网络大规模mimo系统检测方法,其特征在于:包括:将置信传播迭代算法因子图展开并映射到神经网络结构上构建用于大规模mimo系统检测的深度神经网络;对所构建的深度神经网络进行离线训练;以及用训练好的神经网络进行在线检测的步骤;所述深度神经网络的构建方法如下:

深度神经网络的神经元对应于迭代算法因子图中的结点,存储算法中相应的先验和后验置信信息,其中,输入层神经元存储置信信息的初始值,隐藏层神经元存储每次迭代所得的置信信息,输出层神经元根据从隐藏层得到的最终置信信息计算迭代算法的软输出并用激活函数激活,全连接的迭代算法因子图映射为全连接的神经网络,各层神经元个数均等于迭代算法因子图中符号结点的个数;隐藏层之间的映射函数为迭代算法中置信信息的更新公式,隐藏层的数量等于迭代算法的迭代次数。

在具体的实施方案中,将阻尼置信传播检测算法展开并映射到深度神经网络结构上,其中隐藏层之间的映射函数为阻尼置信传播检测算法的置信信息更新公式;将原为单一常数的阻尼系数扩展为对每一层每个置信信息都不同的数组,并将深度神经网络中的参数设为扩展后的阻尼系数组。

在另一具体的实施方案中,将最大和置信传播检测算法展开并映射到深度神经网络结构上,其中隐藏层之间的映射函数为最大和置信传播检测算法的置信信息更新公式;将原为单一常数的阻尼系数、标准化系数和补偿系数扩展为对每一层每个置信信息都不同的数组,并将深度神经网络中的参数设为扩展后的阻尼系数组、标准化系数组以及补偿系数组。

作为优选,在离线训练中,使用批训练方法,用adam优化方法进行优化,损失函数为输出层的输出信息与发送信息的交叉熵。

有益效果:与现有技术相比,本发明提出的一种基于信息传播迭代算法来构建普遍适用于大规模mimo系统检测的深度神经网络框架,并根据此框架提出了两种分别基于阻尼置信传播算法和最大和置信传播算法的深度神经网络大规模mimo系统检测算法,dnn-dbp和dnn-ms。对比线性算法构建的深度神经网络,本发明构建的深度神经网络隐藏层数少,因此降低了离线训练的复杂度;构建的深度神经网络大规模mimo系统检测算法的在线计算复杂度和原置信传播算法同级,但可以达到更低的误码率,且在各种信道状况下有更好的稳健性。

附图说明

图1为bp算法因子图。

图2为本发明实施例构建的神经网络基本结构示意图。

图3为在天线比小于1的场景中本发明提出的dnn-dbp和dnn-ms算法和其他mimo检测算法的误码率比较结果图。

图4为在天线比等于1的场景中本发明提出的dnn-dbp和dnn-ms算法和其他mimo检测算法的误码率比较结果图。

具体实施方式

下面结合具体实施方式和附图,对本发明的技术方案作进一步的介绍。

本发明实施例公开的一种基于信息传播迭代算法构建的深度神经网络的大规模mimo系统检测方法,其中深度神经网络是通过展开大规模mimo系统检测的信息传播迭代算法的因子图并映射到深度神经网络结构来构建的。具体来说,假设mimo系统的发射天线数为m,接收天线数为n;x={x1,…,xm}表示发送信息,y={y1,…,yn}表示接收信息,h为信道矩阵,n为加性高斯白噪声,则mimo模型可记作y=hx+n。bp算法可以用如图1所示的全连接因子图表示。因子图包含两种结点,其中,“符号结点”对应于mimo的发射天线,更新、存储并传递发射信息的先验信息,包含符号先验概率和符号先验对数似然比(log-likelihoodratio,以下简称llr);“观测结点”对应于mimo的接收天线,更新、存储并传递接收信息的后验信息,包含符号后验llr;先验和后验信息在两种结点之间迭代传递、更新,最终收敛于最大后验概率(map)解。假设发射信息的调制符号集为ω={s1,…,sk},其中k为调制阶数;在第l次的bp迭代中,将从第i个符号结点传递到第j个观测结点的符号先验概率记作先验llr记作将从第j个观测结点传递到第i个符号结点的符号后验llr记作角标i={1,…,m}代表发射天线,j={1,…,n}代表接收天线,k={1,…,k}代表调制符号,则bp中传递的信息可以表示为:

符号结点:

观测结点:

以下公式中,我们将简写作简写作简写作本发明所涉及的两种bp的改进算法,都是主要针对式(2)先验概率的计算进行的改进或近似:dampedbp将式(2)扩展为:

而msbp则将式(2)近似为:

其中,为阻尼系数,为标准化系数,为补偿系数。需要注意的是,这些修正系数一般简单设为一个常数,但本发明考虑每次迭代的每个先验概率均有不同的修正系数。假设我们总共需要l次迭代,得到的检测结果记作则迭代完成之后有:

使γi(sk)最大的sk即输出为检测到的符号

将如图1所示的因子图中的迭代全部展开,就可以得到一个与图2所示的深度神经网络类似的结构。具体来说,假设一个深度神经网络的输入数据为x0,输出数据为y,参数为θ,则如图2所示的深度神经网络可以抽象表示为公式:y=f(x0;θ)。对于一个l层的前馈神经网络,从第(l-1)层数据xl-1到第l层数据xl的映射函数可以表示为:

xl=f(l)(xl-1;θl)(7)

其中θl为第l层的参数。

根据以上符号和公式,信息传递算法因子图与深度神经网络之间的对应关系总结在表1中。依照这样的映射框架,基于任意大规模mimo系统检测的信息传播迭代算法,我们都可以相应构建一种基于深度神经网络的大规模mimo系统检测算法,其结构参见图2。需要注意的是,在bp中只有计算先验概率的式(4)或(5)包含对应深度神经网络隐藏层参数的修正系数,因此,本发明构建的深度神经网络将一次从观测结点到符号结点的完整迭代步骤映射为深度神经网络中的一个隐藏层,具体的隐藏层间映射函数为所有置信信息的更新公式,参见表2。依照此框架构建的深度神经网络输入层,隐藏层和输出层的神经元个数都等于发射天线数m;输入层神经元包含发送信息x以及先验概率和所有参数的初始值;隐藏层神经元存储每次迭代所得的先验和后验信息,这些信息通过隐藏层之间的映射函数,即置信信息更新公式计算并传递;输出层根据式(6)输出检测结果并用激活函数进行激活,之后利用深度学习算法对修正系数等参数进行优化。隐藏层的数量l取决于所需要的bp迭代次数,l的取值决定了对于误码率和计算量的取舍:一般来说,l取值越大,计算量越大,但能达到更低的误码率。l可以在预处理中用蒙特卡洛实验法或其他bp的收敛判断方法来确定。

表1.bp因子图和深度神经网络的对应关系

依据上述框架,不同的信息迭代算法所构建的深度神经网络也不同。本发明具体提出了两种基于深度神经网络的大规模mimo系统检测算法:根据阻尼置信传播算法所构建的dnn-dbp算法和根据最大和置信传播算法所构建的dnn-ms算法,二者的基本信息总结在表2中。dnn-dbp和dnn-ms的主要区别在于参数和隐藏层的映射函数的不同,这些区别即对应着dampedbp和msbp算法之间修正系数和更新公式(4)和(5)的区别。

基于所构建的深度神经网络的大规模mimo系统检测方法,包括对深度神经网络进行离线训练和用训练好的神经网络进行在线检测的步骤。

在离线训练(offlinetraining)中,输入层的一个输入数据,发射信号{x1,…,xm},将被记作一组sk的函数,xi(sk),其中,如果xi=sk,则xi(sk)=1,其余为0。在输出层,我们首先根据式(6)计算输出的软信息γi(sk),再使用激活函数softmax对其激活并得到每个输出神经元的输出值oi(sk)。损失函数(lossfunction)设为表2中所示的xi(sk)和oi(sk)的交叉熵(crossentropy),并应用选择的深度学习算法学习最优的阻尼系数,标准化系数以及补偿系数。

表2.dnn-dbp与dnn-ms的基本结构总结

仿真示例:本示例展示了dnn-dbp算法和dnn-ms算法在不同信道状况和天线数比的场景下的应用。

假设mimo系统中,发射天线数为m,接收天线数为n,天线比定义为ρ=m/n,信道模型为kronecker模型产生的瑞利信道,并添加加性高斯白噪声,调制方式为16qam。本具体实施方法主要考虑以下四种场景中dnn-dbp和dnn-ms的应用:

场景1.m=8,n=32,ρ<1,不相干;

场景2.m=8,n=32,ρ<1,相干系数为0.3;

场景3.m=n=16,ρ=1,不相干;

场景4.m=n=16,ρ=1,相干系数为0.3;

具体实施主要包括两个步骤,离线训练和在线检测计算。

离线训练:此步骤将对深度神经网络进行训练。在dnn-dbp中,训练参数为阻尼系数,在dnn-ms中,训练参数为阻尼系数,标准化系数和补偿系数。离线训练将使用批训练(mini-batch)方法,用adam优化方法进行优化,损失函数(lossfunction)设为交叉熵(crossentropy)。训练数据为随机产生的信噪比为0db,5db,10db,15db,20db的发射和接收数据。对相同天线数量只做一次训练,具体训练数据量和深度神经网络结构汇总在表3里。

表3.dnn-dbp和dnn-ms在各场景中的结构和训练参数汇总表

在线检测计算:在训练之后,用训练好的神经网络进行在线检测仿真,结果如图3、图4所示。其中,我们将dnn-dbp,dnn-ms的结果与bp,had,ms以及线性方法(minimummeansquared-error,以下简称mmse)最小均方误差法进行比较。在图3、图4中可以看到,在有限的迭代次数(深度神经网络隐藏层数)仿真中:dnn-dbp的误码率低于bp和had,等同或者低于mmse,并且在各场景中表现稳健;dnn-ms的误码率大大低于ms,在相干信道场景2、场景4中,只略高于bp。

从以上结果可以看出:1.本发明提出的深度神经网络构建框架可以用于优化不同的信息传递检测算法,并得到稳健的仿真结果;2.本发明的离线训练复杂度合理,一次训练结果可多次使用;3.本发明的在线检测计算量等同于原信息传递检测算法,但在不同场景中可以得到更低的误码率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1