CN111697975A - 基于全连接神经网络的极化码连续删除译码优化算法 - Google Patents
基于全连接神经网络的极化码连续删除译码优化算法 Download PDFInfo
- Publication number
- CN111697975A CN111697975A CN202010483215.9A CN202010483215A CN111697975A CN 111697975 A CN111697975 A CN 111697975A CN 202010483215 A CN202010483215 A CN 202010483215A CN 111697975 A CN111697975 A CN 111697975A
- Authority
- CN
- China
- Prior art keywords
- node
- decoding
- algorithm
- value
- hard decision
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明公开了一种基于全连接神经网络的极化码连续删除译码优化算法,解决了现有技术中译码延迟较长的问题。本发明所采用的技术方案是:根据信道极化理论计算不同子信道的可靠性,通过调整参数的不同取值,将SC的译码树分为顶部和底部两块,处于顶部区域的节点仍采用SC算法进行译码,而底部区域的节点则分为若干部分,每部分均使用NN译码,剪掉译码树上均为固定位的叶子节点所在的子二叉树,从而减少深度学习译码器的数量加快了整体的译码速度。本发明的优化算法不仅具有和原串行抵消算法相同的译码性能,而且降低了极化码串行抵消深度学习译码的时间复杂度。
Description
技术领域
本发明属于通信技术领域,涉及一种基于全连接神经网络的极化码连续删除译码优化算法。
背景技术
极化码(Polar Codes)是理论上能够证明可达信道容量限的一种编码技术。与现有的低密度奇偶校验码(Low Density Parity Check Code,LDPC)和Turbo码相比,极化码具有规则的编码结构、明确的构造方法以及低复杂的编译码算法。极化码的基本译码算法主要有:串行抵消(Successive Cancellation,SC)译码算法和置信度传播(BeliefPropagation,BP)译码算法。尽管SC算法具有较低的译码复杂度,但其串行逐位译码机制限制了译码的吞吐量、产生较高的译码延迟,并且极化码在中短码长下的性能也无法满足5G通信要求。为了解决上述问题,有文献提出了针对SC算法的优化算法----SC列表(SC list,SCL)译码算法,在列表宽度较大时极化码的性能可以逼近最大似然译码的性能;而在带循环冗余检测(Cyclic Redundancy Check,CRC)的SCL译码算法下,极化码的性能甚至可达某些优化后的LDPC码的性能,这也是将其选作5G eMBB场景中控制信道传输标准的重要原因。然而,这些算法都是基于SC算法的,其串行输出的特性在低时延高吞吐的应用中仍有待进一步改进。而用于极化码的另一经典译码算法BP算法虽能够并行译码,但无法以较少的迭代次数达到理想的纠错性能。
随着神经网络发展的又一高潮的到来,深度学习及其应用得到了前所未有的关注。目前,深度学习在计算机视觉、自然语言处理、自动驾驶等众多领域都有非常出色的表现,其中数据分类是深度学习的一种典型应用,而通信领域中的信道译码可看做是一种分类问题,这就为通信领域设计高速低时延的信道译码器提供了新的研究方向。
目前在极化码领域所提出的译码设计方法主要包括针对BP算法的神经网络译码和基于SC算法的神经网络学习译码两种。前者又分为两种思路:(1)用一个全连接神经网络彻底代替传统的BP算法。这种思路下的结构化码在码长较短时可逼近最优译码性能,然而码长较大时会遭遇“维度灾难”问题,即训练复杂度随码长指数增加、需要更多的训练集以及对未知码字具有较差的泛化能等。针对该问题,本领域技术人员给出思路(2),即在给定编码函数和信道模型下,并不需要像其他领域那样提供大量标记好的训练数据,而是利用现有的BP译码算法设计了一种能够从有限码字的训练学习中推断出未见过码字的学习译码方案。该方案是把BP译码算法的每一轮迭代展开成神经网络的一个隐含层,而因子图上的权值则分别对应网络结构中的每一条连接。仿真结果表明这种方案可以提高迭代算法的收敛速度、减少迭代次数,获得传统BP算法的译码性能。但是该方案学习过程中涉及到大量的权值,需要分配较多的内存。同时,需要执行很多的乘法操作对其进行更新,导致计算复杂度增加,不利于硬件实施。为此,本领域技术人员分别提出了量化、权值共享等思想对思路(2)进行了改进,另提出了用循环神经网络代替全连接网络结构的方法解决上述问题,均获得了较好的效果。
尽管针对BP算法的神经网络译码设计方法取得了很大的进步,但是要获得和原始BP译码算法相当的译码性能,仍需要较高的迭代次数从而降低了译码速度。
发明内容
本发明的目的是提供一种基于全连接神经网络的极化码连续删除译码优化算法,解决了现有技术中译码延迟较长的问题,针对该问题,本发明设计了节点优化算法,根据该算法可以剪掉不需深度学习译码的子二叉树,从而提高了译码速度,降低了译码延迟。
本发明所采用的技术方案是:
步骤一:随机生成信息位序列,根据固定位下标值在信息序列中插入固定值,从二叉树叶子节点向上到根节点,利用SC算法逐一计算并保存每个节点的硬判决序列βv;再由根节点向下利用每个节点的硬判决值计算其软信息αv值;获得了二叉树上每个节点的一组软信息值和对应的一组硬判决序列;
步骤二:利用步骤一得到两组多样本训练数据,其中软信息αv值作为网络输入;隐含层采用relu()激活函数增强层与层之间的非线性关系,而输出层采用Sigmoid()激活函数将网络输出值归一化到区间(0,1)内,表示相应硬判决值的概率;
步骤三:顶部区域的节点执行SC算法,并为执行NN译码的底部区域的父节点提供软信息序列值αv,加载训练好的深度学习网络模型预测得到相应叶子节点的比特估值αv,再利用SC算法计算该NN译码器向顶部区域父节点提供的硬判决序列βv,上述步骤迭代执行直到二叉树上根节点得到N位的硬判决序列βv;
步骤四:顶部区域的节点进行的三种操作计算左子节点的软信息序列、右子节点软信息序列值和父节点硬判决序列值,对应设置大小为3的一维指示数组a用于说明当前节点应该执行的操作;当下标为0的叶子节点开始至下标为2m-1(m≥0)的连续2m个节点为固定节点位时,二叉树上对应节点的从深度为m处开始的子二叉树不加载NN译码模型。
步骤二中,所述输入层节的点数取决于二叉树上开始划入底部区域阶段,即若该阶段为j,则输入层节点数为2j,隐含层数为n(1≤n),所述隐含层的节点数根据实际码长结合不同的仿真结果并兼顾复杂度来设定
本发明根据信道极化理论计算不同子信道的可靠性,通过调整参数的不同取值,剪掉译码树上均为固定位的叶子节点所在的子二叉树,从而减少深度学习译码器的数量加快了整体的译码速度。不仅具有和原串行抵消算法相同的译码性能,而且降低了极化码串行抵消深度学习译码的时间复杂度。
附图说明
图1为(8,4)极化码SC译码二叉树表示图;
图2为DNN的网络结构;
图3为码长16的极化码深度学习下SC译码优化图;
图4为码长8的极化码基于NN的SC译码树结构图;
图5为不同码长极化码在SC、BP、PNN、NSC、优化后NSC算法下的性能图;
图6为不同码长极化码在SC、BP、PNN、NSC、优化后NSC算法下的译码延迟图。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
本发明的基本策略是将SC的译码树分为顶部和底部两块,处于顶部区域的节点仍采用SC算法进行译码,而底部区域的节点则分为若干部分,每部分均使用NN译码。对于码长为N的极化码,其SC译码过程可用一颗完全二叉树表示,自上而下分为(1+logN)个阶段,如图3所示。若将阶段3和阶段2看做顶部区域、阶段1和阶段0划为底部区域。顶部区域节点的译码过程同原SC译码算法,图3中NN1译码器将A节点提供的软信息αvl作为训练模型的输入,并将模型的输出硬判决值βvl返回给父节点A,A节点利用公式(3)计算NN2的输入,其他节点和NN译码器的执行过程类似上述过程逐一执行。
从获取样本数据到训练模型再到译码结束共分为下列几个步骤:
步骤一、获取训练数据:
随机生成信息位序列,根据固定位下标值在信息序列中插入固定值(一般为0),从二叉树叶子节点向上到根节点,利用SC算法的公式(4)逐一计算并保存每个节点的硬判决序列βv;再由根节点向下利用每个节点的硬判决值计算其软信息αv值。通过该算法获得了二叉树上每个节点的一组软信息值和对应的一组硬判决序列。
步骤二、利用样本数据进行深度学习模型训练:
利用上述算法得到两组多样本训练数据,其中软信息值作为网络输入,输入层节点数取决于二叉树上从哪个阶段开始划入底部区域,即若该阶段为j,则输入层节点数为2j。隐含层数为n(1≤n),隐含层的节点数根据实际码长结合不同的仿真结果并兼顾复杂度来设定。隐含层采用relu()激活函数来增强层与层之间的非线性关系,而输出层采用Sigmoid()激活函数将网络输出值归一化到区间(0,1)内,表示相应硬判决值的概率。考虑到函数的凹凸性,仿真过程使用对数损失函数,以避免梯度下降优化时出现局部震荡。
步骤三、将节点分为两部分,分别执行SC译码和执行NN译码:
顶部区域的节点执行SC算法,并为执行NN译码的底部区域的父节点提供软信息序列值αv,加载训练好的深度学习网络模型预测得到相应叶子节点的比特估值αv,再利用SC算法计算该NN译码器向顶部区域父节点提供的硬判决序列βv,上述步骤迭代执行直到二叉树上根节点得到N位的硬判决序列βv。
步骤四、对执行执行NN译码的节点进行优化:
由于顶部区域的节点进行的操作主要涉及三种:计算左子节点的软信息序列、右子节点软信息序列值和父节点硬判决序列值,因而可设置大小为3的一维指示数组a用于说明当前节点应该执行的操作。上述算法同原SC算法都是逐位译码,考虑到信道极化后传输固定位的信道下标都集中在低位,因此在算法2中可以对二叉树上需要计算的节点进行优化:若下标为0的叶子节点开始至下标为2m-1(m≥0)的连续2m个节点均为固定节点位,则二叉树上对应这些节点的从深度为m处开始的子二叉树是不需加载NN译码模型的。如下图5所示,在码长为16的极化码中,序号为0--3的子信道均为固定位信道,因此虚线框起的子二叉树在整体译码过程中可直接剪掉。上述算法中,称二叉树上所有后继叶子节点均为固定节点的为R_0节点。
本发明主要是针对极化码的译码性能进行的设计。极化码具有规则的编码结构,原始译码算法SC是低复杂的,且在理论上可以证明在码长趋向无穷大的时候能够达到信道容量限。因而,极化码被选作5G eMBB场景下的控制传输标准。但是,5G移动通信中对信道传输技术的要求是超高可靠、低时延且是短码传输,极化码利用原始的SC算法显然在短码下是无法满足要求的。
实施例
分别选取(128,64)和(256,128)的极化码,利用算法,在二元AWGN信道下采集训练数据和验证数据,各包括两组5000000条样本:软信息序列和硬判决序列。训练时将80%的样本作为训练数据,20%作为验证集。训练集分成若干组,每组10000条样本,共训练4000组,迭代2000次。
(1)性能比较:根据仿真结果可知参数stage_index的值对极化码在NSC以及PNN译码下的性能和延迟是有影响的。随着参数stage_index的增大,性能提高延迟降低,但是对码长为128的极化码,当stage_index大于3时,对性能和延迟的影响都微乎其微。因此对(128,64)的极化码进行仿真时设定参数stage_index为4,需要27/24即8个NN译码器;而在(256.128)的极化码中,参数stage_index设定为4,需要16个NN译码器。对这两种码均采用包含三层隐含层的DNN网络,即T=3,网络结构为{Linput,L1,L2,L3,Loutput}={16,512,256,128,16}。图5分别给出了这两种极化码在不同译码算法下的性能曲线图,说明本文优化后的算法与优化前的算法、PNN、原SC算法以及BP译码算法性能相当。
(2)复杂度比较:码长为N的极化码其BP算法在迭代次数为T时的时间复杂度为2TlogN,而SC算法下的时间复杂度为2N,PNN算法的复杂度则减小到(NP:每个分区的大小;NH:隐藏层数),而原NSC算法时间复杂度近似为(stage_index<logN,T:隐藏层数)。其中表示个NN译码器在隐藏层为T的神经网络上的时间复杂度,而表示在原SC译码树上顶部区域节点在译码过程中的时间复杂度。而本文优化后的NSC算法所需的NN译码器的数量与原NSC算法相比随stage_index值的不同而减少,因此最终的时间复杂度小于因此在AWGN信道下,利用高斯近似完成极化码的构造后,可知(128,64)的极化码固定位下标为:0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,32,33,34,35,36,37,38,39,40,41,42,43,44,48,49,50,52,56,64,65,66,67,68,69,70,72,73,74,76,80,81,82,84,96。根据本文优化算法,当stage_index=4时,原NSC算法需8个NN译码器,而优化后的NSC只需7个;而当stage_index=3时,原NSC算法需16个NN译码器,而优化后的NSC需14个NN译码器,因此,优化后的算法可减少原NSC算法的时间复杂度,几种算法在stage_index取不同值时间复杂度的比较结果如图6所示。
本发明的内容不限于实施例所列举,本领域普通技术人员通过阅读本发明说明书而对本发明技术方案采取的任何等效的变换,均为本发明的权利要求所涵盖。
Claims (2)
1.一种基于全连接神经网络的极化码连续删除译码优化算法,其特征在于:
步骤一:随机生成信息位序列,根据固定位下标值在信息序列中插入固定值,从二叉树叶子节点向上到根节点,利用SC算法逐一计算并保存每个节点的硬判决序列βv;再由根节点向下利用每个节点的硬判决值计算其软信息αv值;获得了二叉树上每个节点的一组软信息值和对应的一组硬判决序列;
步骤二:利用步骤一得到两组多样本训练数据,其中软信息αv值作为网络输入;隐含层采用relu()激活函数增强层与层之间的非线性关系,而输出层采用Sigmoid()激活函数将网络输出值归一化到区间(0,1)内,表示相应硬判决值的概率;
步骤三:顶部区域的节点执行SC算法,并为执行NN译码的底部区域的父节点提供软信息序列值αv,加载训练好的深度学习网络模型预测得到相应叶子节点的比特估值αv,再利用SC算法计算该NN译码器向顶部区域父节点提供的硬判决序列βv,上述步骤迭代执行直到二叉树上根节点得到N位的硬判决序列βv;
步骤四:顶部区域的节点进行的三种操作计算左子节点的软信息序列、右子节点软信息序列值和父节点硬判决序列值,对应设置大小为3的一维指示数组a用于说明当前节点应该执行的操作;当下标为0的叶子节点开始至下标为2m-1(m≥0)的连续2m个节点为固定节点位时,二叉树上对应节点的从深度为m处开始的子二叉树不加载NN译码模型。
2.根据权利要求1所述的一种基于全连接神经网络的极化码连续删除译码优化算法,其特征在于:
步骤二中,所述输入层节的点数取决于二叉树上开始划入底部区域阶段,即若该阶段为j,则输入层节点数为2j,隐含层数为n(1≤n),所述隐含层的节点数根据实际码长结合不同的仿真结果并兼顾复杂度来设定。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010483215.9A CN111697975A (zh) | 2020-06-01 | 2020-06-01 | 基于全连接神经网络的极化码连续删除译码优化算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010483215.9A CN111697975A (zh) | 2020-06-01 | 2020-06-01 | 基于全连接神经网络的极化码连续删除译码优化算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111697975A true CN111697975A (zh) | 2020-09-22 |
Family
ID=72479076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010483215.9A Withdrawn CN111697975A (zh) | 2020-06-01 | 2020-06-01 | 基于全连接神经网络的极化码连续删除译码优化算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111697975A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130117344A1 (en) * | 2011-11-08 | 2013-05-09 | Warren GROSS | Methods and Systems for Decoding Polar Codes |
CN107241106A (zh) * | 2017-05-24 | 2017-10-10 | 东南大学 | 基于深度学习的极化码译码算法 |
CN108777584A (zh) * | 2018-07-06 | 2018-11-09 | 中国石油大学(华东) | 一种极化码译码参数的快速优化方法 |
CN110113057A (zh) * | 2019-06-12 | 2019-08-09 | 中国计量大学 | 一种利用深度学习的极化码译码器 |
-
2020
- 2020-06-01 CN CN202010483215.9A patent/CN111697975A/zh not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130117344A1 (en) * | 2011-11-08 | 2013-05-09 | Warren GROSS | Methods and Systems for Decoding Polar Codes |
CN107241106A (zh) * | 2017-05-24 | 2017-10-10 | 东南大学 | 基于深度学习的极化码译码算法 |
CN108777584A (zh) * | 2018-07-06 | 2018-11-09 | 中国石油大学(华东) | 一种极化码译码参数的快速优化方法 |
CN110113057A (zh) * | 2019-06-12 | 2019-08-09 | 中国计量大学 | 一种利用深度学习的极化码译码器 |
Non-Patent Citations (1)
Title |
---|
李桂萍等: "基于深度学习的极化码串行抵消译码优化算法", 《科学技术与工程》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110233628B (zh) | 极化码的自适应置信传播列表译码方法 | |
CN111294058B (zh) | 一种信道编码和纠错译码方法、设备以及存储介质 | |
CN109361404B (zh) | 一种基于半监督深度学习网络的ldpc译码系统及译码方法 | |
CN109450459B (zh) | 一种基于深度学习的极化码fnsc译码器 | |
CN110661533B (zh) | 优化译码器存储极化码译码性能的方法 | |
CN104393877B (zh) | 基于加权的非规则ldpc码线性规划译码方法 | |
CN111835364B (zh) | 一种极化码的低复杂度神经bp译码方法 | |
CN108833052B (zh) | 信道极化译码路径度量值排序方法 | |
CN114448446A (zh) | 水下光通信ldpc编码处理方法、装置及计算机可读存储介质 | |
CN112332864A (zh) | 一种自适应有序移动剪枝列表的极化码译码方法及系统 | |
CN111130567B (zh) | 添加噪声扰动和比特翻转的极化码置信传播列表译码方法 | |
Arli et al. | A survey on belief propagation decoding of polar codes | |
Teng et al. | Convolutional neural network-aided bit-flipping for belief propagation decoding of polar codes | |
CN113131950B (zh) | 一种极化码的自适应连续消除优先译码方法 | |
CN108809330B (zh) | 一种针对NAND-Flash存储介质的LDPC码译码方法 | |
CN112929035B (zh) | 一种非二进制极化码的编码与译码方法 | |
Habib et al. | Learning to decode: Reinforcement learning for decoding of sparse graph-based channel codes | |
CN113556133A (zh) | 针对CRC-Polar级联码的混合译码方法及装置 | |
WO2021073338A1 (zh) | 译码方法和译码器 | |
CN116614142A (zh) | 一种基于bpl译码和osd译码的联合译码方法 | |
Miloslavskaya et al. | Design of compactly specified polar codes with dynamic frozen bits based on reinforcement learning | |
CN113556134B (zh) | 适用于简化串行抵消译码的极化码删余编码器及编码方法 | |
CN111697975A (zh) | 基于全连接神经网络的极化码连续删除译码优化算法 | |
CN113872610B (zh) | 一种ldpc码神经网络训练、译码方法及其系统 | |
CN113014271B (zh) | 一种缩小翻转集的极化码bp译码方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200922 |
|
WW01 | Invention patent application withdrawn after publication |