一种基于深度学习的多用户数据信息检测方法及装置与流程

文档序号:15454950发布日期:2018-09-15 00:51阅读:203来源:国知局

本发明涉及通信技术领域,特别是涉及一种基于深度学习的多用户数据信息检测方法及装置。



背景技术:

非正交多址(non-orthogonalmultipleaccess,noma)接入技术是移动通信系统的重要支撑技术之一,可以有效地提高频谱的利用率。

在noma系统中,各个用户发送的数据信息被映射为多维星座码本中的不同码字,然后将各个用户的码字信息重叠在正交资源块上传输至接收端。接收端在收到接收信号中包含的叠加码字信息后,利用因子图,因子图包括:非正交多址映射的因子图和前向纠错编码的因子图,通过两部分过程得出各个用户发送的数据信息,实现多用户数据信息检测。

第一部分:使用消息传递算法(messagepassingalgorithm,mpa)在非正交多址映射的因子图中从叠加的码字信息中计算各个用户的所有码字条件概率,然后获得各个用户的比特似然比。

具体过程如下:

参照图1,非正交多址映射的因子图中包含两类节点,用户节点v1-v6,正交资源块节点f1-f4,用户节点与正交资源块节点连接线称为连边,用户节点与用户一一对应。以v2及f1节点为例,节点f1与v2、v3和v5节点的各个连边权值相同,v2节点与f1和f3节点的各个连边权值相同。将v2和v3节点的码字条件概率乘以对应连边的权值,计算v5节点的码字条件概率;将v2及v5节点的码字条件概率乘以对应连边的权值,计算v3节点的码字条件概率;根据v3及v5节点的码字条件概率乘以对应连边的权值,计算v2节点的码字条件概率。将v2、v3和v5节点的码字条件概率作为更新后的f1的码字信息,更新f1节点的码字信息。f2-f4节点的码字信息计算过程与f1节点码字信息计算过程相同。根据f1节点的码字信息,计算f3节点的码字信息;根据f3节点的码字信息,计算f1节点的码字信息,将计算得出的f1和f3节点的码字条件概率作为v2节点的码字信息,更新v2节点的码字信息,v1及v3-v6节点的码字信息计算过程与v2节点码字信息计算过程相同。再根据更新后的v1-v6迭代计算f1-f4的码字信息,直至达到更新次数,根据最后一次更新后的v1-v6节点码字信息,获得各个用户的比特似然比。

第二部分:根据各个用户的比特似然比,使用置信传播(backpropagation,bp)算法在前向纠错编码的因子图中迭代实现码字信息译码,计算出各个用户发送的数据信息。

具体过程如下:

参见图2,前向纠错编码的因子图中包含两类节点,变量节点u1-u6,校验节点c1-c4,变量节点与校验节点连接线称为连边,将各个用户的比特似然比作为变量节点的信息,各个校验节点与变量节点之间连边权值都相同,根据变量节点更新校验节点信息,根据校验节点信息更新变量节点,具体更新过程与第一部分中用户节点与正交资源块节点更新过程类似,根据最后一次更新后的变量节点的信息,获得各个用户发送的码字,检测出各个用户发送的数据信息。

由于各个用户发送的数据信息的重要性不同,各个用户节点的信息重要性不同,现有技术使用因子图更新各个用户节点的码字信息的过程中,连边的权值相同,导致一些不必要的码字信息占用的权值过大,使得计算出的码字信息不准确,从而造成各个用户的比特似然比不准确。在第二部分使用因子图更新各个变量节点的信息的过程中,各个连边的权值也相同,可能会使用变量节点中错误的比特似然比更新校验节点的信息,使得译码得出变量节点信息的准确率不高,因此检测出各个用户发送的数据信息的准确率不高。



技术实现要素:

本发明实施例的目的在于提供一种基于深度学习的多用户数据信息检测方法及装置,训练得出各个用户计算比特似然比过程中的权值,提高检测多用户发送的数据信息的准确率。具体技术方案如下:

第一方面,本发明实施例提供了一种基于深度学习的多用户数据信息检测方法,应用于非正交多址(non-orthogonalmultipleaccess,noma)系统中的接收端,包括:

使用预设的条件算法,从已获得的叠加码字信息中计算得出各个用户的码字信息;所述码字信息包括:码字条件概率;

将所述各个用户码字信息作为已训练的神经网络的输入,利用已训练的神经网络获得所述已训练的神经网络输出层的输出结果;所述已训练的神经网络是通过深度学习训练初始神经网络中各层之间预设的权值得到的;所述初始神经网络是根据因子图预先构建的;所述各层之间的权值与因子图中的连边权值一一对应;

利用所述已训练的神经网络的输出层的输出结果,计算获得各个用户的数据信息;所述输出结果包括:各个用户的对数比特似然比。

第二方面,本发明实施例提供了一种基于深度学习的多用户数据信息检测装置,应用于非正交多址(non-orthogonalmultipleaccess,noma)系统中的接收端,包括:

码字计算模块,用于使用预设的条件算法,从已获得的叠加码字信息中计算获得各个用户的码字信息;所述码字信息包括:码字条件概率;网络计算模块,将所述各个用户码字信息作为已训练的神经网络的输入,利用已训练的神经网络获得所述已训练的神经网络输出层的输出结果;所述已训练的神经网络是通过深度学习训练初始神经网络中各层之间预设的权值得到的;所述初始神经网络是根据因子图预先构建的;所述各层之间的权值与因子图中的连边权值一一对应;

