CN110730008B - 一种基于深度学习的rs码置信传播译码方法 - Google Patents

一种基于深度学习的rs码置信传播译码方法 Download PDF

Info

Publication number
CN110730008B
CN110730008B CN201910861947.4A CN201910861947A CN110730008B CN 110730008 B CN110730008 B CN 110730008B CN 201910861947 A CN201910861947 A CN 201910861947A CN 110730008 B CN110730008 B CN 110730008B
Authority
CN
China
Prior art keywords
neural network
code
deep learning
training
check matrix
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
Application number
CN201910861947.4A
Other languages
English (en)
Other versions
CN110730008A (zh
Inventor
张为
邹述铭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tianjin University
Original Assignee
Tianjin University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tianjin University filed Critical Tianjin University
Priority to CN201910861947.4A priority Critical patent/CN110730008B/zh
Publication of CN110730008A publication Critical patent/CN110730008A/zh
Application granted granted Critical
Publication of CN110730008B publication Critical patent/CN110730008B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/11Error 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/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1125Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using different domains for check node and bit node processing, wherein the different domains include probabilities, likelihood ratios, likelihood differences, log-likelihood ratios or log-likelihood difference pairs

Abstract

本发明涉及一种一种基于深度学习的RS码置信传播译码方法,包括下列步骤:使用深度学习方法,根据RS码奇偶校验矩阵所对应的Tanner图搭建非全连接神经网络;将Tanner图中校验节点与变量节点的运算过程转化为神经网络中的神经元的运算过程,初始化奇偶校验矩阵参数为0或1作为可供训练的权重值,在对应的Tanner图中即为变量节点中的,在对应的神经网络中就是变量节点的层中使用深度学习优化的参数值,用于神经网络训练;将从噪声信道接收的比特级对数似然比(LLR)作为可靠度信息输入至神经网络;在LLR值进行求和运算后;将每一次迭代计算后的码字使用SSID算法进行随机长度的符号级位移。

Description

一种基于深度学习的RS码置信传播译码方法
所属技术领域
本发明属于信道编译码中的差错控制编码领域,涉及使用深度学习技术的里德-所罗门码(RS码)置信传播软判决译码算法。
背景技术
近年来,随着信息社会的发展和通信技术的不断进步,人们对数据传输可靠性的要求日益提高,如何保证数据的可靠传输成为通信系统设计必须关注的问题之一。自1948年香农提出信道编码理论以来,差错控制编码的应用就成为现代通信系统和存储系统的研究热点。当发送的信息在从信源发出,到信宿接收,其在传输过程中都会由于传输信道的不理想而导致信息出现随机错误,差错控制编码就是在数字通信过程中利用编译码技术对信息传输过程中出现的差错进行检验和纠正的技术,而里德-所罗门码(RS码)因其具有纠错能力强,构造简单等特点,已广泛应用于数据存储、数字视频广播、深空探测、无线通信等诸多领域。
对于诸如BCH码、RS码等码字来说,其奇偶校验矩阵中1出现的次数较多,0出现的次数较少,相较于LDPC码这种校验矩阵中0多1少的码字的矩阵来说属于“非稀疏矩阵”,因此容易出现节点之间相互有关联,产生“短环效应”,进而在译码的时候会使得错误信息在节点之间相互传播,造成译码错误。而置信传播译码算法适用于奇偶校验矩阵稀疏的码字,且在LDPC码上已经取得极佳的译码表现。因此是否可以将置信传播译码算法与BCH码、RS码等拥有“非稀疏的”奇偶校验矩阵的码相结合以取得较好译码效果就成为了一个可供研究的方向。
2004年,Jing Jiang等人利用RS码的循环特性,将置信传播算法每一次迭代之后的码字进行符号级随机移位,由于移位后的码字与原码字与校验矩阵Tanner图的对应关系不同,因而可以在多次随机位移后抑制由于奇偶校验矩阵“非稀疏”特性产生的“短环效应”,减少错误的发生,这种方法称为随机位移迭代译码算法(Stochastic Shifting basedIterative Decoding,SSID算法),这为RS码的置信传播译码算法提供了一种较为有效的实现方法。此算法使用比特级对数似然比(Log Likelihood Ratio,LLR)作为译码器的输入数据,而在输出端对本次迭代的外LLR值进行加和后使用了一个提升码性能的系数,称之为阻尼系数(Damping Coefficient),但是这个值的设定是使用仿真得到的经验值而设定的,没有准确的数学推导。2016年,Eliya Nachmani等人将BCH码与置信传播译码算法相结合,使用深度学习技术构造出了一种非全连接的神经网络,其将奇偶校验矩阵中的0,1作为可供神经网络训练的权重值,进而可以使用深度学习算法训练得到最佳权重(如图1所示)。这一算法相对于直接在BCH码中使用置信传播译码算法,可以在经过较少的迭代次数的同时提升译码准确率,并且在几乎相同译码性能的情况下减少运算复杂度。
本发明通过利用深度学习技术,将RS码“稠密”的奇偶校验矩阵中的0,1量化为可供深度学习训练优化的参数,再使用置信传播译码算法经多次迭代计算,便可训练出最优参数,从而提升固定迭代次数下的译码性能。
发明内容
本发明的目的是,提供一种可以提升固定迭代次数下的译码性能的RS码置信传播译码方法,本发明在使用置信传播算法进行译码的基础上,使用SSID算法减少其在RS码上由于奇偶校验矩阵稠密,出现“短环效应”使得错误信息在计算节点之间相互传播,进而产生译码错误,通过使用深度学习技术搭建非全连接神经网络对RS码的奇偶校验矩阵对应的Tanner图映射进行模拟,对在运算过程中使用到的0,1值进行参数量化并进行训练,从而得到最佳参数并构成译码架构。技术方案如下:
一种基于深度学习的RS码置信传播译码方法,包括下列步骤:
(1)使用深度学习方法,根据RS码奇偶校验矩阵所对应的Tanner图搭建非全连接神经网络;将Tanner图中校验节点与变量节点的运算过程转化为神经网络中的神经元的运算过程,初始化奇偶校验矩阵参数为0或1作为可供训练的权重值,在对应的Tanner图中即为变量节点中的,在对应的神经网络中就是变量节点的层中使用深度学习优化的参数值,用于神经网络训练;
(2)将从噪声信道接收的比特级对数似然比(LLR)作为可靠度信息输入至神经网络,首先经过置信传播算法的一次迭代计算,即经过神经网络的变量节点层和校验节点层,计算每层的信息比特的输出值;在每个迭代计算后加入一个输出层,输出层将本次迭代计算前收到的LLR的值和迭代过程中校验节点返回的LLR的值与参数相乘并进行加和计算,此时在校验节点输出LLR信息求和后乘上的参数即为SSID算法中的阻尼系数,因此可以将阻尼系数作为未知量使用深度学习技术进行训练,从而得到最佳参数值;在LLR值进行求和运算后,使用sigmoid函数作为激活函数,以便使用深度学习进行训练;
(3)将每一次迭代计算后的码字使用SSID算法进行随机长度的符号级位移,位移的符号长度小于码字的整体长度,将位移后的码字再输入至新的神经网络层,包括变量节点和校验节点,进行下次迭代;位移前后的码字都属于RS码中的码字;
(4)若达到规定的迭代计算次数则将码字移回译码前的最初位置,并将输出的预测值经过四舍五入后与正确的码字进行对比,在设定的训练周期和学习率的基础下进行神经网络的参数训练,更新变量节点中参数的信息;若未达到规定的迭代次数则进行下一次迭代计算;
(5)在达到规定的训练周期,训练过程结束后即可得到最终的校验矩阵值;将测试信息的LLR值输入至神经网络,经过设定的迭代运算后即可查看输出码字,分析译码效果;多次更改训练周期与学习率,用于找到最优的参数。
附图说明
图1基于深度学习的BCH(15-7)三次迭代计算的神经网络架构图
图2基于深度学习的RS码置信传播译码算法流程图
图3使用RS 7-5码译码的仿真结果
具体实施方式
本发明主要是以置信传播译码算法为基础,通过RS码是循环码的基本特性(位移前后的码字均为RS码中的一个),通过随机位移减少短环效应产生的错误,同时利用深度学习技术搭建神经网络进行参数训练,从而得到奇偶校验矩阵的最佳参数(同时也得到阻尼系数的最佳值),从而减少迭代运算量,提升固定迭代次数下的译码性能。技术方案如下:
(1)使用深度学习方法,根据RS码奇偶校验矩阵所对应的Tanner图搭建非全连接神经网络。将Tanner图中校验节点与变量节点的运算过程转化为神经网络中的神经元的运算过程,初始化奇偶校验矩阵参数为0或1作为可供训练的权重值,在对应的Tanner图中即为变量节点中的,在对应的神经网络中就是变量节点的层中使用深度学习优化的参数值,用于神经网络训练。
(2)将从噪声信道接收的比特级对数似然比(LLR)作为可靠度信息输入至神经网络,首先经过置信传播算法的一次迭代计算,即经过神经网络的变量节点层和校验节点层,计算每层的信息比特的输出值。在每个迭代计算后加入一个输出层,输出层将本次迭代计算前收到的LLR的值和迭代过程中校验节点返回的LLR的值与参数相乘并进行加和计算,此时在校验节点输出LLR信息求和后乘上的参数即为SSID算法中的阻尼系数,因此可以将阻尼系数作为未知量使用深度学习技术进行训练,从而得到最佳参数值。在LLR值进行求和运算后,使用sigmoid函数作为激活函数,以便使用深度学习进行训练。
(3)将每一次迭代计算后的码字使用SSID算法进行随机长度的符号级位移,位移的符号长度小于码字的整体长度,将位移后的码字再输入至新的神经网络层,包括变量节点和校验节点,进行下次迭代。位移前后的码字都属于RS码中的码字,而由于位移前后的码字Tanner图的对应关系存在不同,通过这样的位移过程便可用于减少奇偶校验矩阵稠密而出现“短环效应”进而引起的译码错误。
(4)若达到规定的迭代计算次数则将码字移回译码前的最初位置,并将输出的预测值经过四舍五入后与正确的码字进行对比,在设定的训练周期和学习率的基础下进行神经网络的参数训练,更新变量节点中参数的信息。若未达到规定的迭代次数则进行下一次迭代计算。
(5)在达到规定的训练周期,训练过程结束后即可得到最终的校验矩阵值(包括阻尼系数)。将测试信息的LLR值输入至神经网络,经过设定的迭代运算后即可查看输出码字,分析译码效果。多次更改训练周期与学习率,用于找到最优的参数。经过参数训练的神经网络可以提升在迭代次数固定的情况下的译码性能,同时可以在保证译码效果接近的情况下,减少迭代运算时间。
整个算法的工作流程如图1所示,下面结合图1具体描述算法的流程:
(1)首先对相应码字的奇偶校验矩阵进行初始化,将矩阵中的0,1数值量化为可供深度学习训练的参数。根据码字奇偶校验矩阵对应的Tanner图搭建非全连接神经网络,用于参数更新。使用Matlab软件准备深度学习训练集所需的数据,包括正确的RS码字以及仿真经过信道后的LLR的值。
(2)接收从信道来的可靠度信息。使用Matlab软件模拟在AWGN(加性高斯白噪声)信道BPSK(二进制相移键控)调制的情况下,信道可靠度信息的对数似然比(LLR),其计算公式为:(其中σ为信道的方差值,y为经过信道后接收到的码字软信息)
Figure BDA0002200043110000041
(3)第一次迭代(校验节点输出方程),使用置信传播算法对奇偶校验矩阵对应Tanner图的校验节点神经元进行参数更新:
Figure BDA0002200043110000051
(4)第一次迭代(变量节点输出方程),使用置信传播算法对奇偶校验矩阵对应Tanner图的变量节点神经元进行参数更新(其中w为需要训练的权重值,初始化时为1),tanh函数在深度学习中也作为激活函数,可用于训练神经网络参数:
Figure BDA0002200043110000052
(5)一次迭代循环结束后的输出LLR值由如下公式得出(其中使用sigmoid函数作为激活函数用以方便深度学习对神经网络参数进行训练):
Figure BDA0002200043110000053
(6)对输出的LLR值进行符号级的随机移位,移位后的码字还属于RS码中的码字,再使用移位后的新LLR值输入至第二次迭代计算的神经网络中进行新的迭代。在规定的迭代次数完成后把码字移回到原来位置,并将码字与正确的码字进行对比,利用深度学习技术计算损失函数,对参数值进行优化。在达到规定的迭代周期后即完成此神经网络训练,自此则得到了最佳的奇偶校验矩阵参数值以及阻尼系数的值,完成了使用深度学习对置信传播译码架构的搭建。
图3是以RS(7-5)码为例,将利用深度学习搭建的SSID算法与普通置信传播算法、SSID算法相对比,在不同迭代次数情况下得到的误码率曲线。可以看到在使用神经网络搭建的NN-SSID算法的结构下进行译码,可以使得仅使用较少的迭代次数,达到BP算法和SSID算法多次迭代达到的译码效果。

Claims (1)

1.一种基于深度学习的RS码置信传播译码方法,包括下列步骤:
(1)使用深度学习方法,根据RS码奇偶校验矩阵所对应的Tanner图搭建非全连接神经网络;将Tanner图中校验节点与变量节点的运算过程转化为神经网络中的神经元的运算过程,初始化奇偶校验矩阵参数为0或1作为可供训练的权重值,在对应的神经网络中就是变量节点的层中使用深度学习优化的参数值,用于神经网络训练;
(2)将从噪声信道接收的比特级对数似然比LLR作为可靠度信息输入至神经网络,首先经过置信传播算法的一次迭代计算,即经过神经网络的变量节点层和校验节点层,计算每层的信息比特的输出值;在每个迭代计算后加入一个输出层,输出层将本次迭代计算前收到的LLR的值和迭代过程中校验节点返回的LLR的值与参数相乘并进行加和计算,此时在校验节点输出LLR信息求和后乘上的参数即为SSID算法中的阻尼系数,因此可以将阻尼系数作为未知量使用深度学习技术进行训练,从而得到最佳参数值;在LLR值进行求和运算后,使用sigmoid函数作为激活函数,以便使用深度学习进行训练;
(3)将每一次迭代计算后的码字使用SSID算法进行随机长度的符号级位移,位移的符号长度小于码字的整体长度,将位移后的码字再输入至新的神经网络层,包括变量节点和校验节点,进行下次迭代;位移前后的码字都属于RS码中的码字;
(4)若达到规定的迭代计算次数则将码字移回译码前的最初位置,并将输出的预测值经过四舍五入后与正确的码字进行对比,在设定的训练周期和学习率的基础下进行神经网络的参数训练,更新变量节点中参数的信息;若未达到规定的迭代次数则进行下一次迭代计算;
(5)在达到规定的训练周期,训练过程结束后即可得到最终的校验矩阵值;将测试信息的LLR值输入至神经网络,经过设定的迭代运算后即可查看输出码字,分析译码效果;多次更改训练周期与学习率,用于找到最优的参数。
CN201910861947.4A 2019-09-12 2019-09-12 一种基于深度学习的rs码置信传播译码方法 Active CN110730008B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910861947.4A CN110730008B (zh) 2019-09-12 2019-09-12 一种基于深度学习的rs码置信传播译码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910861947.4A CN110730008B (zh) 2019-09-12 2019-09-12 一种基于深度学习的rs码置信传播译码方法

Publications (2)

Publication Number Publication Date
CN110730008A CN110730008A (zh) 2020-01-24
CN110730008B true CN110730008B (zh) 2023-04-07

Family

ID=69218185

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910861947.4A Active CN110730008B (zh) 2019-09-12 2019-09-12 一种基于深度学习的rs码置信传播译码方法

Country Status (1)

Country Link
CN (1) CN110730008B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114785451B (zh) * 2021-01-22 2023-10-31 深圳富桂精密工业有限公司 上行图像分割多址接入传输的接收方法、装置及存储介质
CN112950351B (zh) * 2021-02-07 2024-04-26 北京淇瑀信息科技有限公司 用户策略生成方法、装置及电子设备
CN117335815B (zh) * 2023-11-29 2024-03-15 广东工业大学 基于改进原模图神经译码器的训练方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106571832A (zh) * 2016-11-04 2017-04-19 华南理工大学 一种多进制ldpc码级联神经网络解码方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9960790B2 (en) * 2013-11-29 2018-05-01 Kabushiki Kaisha Toshiba Belief propagation decoding for short algebraic codes with permutations within the code space

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106571832A (zh) * 2016-11-04 2017-04-19 华南理工大学 一种多进制ldpc码级联神经网络解码方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Wei Zhang等.An Improved Concatenation Scheme of Polar Codes With Reed–Solomon Codes.《IEEE》.2016,全文. *

Also Published As

Publication number Publication date
CN110730008A (zh) 2020-01-24

Similar Documents

Publication Publication Date Title
CN110730008B (zh) 一种基于深度学习的rs码置信传播译码方法
US8010869B2 (en) Method and device for controlling the decoding of a LDPC encoded codeword, in particular for DVB-S2 LDPC encoded codewords
US8185797B2 (en) Basic matrix, coder/encoder and generation method of the low density parity check codes
CN108847848B (zh) 一种基于信息后处理的极化码的bp译码算法
CN103259545B (zh) 基于振荡的准循环低密度奇偶校验码置信传播译码方法
CN105763203B (zh) 一种基于硬可靠度信息的多元ldpc码译码方法
CN111565051B (zh) 一种用于ldpc码的自学习归一化偏置最小和译码方法
CN109586732B (zh) 中短码ldpc编解码系统和方法
CN111279618B (zh) 通用低密度奇偶校验码
CN104052501A (zh) 低复杂度的多进制ldpc码译码方法
CN109547032B (zh) 一种基于深度学习的置信度传播ldpc译码方法
Jayasooriya et al. A new density evolution approximation for LDPC and multi-edge type LDPC codes
US10892783B2 (en) Apparatus and method for decoding polar codes
CN101064591B (zh) 低密度奇偶校验码的译码方法及其校验节点更新电路
CN108270510B (zh) 基于ldpc码的通信方法和通信设备
CN112953554B (zh) 一种基于分层置信度传播的ldpc译码方法、系统和介质
Shrinidhi et al. Modified Min Sum Decoding Algorithm for Low Density Parity Check Codes
CN110739977B (zh) 一种基于深度学习的bch码译码方法
CN113114269A (zh) 一种置信传播-信息修正译码方法
CN110212924B (zh) 一种lt码编解码方法及系统
Chen et al. FPGA implementation and verification of LDPC minimum sum algorithm decoder with weight (3, 6) regular parity check matrix
CN113228520A (zh) 用于对由至少两个约束节点组成的代码进行解码的迭代解码器
CN111181570A (zh) 基于fpga的编译码方法和装置
Perez-Pascual et al. Conceiving extrinsic information transfer charts for stochastic low-density parity-check decoders
CN115426014B (zh) 一种基于酉空时编码调制的水声mimo通信方法

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