SCMA-D2D 混合网络卷积自编码器①

2024-01-10 01:11许耀华周鑫源
高技术通讯 2023年12期
关键词:多用户解码器蜂窝

许耀华 周鑫源 黄 兴 蒋 芳 王 翊 王 跃

(*安徽大学智能计算与信号处理教育部重点实验室 合肥 230601)

(**安徽大学物联网频谱感知与测试工程中心 合肥 230601)

(***安徽电信规划设计有限责任公司 合肥 230031)

0 引言

随着物联网和人工智能的快速发展,接入到通信网络中的移动智能终端的种类和数量不断增多,网络中采集的用户数据呈指数级增长。因此研究如何提升系统的用户容量、提升频谱资源利用效率、降低系统功耗等问题是非常必要的。文献[1]提出不同类型的网络集成到统一的系统中能够大大提高系统容量和频谱资源利用率。设备对设备(device to device,D2D)通信允许附近的设备之间在没有基站(base station,BS)或有限基站参与的情况下直接建立通信,进一步拓展社交网络结构,支持物联网的发展[2]。蜂窝和D2D 通信混合网络能够进一步提升网络容量和资源利用效率。稀疏码分多址接入(sparse code multiple access,SCMA)[3]技术由于其低密度扩频和高维调制的特点,能够以一定的过载率增加使用频谱资源的用户数量。文献[4]证实了将SCMA应用在蜂窝和D2D 混合网络中能够支持D2D 的海量连接以及提升混合网络系统的区域频谱效率(area spectral efficiency,ASE)。然而混合网络要面临许多新的问题,比如新的资源分配、新的解码方案及用户间的干扰管理等问题。本文将SCMA 支持的蜂窝和D2D 混合网络简称为SCMA-D2D 混合网络。对于端到端的通信系统来说,编码和解码是最重要的问题。近年来,学者在SCMA-D2D 混合网络编码端进行了码本分配[4-9]、功率优化[2,10-11]等一系列研究。然而很少有专门针对SCMA-D2D 混合网络接收机设计的研究。文献[12]设计了一种低复杂度的上行链路SCMA-D2D 混合网络解码器,针对传统系统用于解码的消息传递算法(message passing algorithm,MPA)和最大似然检测算法(maximum likelihood,ML)导致的译码复杂度过高的问题,提出了一种基于列表球解码(list sphere decoding,LSD)算法的接收机设计方案LSD-MPA 和MPA-ML 以缩小检索空间,降低解码复杂度,但解码精度没有明显提升且D2D 用户的解码精度低于SCMA 用户。SCMA-D2D 混合网络的用户间干扰所导致的系统误比特率(bit error rate,BER)性能差的问题在传统通信模式下难以有效解决。

随着人工智能技术的发展,将深度学习应用于未来移动通信网络是解决现有诸多通信问题的一种可行方法[13]。深度学习(deep learning,DL)已被用于解决码本设计[14-15]、解码[16-22]以及信道估计[22]等问题。文献[16]和[17]都是将深度学习和MPA 相结合改善系统的解码性能,学习调整神经网络边的权值来实现SCMA 多用户检测。文献[18]提出了一种基于卷积神经网络(convolutional neural network,CNN)的SCMA 的下行链路盲译码策略,通过离线训练构建了神经网络模型,在线测试阶段只需要通过一次神经网络的运算即可完成解码。避免了传统的多用户检测算法的多次迭代,降低了解码复杂度。但是文献[16-18]都没有涉及到神经网络辅助的编码问题。文献[14]提出了一种深度学习辅助的SCMA(deep learning aided SCMA,D-SCMA)自编码器结构,能够自适应地构造最小化误码率的码本,并使用基于深度神经网络的编解码器来学习译码策略。在码字的生成和译码策略的确定中采用了一种受自动编码器的结构。文献[15]将整个网络看成一个自动编码器,将编码和解码结合在一起进行训练以生成最优的SCMA 码字和重建原始比特。文献[19]提出了一种基于卷积和残差网络的端到端的SCMA自动编解码器,在编码端使用CNN 单元学习码字映射规律,在解码端引入了参加网络结构解决由深度增加导致的梯度消失问题,提升了系统的误比特率(bit error rate,BER)性能,降低了计算复杂度。综上可知,神经网络辅助的SCMA 系统编解码器能够通过神经网络单元发掘数据之间的关联,减少网络中可训练参数,降低计算复杂度并获得良好的译码性能。SCMA-D2D 混合网络是多种用户类型的网络系统,不仅要考虑到多种用户的不同编码特征进行编码,还要考虑构建解码器时要降低用户间的干扰,保证多种用户解码精度。文献[20,21]都提到的基于共享层的多用户分类器给混合网络解码问题提供了新思路。基于共享层的多任务解码模型能够在共享层学习总的解码任务,各个解码子任务之间互不干扰独立进行,增强了多用户译码的抗干扰性。