信息计算模块,用于利用所述已训练的神经网络的输出层的输出结果,计算获得各个用户的数据信息;所述输出结果包括:各个用户的对数比特似然比。

本发明实施例提供的一种基于深度学习的多用户数据信息检测方法及装置,可以根据已接收到的叠加码字信息,使用预设的条件算法,计算获得各个用户码字信息;将各个用户码字信息作为已训练的神经网络输入,利用已训练的神经网络获得已训练的神经网络输出层的输出结果;已训练的神经网络是通过深度学习训练初始神经网络中各层之间的权值得到的;根据所述已训练的神经网络的输出层的输出结果,确定各个用户的数据信息;所述输出结果包括:各个用户的对数比特似然比。本发明实施例使用深度学习训练权值后的已训练的神经网络,将各个用户的码字条件概率作为已训练的神经网络的输入,根据输出结果检测用户的发送的数据信息,计算各个用户的对数比特似然比的过程中,各个用户的码字条件概率都有相应的权值,因此可以提高检测多用户发送的数据信息的准确率。当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为现有技术中非正交多址映射的因子图;

图2为现有技术中前向纠错编码的因子图;

图3为本发明实施例提供的一种基于深度学习的多用户数据信息检测方法的流程图;

图4为本发明实施例提供的根据因子图构建初始神经网络的流程图;

图5为本发明实施例提供的初始神经网络中检测输入层至检测输出层的结构图;

图6为本发明实施例提供的初始神经网络译码输入层至译码输出层的结构示意图;

图7为本发明实施例提供的一种基于深度学习的多用户数据信息并行检测的结构示意图;

图8为本发明实施例提供的一种基于深度学习的多用户数据信息检测装置的结构示意图;

图9为本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例解决现有技术使用非正交多址映射的因子图和前向纠错编码的因子图,计算用户数据信息的过程中没有考虑各个用户数据信息重要性不同的问题,使得计算过程中不必要的用户数据信息占用比率过大,导致计算出的用户数据信息准确率不高。

如图3所示,本发明实施例所提供的一种基于深度学习的多用户数据信息检测方法,应用于非正交多址(non-orthogonalmultipleaccess,noma)系统中的接收端,包括:

s301,使用预设的条件算法,从已获得的叠加码字信息中计算得出各个用户的码字信息;所述码字信息包括:码字条件概率;

其中,预设的条件算法,可以是人为根据行业经验预先选择的算法,包括:维特比最大似然算法、费诺(fano)序列译码算法、对数域条件概率公式及对数域先验概率公式。

可以理解的是:计算用户的码字组合目的是为了得到用户发送数据信息的码字。因为信号在系统传输过程中会因为各种干扰因素而发生变化,而接收端接受到的信号也会与发送的信号不同,只能根据接收到的信号中叠加在正交资源块上叠加码字信息,计算用户发送数据信息所有可能的码字。由于接收到的信号部分发生变化,因此所有可能的码字中有部分码字与发送信号的码字相同。因此,计算每个用户的码字条件概率,以便可以得到准确的码字,以后续为提高检测用户数据信息准确率做铺垫。

s302,将各个用户码字信息作为已训练的神经网络的输入,利用已训练的神经网络获得已训练的神经网络输出层的输出结果;已训练的神经网络是通过深度学习训练初始神经网络中各层之间预设的权值得到的;初始神经网络是根据因子图预先构建的;各层之间的权值与因子图中连边的权值一一对应;

其中,已训练的神经网络可以通过实时训练初始神经网络得到,实时训练的方式得到的已训练的神经网络实时性较好,准确率较高。得到已训练的神经网络的也可以通过预先初始神经网络训练得到,相比较于实时训练的方式,预先训练得到已训练的神经网络可以提高检测用户数据信息的效率。

可以理解的是各层之间的权值与因子图中连边的权值一一对应包括:各层的神经元与其它层的神经元连接的权值与因子图中的连边权值一一对应。

初始神经网络中各层之间预设的权值是认为根据行业经验设定的数值,预设的权值可以设置相同的数值,也可以设置不同的数值。

因子图包括:非正交多址映射的因子图和前向纠错编码的因子图,相比于根据因子图实时构建初始神经网络的方式,根据因子图预先构建初始神经网络节省了时间,可以提高检测用户数据信息的效率。

s303,利用已训练的神经网络的输出层的输出结果,计算获得各个用户的数据信息;输出结果包括:各个用户的对数比特似然比。

其中,由于用户数据信息是二进制比特序列的形式发送的,本发明实施例将计算得到的码字信息输入已训练的神经网络,以求获得神经网络输出的各个用户的对数比特似然比,以此确定用户接收到的二进制比特序列,确定各个用户的数据信息。

本发明实施例通过计算获得各个用户码字信息,将各个用户码字信息作为已训练的神经网络输入,利用已训练的神经网络获得已训练的神经网络输出层的输出结果,确定各个用户的数据信息。由于已训练的神经网络是通过训练初始神经网络中各层之间的权值得到的,使得再计算各个用户的数据信息的过程中,各个用户的码字条件概率都有相应的权值,因此可以提高检测用户数据信息的准确率。

本发明实施例优选的,s301可以通过以下步骤获得:

