CN108809522B - 多码的深度学习译码器的实现方法 - Google Patents
多码的深度学习译码器的实现方法 Download PDFInfo
- Publication number
- CN108809522B CN108809522B CN201810742784.3A CN201810742784A CN108809522B CN 108809522 B CN108809522 B CN 108809522B CN 201810742784 A CN201810742784 A CN 201810742784A CN 108809522 B CN108809522 B CN 108809522B
- Authority
- CN
- China
- Prior art keywords
- neural network
- different
- code
- length
- decoder
- 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
- 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/0045—Arrangements at the receiver end
- H04L1/0047—Decoding adapted to other signal detection operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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/0057—Block codes
-
- 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/0061—Error detection codes
-
- 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/20—Arrangements for detecting or preventing errors in the information received using signal quality detector
- H04L1/203—Details of error rate determination, e.g. BER, FER or WER
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Error Detection And Correction (AREA)
Abstract
一种多码的深度学习译码器的实现方法,通过在两种不同的编码之前加入用于区分两种码字的指示节后对接收端神经网络进行训练,训练后的神经网络作为译码器,使用相同的权重同时学习两种不同的编码的编码方式,达到解码时网络吞吐量的提高。本发明通过共用神经网络同时训练两种不同的编码并共享网络权重,在接收端能够使用深度学习,在接收端所得到的信号加入所提出的指示节后同时放入神经网络中进行学习,相比于传统的解码器可以实现近似的误码率性能以及更高的吞吐量增益。
Description
技术领域
本发明涉及的是一种信道编解码领域的技术,具体是一种多码的深度学习译码器的实现方法。
背景技术
Polar(极化)码作为新兴的信道编码方案,具有确定性的编码规则,并且作为5G中eMBB场景下控制信道的信道编码方案,可以达到理论上的香农极限;LDPC(低密度奇偶校验)码作为5G中eMBB场景下数据信道的信道编码方案,可以接近香农极限。但是在接收端部署功能强大的解码器则是5G通信系统的挑战,因为对于硬件的角度,解码器必须十分小心的设计。
发明内容
本发明针对现有技术存在的上述不足,提出一种多码的深度学习译码器的实现方法,在接收端所得到的两种不同的信号分别加入所提出的指示节后同时放入神经网络中进行学习,通过共用神经网络同时训练两种不同的编码并共享网络权重。相比于传统的解码器可以实现近似的误码率性能以及更高的吞吐量增益。
本发明是通过以下技术方案实现的:
本发明通过在两种不同的编码之前加入用于区分两种码字的指示节后对接收端神经网络进行训练,训练后的神经网络作为译码器,使用相同的权重同时学习两种不同的编码的编码方式,达到解码时网络吞吐量的提高。
所述的指示节是指:在两种不同的编码之前加入1~3位不同的编码。
所述的指示节优选为:针对两种不同的编码分别为1和-1。
所述的神经网络为深度神经网络(Deep Neural Networks,DNN),其隐藏层的激活函数优选为ReLU,输出层的激活函数优选为sigmoid;损失函数优选为MSE。
所述的方法具体包括以下步骤:
步骤1)发送端的k位信息比特位b={b1,b2,..,bk}经过两种不同的编码方式分别编码,分别生成N位长度的不同码字xp={xp1,xp2,...,xpN},xl={xl1,xl2,...,xlN};
步骤2)将生成的两种不同的编码码字混合在一起,进行BPSK调制变为调制之后的信号s={s1,s2,...,sN},调制信号经发送端通过高斯信道之后在接收端处为y={y1,y2,...,yN};
步骤3)接收端在接收信号y之前加上指示节I,优选不同码字前加入的指示节也不同。以合并后的码字{y,I}作为DNN的输入,标签为原始信息比特b;
技术效果
与现有技术相比,以polar码为例,本发明误码率非常接近于传统的BP译码得到的误码率,在误码率为10-2下只约有0.2dB的误差,而LDPC码与BP译码相比在误码率为10-2下有0.8dB的性能增益,此外本发明所带来的吞吐量提高程度大约是106倍之多。
附图说明
图1为带有指示节的训练序列示意图;
图2为联合译码器训练流程图;
图3为指示节数量的选择示意图;
图4为提出的方案与传统的BP译码误码率对比示意图。
具体实施方式
本实施例示例性地使用极化码和LDPC码以具体阐明本发明,但本发明方法不限于该两种编码的实现,不同的码字分别经过了信道编码、BPSK调制并加入高斯噪声,其中码长表示为N,码率表示为R,信息位个数表示为k。
如图1所示,本实施例将两种码字分别放入神经网络训练之前,先在每段码字之前加入指示节以区分polar码和LDPC码,具体为:I={I1,...,IT},y={y1,y2,...,yN}为经过高斯噪声之后的信号,T和N分别为指示节的长度和编码之后的码字长度。
对于不同的码字类型采用不同的指示节I,以使得神经网络区分开不同的码字,因此输入神经网络的序列最终为{y,I}={I1,...,IT,y1,y2,...,yN}。
本实施例中选用DNN网络训练联合译码器,选用DNN的原因是DNN具有很好的处理一维数据的能力。
如图2所示,本实施例具体包括以下流程:
Step 1):初始参数:本实施例中选取码长N为16,码率R为1/2,k为8的polar码和LDPC码来验证本实施例中的想法。指示节中,‘1’代表polar码,‘-1’代表LDPC码。
Step 2):训练参数:在训练阶段,本实施例中选用3层的DNN网络(512,256,128)来进行训练。训练的信息位k的长度为8,对于每一种码字,每一个长度为8的信息位对应于一个长度为N=16的码字。所以,遍历所有的码字需要2^8即256个长度为N的序列。两种码混合在一起就是512个序列。这一个长度为512的加入指示节的序列作为一个epoch,上一节提到了指示节的数目为1,即一个epoch的大小为512*17。训练时的epoch数量设置为5*104。设神经网络的输出为标签设置为原始未编码的信息比特b,损失函数选用MSE,即最小均方误差:
这样训练得到的模型用于测试,测试时选用单一码字分别进行测试。测试集则是选用了4*105个序列。
如图3所示,分别在polar和LDPC码之前加入了1到3位指示节,并且测试其误码率BER。由图可见,增加的指示节位数并不会导致误码率的明显下降,因此本实施例中将指示节的位数T设置为1。
测试结果:将本实施例中的联合深度学习译码器的方法和传统的BP译码分别进行了比较,结果如图4所示,从图中可以看出,使用联合译码器进行训练,并且使用polar码作为测试所得到的误码率要比传统的polar的BP译码在10-2的误码率量级上有0.1到0.2dB的误差。但是LDPC测试得到的误码率要比传统的LDPC的BP译码在10-2的误码率上有0.8dB的增益。
下表则是本实施例中将所提出的联合译码器训练,并且用polar,LDPC码单独进行测试与只分别训练polar,LDPC码并分别测试,以及polar,LDPC码分别使用BP译码的参数,吞吐量做了比较:
从表中可以看出,所提出的联合译码器的吞吐量要比传统的BP译码高了10的6次方的数量等级。并且网络参数也相比单独训练polar或LDPC只高了一点点。
上述具体实施可由本领域技术人员在不背离本发明原理和宗旨的前提下以不同的方式对其进行局部调整,本发明的保护范围以权利要求书为准且不由上述具体实施所限,在其范围内的各个实现方案均受本发明之约束。
Claims (1)
1.一种多码的深度学习译码器的实现方法,其特征在于,通过在两种不同的编码之前加入用于区分两种码字的指示节后对接收端深度神经网络进行训练,训练后的深度神经网络作为译码器,使用相同的权重同时学习两种不同的编码的编码方式,达到解码时网络吞吐量的提高;
所述的指示节是指:在两种不同的编码之前加入针对两种不同的编码的1和-1;
所述的神经网络的隐藏层的激活函数为ReLU,输出层的激活函数为sigmoid;损失函数为MSE;
所述的方法,其特征是,具体包括以下步骤:
步骤1)发送端的k位信息比特位b={b1,b2,..,bk}经过两种不同的编码方式分别编码,分别生成N位长度的编码后的比特xp={xp1,xp2,...,xpN},xl={xl1,xl2,...,xlN};
步骤2)将生成的两种不同的编码码字混合在一起,进行BPSK调制变为调制之后的信号s={s1,s2,...,sN},调制信号经发送端通过高斯信道之后在接收端处为y={y1,y2,...,yN};
步骤3)接收端在接收信号y之前根据不同码字加入不同的指示节I,以合并后的码字{y,I}作为DNN的输入,标签为原始信息比特b;
4.1)选用3层的DNN网络(512,256,128)来进行训练,训练的信息位k的长度为8,对于每一种码字,每一个长度为8的信息位对应于一个长度为N=16的码字;遍历所有的码字需要2^8即256个长度为N的序列,两种码混合在一起即512个序列,将长度为512的加入指示节的序列作为一个epoch,一个epoch的大小为512*17,训练时的epoch数量设置为5*104;
所述的DNN经训练后,采用4*105个序列作为测试集。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810742784.3A CN108809522B (zh) | 2018-07-09 | 2018-07-09 | 多码的深度学习译码器的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810742784.3A CN108809522B (zh) | 2018-07-09 | 2018-07-09 | 多码的深度学习译码器的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108809522A CN108809522A (zh) | 2018-11-13 |
CN108809522B true CN108809522B (zh) | 2021-09-14 |
Family
ID=64074797
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810742784.3A Active CN108809522B (zh) | 2018-07-09 | 2018-07-09 | 多码的深度学习译码器的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108809522B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109728824B (zh) * | 2018-12-06 | 2023-03-28 | 杭州电子科技大学 | 一种基于深度学习的ldpc码迭代译码方法 |
CN109921882B (zh) * | 2019-02-20 | 2021-08-27 | 深圳市宝链人工智能科技有限公司 | 一种基于深度学习的mimo解码方法、装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6141373A (en) * | 1996-11-15 | 2000-10-31 | Omnipoint Corporation | Preamble code structure and detection method and apparatus |
WO2009136247A1 (en) * | 2008-05-05 | 2009-11-12 | Thomson Licensing | Coded modulation with parallel concatenated gallager codes |
CN107729995A (zh) * | 2017-10-31 | 2018-02-23 | 中国科学院计算技术研究所 | 用于加速神经网络处理器的方法和系统及神经网络处理器 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3035286A1 (fr) * | 2015-04-17 | 2016-10-21 | Thales Sa | Procedes de codage et decodage a protection differenciee |
US9749089B2 (en) * | 2015-11-04 | 2017-08-29 | Mitsubishi Electric Research Laboratories, Inc. | Fast log-likelihood ratio (LLR) computation for decoding high-order and high-dimensional modulation schemes |
-
2018
- 2018-07-09 CN CN201810742784.3A patent/CN108809522B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6141373A (en) * | 1996-11-15 | 2000-10-31 | Omnipoint Corporation | Preamble code structure and detection method and apparatus |
WO2009136247A1 (en) * | 2008-05-05 | 2009-11-12 | Thomson Licensing | Coded modulation with parallel concatenated gallager codes |
CN107729995A (zh) * | 2017-10-31 | 2018-02-23 | 中国科学院计算技术研究所 | 用于加速神经网络处理器的方法和系统及神经网络处理器 |
Non-Patent Citations (2)
Title |
---|
Initial Results on Deep Learning for Joint Channel Equalization and Decoding;Hao Ye等;《IEEE》;20171231;第1-5页 * |
On Deep Learning-Based Channel Decoding;Tobias Gruber等;《IEEE》;20171231;第1-6页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108809522A (zh) | 2018-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107026656B (zh) | 一种基于扰动的CRC辅助中短码长Polar码有效译码方法 | |
KR101751497B1 (ko) | 행렬 네트워크 코딩을 사용하는 장치 및 방법 | |
CN102484483B (zh) | 设定迭代译码的迭代次数的方法、迭代译码装置及方法 | |
CN108809522B (zh) | 多码的深度学习译码器的实现方法 | |
JP2002509680A (ja) | 積符号の反復復号化 | |
CN109728824B (zh) | 一种基于深度学习的ldpc码迭代译码方法 | |
CN104079380B (zh) | 分布式联合信源‑信道叠加编码及联合译码方法 | |
US10892783B2 (en) | Apparatus and method for decoding polar codes | |
CN108777605B (zh) | 适用于块衰落信道的多链sc-ldpc编码方法 | |
CN114337933B (zh) | 基于scma的高速可见光通信系统及自适应编解码方法 | |
JP2022511771A (ja) | 符号化方法及び装置並びに復号化方法及び装置 | |
CN116436567A (zh) | 一种基于深度神经网络的语义通信方法 | |
CN1113499C (zh) | 解码信道编码信号的接收机解码器电路及其方法 | |
CN109617655B (zh) | 一种基于随机扰码辅助的极化码无线数据安全传输方法 | |
CN109787641B (zh) | staircase码的解码方法、装置及存储介质 | |
Li et al. | A channel coding benchmark for meta-learning | |
CN111786681B (zh) | 一种适用于cv-qkd系统数据后处理的级联译码方法 | |
US9496985B2 (en) | Decoding system and decoding method | |
CN107959650A (zh) | 一种面向低码率bch码的盲帧同步方法 | |
CN100486235C (zh) | 软信息保留的迭代接收方法 | |
US6134696A (en) | Encoding and decoding rate-1/n convolutional codes and their punctured versions | |
CN114696953B (zh) | 一种自由空间光通信的信道编码和译码方法 | |
CN111565291B (zh) | 一种无人机多基站图像传输方法 | |
CN110730009B (zh) | 一种基于深度学习的校验子输入rs码译码方法 | |
Liu et al. | Polar lattices are good for lossy compression |
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 |