受上述文献启发,本文提出了SCMA-D2D 混合网络卷积自编码器(CNN-SCMA-D2D)。在编码端,自适应学习使系统误码率性能最好的用户最佳码本代替传统的码本映射方式,将信道信息和解码性能都作为码本生成的训练条件,提升系统编码灵活性、鲁棒性;在解码端,提出基于共享层机制的多用户分类解码器,提升解码精度,降低译码复杂度。

1 网络模型

1.1 蜂窝和D2D 混合网络

图1 展示的是由Jc个蜂窝用户和Jd个设备对设备(D2D) 用户共存的多用户混合网络系统,Ci表示第i个蜂窝用户,DTj,DRj分别表示第j个D2D用户对的发送器和接收器,其中1 ≤i≤Jc,1 ≤j≤Jd。上行链路中D2D 用户对基站的干扰很小,混合网络的干扰主要体现在一种用户将另一种用户的信息视为干扰。

图1 混合网络系统图

1.2 SCMA-D2D 混合网络模型

Jc个蜂窝用户、Jd个D2D 用户、K个频谱资源的上行链路混合网络系统中使用稀疏码分多址技术(SCMA)可以实现频谱资源的过载。在本系统中,蜂窝用户数据以SCMA 映射的方式将分配到的SCMA 码字信息复用到K个频谱资源上,每个蜂窝用户占用Kc个频谱资源,1 ≤Kc≤K,实现了一维数据到二维码字的拓展。D2D 用户采用二进制相移键控(binary phase shift keying,BPSK)调制的方式,直接占用K个频谱资源中的1 个。令用户数Jc+Jd>K,达到过载的目的,令Jd<K以限制干扰的强度。根据系统中各个用户对频谱资源的占用情况,随机生成一个映射矩阵F,如式(1)所示,其中矩阵元素为{0,1} 2 种取值。矩阵F的列对应用户,矩阵F的行对应频谱资源。矩阵F的前Jc列代表SCMA 用户占用频谱资源的情况,矩阵F的后Jd列代表D2D 用户占用频谱资源的情况。矩阵F的前Jc列的列权重为Kc,表示这一列有Kc个取值为1的元素;矩阵F的后Jd列的列权重为1,表示这一列仅有1 个取值为1 的元素。若矩阵的第k行和第m列的元素F{k,m}=1,代表该列所对应的用户m占用了第k个资源块,反之则表示对应用户不会占用该资源块,1 ≤m≤Jc+Jd。矩阵的行权重取值为种情况,其中取值为整数。

为了便于描述问题,本文暂时以一个有6 个SCMA 用户、2 个D2D 用户对和4 个频谱资源的系统为例,则有式(2)所示的因子矩阵。本文后续会对D2D 用户对数量对系统性能的影响做实验探究。

由式(2)给出如图2 所示的用户占用资源的因子图。

图2 SCMA-D2D 混合网络因子图

接收端接收的信号用式(3)表示。

2 CNN-SCMA-D2D 自编码器