使用对数域条件概率公式及对数域先验概率公式,从已获得的叠加码字信息中,计算获得各个用户的码字条件概率。

其中,对数域条件概率公式为:

其中,θf(x)代表对数域条件概率,n0为噪声功率,f表示正交的资源块数,f代表正交资源块节点编号,v代表用户节点个数,v代表用户节点编号也可以代表序号为v的用户,xv表示第v个用户映射在正交资源块节点的码字向量,共有2k种可能取值。代表在因子图中与序号为f的正交资源块节点连接的用户节点的集合,k代表每个用户编码码字的比特数,用户需要k个前向纠错编码比特组成一个信道编码比特向量bv,每个bv映射为一个f维的码字向量xv=(xv,1,xv,2,…,xv,f),xv,f表示第v个用户在第f个正交资源块节点上的映射码字,yf表示第f个正交资源块节点上的接收信号,接收信号向量y=(y1,y2,…,yf)可以表示为:z是服从均值0,方差为n0i的复高斯白噪声向量,i表示单位矩阵,yt,zt表示相应矩阵的转置;

对数先验概率公式为:

其中,ξ(xv)代表对数先验概率,k代表比特序号,bv,k表示bv向量的第k个比特,表示映射为码字向量xv的原始编码码字的第k个比特值,即或者

可选的,如图4所示,s302中的初始神经网络是根据因子图预先构建的,具体步骤包括:

s401,根据因子图构建初始神经网络的输入层、输出层和隐含层;初始神经网络的输入层包括:检测输入层和译码输入层;初始神经网络的输出层包括:检测输出层和译码输出层;初始检测神经网络隐含层包括:检测隐含层和译码隐含层;

其中,因子图包括:非正交多址映射的因子图和前向纠错编码的因子图,初始神经网络包含多个检测隐含层、译码隐含层及译码输出层。

s402,将t倍的预设的迭代次数,作为初始神经网络包含检测隐含层个数;t的取值为2;

其中,预设的迭代次数可以是人为根据行业经验预先设定的值,如果迭代次数是设置为l,则检测隐含层个数为2l。

s403,将非正交多址映射的因子图中各个用户节点与正交资源块节点的连边数量作为初始神经网络中各个检测隐含层包含神经元的个数;

其中,非正交多址映射的因子图中用户节点与正交资源块节点共有e条连边,则检测隐含层中每一层都有e个神经元。

s404,将用户的调制阶数,编码码字每个编码码字的比特数,作为检测隐含层中每个神经元包含子神经元的个数;

非正交多址映射的因子图中有v个用户节点,每个用户节点连接一个用户,每个用户的编码码字的比特数是k,则调制阶数为2k编码码字,每个子神经元与调制阶数编码码字一一对应。

s405,将正交资源块节点的数量,作为检测输入层包含神经元的个数;

其中,检测输入层中的神经元与非正交多址映射的因子图中正交资源块节点一一对应,假设正交资源块节点的数量为f,那么检测输入层包含神经元的个数是f个。

s406,将用户节点的数量与每个编码码字的比特数的乘积,作为检测输出层包含神经元的个数;

其中,检测输出层中包含神经元与非正交多址映射的因子图中用户节点个数及编码码字每个编码码字的比特数乘积一一对应。假设用户节点的数量为v,那么检测输入层神经元的个数是v个。每个用户包含k个编码码字,则检测输出层共有vk个神经元。

s407,根据非正交多址映射的因子图中正交资源块节点与用户节点的连接关系,确定检测隐含层、检测输入层及检测输出层之间的连接关系;检测隐含层、检测输入层及检测输出层之间的连接关系包括:检测输入层包含的神经元与检测隐含层包含的神经元之间、检测隐含层包含的神经元与相邻检测隐含层之间、检测隐含层与检测输出层之间的连接关系;

其中,初始神经网络中检测隐含层的个数、检测输入层、检测隐含层及检测输出层包含神经元的个数已经确定,需要确定检测输入层包含的神经元与检测隐含层包含的神经元之间、检测隐含层包含的神经元与相邻检测隐含层之间、检测隐含层与检测输出层之间的连接关系,以便可以完成初始神经网络的构建。检测隐含层、检测输入层及检测输出层之间的连接关系可以通过以下过程实现:

如图5所示,针对检测输入层:第1层检测隐含层中e0=(v,f)相对应的神经元与检测输入层中单个神经元连接,检测输入层中单个神经元与第f个正交资源块节点相对应。检测输入层中序号为f的神经元与e0=(v,f)相对应的神经元中的所有子神经元连接,v代表用户节点的序号,f代表正交资源块节点的序号,e0代表非正交多址映射的因子图的连边。

