CN111313914A - 一种基于神经网络分类器的scl简化译码方法 - Google Patents
一种基于神经网络分类器的scl简化译码方法 Download PDFInfo
- Publication number
- CN111313914A CN111313914A CN201911071596.3A CN201911071596A CN111313914A CN 111313914 A CN111313914 A CN 111313914A CN 201911071596 A CN201911071596 A CN 201911071596A CN 111313914 A CN111313914 A CN 111313914A
- Authority
- CN
- China
- Prior art keywords
- decoding
- node
- neural network
- classifier
- scl
- 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.)
- Granted
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
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
Landscapes
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明公开一种基于神经网络分类器的SCL简化译码方法,步骤如下:步骤一、在进行译码前需要先进行神经网络分类器的训练;步骤二、在完成分类器训练后,将分类器用于路径分裂筛选策略。本发明方法将机器学习分类器与传统信道译码算法相结合,充分利用了译码过程中可以收到的各种信息量,使得算法可以对关键比特更加精准的定位和判别,进而大大减少了所提简化SCL译码算法的路径分裂和剪枝操作,带来了计算、排序等复杂度的降低,且在L较大时具有较低的时钟周期,提高了算法硬件可实现性。
Description
技术领域
本发明属于通信领域,具体涉及一种基于神经网络分类器的SCL简化译码方法。
背景技术
polar码,2009年由Ar1kan提出的新型信道编码,是目前唯一能够在理论上证明达到信道容量的编码,且具有较为规则的编码结构。因此在2016年3GPP RAN1#87会议上,极化编码更是被选为了增强移动宽带场景下的编码方案,成为当下信道编码相关技术研究的前沿。相比于其他信道编码,polar码的研究历史较短,很多编译码算法还停留在理论层面。如基础的连续消除(Successive Cancellation,SC)译码算法,在有限码长下性能损失较大。而随后被提出的连续消除列表(Successive Cancellation List,SCL)译码算法,虽然性能有了显著提升,但是其译码复杂度也随之增加。故提出高性能、低复杂度的极化码译码算法对极化码研究和工程实现都具有较为重要的意义。
本领域内公知,相比于SC译码算法,SCL译码算法的计算复杂度主要来源于基于蝶形译码结构的f、g运算和路径分裂与剪枝操作。其中f、g运算的复杂度可以通过采用最小和以及应用特殊节点整体译码来降低。而对于路径分裂与剪枝操作的优化往往由于利用接收信息不充分,而未能带来较大的计算复杂度降低。
发明内容
本发明的主要目的是提供一种基于神经网络分类器的SCL简化译码方法,通过神经网络训练分类器,对特殊节点或信息比特进一步分类,更加精准的对由信道造成的错误比特进行筛选,进而减少SCL译码算法路径扩展和剪枝的次数。本发明方法适用于在已知信道估计后的极化码译码。
本发明的一种基于神经网络分类器的SCL简化译码方法,步骤如下:
步骤一、在进行译码前需要先进行神经网络分类器的训练,具体为:
首先,利用码长N,码率R,M比特CRC校验的极化码,在误帧率为10-4的Eb/N0下进行大量SC译码算法的仿真,从中选出Npos个在SC译码过程种第一个译码错误的信息比特(关键比特)和Nneg个非关键比特,记录下这些比特的信道输入端对数似然比LLRx、译码输出端对数似然比LLRu、比特在极化码码字中的绝对位置Pos,作为分类器的输入特征,是否为关键比特作为输出特征,即有监督训练中的数据标签;
然后,利用收集到的训练数据,对一个由3个输入节点,Ndef(此处以Ndef=20)个中间层节点,1个输出节点的全连接神经网络构成的分类器进行训练和测试,记录下全连接神经网络各边系数、偏移量、非线性函数等参数。
步骤二、在完成分类器训练后,将分类器用于路径分裂筛选策略,具体为:
首先,对极化码码字划分特殊节点,包括0节点,1节点和重复(Rep)节点;
然后,进行SCL译码并在译码到这些特殊节点时,利用译码过程中得到的输入端对数似然比LLRx,译码输出端对数似然比LLRu和该节点在极化码码字中的绝对位置Pos计算神经网络分类器输出;
最后,根据神经网络分类器输出和通过蒙特卡洛算法仿真优化后的阈值对节点是否为关键节点进行判决,对于关键节点进行路径分裂和剪枝操作,对于非关键节点直接进行硬判决译码。
本发明的优点与积极效果在于:本发明将机器学习分类器与传统信道译码算法相结合,充分利用了译码过程中可以收到的各种信息量,使得算法可以对关键比特更加精准的定位和判别,进而大大减少了所提简化SCL译码算法的路径分裂和剪枝操作,带来了计算、排序等复杂度的降低,且在L较大时具有较低的时钟周期,提高了算法硬件可实现性。
附图说明
图1为本发明使用的神经网络分类器结构示意图;
图2为本发明所提出基于神经网络分类器的SCL简化译码方法中神经网络分类器训练的流程图;
图3为本发明所提出的基于神经网络分类器的SCL简化译码方法的译码误帧率性能图;
图4为本发明所提出的基于神经网络分类器的SCL简化译码方法在不同路径数量下路径分裂扩展次数的对比图;
图5为本发明所提出的基于神经网络分类器的SCL简化译码方法在不同路径数量下时钟周期数(time steps)的对比图;
图6为本发明方法流程框图。
具体实施方式
下面将结合附图和实施例对本发明作进一步的详细说明。
本发明的一种基于神经网络分类器的SCL简化译码方法,通过神经网络训练分类器,对特殊节点或信息比特进一步分类,更加精准的对由信道造成的错误比特进行筛选,进而减少SCL译码算法路径扩展和剪枝的次数。
下面将以码长N=1024,码率R=0.5,级联16比特CRC的极化码为例对发明的具体实施方式进行详细介绍。本发明方法流程如图6所示。
步骤一、在进行译码前需要先进行神经网络分类器的训练。
本发明首先给出了针对SCL译码算法中关键比特进行筛选的神经网络分类器的构造和训练方法,包括步骤1.1~步骤1.3。
步骤1.1:生成训练数据;在Eb/N0=2.5dB时,大量仿真SC译码算法结果,记录下Npos个在SC译码过程种第一个译码错误的信息比特(关键比特)和Nneg个非关键比特。同时记录下这些比特的信道输入端对数似然比的绝对值|LLRx|,译码输出端对数似然比的绝对值|LLRu|,比特在极化码码字中的绝对位置Pos等信息作为每个数据的特征向量,是否为关键比特(0表示不是,1表示是)作为数据标签。
步骤1.2:搭建神经网络分类器;搭建如图1所示的全连接神经网络分类器,输入层由3个结点构成,中间层由20个结点构成,输出层由1个结点构成。输入层3个结点依次表示训练数据输入向量中的Pos,|LLRu|和|LLRx|的归一化结果,分别用In1,In2和In3表示,每个输入结点与20个中间结点相连,相连边权重为Wij,偏移值为Dj。每个中间层结点计算公式为:
20个中间层结点与1个输出层结点相连,相连边权重为Vj,输出结点计算公式为:
步骤1.3:训练神经网络分类器;读入训练集数据,并对输入特征Pos,LLRu和LLRx利用公式进行归一化,得到In1,In2和In3。首先初始化各参数为(-0.5,0.5)间的随机数,然后利用训练数据进行训练。在第t次循环中,利用全部Npos+Nneg组训练数据计算误差值e。对于第k组数据,先计算输出Outk,然后根据标签值yk计算误差:为了降低分类器漏检率,将漏判关键比特的误差放大。最后根据误差反馈神经网络,修改各个参数的数值,计算公式为:
其中α=0.85,β在前1000次循环中取值0.01,后面的循环中取值0.001。每次循环计算总误差值为loss=∑kΔyk 2,当loss值小于0.1或者循环此时t>20000时,训练停止,输出神经网络系数和归一化所需的各个特征的最大、最小值。神经网络分类器的训练流程如图2所示。
以N=1024,码率R=0.5,级联16比特CRC的极化码为例,在Eb/N0=2.5dB时,训练得到的神经网络分类器系数如表1所示。
表1
在得到神经网络分类器后,发明将其应用于基于0、1、Rep节点的SCL简化译码算法中,具体流程为步骤2.1~步骤2.3。
步骤2.1:寻找候选关键比特及对应路径;执行使用0、1、Rep节点的SCL译码算法,当进行到0节点时,直接硬判决并更新路径度量值;在进行到1节点时,选择当前路径度量值最大的路径作为关键路径,找出各条路径中当前1节点x端对数似然比绝对值|LLR|的最小值作为L≤8时的候选关键比特,找出各条路径中当前1节点x端对数似然比绝对值|LLR|的最小值和次小值作为L>8时的候选关键比特;对于重复节点,以其最后一个信息比特做为候选关键比特,计算所有比特对数似然比和的绝对值,从个路径中选取最大的一个记录路径序号。
步骤2.2:利用神经网络分类器对候选关键比特进行判决;对于来自1节点的候选关键比特,取出该1节点第一个信息比特的绝对位置Pos,节点输入端对数似然比绝对值LLRu,和信道输入端第Pos个比特的对数似然比绝对值LLRx组成特征向量X=[Pos,LLRu,LLRx],利用统计所得各特征最大最小值进行归一化后送入神经网络分类器,计算输出值;对于来自Rep节点的候选关键比特,取出候选关键比特的绝对位置,节点输入端对数似然比和的绝对值和信道输入端对数似然比绝对值组成特征向量,利用统计所得各特征最大最小值进行归一化后送入神经网络分类器,计算输出值;若输出值大于门限θth则认为该候选关键比特为关键比特,所在节点为关键节点,其中门限θth通过蒙特卡洛仿真进行优化,使得算法达到性能和复杂度间的平衡,本例中使用的门限如表2所示。
List | L=2 | L=4 | L=8 | L=16 | L=32 | L=64 |
θ<sub>th</sub> | 0.65 | 0.6 | 0.525 | 0.51 | 0.515 | 0.51 |
表2
步骤2.3:分别对关键节点和非关键节点进行译码;对于关键节点,对节点进行1次路径分裂和剪枝操作,并更新相应路径度量值;对于非关键节点,对节点直接进行硬判决,并更新相应路径度量值。其中0节点和1节点路径度量值更新方法为本领域内共识。对于第l条路径的一个长度为Nr的Rep节点,其节点输入端比特的对数似然比为则其硬判决所需对数似然比为路径度量值更新公式为:
步骤2.4:CRC校验和输出;依次译码各个特殊节点,并对输出的各条路径进行CRC校验,选取能通过CRC校验的,路径度量值最小的译码路径作为输出结果,在本例中选择长度为16比特,生成多项式为f(x)=x16+x15+x2+1的CRC校验,具体计算方式为本领域内共识,在此不做详细介绍。
如图3所示,本发明所提基于神经网络分类器的路径分裂筛选策略的SCL简化译码方法(PSS-ML-SCL),在路径数量L=2,4,8,16,32,64时均几乎没有纠错性能损失。如图4所示,本发明所提算法,在路径分裂和剪枝所带来的排序复杂度上,明显低于FSSCL、FSSCL-SPC、PSS-DS-SCL译码算法。在Eb/N0=2.5dB时各算法路径分裂和剪枝次数比较如表3所示:
算法名称 | PSS-ML-SCL | SCL | FSSCL | FSSCL-SPC | PSS-DS-SCL |
L=2 | 5 | 512 | 94 | 93 | 35 |
L=4 | 8 | 512 | 206 | 177 | 72 |
L=8 | 28 | 512 | 317 | 272 | 93 |
L=16 | 62 | 512 | 424 | 371 | 140 |
L=32 | 74 | 512 | 526 | 454 | 129 |
L=64 | 89 | 512 | 563 | 552 | 138 |
表3
从表3中可以明显的看出,本发明提基于神经网络分类器的路径分裂筛选策略的SCL简化译码方法只需通过极少的路径分裂和剪枝操作,就可以达到传统SCL译码算法的性能,较大的降低了排序复杂度。如图5所示,本发明所提算法的time steps在L>8时,明显低于FSSCL、FSSCL-SPC、PSS-DS-SCL译码算法,说明算法在L较大时具有较高的并行度,较好的硬件可实现性和较低的时延。
综上所述,本发明提基于神经网络分类器的简化SCL译码算法可以较为准确的定位和筛选SCL译码中的关键比特,进而降低译码复杂度和译码时延。
Claims (1)
1.一种基于神经网络分类器的SCL简化译码方法,步骤如下:
步骤一、在进行译码前需要先进行神经网络分类器的训练,具体为:
首先,利用码长N,码率R,M比特CRC校验的极化码,在误帧率为10-4的Eb/N0下进行SC译码算法的仿真,从中选出Npos个在SC译码过程种第一个译码错误的关键比特和Nneg个非关键比特,记录下这些比特的信道输入端对数似然比LLRx、译码输出端对数似然比LLRu、比特在极化码码字中的绝对位置Pos,作为分类器的输入特征,是否为关键比特作为输出特征,即有监督训练中的数据标签;
然后,利用收集到的训练数据,对一个由3个输入节点,Ndef个中间层节点,1个输出节点的全连接神经网络构成的分类器进行训练和测试,记录下全连接神经网络各边系数、偏移量、非线性函数;
步骤二、在完成分类器训练后,将分类器用于路径分裂筛选策略,具体为:
首先,对极化码码字划分特殊节点,包括0节点,1节点和Rep节点;
然后,进行SCL译码并在译码到这些特殊节点时,利用译码过程中得到的输入端对数似然比LLRx、译码输出端对数似然比LLRu和该节点在极化码码字中的绝对位置Pos计算神经网络分类器输出;
最后,根据神经网络分类器输出和通过蒙特卡洛算法仿真优化后的阈值对节点是否为关键节点进行判决,对于关键节点进行路径分裂和剪枝操作,对于非关键节点直接进行硬判决译码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911071596.3A CN111313914B (zh) | 2019-11-05 | 2019-11-05 | 一种基于神经网络分类器的scl简化译码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911071596.3A CN111313914B (zh) | 2019-11-05 | 2019-11-05 | 一种基于神经网络分类器的scl简化译码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111313914A true CN111313914A (zh) | 2020-06-19 |
CN111313914B CN111313914B (zh) | 2021-09-28 |
Family
ID=71146757
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911071596.3A Active CN111313914B (zh) | 2019-11-05 | 2019-11-05 | 一种基于神经网络分类器的scl简化译码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111313914B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114465853A (zh) * | 2022-03-18 | 2022-05-10 | 河南科技大学 | 一种基于神经网络的多符号非相干检测方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107241106A (zh) * | 2017-05-24 | 2017-10-10 | 东南大学 | 基于深度学习的极化码译码算法 |
CN108880568A (zh) * | 2018-07-06 | 2018-11-23 | 中国石油大学(华东) | 一种基于卷积神经网络的串行抵消列表译码参数优化方法 |
WO2018235050A1 (en) * | 2017-06-22 | 2018-12-27 | Telefonaktiebolaget Lm Ericsson (Publ) | NEURAL NETWORKS FOR RECOVERY CORRECTION DECODING OF ERRORS |
US20190286976A1 (en) * | 2018-03-14 | 2019-09-19 | Silicon Storage Technology, Inc. | Decoders For Analog Neural Memory In Deep Learning Artificial Neural Network |
-
2019
- 2019-11-05 CN CN201911071596.3A patent/CN111313914B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107241106A (zh) * | 2017-05-24 | 2017-10-10 | 东南大学 | 基于深度学习的极化码译码算法 |
WO2018235050A1 (en) * | 2017-06-22 | 2018-12-27 | Telefonaktiebolaget Lm Ericsson (Publ) | NEURAL NETWORKS FOR RECOVERY CORRECTION DECODING OF ERRORS |
US20190286976A1 (en) * | 2018-03-14 | 2019-09-19 | Silicon Storage Technology, Inc. | Decoders For Analog Neural Memory In Deep Learning Artificial Neural Network |
CN108880568A (zh) * | 2018-07-06 | 2018-11-23 | 中国石油大学(华东) | 一种基于卷积神经网络的串行抵消列表译码参数优化方法 |
Non-Patent Citations (2)
Title |
---|
CHEN WEN: "A Novel Decoding Scheme for Polar Code Using Convolutional Neural Network", 《2019 IEEE INTERNATIONAL SYMPOSIUM ON BROADBAND MULTIMEDIA SYSTEMS AND BROADCASTING (BMSB)》 * |
卢丽金: "基于BP神经网络的SCL译码研究", 《计算机系统应用》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114465853A (zh) * | 2022-03-18 | 2022-05-10 | 河南科技大学 | 一种基于神经网络的多符号非相干检测方法 |
CN114465853B (zh) * | 2022-03-18 | 2023-09-08 | 河南科技大学 | 一种基于神经网络的多符号非相干检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111313914B (zh) | 2021-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xu et al. | Improved polar decoder based on deep learning | |
CN109586730B (zh) | 一种基于智能后处理的极化码bp译码算法 | |
CN105721106A (zh) | 基于串行策略的scma上行通信系统多用户检测方法 | |
CN106130688B (zh) | 一种低复杂度的稀疏码多址接入检测方法 | |
CN108462558A (zh) | 一种极化码scl译码方法、装置及电子设备 | |
CN104580039B (zh) | 格基规约算法辅助的无线mimo系统的接收机检测方法 | |
CN106130690A (zh) | 结合极化码的mimo系统联合检测译码方法 | |
CN109951214B (zh) | 一种适用于大规模mimo系统的信号检测方法 | |
CN108833052B (zh) | 信道极化译码路径度量值排序方法 | |
CN110233628B (zh) | 极化码的自适应置信传播列表译码方法 | |
CN114499601B (zh) | 一种基于深度学习的大规模mimo信号检测方法 | |
CN105337699A (zh) | 一种应用于非正交多址接入系统的信号检测方法及装置 | |
CN111313914B (zh) | 一种基于神经网络分类器的scl简化译码方法 | |
CN112332864A (zh) | 一种自适应有序移动剪枝列表的极化码译码方法及系统 | |
CN107017967B (zh) | 一种改良串行策略的scma通信系统多用户检测方法 | |
CN109586848B (zh) | Scma系统中一种消息传递解码方法 | |
Tian et al. | A scalable graph neural network decoder for short block codes | |
CN113285722B (zh) | 一种短极化码的多偏差分段冗余校验辅助统计译码方法 | |
CN108092672B (zh) | 一种基于折叠调度的bp译码方法 | |
Ling et al. | A unified view of sorting in lattice reduction: From V-BLAST to LLL and beyond | |
CN108737298B (zh) | 一种基于图像处理的scma盲检测方法 | |
Sun et al. | LSTM Network-Assisted Belief Propagation Flip Polar Decoder | |
CN106603087A (zh) | 一种无线信道下基于可译集的喷泉码增量译码算法 | |
WO2020213152A1 (ja) | 整列処理装置、選別システム、整列処理方法、及び非一時的なコンピュータ可読媒体 | |
CN107483151A (zh) | 一种基于scma系统的串行多用户动态迭代方法 |
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 |