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

文档序号:1569628 发布日期:2020-01-24 浏览:17次 >En<

阅读说明:本技术 一种基于深度学习的rs码置信传播译码方法 (RS code belief propagation decoding method based on deep learning ) 是由 张为 邹述铭 于 2019-09-12 设计创作,主要内容包括:本发明涉及一种一种基于深度学习的RS码置信传播译码方法,包括下列步骤:使用深度学习方法,根据RS码奇偶校验矩阵所对应的Tanner图搭建非全连接神经网络;将Tanner图中校验节点与变量节点的运算过程转化为神经网络中的神经元的运算过程,初始化奇偶校验矩阵参数为0或1作为可供训练的权重值,在对应的Tanner图中即为变量节点中的,在对应的神经网络中就是变量节点的层中使用深度学习优化的参数值,用于神经网络训练;将从噪声信道接收的比特级对数似然比(LLR)作为可靠度信息输入至神经网络;在LLR值进行求和运算后;将每一次迭代计算后的码字使用SSID算法进行随机长度的符号级位移。(The invention relates to an RS code belief propagation decoding method based on deep learning, which comprises the following steps: constructing a non-fully-connected neural network according to a Tanner graph corresponding to the RS code parity check matrix by using a deep learning method; converting the operation process of the check nodes and the variable nodes in the Tanner graph into the operation process of neurons in a neural network, initializing a parity check matrix parameter to be 0 or 1 as a weight value for training, wherein the parity check matrix parameter is in the variable nodes in the corresponding Tanner graph, and the parameter value of deep learning optimization is used in the layer of the variable nodes in the corresponding neural network for training the neural network; inputting bit-level log-likelihood ratios (LLRs) received from the noisy channel as reliability information to a neural network; after the LLR value is subjected to summation operation; and carrying out symbol-level displacement of random length on the code word after each iterative computation by using an SSID algorithm.)

一种基于深度学习的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为经过信道后接收到的码字软信息)

(3)第一次迭代(校验节点输出方程),使用置信传播算法对奇偶校验矩阵对应Tanner图的校验节点神经元进行参数更新:

Figure BDA0002200043110000051

(4)第一次迭代(变量节点输出方程),使用置信传播算法对奇偶校验矩阵对应Tanner图的变量节点神经元进行参数更新(其中w为需要训练的权重值,初始化时为1),tanh函数在深度学习中也作为激活函数,可用于训练神经网络参数:

Figure BDA0002200043110000052

(5)一次迭代循环结束后的输出LLR值由如下公式得出(其中使用sigmoid函数作为激活函数用以方便深度学习对神经网络参数进行训练):

(6)对输出的LLR值进行符号级的随机移位,移位后的码字还属于RS码中的码字,再使用移位后的新LLR值输入至第二次迭代计算的神经网络中进行新的迭代。在规定的迭代次数完成后把码字移回到原来位置,并将码字与正确的码字进行对比,利用深度学习技术计算损失函数,对参数值进行优化。在达到规定的迭代周期后即完成此神经网络训练,自此则得到了最佳的奇偶校验矩阵参数值以及阻尼系数的值,完成了使用深度学习对置信传播译码架构的搭建。

图3是以RS(7-5)码为例,将利用深度学习搭建的SSID算法与普通置信传播算法、SSID算法相对比,在不同迭代次数情况下得到的误码率曲线。可以看到在使用神经网络搭建的NN-SSID算法的结构下进行译码,可以使得仅使用较少的迭代次数,达到BP算法和SSID算法多次迭代达到的译码效果。

8页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于深度学习的校验子输入RS码译码方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类