由于增加了新的用户类型,SCMA-D2D 混合网络系统既要考虑新的编码策略,也要考虑能够降低用户间干扰、提升解码精度的解码算法,将系统的误比特率(BER)降低到可接受范围内去提升系统的容量、提升系统的过载率。针对传统的SCMA-D2D混合网络采用预设好的固定码本编码导致的编码鲁棒性较差以及传统的迭代译码算法在解码精度上没有明显提升且译码复杂度高等问题,本节介绍一种基于卷积神经网络(CNN)的SCMA-D2D 混合网络系统卷积自编码器CNN-SCMA-D2D。在编码端,分别根据不同的用户到频谱资源的连接情况设计了多用户联合编码器的结构,并在模型训练的过程中将信道条件、解码端性能都考虑在内,使用自适应编码代替固定码本,得出对系统适应能力最强、解码BER性能最好的编码器结构。在解码端,针对不同类型的多用户解码问题,采用一种基于共享层的多用户分类解码结构,以降低用户间干扰、提升解码精度。

2.1 CNN-SCMA-D2D 编码器设计

相比于传统的固定码本编码,神经网络辅助的自编码器能够灵敏地发掘数据之间的规律,快速地学习使系统模型达到最优的编码映射规则,并且能够减少可训练参数降低编码复杂度。将图2 中连接用户和频谱资源的边称为用户到频谱资源的数据流。在CNN-SCMA-D2D 编码器中,在每一个用户到频谱资源的数据流中间放置一个CNN 单元去寻找如图2 所示的从输入数据到指定的频谱资源的星座点的映射关系。CNN-SCMA-D2D 编码器结构如图3所示。分别用fc、fd表示蜂窝用户和D2D 用户的CNN 编码单元分别表示第i个蜂窝用户编码单元、第j个D2D 用户编码单元(1 ≤i≤Jc,1 ≤表示第i个蜂窝用户加载到第k个频谱资源的码字生成函数或码字生成器表示第j个D2D 用户加载到第k个频谱资源的调制信息生成函数或调制信息生成器。

图3 CNN-SCMA-D2D 混合网络编码端结构

rc、rd分别是蜂窝用户和D2D 用户的二进制输入数据分别表示第i个蜂窝用户的二进制输入数据和第j个D2D 用户的二进制输入数据。每个用户的二进制比特数据按照b比特一组转换成能被神经网络单元识别的单热向量lc、ld,单热向量的维度为M,其中b=log2M。图4 所示是CNN 编码单元的内部结构示意图,共有3 个隐藏层进行数据处理操作,CNN 的输入节点个数为M,对应输入数据单热向量的维度;输出节点个数为2,对应学习到的码字信息的维度分别表示第i个蜂窝用户的输入数据所对应的单热向量和第j个D2D 用户的输入数据所对应的单热向量(1 ≤i≤6,1 ≤j≤2)。加载到频谱资源k上的第i个蜂窝用户的原始数据所对应的码字向量如式(5)所示。加载到频谱资源k上的第j个D2D 用户所对应的编码单元调制信息向量如式(6)所示。

图4 CNN 单元隐藏层结构

将频谱资源上的所有码字进行叠加之后作为编码端的输出,如式(7)所示。

频谱资源上的混合信号送到高斯信道中,传输到接收端,接收端接收到的信号如式(8)所示,其中n表示高斯信道向量。

2.2 基于共享层的CNN-SCMA-D2D 多用户分类解码器

基于共享层的CNN-SCMA-D2D混合网络多用户分类解码器由共享层和用户分类解码层组成。解码器的任务是输出不同类型用户的信息。由于存在多种用户识别任务,需要建立一个具有共享分支的模型,共享层结构刚好满足了这一点。共享层[20],简单来说,就是对一个层的多次调用,即共享这个层。由于不需要每次调用都建立一个新的层,每次调用都可以重复使用相同的权重。在共享层中学习总的解码任务,并在多任务分支解码结构中独立学习本层的解码任务,各个分支任务独立进行、互不干扰。由此便可以建立一个接收信号y为共享层、多用户分类解码层为分支的基于共享层机制的多用户分类解码器,如图5 所示。

图5 基于共享层的CNN-SCMA-D2D 多用户分类解码器

接收端的接入信号y首先经过共享层处理,共享层的输入输出表达式如式(9)所示。

共享层的输出ys、θs表示共享层的神经网络超参数,包括权重ws和偏差bs。图5 中uc表示蜂窝用户的分类解码器,ud表示D2D 用户的分类解码器;sc和sd分别表示蜂窝用户和D2D 用户的解码器预测结果,在模型训练和计算信噪比时需要处理成和输入数据类型相同类型的向量,方便代入模型损失函数进行计算。表示的第i个元素,表示的第j个元素。

第i个SCMA 蜂窝用户解码过程如式(10)所示,第j个D2D 用户解码过程用式(11)表示。

其中,i=1,2,…,Jc;j=1,2,…,(·) 的输入为共享层s(·) 的输出为第i个蜂窝用户解码器的网络参数,包括为第j个D2D 用户解码器的网络参数,包括。在分类解码器的输出层采用了softmax 函数作为激活函数。softmax 函数将输出的结果转化为总和为1 的概率值,将解码器输出的实值向量转换为归一化的概率分布。softmax 函数输入越大,概率越大,因此softmax 函数用于本文的多用户分类解码器非常合适。softmax 函数的表示如式(12)所示。

其中,zi表示神经网络输出的一个结果,∑kezk表示神经网络所有输出结果的总和,Si表示神经网络输出结果的概率。

2.3 模型训练

为了使系统能尽可能地重构原始的用户信息,本文采用了端到端的训练方式,在不同的训练信噪比下训练网络,不断更新神经网络单元中的参数,发掘有用的信息,在有限的迭代次数内最小化模型损失函数的值。

为了使模型训练达到最好,使用交叉熵损失函数作为模型优化的目标函数。交叉熵损失函数用来衡量模型学习到的分布和真实分布的差异。交叉熵越大说明2 种概率分布的差异越大。模型优化的目标是最小化目标函数的值让模型达到最佳性能。经过解码器解码出来的预测数据会首先经过softmax处理成0~1 之间的概率数据,然后送到log()中进行运算。

蜂窝用户对应的交叉熵损失函数Lc如式(13)所示。

D2D 用户对应的交叉熵损失函数Ld如式(14)所示。

3 实验结果与讨论

本节首先对本文提出的CNN-SCMA-D2D 混合网络自编码器的最佳参数进行实验分析与论述,其次与传统的混合网络解码算法的实验性能进行对比分析。为公平起见,本文所有的实验均在相同的实验设备上进行。所做实验的场景是单小区单天线下的上行链路SCMA-D2D 混合网络系统。本节采用的模拟器实验使用了深度学习库,如TensorFlow 和KERAS。仿真实验基于Python 3.7.6。训练信噪比定为10 dB,先将用户原始数据按照2 比特一组进行分组,然后转变成4 比特一组的单热向量。每个CNN 单元的隐藏层设为3,步长为1,宽度为1。训练数据集由20 万个随机数据点组成,批处理大小为400。用自适应矩估计(adaptive moment estimation,ADAM)寻找式(13)、(14)中的最佳值,学习率设置为0.000 1。隐藏层的节点设置为32、64、32。在加性高斯白噪声(additive white Gaussion noise,AWGN)信道下的混合网络上行信道中进行了仿真实验。

3.1 不同D2D 用户数目对系统BER 性能的影响

由于本文所对比的文献[12]中并没有对D2D的最佳数目进行探究说明,故本节对D2D 用户数目对不同用户分类解码器的误比特率性能影响进行实验,SCMA 蜂窝用户的数目设置为6,频谱资源的数目设置为4,分别将D2D 用户的数目设置成1、2、3、4 并进行相关的对比实验。实验结果如图6、图7 所示。

图6 D2D 用户数目对SCMA 分类解码器的BER 性能影响

图7 D2D 用户数目对D2D 分类解码器的BER 性能影响

从图6 所示的实验结果可以看出,对于SCMA蜂窝用户来说,D2D 的数目越多干扰越大,SCMA 用户分类解码器解码性能越差。当D2D 用户超过2个时,会导致SCMA 用户分类解码器失去解码能力。从图7 所示的实验结果可以看出,D2D 的数目为1和4 的时候,D2D 用户分类解码器的解码性能都很差,当D2D 用户的数目为2 和3 时,D2D 用户解码器的解码性能达到最佳。由于我们的系统是多用户混合网络,在考虑网络配置的时候综合考虑到每种用户的情况,将D2D 用户数目设置为2,可以使每种用户解码器的BER 性能都达到良好的水平。

3.2 实验结果

本实验对比了本文所提出的CNN-SCMA-D2D解码方案与传统的使用MPA 解码的SCMA 方案(SCMA system w/o D2D)以及使用列表球算法的SCMA-D2D 混合网络[12]解码方案的BER 性能。文献[12]介绍了一种上行链路下的SCMA-D2D 混合网络接收机设计方案,网络因子图与本文一致,对SCMA 用户采用LSD-MPA 算法,对D2D 用户对采用LSD-ML 算法。图8 所示是本文的解码器性能与上述系统的解码器性能的对比图。由图8 可知,在AWGN 信道下,本文的CNN-SCMA-D2D for SCMA的误码率性能优于LSD-MPA,CNN-SCMA-D2D for D2D 误码率性能优于LSD-ML,并且LSD-ML 的性能明显差于LSD-MPA。文献[12]中的解码算法不同用户间解码差异很大。由于共享层的引入,本文所提出的基于共享层的CNN-SCMA-D2D 多用户分类解码器能够很好地降低用户间干扰对系统解码器的影响,降低不同用户解码器的解码性能差异。由于用户间干扰的存在,混合网络的解码性能会比单一网络的解码性能要差一些。相比于使用MPA 解码算法进行解码的单一用户的SCMA 系统,本文的SCMA 多用户分类解码器的BER 性能损失在可接受范围内,且能够有效地降低译码复杂度。在相同的信噪比(signal to noise ratio,SNR)下,比如SNR=10 dB,本文提出的CNN-SCMA-D2D多用户分类解码器中的SCMA 用户分类解码器相比于只有SCMA蜂窝用户系统的MPA 解码的BER 性能损失为0.5 dB,在可接受的范围内。

图8 不同算法在AWGN 信道下的误码率性能比较

3.3 复杂度分析

由于神经网络能够一次解码出全部用户信息,相比于传统的迭代译码方法能够显著降低译码复杂度。本节分析了CNN-SCMA-D2D 算法的译码计算复杂度。设J为用户数,K为资源数,Ls(Lu) 表示第n层共享层(用户层)的隐藏层数目。Ns(Nu) 表示第n层共享层(用户层)的隐藏层节点数目。由于SCMA 和D2D 用户解码端的隐藏层层数是一样的,Lu两者可以共用。本文以SCMA 用户的解码复杂度性能进行对比,CNN-SCMA-D2D 和LSD-MPA的乘加(multiply-accumulate,MAC)操作次数如表1和图9 所示,每个用户的平均解码时间对比如图10所示。

图9 LSD-MPA 和CNN-SCMA-D2D 的MAC 数量对比

图10 LSD 解码与CNN-SCMA-D2D 解码时间对比

4 结论

本文为解决SCMA-D2D 混合网络的编码设计以及不同用户间干扰等问题,提出了一种基于卷积神经网络的SCMA-D2D 混合网络卷积自编码器。建立端到端的自编码器训练模型,将所有用户的编码单元、信道条件和解码单元进行联合训练,得出对系统适应性最强、使BER 性能最好的码本。在解码端提出一种基于共享层的多用户分类解码器,将解码问题转化成多输出分类问题,在共享层抽取所有用户的有效信息,由此降低用户间干扰,提升了解码精度。此外神经网络一次性解码相比于传统的迭代译码算法能够有效降低计算复杂度,在译码时间和译码复杂度上本文所提出的解码器都优于传统的迭代译码算法。

猜你喜欢
多用户解码器蜂窝
安泰科多用户报告订阅单
科学解码器(一)
安泰科多用户报告订阅单
安泰科多用户报告订阅单
蜂窝住宅
科学解码器(二)
科学解码器(三)
安泰科多用户报告订阅单
蓄热式炉用蜂窝体有了先进适用的标准
线圣AudioQuest 发布第三代Dragonfly Cobalt蓝蜻蜓解码器