针对第i层检测隐含层(i=2,3,…,2l-1:如果i是奇数,与e0=(v,f)相对应的神经元将与第i-1层检测隐含层中与所有相对应的神经元连接。代表在因子图中与序号为f的正交资源块节点连接的除v用户节点以外的用户节点的集合。第i层神经元中的子神经元与第i-1神经元中的子神经元之间的连接方式是全连接,i代表检测隐含层的序号。

奇数检测隐含层每个子神经元上粗实短线代表对应的对数域条件概率。

如果i是偶数,与e0=(v,f)相对应的神经元将与第i-1层中与所有所对应的神经元连接,表示与第v个用户节点相连接的正交资源块节点集合,但不包括第f个正交资源块节点。

偶数检测隐含层每个子神经元上的虚短线代表对应的对数先验概率。

针对检测输出层:与第v个用户节点对应的神经元与i-1层中所有与e0=(v,f)对应的神经元连接。第i层神经元中的第m个子神经元只与第i-1层神经元中的第m个子神经元连接,m代表子子神经元的序号。

s408,将第一预设数量,作为译码隐含层的个数;

其中,第一预设数量是人为根据行业经验设定的值,译码隐含层个数为奇数,假设第一译码数量为lb,则译码隐含层的个数为lb,lb为偶数。

s409,将前向纠错编码的因子图中各个校验节点与变量节点的连边数量作为译码隐含层包含神经元的个数;

其中,前向纠错编码的因子图中检验节点与变量节点共有r条连边,则检测隐含层中每一层都有r个神经元。

s410,将奇数译码隐含层的个数,作为译码输出层的个数;

其中,译码隐含层个数为lb个,lb为偶数,译码输出层的个数是

s411,将变量节点的个数,作为译码输入层及译码输出层包含神经元的个数;

其中,n是用户发送的前向纠错编码码字的长度,那么变量节点的数量是n,则译码输入层与译码输出层包含神经元的个数是n,u代表译码输入层神经元的序号也代表变量节点的序号。

s412,根据变量节点及校验节点的连接关系,确定译码隐含层、译码输入层及译码输出层之间的连接关系;译码隐含层、译码输入层及译码输出层之间的连接关系包括:译码输入层包含的神经元与译码隐含层包含的神经元之间、译码隐含层包含的神经元与相邻译码隐含层之间、译码隐含层与译码输出层之间的连接关系。

其中,初始神经网络中译码隐含层的个数、译码输入层、译码隐含层及译码输出层包含神经元的个数已经确定,需要译码输入层包含的神经元与译码隐含层包含的神经元之间、译码隐含层包含的神经元与相邻译码隐含层之间、译码隐含层与译码输出层之间的连接关系,以便可以完成初始神经网络的构建。译码隐含层、译码输入层及译码输出层之间的连接关系可以通过以下过程实现:

如图6所示,针对译码输入层:将译码隐含层按0,1,…lb-1排序。λ代表译码隐含层的序号。λ=0层,与e1=(u,c)对应的神经元将与译码输入层中与变量节点u对应的神经元连接,u代表变量节点的序号,c代表校验节点,e1代表前向纠错编码的因子图的连边。

针对第λ层译码隐含层(λ=1,2,…lb-1:如果λ为偶数,与β=(u,c)对应的神经元将与第λ-1层中所有与对应的神经元连接,同时也与变量节点u对应的神经元连接;表示与第u个变量节点连接的校验节点集合,但不包括第c个校验节点,偶数译码隐含层与e1=(u,c)对应的神经元上的黑色短虚线代表与译码输入层第u个神经元连接。

如果λ为奇数,与e1=(u,c)对应的神经元将与第λ-1层中所有与对应的神经元连接,表示与第c个校验节点连接的变量节点集合,但不包括第u个变量节点。

对于译码输出层与最后一层译码隐含层的连接方式与译码输入层与λ=0层译码隐含层连接方式相同,γ代表译码输出层的序号。

所有译码输出层第u神经元上的黑色短虚线代表与译码输入层第u个神经元连接。

s413,根据各个用户的比特在前向纠错码中的顺序,确定检测输出层与译码输入层之间连接关系;

其中,各个用户包含的比特信息是:用户发送的数据信息经过信道编码后码字。初始神经网络中译码输出层输出用户的数据信息,检测输出层并不能直接获得用户的数据信息,因此,需要将需要检测输出层与译码输入层连接,完成初始神经网络的构建。由于检测输出层输出有v个用户,因此,需要完成v个用户的数据信息并行检测。检测输出层与译码输入层之间连接关系可以通过以下过程实现:

如图7所示,初始神经网络包含多个检测输入层和译码输入层,对多个用户数据信息实行并行检测。一个检测输入层就代表有一个检测器。一个译码输入层代表有一个译码器,用户节点数为译码器的个数,假设用户节点有v个,如果前向纠错编码码字的长度为n,用户数为v,每个用户将k个比特编码成一个码字向量,每个用户的调制阶数为2k,那么需要个检测器,最后一个检测器的编号为译码器的个数为v。v代表用户节点序号也代表译码器的序号,s代表检测器的序号,第s个检测器中每个用户的第一个输出神经元的序号为(s-1)k+1;图7中每个译码器的结构都相同,译码器左侧与译码器相连的虚圆圈表示译码输入层的输入,在第v个译码输入层中,序号为1至k的神经元与第1个检测器中,第v个用户序号为1至k的神经元相连,在第v个译码输入层中编号为u的神经元将与第个检测器第v个用户的编号为u的神经元连接,k代表比特序号,v∈{1,2,…v},u∈{1,2,…n},在第v个译码输入层中,序号为至n的神经元与第检测器中,序号为至n的神经元相连,lu代表第个检测器第v个用户的编号为u的神经元的输出;第v个译码器的第u个神经元的输入为lu,不小于的正整数。

s414,获得初始神经网络;初始神经网络包括:确定包含神经元个数及连接关系后的检测输入层、检测输出层、检测隐含层、译码输入层、译码隐含层及译码输出层。

本发明实施例根据因子图中的节点数量及连接关系构建初始神经网络,以便后续可以训练出更准确的初始神经网络各层之间的权值。

可选的,s302中已训练的神经网络是通过训练初始神经网络中各层之间预设的权值得到的,可以通过以下步骤获得:

步骤一:将各个用户的码字信息作为初始神经网络的输入,根据初始神经网络中各层之间预设的权值,利用初始神经网络计算获得初始神经网络输出层的输出结果;

其中,初始神经网络中各层之间预设的权值包括:初始神经网络中各层神经元与其他层神经元之间的权值和各层神经元上的权值。

步骤二:利用梯度下降算法确定损失函数值是否是最小;损失函数是初始神经网络输出层输出结果的损失函数;

其中,利用梯度下降法计算,初始神经网络输出层输出结果的损失函数的过程,需要对初始神经网络中各层之间预设的权值求偏导,划分梯度。

步骤三:若损失函数值不是最小,则调整初始神经网络中各层之间预设的权值;

步骤四:若损失函数值是最小,则确定初始神经网络中各层之间的权值;

步骤五:将确定权值后的初始神经网络作为已训练的神经网络。

在本发明实施例中,由于译码输出层包含多层,可以使用任一译码输出层的输出结果的损失函数,去确定初始神经网络中各层之间的权值。

本发明实施例通过调整初始神经网络中各层之间的权值训练初始神经网络,可以确定较为准确的已训练神经网络模型。使用梯度下降法求解可以加快确定损失函数值是否是最小的过程,提高训练初始神经网络的效率。

可选的,s302已训练的神经网络是通过训练初始神经网络中各层之间预设的权值得到的,可以根据以下步骤获得:

步骤一:将各个用户的码字信息作为初始神经网络中检测输入层的输入,根据初始神经网络中各层之间预设的权值,利用初始检测神经网络计算获得检测输出层的输出结果;

奇数检测隐含层的输出结果为:

奇数检测隐含层的输出结果归一化:

其中,i代表检测隐含层序号,e0代表非正交多址映射的因子图的连边,表示第i层检测隐含层中与e0=(v,f)相对应的神经元的输出结果,xa代表与第a个用户节点连接的第a个用户所有码字的集合,i为奇数,代表在非正交多址映射的因子图中与序号为f的正交资源块节点连接的除v用户节点以外的用户节点的集合,且1≤i≤2l-1,f→v代表非正交多址映射的因子图中与序号为f的正交资源块节点到v用户节点的连接方向,v→f代表非正交多址映射的因子图中与序号为v的用户节点到f的正交资源块节点的连接方向;e0=(v,f)代表非正交多址映射的因子图中用户节点v与正交资源块节点f的连边。

若检测隐含层中各个神经元之间预设的权值相同,偶数检测隐含层输出结果为:

其中,表示第i层检测隐含层中与e0=(v,f)相对应的神经元的输出结果,i为偶数,wi,v和wi,l→v表示第i层检测隐含层中与连边e0=(v,l)神经元相连接的权值,wi,v表示乘在相应对数先验概率上的权值,wi,l→v表示乘在相应的第i-1层检测隐含层输出上的权值;表示与第v个用户节点相连接的正交资源块节点集合,但不包括第f个正交资源块节点,表示与第v个用户节点相连接的正交资源块节点集合,l代表迭代次数,2l代表检测隐含层层数,qv(xv)代表最后一层检测隐含层输出是每个用户的码字概率;xv表示第v个用户映射在正交资源块节点的码字向量,共有2k种可能取值,对应每个神经元中相应的子神经元。

若检测隐含层中各个神经元之间预设的权值不相同,偶数检测隐含层输出结果为:

对偶数检测隐含层输出结果归一化为:

其中,表示第i检测隐含层与连边e0=(v,f)对应的神经元中第m个子神经元输出结果,wi,v,m和wi,l→v,m表示与连边e0=(v,l)所对应的神检测经元中第m个子神经元相连接的连边的权值。wi,v,m表示乘在相应对数先验概率上的权值,wi,l→v,m乘在相应的第i-1层输出上权值;xv,m表示第v个用户节点的编号为m的序列映射到正交资源块节点上的码字向量;表示第i层与e0=(v,f)对应的神经元中第m个子神经元输出,i分别为奇数和偶数;qv,m表示与第v个用户节点对应的神经元的第m个子神经元输出,w2l,v,m和w2l,l→v,m与连边e0=(v,2l)所对应的神经元中第m个子神经元相连接的连边的权值;

检测输出层的输出结果为:

其中,并行检测多个用户的数据信息,则llr(bs,v,k)表示第s个检测器输出层编号为(v,k)的神经元的输出,则lu=llr(bs,v,k)。

步骤二:将检测输出层的输出结果,作为译码输入层的输入,根据初始神经网络中各层之间预设的权值,利用初始神经网络计算获得译码输出层的输出结果;译码输出结果包括:奇数译码隐含层输出结果及译码输出层输出结果;

其中,偶数译码隐含层的输出结果为:

其中,λ代表译码隐含层的序号,e1代表前向纠错编码的因子图的连边,

代表偶数译码隐含层输出结果,u表示变量节点序号,c表示校验节点序号,wλ,u→c表示第λ层e1=(u,c)对应的神经元与译码输入层中第u个神经元连接的权值,lu表示译码输入层第u个神经元的输入,lu=llr(bv,k),u∈{0,1,2,…n-1},n代表前向纠错编码码字的长度,表示与第u个变量节点连接的校验节点集合,表示与第u个变量节点连接的校验节点集合,但不包括第c个校验节点,wλ,h→u表示第λ层中e1=(u,c)对应的神经元与第λ-1层中e1=(u,h),对应的神经元连线的权值,表示第λ-1层中e1=(u,h)对应的神经元的输出,当λ=0时,u→c代表因子图中与序号为u的变量节点到c校验节点的连接方向,c→u代表因子图中与序号为c校验节点到u的变量节点的连接方向;

奇数译码隐含层的输出结果为:

其中,表示第λ层译码隐含层中与e1=(u,c)相对应的神经元的输出,其中λ为奇数,表示与第c个校验节点连接的变量节点集合,表示与第c个校验节点连接的变量节点集合,但不包括第u个变量节点,表示第λ-1译码隐含层中e1=(d,c)对应的神经元的输出;

译码输出层的输出结果为:

其中,σ(r)=(1+e-r)-1,λ为奇数,表示第λ层译码输出层第u个神经元的输出结果,wλ,u表示第λ层译码输出层第u个神经元与译码输入层第u个神经元连接的权值;wλ,h→u表示第λ层译码输出层第u个神经元与第λ层译码隐含层e1=(u,h)对应的神经元连接权值;表示第λ层译码隐含层e1=(u,h)对应的神经元的输出,lb代表译码隐含层的层数。

步骤三:利用梯度下降算法确定损失函数值是否是最小;损失函数是初始神经网络输出层输出结果的损失函数;

其中,利用梯度下降算法求解损失函数最小,需要求解损失函数关于初始神经网络中各层之间预设的权值的偏导,确定损失函数值是否是最小。使用梯度下降法求解损失函数值最小过程与现有技术求解过程相同,在此不再赘述。

译码输出层的输出结果的损失函数为:

λ为奇数;

其中,l(γ,z)代表译码输出层输出的损失函数,γ代表译码输出层的输出值,zj代表信道编码后的码字,j代表比特的序号。

步骤四:若损失函数值不是最小,则分别调整偶数检测隐含层、奇数检测隐含层到偶数检测隐含层、译码输入层到译码输出层、译码输入层到偶数译码隐含层及奇数译码隐含层到偶数译码隐含层的权值;

步骤五:若损失函数值是最小时,则确定初始神经网络中各层之间的权值;

步骤六:将确定权值后的初始神经网络作为已训练的神经网络。

本发明实施例在确定损失函数值是否是最小的过程中,减少调整初始神经网络中不必要的各层及各层之间的权值,可以减少调整各层权值的时间,提高训练的初始神经网络的效率。

可选的,已训练的神经网络,可以通过设定训练次数,利用深度学习训练初始神经网络中各层之间预设的权值得到,如果达到训练次数,则将最后一次深度学习训练后的初始神经网络作为已训练的神经网络。

或者还可以在深度学习训练过程中,实时查看每一次深度学习训练后的初始神经网络是不是收敛,确定神经网络收敛的过程与现有技术一样。

可选的,s303可以通过以下步骤获得:

步骤一:利用各个用户对数比特似然比,各个用户发送的数据信息中的比特;

步骤二:根据各个用户发送的数据信息中的比特及比特顺序,获得各个用户发送的数据信息。

可以理解的是,用户的比特序列中每个比特正确判为0的概率与正确判为1的概率的比值就是比特似然比,然后取对数就是对数比特似然比。通过计算已训练神经网络输出结果中的各个用户对数比特似然比,得到各个用户每个比特正确判定的是0还是1,从而得出各个用户的比特,从而得知用户发送的数据信息。

如图8所示,本发明实施例所提供的一种基于深度学习的多用户数据信息检测装置,应用于非正交多址系统中的接收端,所述装置包括:

码字计算模块801,用于使用预设的条件算法,从已获得的叠加码字信息中计算得出各个用户的码字信息;码字信息包括:码字条件概率;

网络计算模块802,用于将各个用户码字信息作为已训练的神经网络的输入,利用已训练的神经网络获得已训练的神经网络输出层的输出结果;已训练的神经网络是通过深度学习训练初始神经网络中各层之间预设的权值得到的;初始神经网络是根据因子图预先构建的;所述各层之间的权值与因子图中的连边权值一一对应;

信息计算模块803,用于利用已训练的神经网络的输出层的输出结果,计算获得各个用户的数据信息;输出结果包括:各个用户的对数比特似然比。

可选的,码字计算模块801,具体用于:使用对数域条件概率公式及对数域先验概率公式,从已获得的叠加码字信息中,计算获得各个用户的码字信息。

其中,对数域条件概率公式为:

其中,θf(x)代表对数域条件概率,n0为噪声功率,f表示正交的资源块数,f代表正交资源块节点编号,v代表用户节点个数,v代表用户节点编号也可以代表序号为v的用户,xv表示第v个用户映射在正交资源块节点的码字向量,共有2k种可能取值。代表在因子图中与序号为f的正交资源块节点连接的用户节点的集合,k代表每个用户编码码字的比特数,用户需要k个前向纠错编码比特组成一个信道编码比特向量bv,每个bv映射为一个f维的码字向量xv=(xv,1,xv,2,…,xv,f),xv,f表示第v个用户在第f个正交资源块节点上的映射码字,yf表示第f个正交资源块节点上的接收信号,接收信号向量y=(y1,y2,…,yf)可以表示为:z是服从均值0,方差为n0i的复高斯白噪声向量,i表示单位矩阵,yt,zt表示相应矩阵的转置;

所述对数先验概率公式为:

其中,ξ(xv)代表对数先验概率,k代表比特序号,bv,k表示bv向量的第k个比特。,表示映射为码字向量xv的原始编码码字的第k个比特值,即或者

可选的,网络计算模块802包括:

网络构建单元,用于根据因子图构建初始神经网络的输入层、输出层和隐含层;初始神经网络的输入层包括:检测输入层和译码输入层;初始神经网络的输出层包括:检测输出层和译码输出层;初始检测神经网络隐含层包括:检测隐含层和译码隐含层;

检测隐含层单元,用于将t倍的预设的迭代次数,作为初始神经网络包含检测隐含层个数;t的取值为2;

检测神经元单元,用于将非正交多址映射的因子图中各个用户节点与正交资源块节点的连边数量作为初始神经网络中各个检测隐含层包含神经元的个数;

子神经元单元,用于将将用户的调制阶数,作为所述检测隐含层中每个神经元包含子神经元的个数编码码字;

检测输入层单元,用于将正交资源块节点的数量,作为检测输入层包含神经元的个数;

检测输出层单元,用于将用户节点的数量与每个编码码字的比特数的乘积,作为检测输出层包含神经元的个数;

检测关系单元,用于根据因子图中正交资源块节点与用户节点的连接关系,确定检测隐含层、检测输入层及检测输出层之间的连接关系;检测隐含层、检测输入层及检测输出层之间的连接关系包括:检测输入层包含的神经元与检测隐含层包含的神经元之间、检测隐含层包含的神经元与相邻检测隐含层之间、检测隐含层与检测输出层之间的连接关系;

译码隐含层单元,用于将第一预设数量,作为译码隐含层的个数;

译码神经元单元,用于将前向纠错编码的因子图中各个校验节点与变量节点的连边数量作为译码隐含层包含神经元的个数;

译码输出层单元,用于将奇数译码隐含层的个数,作为译码输出层的个数;

译码输入及输出层单元,用于将变量节点的个数,作为译码输入层及译码输出层包含神经元的个数;

译码关系单元,用于根据变量节点及校验节点的连接关系,确定译码隐含层、译码输入层及译码输出层之间的连接关系;译码隐含层、译码输入层及译码输出层之间的连接关系包括:译码输入层包含的神经元与译码隐含层包含的神经元之间、译码隐含层包含的神经元与相邻译码隐含层之间、译码隐含层与译码输出层之间的连接关系;

网络连接单元,用于根据各个用户的比特在前向纠错码中的顺序,确定检测输出层与译码输入层之间连接关系;

初始神经网络单元,用于获得初始神经网络;初始神经网络包括:确定包含神经元个数及连接关系后的检测输入层、检测输出层、检测隐含层、译码输入层、译码隐含层及译码输出层。

可选的,网络计算模块801还包括:

初始训练单元,用于将各个用户的码字信息作为初始神经网络的输入,根据初始神经网络中各层之间预设的权值,利用初始神经网络计算获得初始神经网络输出层的输出结果;

函数求解单元,用于利用梯度下降算法确定损失函数值是否是最小;所述损失函数是初始神经网络输出层输出结果的损失函数;

权值调整单元,用于若损失函数值不是最小,则调整初始神经网络中各层之间预设的权值;

权值确定单元,用于若损失函数值是最小,则确定初始神经网络中各层之间的权值;

网络确定单元,用于将确定权值后的初始神经网络作为已训练的神经网络。

可选的,初始训练单元具体用于:将各个用户的码字信息作为初始神经网络中检测输入层的输入,根据初始神经网络中各层之间预设的权值,利用初始检测神经网络计算获得检测输出层的输出结果;

将检测输出层的输出结果,作为译码输入层的输入,根据初始神经网络中各层之间预设的权值,利用初始神经网络计算获得译码输出层的输出结果;译码输出结果包括:奇数译码隐含层输出结果及译码输出层输出结果;

其中,奇数检测隐含层的输出结果为:

其中,i代表检测隐含层序号,e0代表非正交多址映射的因子图的连边,表示第i层检测隐含层中与e0=(v,f)相对应的神经元的输出结果,xa代表与第a个用户节点连接的第a个用户所有码字的集合,i为奇数,代表在非正交多址映射的因子图中与序号为f的正交资源块节点连接的除v用户节点以外的用户节点的集合,且1≤i≤2l-1,f→v代表非正交多址映射的因子图中与序号为f的正交资源块节点到v用户节点的连接方向,v→f代表非正交多址映射的因子图中与序号为v的用户节点到f的正交资源块节点的连接方向;e0=(v,f)代表非正交多址映射的因子图中用户节点v与正交资源块节点f的连边。

若检测隐含层中各个神经元之间预设的权值相同,偶数检测隐含层输出结果为:

其中,表示第i层检测隐含层中与e0=(v,f)相对应的神经元的输出,i为偶数,wi,v和wi,l→v表示第i层检测隐含层中与连边e0=(v,l)神经元相连接的权值,wi,v表示乘在相应对数先验概率上的权值,wi,l→v表示乘在相应的第i-1层检测隐含层输出上的权值;表示与第v个用户节点相连接的正交资源块节点集合,但不包括第f个正交资源块节点,表示与第v个用户节点相连接的正交资源块节点集合,l代表迭代次数,2l代表检测隐含层层数,qv(xv)代表最后一层检测隐含层输出是每个用户的码字概率;xv表示第v个用户映射在正交资源块节点的码字向量,共有2k种可能取值,对应每个神经元中相应的子神经元。

若检测隐含层中各个神经元之间预设的权值不相同,偶数检测隐含层输出结果为:

其中,表示第i检测隐含层与e0=(v,f)对应的神经元中第m个子神经元输出,wi,v,m和wi,l→v,m表示与连边e0=(v,l)所对应的神检测经元中第m个子神经元相连接的连边的权值。wi,v,m表示乘在相应对数先验概率上的权值,wi,l→v,m乘在相应的第i-1层输出上权值;xv,m表示第v个用户节点的编号为m的序列映射到正交资源块节点上的码字向量;表示第i层与e0=(v,f)对应的神经元中第m个子神经元输出,i分别为奇数和偶数;qv,m表示与第v个用户节点对应的神经元的第m个子神经元输出,w2l,v,m和w2l,l→v,m与连边e0=(v,2l)所对应的神经元中第m个子神经元相连接的连边的权值;

检测输出层的输出结果为:

将检测输出层的输出结果,作为所述译码输入层的输入,根据初始神经网络中各层之间预设的权值,利用初始神经网络计算获得译码输出层的输出结果;译码输出结果包括:奇数译码隐含层输出结果及译码输出层输出结果;

其中,偶数译码隐含层的输出结果为:

其中,λ代表译码隐含层的序号,e1代表前向纠错编码的因子图的连边,代表偶数译码隐含层输出结果,u表示变量节点序号,c表示校验节点序号,wλ,u→c表示第λ层e1=(u,c)对应的神经元与译码输入层中第u个神经元连接的权值,lu表示译码输入层第u个神经元的输入,lu=llr(bv,k),u∈{0,1,2,…n-1},n代表前向纠错编码码字的长度,表示与第u个变量节点连接的校验节点集合,表示与第u个变量节点连接的校验节点集合,但不包括第c个校验节点,wλ,h→u表示第λ层中e1=(u,c)对应的神经元与第λ-1层中e1=(u,h),对应的神经元连线的权值,表示第λ-1层中e1=(u,h)对应的神经元的输出,当λ=0时,u→c代表因子图中与序号为u的变量节点到c校验节点的连接方向,c→u代表因子图中与序号为c校验节点到u的变量节点的连接方向;

奇数译码隐含层的输出结果为:

其中,表示第λ层译码隐含层中与e1=(u,c)相对应的神经元的输出,其中λ为奇数,表示与第c个校验节点连接的变量节点集合,表示与第c个校验节点连接的变量节点集合,但不包括第u个变量节点,表示第λ-1译码隐含层中e1=(d,c)对应的神经元的输出;

译码输出层的输出结果为:

其中,σ(r)=(1+e-r)-1,λ为奇数,表示第λ层译码输出层第u个神经元的输出,wλ,u表示第λ层译码输出层第u个神经元与译码输入层第u个神经元连接的权值;wλ,h→u表示第λ层译码输出层第u个神经元与第λ层译码隐含层e1=(u,h)对应的神经元连接权值;表示第λ层译码隐含层e1=(u,h)对应的神经元的输出,lb代表译码隐含层的层数;

函数求解单元具体用于:利用梯度下降算法确定损失函数值是否是最小;损失函数是译码输出层的输出结果的损失函数;

译码输出层的输出结果的损失函数为:

λ为奇数;

其中,l(γ,z)代表译码输出层输出的损失函数,γ代表译码输出层的输出值,zj代表信道编码后的码字,j代表比特的序号。

权值调整单元具体用于:若损失函数值不是最小,分别调整偶数检测隐含层、奇数检测隐含层到偶数检测隐含层、译码输入层到译码输出层、译码输入层到偶数译码隐含层及奇数译码隐含层到偶数译码隐含层的权值;

权值确定单元具体用于:若损失函数值是最小,确定初始神经网络中各层之间的权值;

网络确定单元具体用于:将确定权值后的初始神经网络作为已训练的神经网络。

可选的,信息计算模块803具体用于:

利用各个用户的对数比特似然比,计算各个用户发送的数据信息中的比特;

根据各个用户发送的数据信息中的比特及比特顺序,获得各个用户发送的数据信息;本发明实施例还提供了一种电子设备,如图9所示,包括处理器901、通信接口902、存储器903和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完成相互间的通信,

存储器903,用于存放计算机程序;处理器901,用于执行存储器903上所存放的程序时,实现如下步骤:

使用预设的条件算法,从已获得的叠加码字信息中计算得出各个用户的码字信息;码字信息包括:码字条件概率;

将各个用户码字信息作为已训练的神经网络的输入,利用已训练的神经网络获得已训练的神经网络输出层的输出结果;已训练的神经网络是通过深度学习训练初始神经网络中各层之间预设的权值得到的;初始神经网络是根据因子图预先构建的;各层之间的权值与因子图中的连边权值一一对应;

利用已训练的神经网络的输出层的输出结果,计算获得各个用户的数据信息;所述输出结果包括:各个用户的对数比特似然比。

上述电子设备提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitectu正交资源块,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口用于上述电子设备与其他设备之间的通信。存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

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