CN116743190A - 一种基于神经网络的lsbp与osd级联方案 - Google Patents
一种基于神经网络的lsbp与osd级联方案 Download PDFInfo
- Publication number
- CN116743190A CN116743190A CN202310701088.9A CN202310701088A CN116743190A CN 116743190 A CN116743190 A CN 116743190A CN 202310701088 A CN202310701088 A CN 202310701088A CN 116743190 A CN116743190 A CN 116743190A
- Authority
- CN
- China
- Prior art keywords
- neural network
- decoding
- osd
- lsbp
- module
- 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.)
- Pending
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 89
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 32
- 238000012896 Statistical algorithm Methods 0.000 claims description 3
- 238000012549 training Methods 0.000 abstract description 12
- 238000000034 method Methods 0.000 abstract description 10
- 230000010287 polarization Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 241000169170 Boreogadus saida Species 0.000 description 1
- 244000141353 Prunus domestica Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
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/23—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory 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/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/1105—Decoding
- H03M13/1111—Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
-
- 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/1105—Decoding
- H03M13/1128—Judging correct decoding and iterative stopping criteria other than syndrome check and upper limit for decoding iterations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0059—Convolutional codes
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明提出一种基于神经网络的LSBP与OSD级联方案。该级联方案由编码调制模块、LSBP译码模块、神经网络模块以及OSD译码模块组成,神经网络模块根据译码过程中的软信息实时动态决定是否执行OSD译码算法。为了解决传统LSBP与OSD级联方案中译码时延较高的问题,在传统级联方案基础上用神经网络模块代替原始级联方案中判决码字的动态阈值,神经网络模块根据LSBP译码得到的软信息进行训练输出结果为[1 0]或[0 1]。[0 1]表示执行神经网络模块获得的判决码字不满足阈值公式判断条件时,输出判决码字;[1 0]表示满足阈值判断条件,需要执行OSD译码。所提出的基于神经网络的LSBP与OSD级联方案与LSBP方案相比有性能增益,与传统的级联方案相比降低了额外平均译码尝试次数。
Description
技术领域
本发明属于通信信道编码的译码技术领域,涉及一种基于神经网络的LSBP(LDPC-like Sparse Graph BP)与OSD(Ordered Statistics Decoding)级联方案,所提出的级联方案中的神经网络模块根据译码的软信息特征实时动态决定是否执行分阶统计算法,从而降低了传统级联方案的额外平均译码尝试次数。
背景技术
极化码在2007年被首次提出,在二进制离散无记忆信道下能够达到香农极限,是目前5G信道编码领域的基础。针对极化码的编码结构,/>提出了连续消除(Successive Cancellation,SC)译码算法,其译码复杂度低,当码长趋近于无穷时,译码性能比较优秀,但在中短码长下性能不太理想。为了对SC译码进行性能上的改进,连续消除列表(Successive Cancellation List,SCL)译码算法被提出。SCL译码器是目前在极化码译码方面应用最广泛的译码器,SCL译码对每个信息比特进行路径分裂和剪枝,同时保留L条译码的候选路径,每条路径都有一个衡量路径可靠性的路径度量值。路径度量值越小,路径越可靠,被保留下来作为最终译码结果的概率也就越大。SCL译码随着列表L增大能达到十分优越的性能,但同时译码复杂度和资源消耗也随之增加。
由于SC算法和SCL算法的串行顺序的特点,会导致SC和SCL算法译码时延比较高且吞吐率较低,这不利于硬件上的实现,于是教授提出了极化码置信传播(BP)译码算法,其计算方式是并行迭代的。虽然与SC算法及SCL算法相比,BP译码算法具有较高的吞吐率和较低的译码时延,但是BP算法的性能与SCL算法的性能相比仍有较大差距。为了改善BP算法的性能,M.Zhang等人基于因子图中的停止树,提出BP纠错算法(BP Correcting,BPC),BPC算法对码字比特端的先验值进行纠错,其进一步提高了BP算法的性能。为了进一步提高BP算法的性能,S.Cammerer等人提出类LDPC稀疏BP算法即LSBP,该算法对极化码的因子图进行剪枝,使其可以基于LDPC的方式进行译码。LSBP算法经过迭代后得到软消息。可以将软消息与外部其他译码器进行级联,例如LSBP与分阶统计算法OSD级联方案,最后得到较为准确的输出码字,LSBP算法的提出为BP算法的改进提供了方向。
LSBP与OSD级联方案的一个不足就是译码时延较高,因为每次迭代都需要对信道接收向量进行两次译码,而OSD算法的复杂度随着码长增加而指数增加,因此当码长较长时,这种级联方案的复杂度会过高,不适合对译码时延要求较高的场景中。对该问题的解决方案是可以将人工智能技术应用于极化码中降低译码时延。有许多专家学者已经将人工智能技术运用在极化码译码中,2017年T.Gruber等人使用神经网络模拟极化码的译码,这证明了神经网络代替传统译码方案的可能性,为之后神经网络译码算法的发展奠定了基础。针对改进的传统LSBP与OSD级联方案存在的问题进行优化,提出一种基于神经网络的LSBP与OSD级联方案,在原始LSBP与OSD级联方案中加入神经网络模块,该模块根据LSBP译码所得到的软消息的特征,执行LSBP译码后实时动态判断是否继续进行OSD译码,从而进一步降低原始级联方案的复杂度。
发明内容
本发明为了解决传统LSBP与OSD级联方案的复杂度过高的问题,提出了一种基于神经网络的LSBP与OSD级联方案。级联方案的原理框图如图1所示,包括编码调制模块、LSBP译码模块、神经网络模块以及OSD译码模块。其中编码调制模块是对源码字进行编码调制产生接收向量。LSBP译码模块是对接收向量进行迭代译码,每次迭代结束后对译码算法获得判决码字进行奇偶校验,如果判决码字通过校验,那么直接把当前的判决码字作为译码结果;反之译码失败,码字没有通过奇偶校验且达到最大迭代次数T时,神经网络模块被启用。当神经网络模块被执行时,LSBP译码模块中的软信息作为神经网络模块的输入数据,在神经网络模块中进行神经网络训练。对神经网络输出进行判断,满足判断条件后执行OSD译码模块,不满足判断条件时直接输出码字。
本发明的基本构思:为了解决传统LSBP与OSD级联方案中译码时延较高的问题,在LSBP与OSD级联方案的基础上,用神经网络模块代替原始级联方案中判决码字进行动态阈值判断,神经网络根据实时译码过程中的软信息动态判断是否进行OSD译码操作,当满足条件时才会进行OSD译码。所以与传统的级联方案相比,基于神经网络的LSBP与OSD级联方案降低了额外平均译码尝试次数。
基于以上技术问题,本发明所采用的技术方案为:基于神经网络的LSBP与OSD级联方案的原理结构主要分为四个模块,前期的编码调制模块和LSBP译码模块,LSBP译码失败时采用的神经网络模块以及OSD译码模块。编码调制模块对源码字进行极化编码及调制,产生信道接收向量。将接收向量输入到LSBP译码模块中,LSBP译码模块对接收向量进行迭代,然后执行LSBP译码。在每次迭代结束后对获得的软信息进行硬判决,获得判决码字后对码字进行奇偶校验。如果判决码字通过校验,那么直接把当前的判决码字作为译码结果输出。奇偶校验失败但当前迭代次数t未达到最大迭代次数T时,则意味着LSBP译码过程还未结束,继续进行迭代并执行下一次LSBP译码。如果当前迭代所获得判决码字没有通过校验且目前的迭代次数t达到最大迭代次数T时意味着译码失败,此时译码流程进入神经网络模块。
在基于神经网络的LSBP与OSD级联方案中神经网络模块是由具有两个隐藏层的全连接神经网络构造的。该模块可以看作一个全连接神经网络模型,模型由一个输入层、两个隐藏层、一个输出层组成。在基于神经网络的LSBP与OSD级联方案中,神经网络模块代替了原始级联方案中的动态阈值判断,其处理的是二分类问题。所以神经网络模块在输出层输出的是长度为2的一维数组。
启动神经网络模块后,将LSBP译码时的最后一次迭代获得的软信息传入神经网络模块作为神经网络模块的输入数据。根据神经网络模块训练后输出的数据来判断是否需要执行OSD译码模块。由于神经网络输出的是两个节点的数组,且数组只有两种可能为[0 1]或[1 0]。其中[0 1]表示执行神经网络模块获得的判决码字不满足阈值公式判断条件时,直接输出判决码字。[1 0]表示获得的判决码字满足阈值判断条件时,执行OSD译码模块,在OSD译码模块中进行OSD译码并输出译码码字。
当码长为256,信噪比为2dB时,所提出的基于神经网络的LSBP与OSD级联方案与LSBP译码方案相比,约有0.25dB的增益,与不使用神经网络的传统级联方案相比,在较小的性能损失条件下,在信噪比1.5dB处,平均译码尝试次数大约降低了60%。
本发明相对现有技术具有的优点和有益效果为:
1)本发明中神经网络结构代替了原始LSBP与OSD级联方案中的候选码字汉明权重阈值判断结构,实时动态判断是否有必要进行OSD译码。
2)本发明可以降低传统级联方案的额外平均译码尝试次数。
3)本发明与LSBP算法方案相比,具有性能增益。
附图说明
图1为本发明基于神经网络的LSBP与OSD级联方案的整体框图;
图2为本发明基于神经网络的LSBP与OSD级联方案的具体流程图;
图3为本发明基于神经网络的LSBP与OSD级联方案中神经网络模块的结构图;
具体实施方式
下面结合附图对本发明作进一步详细描述,以下实施例有助于对本发明的理解,是比较好的应用实例,但不应看作是对本发明的限制。
在原始LSBP与OSD级联方案中,计算OSD算法中所有候选的码字的汉明权重值dweight,设定动态阈值ε,选择满足公式dweight<ε的对应码字作为译码结果。在基于神经网络的LSBP与OSD级联方案中,神经网络模块代替了动态阈值判断,神经网络模块相当于公式dweight<ε所起的作用。神经网络模块可以实时根据译码过程中的软信息动态判断是否要进行OSD译码,通过神经网络的辅助,基于神经网络的LSBP与OSD级联方案可以降低传统级联方案的额外平均译码尝试次数。
基于神经网络的LSBP与OSD级联方案的整体框图如图1所示,包括四个模块,分别是编码调制模块、LSBP译码模块、神经网络模块以及OSD译码模块。编码调制模块对源码字进行编码调制,LSBP译码模块对调制后的码字进行LSBP译码。神经网络模块由输入层,隐藏层和输出层组成。神经网络模块中隐藏层层数为2层,第一个隐藏层节点个数是N,第二个隐藏层节点个数是N/2,N指的是极化码码长。神经网络模块代替了原始级联方案中动态阈值判断,因此神经网络处理的是二分类问题。损失函数使用交叉熵函数,其输出层节点个数为2,所以其输出是长度为2的一维数组。网络模型隐藏层全都使用激活函数PReLU,输出层使用Softmax激活函数。
图2为基于神经网络的LSBP与OSD级联方案的流程图。发送端发送源信息,经过极化编码调制之后,产生信道接收向量y。在译码端,信道接收向量y被输入到LSBP译码算法中,LSBP算法每次迭代结束之后,对获得的软信息进行硬判决获得判决码字r1,对判决码字r1进行奇偶校验,如果判决码字r1通过校验,那么直接把当前的判决码字作为译码结果。如果判决码字没有通过校验,那么判断LSBP算法的当前迭代次数t是否达到最大迭代次数T,如果当前迭代次数t还未达到最大迭代次数,就返回LSBP译码进行下一次迭代。如果奇偶检验失败且目前迭代次数t已经达到最大迭代数T,则将软信息输入神经网络模块进行训练,其输出结果是数组长度为2的一维数组。对神经网络模块中的输出数据进行判断,如果神经网络输出[1 0],则进行OSD译码。
图3是基于神经网络的LSBP与OSD级联方案中神经网络模块的结构图。神经网络模块包括一个输入层,两个隐藏层和一个输出层。第一个隐藏层和第二个隐藏层节点个数分别是N和N/2,N指的是极化码码长。首先在神经网络模块中输入特征数据,特征数据通过节点个数为N的输入层进入隐藏层,隐藏层提取数据的特征,输出层中的节点个数代表了分类标签的个数。由于输出层使用Softmax激活函数,处理的是二分类问题,所以输出层输出节点个数是2的标签类别。网络模型隐藏层全都使用激活函数PReLU。对于深度神经网络来说,训练集的质量尤为重要。训练数据与标签彼此要一一对应,并且要尽可能保证数据集的准确性。获取训练数据的具体步骤为:源码字经过BPSK调制得到调制信号,调制信号受到信道噪声的干扰生成噪声信息序列。将噪声信息序列输入到LSBP译码算法中,输出判决码字的同时将软信息进行保存。如果判决码字通过了奇偶校验,那么再次发送源码字进行训练;如果判决码字未通过校验,将保存下来的判决软信息输入到OSD译码中,如果OSD译码得到的判决码字与实际发送的源码字不一致,那么将判决软消息和[0 1]作为一组训练数据进行保存。OSD译码得到的判决码字与实际发送的源码字一致时将判决软信息与[1 0]作为一组数据进行保存。[0 1]表示LSBP译码后获得的判决码字不符合阈值公式dweight<ε,[1 0]表示获得的判决码字符合阈值判断。不断重复以上步骤,直到训练数据的数目达到设定要求。神经网络模块中参数设置每个类别标签数目均为8*105,产生训练数据的信噪比是2dB。为了让全连接神经网络更容易学习训练数据的特征并且加快神经网络的收敛速度,对输入信息进行了预处理操作y′=|y′|,其中y′指的是判决软信息的值。预处理操作的目的是获得每一位比特的可靠度,将可靠度作为输入特征。
采用本发明的级联方案在轻微的性能损失条件下,平均译码尝试次数在SNR=1.5dB时降低了60%。平均译码尝试次数降低的原因在于神经网络模块代替了原始级联方案中动态阈值判断,而神经网络具有良好的学习能力,它可以实时根据译码过程中的软信息动态判断是否需要执行OSD译码。通过神经网络的辅助,基于神经网络的LSBP与OSD级联方案可以降低传统级联方案的额外平均译码尝试次数。
上述实施例不以任何形式限制本发明,凡采用本发明的相似结构、方法及其相似变化方式所获得的技术方案,均在本发明的保护范围。
Claims (2)
1.所述的一种基于神经网络的LSBP与OSD级联方案其特征在于该级联方案由类LDPC稀疏图BP算法LSBP(LDPC-like Sparse Graph BP)与分阶统计算法OSD(Ordered StatisticsDecoding)级联,并且用神经网络结构代替了原始LSBP与OSD级联方案中的候选码字汉明权重阈值判断结构,执行LSBP译码后实时动态判断是否进行OSD译码。所述级联方案中的神经网络为全连接神经网络,神经网络模块的输出长度为2的一维数组,解决了二分类问题。
2.根据权利要求1所述的基于神经网络的LSBP与OSD级联方案中的神经网络模块,其特征在于将LSBP译码时的最后一次迭代获得的软信息传入神经网络模块作为神经网络模块的输入数据,神经网络模块根据译码的软信息特征训练输出一维数组,其中[0 1]表示执行神经网络模块获得的判决码字不满足阈值公式判断条件时,直接输出判决码字;[1 0]表示获得的判决码字满足阈值判断条件时,执行OSD译码模块,在OSD译码模块中进行OSD译码并输出译码码字。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310701088.9A CN116743190A (zh) | 2023-06-14 | 2023-06-14 | 一种基于神经网络的lsbp与osd级联方案 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310701088.9A CN116743190A (zh) | 2023-06-14 | 2023-06-14 | 一种基于神经网络的lsbp与osd级联方案 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116743190A true CN116743190A (zh) | 2023-09-12 |
Family
ID=87900630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310701088.9A Pending CN116743190A (zh) | 2023-06-14 | 2023-06-14 | 一种基于神经网络的lsbp与osd级联方案 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116743190A (zh) |
-
2023
- 2023-06-14 CN CN202310701088.9A patent/CN116743190A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108282264B (zh) | 基于比特翻转串行消除列表算法的极化码译码方法 | |
CN109660264B (zh) | 高性能极化码译码算法 | |
CN109257148B (zh) | 一种基于高斯近似阈值判断的极化码bp译码方法 | |
CN107395319B (zh) | 基于打孔的码率兼容极化码编码方法及系统 | |
CN106941394B (zh) | 极化码编码的scma的联合检测译码方法及装置 | |
CN112332864B (zh) | 一种自适应有序移动剪枝列表的极化码译码方法及系统 | |
CN109450459B (zh) | 一种基于深度学习的极化码fnsc译码器 | |
CN111726202B (zh) | 一种极化码置信传播译码的提前终止迭代方法 | |
CN109450594B (zh) | 云接入网上行链路的无速率码度数分布优化方法 | |
CN111835364B (zh) | 一种极化码的低复杂度神经bp译码方法 | |
CN114157309A (zh) | 极化码译码方法、装置及系统 | |
CN114285418A (zh) | 一种改进的极化码epc-ms-scl译码方法 | |
CN113595693A (zh) | 一种基于改进有效信噪比的混合自动重传请求方法 | |
Miao et al. | A low complexity multiuser detection scheme with dynamic factor graph for uplink SCMA systems | |
CN113114269A (zh) | 一种置信传播-信息修正译码方法 | |
CN115426014B (zh) | 一种基于酉空时编码调制的水声mimo通信方法 | |
CN114696953B (zh) | 一种自由空间光通信的信道编码和译码方法 | |
CN116743190A (zh) | 一种基于神经网络的lsbp与osd级联方案 | |
CN116418395A (zh) | 一种面向fso系统的中继激光通信编码方法 | |
CN115694515A (zh) | 基于关键比特的神经网络辅助极化码译码方法及装置 | |
Li et al. | A rate-compatible punctured Polar code decoding scheme based on deep learning | |
CN114614835A (zh) | 一种适用于水声通信的极化码bp译码方法 | |
CN114598334A (zh) | 一种分段crc辅助的卷积极化码编译码方案 | |
CN110719112B (zh) | 一种基于深度学习的参数自适应rs码译码方法 | |
CN113556134A (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 |