水下环境错综复杂,由于声波在传播过程中会受到海底地形、海流、气泡等多种因素的影响,通信质量难以得到保障,为了显著提升这一领域的通信质量,近年来提出了将极化码应用于水声通信的方案[1]。2009年,Arikan[2]提出了极化码编码方案,其能够在二进制输入的离散无记忆信道上达到香农极限。极化码通过其特有的规则递归结构设计,实现了编码与解码算法的复杂度优化。正是这些显著的优点,使得极化码在第五代(5G)无线通信系统中脱颖而出,被选定为增强型移动宽带控制信道的纠错编码方案[3]。SC(Successive Cancellation)译码与BP(Belief Propagation)译码是极化码译码中普遍运用的两大方式[4]。然而,SC的串行处理机制和BP译码的迭代处理策略均会导致较高的解码延迟[5]。为了应对这一挑战,近年来提出了深度学习译码方案,以降低计算复杂度,减小译码时延[6−7]。
Fang等[8]通过采用LLR作为输入信息,并引入全连接神经网络来替代传统的SC译码器,在湍流信道环境下实现了与SC译码器相近的误码率性能。在保持相同码长的条件下,基于LLR的全连接神经网络译码器相较于SC译码器,其译码延迟降低了25%。CAMMERER等[9]提出了一种创新的方案,该方案的核心在于采用神经网络作为替代传统BP译码算法的子译码器。
这一方案不仅优化了极化码的BP迭代译码流程,而且有效地降低了算法的整体复杂度,同时显著提升了译码性能。Wang等[10]针对Polar-LDPC(Polar codes and Low-Density Parity-Check codes)级联方案在解码性能提升的同时伴随解码延迟增加的问题,提出一种创新的解决方案。该方案基于深度学习,通过并行多个神经网络来优化Polar-LDPC的连接机制。在这一改进的级联方案中,神经网络被用来辅助极化码的解码过程,从而有效降低了解码延迟。郭锐等[11]提出了一种针对极化码长码的卷积神经网络译码算法,该算法采用LLR作为输入。与传统的串行抵消列表译码算法相比,该卷积神经网络在低信噪比条件下表现出略胜一筹的性能。
然而以上译码方案都存在相同的问题,即码长不变传输码率变化的情况下,神经网络都需要重新训练,同时以上方案只用到了LLR信息译码,把同样重要的冻结比特位信息丢弃。基于以上问题,本文提出了CNN-SENet网络架构,应用于水声信道下的极化码译码任务。该网络采用独特的双通道输入设计,能够同时接收LLR信息与冻结比特位信息,进而执行译码操作。CNN能够高效地将输入特征映射至高维空间,并巧妙地融入了SENet通道注意力机制模块。这一机制能够为不同通道的数据分配不同的权重,从而精准地关注到对最终结果产生重要影响的通道。得益于LLR信息与冻结比特位信息的综合输入,CNN-SENet网络具备了实现码长固定而码率可任意调整的译码能力。
1 极化码原理 1.1 极化码编码极化码是一种基于信道极化原理设计的(N,K)线性分组码,其中N代表码字的长度,K代表信息位的数量。该编码机制通过信道的联合与分裂,使得N个子信道的容量出现显著的两极分化现象。在这一过程中,选择K个容量最大的子信道作为信息位A,用于传输用户的有效信息
$ x_{\text{1}}^{{N}} = u_1^N \times {{\boldsymbol{G}}_N}。$ | (1) |
式中:
而对于编码生成矩阵
$ {{\boldsymbol{G}}_N} = {F^{ \otimes {\text{n}}}},n = {\log _2}N $ | (2) |
$ F = \left[ {\begin{array}{*{20}{c}} 1&0 \\ 1&1 \end{array}} \right] $ | (3) |
式中:
SC译码器的工作机制是,首先接收序列
SC译码是一种按位进行的译码过程。在这个过程中,冻结比特位
$ L_N^{({{i}})}(y_1^N,\hat u_1^{i - 1}) \cong \frac{{W_N^{(i)}(y_1^N,\hat u_1^{i - 1}|0)}}{{W_N^{(i)}(y_1^N,\hat u_1^{i - 1}|1)}} 。$ | (4) |
式中:
译码判决式为:
$ {\hat{u}}_{i}=\left\{\begin{aligned} &0,&{L}_{N}^{(i)}({y}_{1}^{N},{\hat{u}}_{1}^{i-1})\geqslant 1,\\ &1,& 其他 。\end{aligned}\right. $ | (5) |
式中:
系统模型如图1所示。该系统由发射单元、水声信道、接收单元3个部分构成。在发射单元,用户首先将待发送的信源信息
![]() |
图 1 系统模型 Fig. 1 System model |
目前,在水声信道建模领域,多途传播模型被广泛采用,此模型依据射线声学理论搭建。通常,水声通信系统为:
$ y({\textit{z}}) = I({\textit{z}}) \cdot x({\textit{z}}) + n({\textit{z}}) 。$ | (6) |
式中:
在相干时间范围内,水声信道可被视为可确定的线性时不变滤波器,或者是可确定的时空滤波器来加以处理[12]。由此,水声信道传输函数可表示为:
$ I({\textit{z}}) = \sum\limits_{i = p}^p {{A_i} \times {{\textit{z}}^{\left\lfloor {{{ - {\tau _i}} \mathord{\left/ {\vphantom {{ - {\tau _i}} T}} \right. } \mathrm{T}}} \right\rfloor }}}。$ | (7) |
式中:p为信道在符号持续时间内的多径扩展条数;
在信道建模分析时,设定水平方向声速恒定,按深度对水平方向进行分层。信道传输函数可选用艾宇慧等[13]提出的3种典型水声信道传输函数,其仿真条件是通信带宽为5 kHz、采样率为10 kHz、每次传输的信号长度为
声速为常数的均匀介质信道(ISVG)、负声速梯度信道(NSVG)、正声速梯度信道(PSVG)分别为:
$ I({\textit{z}}) = 1 + 0.599\;971{{\textit{z}}^{ - 20}},$ | (8) |
$ { I({\textit{z}}) = 1 + 0.263\;112{{\textit{z}}^{ - 7}} + 0.151\;214{{\textit{z}}^{ - 39}} + 0.391\;599{{\textit{z}}^{ - 67}},} $ | (9) |
$ { I({\textit{z}}) = 0.734\;189 + {{\textit{z}}^{ - 13}} - 0.406\;511{{\textit{z}}^{ - 14}} - 0.295\;130{{\textit{z}}^{ - 55}}。} $ | (10) |
CNN-SENet译码器模型的结构如图2所示,该神经网络由卷积、池化、全连接、SENet与激活函数组成。该神经网络为双通道输入,用于接收LLR信息与冻结比特位信息,通道一输入为LLR信息,通道二输入为冻结比特位信息。双通道输入数据在每次经过卷积操作被映射至高维特征空间后,都会先进行一次SENet通道注意力操作,以强化关键特征并抑制非关键特征。随后,通过执行池化操作来减小参数矩阵的规模,进而降低最终连接层所需的参数数量。在经过3次卷积、SENet以及池化处理后,再进行三次全连接与激活操作来降维和特征融合。最后,对数据进行Sigmoid函数处理,得到译码结果。
![]() |
图 2 CNN-SENet译码器模型 Fig. 2 CNN-SENet decoder model |
其中,SENet模块是J.Hu等[14]于2020年提出的一种通道注意力模块。该模块的核心设计理念在于其能够根据网络的损失函数动态地学习和调整特征权重。它能够识别并强化那些对译码结果具有显著效果的通道特征,同时削弱或忽略那些贡献较小甚至可能产生负面影响的通道特征,从而显著提升模型的译码性能。
SENet模块算法流程如图2右边扩展所示SENet模块会先对特征数据
$ {\beta _c} = \frac{1}{{H \times W}}\sum\nolimits_{i = 1}^H {\sum\nolimits_{j = 1}^W {{x_{i,j,c}}} } 。$ | (11) |
式中:
随后,该模块会对数据进行一系列的处理流程:先是进行全连接操作
$ {s_c} = \sigma ({F_2}(\delta ({F_1}({\beta _c})))) $ | (12) |
式中:
最终,把这些权重和原始输入特征相互对应相乘,进而生成加强了有用特征的特征图
$ {P_{i,j,c}} = {s_c} \cdot {x_{i,j,c}} 。$ | (13) |
表1为本文在模型设计与实现过程中所使用的激活函数表达式。
![]() |
表 1 激活函数 Tab.1 Activation functions |
本文采用均方误差作为损失函数,其定义为:
$ L_{\mathrm{MSE}}=\frac{1}{{N}}\sum\limits_{i=0}^{{N}-1}(u_A-\hat{u}_A)^2 。$ | (14) |
式中:N为译码数量;
本节对CNN-SENet译码器进行参数确定。本文针对N=8(即码长为8)可变码率的极化码进行译码,对于CNN-SENet译码器模型参数定义,如表2所示。
![]() |
表 2 CNN-SENet译码器模型参数 Tab.2 CNN-SENet decoder model parameters |
从表可知CNN-SENet的输入为8位双通道,通道一为8位长LLR,通道二为冻结比特信息,输出为8位译码信息。统计误码率时,只统计信息比特位置的正误。在模型参数方面,CNN-SENet译码器模型使用adam优化器进行
为了评估CNN-SENet译码器在水声信道环境中的效能,对其进行仿真测试,并将测试结果与经典的传统SC译码算法进行对比分析。对比在(8,4)和(8,5)这2种常见的极化码码率下的性能表现。
数据集样本包含(8,4)和(8,5)全部码字情况,总共48个码字。在3种水声信道的条件下,将信噪比从−1 dB逐步增加到2.5 dB,间隔为0.5 dB,针对每个信噪比的取值,在相应的信道中分别生成256次数据,共
图3所示为在ISVG、NSVG和PSVG信道条件下,各种码率的极化码译码器的仿真性能对比。通过仿真结果,可以得出以下结论:在3种信道下,信噪比为−1~2.5 dB时,极化码在(8,4)码率下,CNN-SENet译码器性能接近于SC译码;极化码在(8,5)码率下,采用CNN-SENet译码器相较于SC译码器,整体性能更优。
![]() |
图 3 三种信道下的性能仿真图 Fig. 3 Performance simulation diagram of three channels |
其中,对于码率为(8,4)的极化码,信噪比为−1~2.5 dB时,在PSVG与ISVG信道下,CNN-SENet译码器性能接近于SC译码;在NSVG信道下,CNN-SENet译码器性能略高于SC译码,当BER为0.1时,可以多提供大约0.75 dB的编码增益;对于码率为(8,5)的极化码,信噪比为−1~2.5 dB时,CNN-SENet译码器性能整体都优于SC译码:在ISVG与NSVG信道下,当BER为0.1时,可以多提供大约1dB的编码增益;在PSVG信道下可以多提供大约0.5 dB的编码增益。
4 结 语本文提出一种基于CNN-SENet的译码器,该神经网络译码器可以译码任意码率的极化码,并在水声信道下进行仿真。仿真结果表明,在−1~2.5 dB信噪比范围,在3种信道下,对于(8,4)码率的极化码,CNN-SENet译码与SC译码性能相近;对于(8,5)码率的极化码,CNN-SENet译码性能整体高于SC译码,在BER为0.1时,平均可以多提供约0.8 dB的编码增益。通过本次系统建模与仿真分析,在一定程度上解决了冻结比特位得不到充分利用的问题,为基于深度学习的极化码译码方案提供了一种新的思路。
[1] |
翟玉爽, 冯海泓, 李记龙. 极化码在OFDM水声通信中的应用研究[J]. 声学技术, 2021, 40(1): 29-38. ZHAI Y S, FENG H H, LI J L. Research on the application of polar code in OFDM underwater acoustic communication[J]. Acoustic Technology, 2021, 40(1): 29-38. |
[2] |
ARIKAN E. Channel polarization: A method for constructing capacity-achieving codes for symmetric binary-input memoryless channels[J]. IEEE Transactions on information Theory, 2009, 55(7): 3051-3073. DOI:10.1109/TIT.2009.2021379 |
[3] |
3GPP. Multiplexing and Channel Coding: 3GPP 38.212 V. 15.1. 0 [S]. 2018.
|
[4] |
ZHANG Y X, LIU A J, PAN X F, et al. A modified belief propagation polar decoder[J]. IEEE Communications Letters, 2014, 18(7): 1091-1094. DOI:10.1109/LCOMM.2014.2316365 |
[5] |
邱开虎, 黄志亮, 张莜燕, 等. 3×3核矩阵极化码的BP译码算法[J]. 无线电通信技术, 2024, 50(1): 168-172. QIU K H, HUANG Z L, ZHANG Y Y, et al. BP decoding algorithm for 3×3-core matrix polarization code[J]. Radio Communication Technology, 2024, 50(1): 168-172. |
[6] |
ZHOU L X, CHAN S, ZHANG M X, et al. A fast computing decoder for polar codes with a neural network[J]. ICT Express, 2023, 9(6): 1001-1006. DOI:10.1016/j.icte.2023.02.005 |
[7] |
ZHU H F, CAO Z W, ZHAO Y P, et al. Learning to denoise and decode: a novel residual neural network decoder for polar codes[J]. IEEE Transactions on Vehicular Technology, 2020, 69(8): 8725-8738. DOI:10.1109/TVT.2020.3000345 |
[8] |
FANG J, BI M, XIAO S, et al. Neural successive cancellation polar decoder with tanh-based modified LLR over FSO turbulence channel[J]. IEEE Photonics Journal, 2020, 12(6): 1−10.
|
[9] |
CAMMERER S, GRUBER T, HOYDIS J, et al. Scaling deep learning-based decoding of Polar codes via partitioning[C]//Proceedings of GLOBECOM 2017-2017 IEEE Global Communications Conference. Piscataway: IEEE Press, 2017.
|
[10] |
WANG X M, LI J, CHANG H, HE J L. Optimization design of polar-LDPC concatenated scheme based on deep learning[J]. Computers & Electrical Engineering, 2020, 84: 106636. |
[11] |
郭锐, 冉凡春. 基于卷积神经网络的极化码译码算法[J]. 电信科学, 2020, 36(6): 119-124. GUO R, RAN F C. Polar code decoding algorithm based on convolutional neural network[J]. Telecommunications Science, 2020, 36(6): 119-124. |
[12] |
邢莉娟, 李卓, 张泽栋. 水声通信中极化码的应用研究[J]. 电子学报, 2022, 50(9): 2096-2101. XING L J, LI Z, ZHANG Z D. Research on the application of polar codes in underwater acoustic communication[J]. Acta Electronica Sinica, 2022, 50(9): 2096-2101. |
[13] |
艾宇慧, 惠俊英, 高静. 水声信道相关均衡器仿真研究[J]. 声学学报, 1999, (6): 589−597. AI Y H, HUI J Y, GAO J. Simulation study on acoustic channel related equalizer[J]. Journal of Acoustics, 1999, (6): 589−597 |
[14] |
HU J, SHEN L, ALBANIE S, et al. Squeeze-and-excitation networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2020, 42(8): 2011-2023. DOI:10.1109/TPAMI.2019.2913372 |