CN107241106B - 基于深度学习的极化码译码算法 - Google Patents
基于深度学习的极化码译码算法 Download PDFInfo
- Publication number
- CN107241106B CN107241106B CN201710371218.1A CN201710371218A CN107241106B CN 107241106 B CN107241106 B CN 107241106B CN 201710371218 A CN201710371218 A CN 201710371218A CN 107241106 B CN107241106 B CN 107241106B
- Authority
- CN
- China
- Prior art keywords
- algorithm
- neural network
- decoding
- decoder
- deep neural
- 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.)
- Active
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/11—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 using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1191—Codes on graphs other than LDPC codes
-
- 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
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明公开了一种基于深度学习的极化码译码算法,提出了多维度缩放Min‑sum置信度传播(Beliefpropagation)译码算法,用以加快译码算法收敛速度;然后根据BP算法的因子图与深度神经网络的相似性,实现了基于深度神经网络的极化码译码器,利用深度学习技术训练深度神经网络译码器,相比原始BP译码算法减少了近90%的译码迭代次数,同时取得了更好的译码性能;最后本发明给出了深度神经网络极化码译码器基本运算模块的硬件实现,并且利用硬件折叠技术减少了50%的硬件消耗。
Description
技术领域
本发明属于深度神经网络和极化码译码领域,尤其涉及一种基于深度学习的极化码译码算法。
背景技术
极化码(Polar code)是由ErdalArikan在2009年一篇论文“Channelpolarization:A method for constructing capacity-achieving codes for symmetricbinary-input memoryless channels”中提出的一种可以趋于香农极限的编码方式。信道极化现象是指当信道数量趋于无穷大时,一部分信道趋于完美,而一部分信道趋于纯噪声信道。基于此信道极化现象,选取组合信道中比较好的信道,构造极化码。极化码是第五代(5G)移动通信***中十分重要的技术之一。
最常见的两种极化码译码算法是连续消除(SC)算法和置信度传播(BP)算法。其中,SC译码计算复杂度低,并且有良好的纠错性能,但是由于SC算法的串行运算结构,它存在较长的译码延迟。
和SC译码相比,BP译码,由于其并行结构,在长码情况下译码延迟远小于SC译码;但是由于BP译码需要进行多次迭代处理,因此BP译码的计算复杂度很高,而且译码性能与SC有一定差距。为了降低计算复杂度,早停止算法和Min-sum算法被引入BP译码,但是并没有加速BP译码的收敛。人们还引入了深度学习(Deeplearning)技术以及深度神经网络(DNN)来取得更好的译码性能,但是神经网络复杂度随着码长呈指数级增长。因此如何在复杂度和译码性能上取得较好的折衷是基于深度学习的BP译码算法研究的重点之一。
发明内容
发明目的:针对以上问题,本发明提出一种基于深度学习的极化码译码算法,克服现有极化码BP译码算法在低信噪比下收敛速度慢的问题,利用深度学习技术达到用较少的迭代次数取得更优译码性能的目标,降低译码复杂度和译码延时。
技术方案:为实现本发明的目的,本发明所采用的技术方案是:一种基于深度学习的极化码译码算法,具体包括以下步骤:
(1)基于缩放Min-sum的BP算法,提出改进的多维缩放Min-sum的BP算法;
(2)根据极化码BP译码因子图与神经网络结构的相似性,展开极化码BP译码因子图构成深度神经网络译码器;
(3)生成全零码字,经过AWGN信道传输后,利用深度学习技术中的后向传播和Mini-batch随机梯度下降算法训练深度神经网络译码器;
(4)基于原始BP译码器给出改进型BP译码器的硬件架构,利用硬件折叠技术减少硬件消耗。
步骤(1)中,多维缩放Min-sum的BP算法为:
步骤(2)中,利用深度神经网络与BP因子图的相似性,展开极化码因子图,选择固定迭代次数,最后输出使用Sigmoid激活函数,构成深度神经网络极化码译码器。
步骤(3)中,利用深度学习中后向传播和Mini-batch随机梯度下降算法训练神经网络,获得多维缩放Min-sum算法最优的缩放参数的组合,经过加性高斯白噪声信道的全零码字,引入学习速率为0.001的Adam算法,自适应调节学习速率,加快深度神经网络极化码译码器的训练收敛。
步骤(4)中,利用硬件折叠技术,选择合适的折叠集合,时分复用同一模块,折叠之后的基本计算模块包括1个加法器、1个g函数模块和1个乘法器。
有益效果:本发明与原有极化码BP译码器相比,其显著优点是:大大加快译码算法收敛速度,减少了达到收敛效果所需的迭代次数,5次迭代的深度神经网络极化码译码器的性能超过了原始极化码BP译码器50次的性能,收敛速度大约10倍;此外,经过硬件折叠技术处理之后的硬件消耗相比原有深度神经网络译码器节省了约50%。
附图说明
图1是8比特极化码BP译码因子图;
图2是8比特极化码神经网络译码器一次完整的BP译码迭代过程图;
图3是64比特T次迭代的深度神经网络极化码译码器结构图;
图4是极化码译码器中带有多维度缩放功能的基本运算模块;
图5是经过硬件折叠后的极化码译码器基本运算模块;
图6是多维度缩放Min-sum运算模块;
图7是深度神经网络极化码译码器与传统极化码BP译码器的性能对比图。
具体实施方式
下面结合附图和实施例对本发明的技术方案作进一步的说明。
如图1所示是极化码BP译码的迭代因子图,极化码的BP译码是在因子图上迭代向左向右传播的对数似然比信息。以码长N=8的极化码为例,该因子图中最左端对应比特信息为u,最右端对应接受的码字为x。
其中,A表示信息位集合,n=log2N。
传统极化码BP译码初始化后按照以下公式进行迭代:
其中,g(x,y)=sign(x)sign(y)min(|x|,|y|),sign为符号函数。
迭代完毕之后,对某一位码字若不是信息位则译码为0,若是信息位则按照下式判决:
基于已有的缩放Min-sum(Scaled min-sum)的BP算法,提出改进的多维缩放Min-sum(Multiple scaled min-sum)BP算法,每次迭代对函数g采用不同的缩放系数,可以改善译码效果。
利用极化码BP译码因子图与神经网络的相似性,展开极化码BP译码因子图构成深度神经网络译码器。如图2所示是极化码神经网络译码器一次完整的BP译码迭代过程,一次完整的8位极化码BP迭代对应神经网络,其输出经过Sigmoid激活函数。对于一个64比特T次迭代的深度神经网络极化码BP译码器,其结构可以完整地由图3表示。
生成一定数量的加噪声全零码字,损失函数(Loss function)使用如下的交叉熵(Crossentropy)函数来度量译码效果好坏:
利用深度学习中后向传播(Back propagation)和Mini-batch随机梯度下降(Mini-batch stochastic gradient descent)算法训练神经网络,获得多维缩放Min-sum算法最优的缩放参数和的组合θ={α,β}。只需要经过加性高斯白噪声(AWGN)信道的全零码字,极大地减少了训练复杂度。通过引入学习速率为0.001的Adam算法,可以自适应调节学习速率,加快深度神经网络极化码译码器的训练收敛。
基于原始BP译码器给出改进型BP译码器的硬件架构,深度神经网络译码器中的基本计算模块可以表示为图4,其中,s模块如图6所示是带有缩放功能的g函数。基本计算模块由2个加法器和2个g函数模块和2个乘法器构成。
利用硬件折叠技术,选择合适的折叠集合,时分复用同一模块,仅需1个加法器和1个g函数模块和1个乘法器,折叠之后的基本计算模块可以表示为图5,降低了极化码BP译码器中基本计算模块中近50%的硬件消耗。
如图7所示,深度神经网络极化码译码器与传统极化码BP译码器的性能对比,可以看出大大加快译码算法收敛速度,减少了达到收敛效果所需的迭代次数,5次迭代的深度神经网络极化码译码器的性能超过了原始极化码BP译码器50次的性能,收敛速度大约10倍。
Claims (2)
1.一种基于深度学习的极化码译码算法,其特征在于:具体包括以下步骤:
(1)基于缩放Min-sum的BP算法,提出改进的多维缩放Min-sum的BP算法;
其中,多维缩放Min-sum的BP算法为:
(2)根据极化码BP译码因子图与神经网络结构的相似性,展开极化码BP译码因子图,选择固定迭代次数,输出使用Sigmoid激活函数,构成深度神经网络译码器;
(3)生成全零码字,经过AWGN信道传输后,利用深度学习技术中的后向传播和Mini-batch随机梯度下降算法训练深度神经网络译码器,获得多维缩放Min-sum算法最优的缩放参数的组合,经过加性高斯白噪声信道的全零码字,引入学习速率为0.001的Adam算法,自适应调节学习速率,加快深度神经网络极化码译码器的训练收敛;
(4)基于原始BP译码器给出改进型BP译码器的硬件架构,利用硬件折叠技术减少硬件消耗。
2.根据权利要求1所述的基于深度学习的极化码译码算法,其特征在于:所述步骤(4)中,利用硬件折叠技术,选择合适的折叠集合,时分复用同一模块,折叠之后的基本计算模块包括1个加法器、1个g函数模块和1个乘法器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710371218.1A CN107241106B (zh) | 2017-05-24 | 2017-05-24 | 基于深度学习的极化码译码算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710371218.1A CN107241106B (zh) | 2017-05-24 | 2017-05-24 | 基于深度学习的极化码译码算法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107241106A CN107241106A (zh) | 2017-10-10 |
CN107241106B true CN107241106B (zh) | 2020-07-14 |
Family
ID=59985067
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710371218.1A Active CN107241106B (zh) | 2017-05-24 | 2017-05-24 | 基于深度学习的极化码译码算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107241106B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022244904A1 (ko) * | 2021-05-21 | 2022-11-24 | 엘지전자 주식회사 | 오토 인코더를 이용하는 무선 통신 시스템에서 신호를 송수신하기 위한 방법 및 이를 위한 장치 |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107659318B (zh) * | 2017-11-07 | 2021-05-18 | 东南大学 | 一种自适应的极化码译码方法 |
CN108023679B (zh) * | 2017-12-07 | 2020-06-16 | 中国电子科技集团公司第五十四研究所 | 基于并行级联***极化码的迭代译码缩放因子优化方法 |
CN109995380B (zh) * | 2018-01-02 | 2021-08-13 | 华为技术有限公司 | 译码方法及设备 |
CN108092672B (zh) * | 2018-01-15 | 2021-03-19 | 中国传媒大学 | 一种基于折叠调度的bp译码方法 |
CN108418588B (zh) * | 2018-01-17 | 2022-02-11 | 中国计量大学 | 低延迟极化码译码器 |
CN108199807B (zh) * | 2018-01-19 | 2020-06-16 | 电子科技大学 | 一种极化码可靠性估计方法 |
CN108449091B (zh) * | 2018-03-26 | 2021-05-11 | 东南大学 | 一种基于近似计算的极化码置信传播译码方法及译码器 |
CN108540267B (zh) * | 2018-04-13 | 2020-10-02 | 北京邮电大学 | 一种基于深度学习的多用户数据信息检测方法及装置 |
CN108847848B (zh) * | 2018-06-13 | 2021-10-01 | 电子科技大学 | 一种基于信息后处理的极化码的bp译码算法 |
CN108777584A (zh) * | 2018-07-06 | 2018-11-09 | 中国石油大学(华东) | 一种极化码译码参数的快速优化方法 |
CN109728824B (zh) * | 2018-12-06 | 2023-03-28 | 杭州电子科技大学 | 一种基于深度学习的ldpc码迭代译码方法 |
CN109586730B (zh) * | 2018-12-06 | 2020-07-07 | 电子科技大学 | 一种基于智能后处理的极化码bp译码算法 |
CN109978079A (zh) * | 2019-04-10 | 2019-07-05 | 东北电力大学 | 一种改进的堆栈降噪自编码器的数据清洗方法 |
CN110719112B (zh) * | 2019-09-12 | 2023-08-29 | 天津大学 | 一种基于深度学习的参数自适应rs码译码方法 |
CN110798228A (zh) * | 2019-10-29 | 2020-02-14 | 南京宁麒智能计算芯片研究院有限公司 | 一种基于深度学习的极化码翻转译码方法及*** |
CN111313914B (zh) * | 2019-11-05 | 2021-09-28 | 北京航空航天大学 | 一种基于神经网络分类器的scl简化译码方法 |
CN111541517B (zh) * | 2020-04-17 | 2022-03-25 | 北京交通大学 | 一种列表极化码传播译码方法 |
CN111697975A (zh) * | 2020-06-01 | 2020-09-22 | 西安工业大学 | 基于全连接神经网络的极化码连续删除译码优化算法 |
CN112332863B (zh) * | 2020-10-27 | 2023-09-05 | 东方红卫星移动通信有限公司 | 低轨卫星低信噪比场景下的极化码译码算法、接收端和*** |
CN113014270B (zh) * | 2021-02-22 | 2022-08-05 | 上海大学 | 码长可配置的部分折叠极化码译码器 |
CN117914446A (zh) * | 2023-12-31 | 2024-04-19 | 杭州海宴科技有限公司 | 针对代数码的解码方法及*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103607208A (zh) * | 2013-11-25 | 2014-02-26 | 上海数字电视国家工程研究中心有限公司 | 基于归一化修正因子序列的ldpc最小和译码方法 |
CN104539296A (zh) * | 2015-01-21 | 2015-04-22 | 西安电子科技大学 | 一种基于提前终止迭代策略的极化码改进bp译码方法 |
CN105187073A (zh) * | 2015-10-13 | 2015-12-23 | 东南大学 | 一种极化码的bp译码方法及装置 |
CN105634507A (zh) * | 2015-12-30 | 2016-06-01 | 东南大学 | 极化码置信传播译码器的流水线架构 |
CN106571832A (zh) * | 2016-11-04 | 2017-04-19 | 华南理工大学 | 一种多进制ldpc码级联神经网络解码方法及装置 |
CN106571831A (zh) * | 2016-10-28 | 2017-04-19 | 华南理工大学 | 一种基于深度学习的ldpc硬判决译码方法及译码器 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9191256B2 (en) * | 2012-12-03 | 2015-11-17 | Digital PowerRadio, LLC | Systems and methods for advanced iterative decoding and channel estimation of concatenated coding systems |
CN103259545B (zh) * | 2013-04-26 | 2017-02-15 | 西安理工大学 | 基于振荡的准循环低密度奇偶校验码置信传播译码方法 |
CN103929210B (zh) * | 2014-04-25 | 2017-01-11 | 重庆邮电大学 | 一种基于遗传算法与神经网络的硬判决译码方法 |
US20150333775A1 (en) * | 2014-05-15 | 2015-11-19 | Broadcom Corporation | Frozen-Bit Selection for a Polar Code Decoder |
-
2017
- 2017-05-24 CN CN201710371218.1A patent/CN107241106B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103607208A (zh) * | 2013-11-25 | 2014-02-26 | 上海数字电视国家工程研究中心有限公司 | 基于归一化修正因子序列的ldpc最小和译码方法 |
CN104539296A (zh) * | 2015-01-21 | 2015-04-22 | 西安电子科技大学 | 一种基于提前终止迭代策略的极化码改进bp译码方法 |
CN105187073A (zh) * | 2015-10-13 | 2015-12-23 | 东南大学 | 一种极化码的bp译码方法及装置 |
CN105634507A (zh) * | 2015-12-30 | 2016-06-01 | 东南大学 | 极化码置信传播译码器的流水线架构 |
CN106571831A (zh) * | 2016-10-28 | 2017-04-19 | 华南理工大学 | 一种基于深度学习的ldpc硬判决译码方法及译码器 |
CN106571832A (zh) * | 2016-11-04 | 2017-04-19 | 华南理工大学 | 一种多进制ldpc码级联神经网络解码方法及装置 |
Non-Patent Citations (3)
Title |
---|
Architecture optimizations for BP polar decoders;Bo yuan等;《2013 IEEE International Conference on Acoustics, Speech and Signal Processing》;20131021;第2654-2658页 * |
On deep learning-based channel decoding;Tobias Gruber等;《2017 51st Annual Conference on Information Sciences and Systems (CISS)》;20170515;第1-6页 * |
一种改进的极化码置信译码器;张青双等;《通信技术》;20140331;第47卷(第3期);第253-257页 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022244904A1 (ko) * | 2021-05-21 | 2022-11-24 | 엘지전자 주식회사 | 오토 인코더를 이용하는 무선 통신 시스템에서 신호를 송수신하기 위한 방법 및 이를 위한 장치 |
Also Published As
Publication number | Publication date |
---|---|
CN107241106A (zh) | 2017-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107241106B (zh) | 基于深度学习的极化码译码算法 | |
Xu et al. | Improved polar decoder based on deep learning | |
US7539920B2 (en) | LDPC decoding apparatus and method with low computational complexity algorithm | |
CN108847848B (zh) | 一种基于信息后处理的极化码的bp译码算法 | |
CN109586730B (zh) | 一种基于智能后处理的极化码bp译码算法 | |
CN108964669B (zh) | 基于度分解和交替乘子法的ldpc码二次规划译码方法 | |
CN107612560B (zh) | 基于部分信息比特似然比的极化码早期迭代停止方法 | |
CN108039891B (zh) | 一种基于多级更新流程的极化码bp译码方法及装置 | |
JP2012151839A (ja) | ユークリッド空間リード−マラー符号の軟判定復号を実行する方法 | |
CN111835364B (zh) | 一种极化码的低复杂度神经bp译码方法 | |
Jing et al. | Joint detection and decoding of polar-coded SCMA systems | |
CN110233628B (zh) | 极化码的自适应置信传播列表译码方法 | |
Teng et al. | Syndrome-enabled unsupervised learning for neural network-based polar decoder and jointly optimized blind equalizer | |
CN107276725B (zh) | 一种改进基于门限的scma低复杂度并行多用户检测方法 | |
CN109495116B (zh) | 极化码的sc-bp混合译码方法及其可调式硬件架构 | |
Lv et al. | An adaptive ordered shifted-pruning list decoder for polar codes | |
CN111313913B (zh) | 低时延的交叉调度极化码bp译码方法及装置 | |
CN109787641B (zh) | staircase码的解码方法、装置及存储介质 | |
CN110601699B (zh) | 码率动态可变的多元ldpc码实现方法 | |
CN109639290B (zh) | 一种半随机分组叠加编码及译码方法 | |
CN107707333B (zh) | 一种基于码字估计值的极化码早期迭代停止方法及装置 | |
CN116614142A (zh) | 一种基于bpl译码和osd译码的联合译码方法 | |
EP2214322A1 (en) | Iterative MAP decoding of block codes using sub-trellises | |
Zheng et al. | An enhanced HDPC-EVA decoder based on ADMM | |
CN109347600B (zh) | 一种极化码译码方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |