# Neural-Network-Assisted Polar Code Decoding Schemes
###### Abstract  
The traditional fast successive-cancellation (SC) decoding algorithm can effectively reduce the decoding steps, but the decoding adopts a sub-optimal algorithm, so it cannot improve the bit error performance. In order to improve the bit error performance while maintaining low decoding steps, we introduce a neural network subcode that can achieve optimal decoding performance and combine it with the traditional fast SC decoding algorithm. While exploring how to combine neural network node (NNN) with R1, R0, single-parity checks (SPC), and Rep, we find that the decoding failed sometimes when the NNN was not the last subcode. To solve the problem, we propose two neural network-assisted decoding schemes: a key-bit-based subcode NN-assisted decoding (KSNNAD) scheme and a last subcode NN-assisted decoding (LSNNAD) scheme. The LSNNAD scheme recognizes the last subcode as an NNN, and the NNN with nearly optimal decoding performance gives rise to some performance improvements. To further improve performance, the KSNNAD scheme recognizes the subcode with a key bit as an NNN and changes the training data and label accordingly. Computer simulation results confirm that the two schemes can effectively reduce the decoding steps, and their bit error rates (BERs) are lower than those of the successive-cancellation decoder (SCD). polar code; neural network; decoder +
Footnote †: journal:  
decoder. The denoiser used a multi-layer perceptron (MLP) [21], a convolutional neural network (CNN) [22], and a recurrent neural network (RNN) [23], while the decoder used a CNN [24]. The decoding performances nearly reached those of a traditional successive cancelation list (SCL) [25] algorithm when the code length was less than 32. In terms of reducing decoding complexity, [PERSON], [PERSON] et al. applied a neural network to polar code decoding, but the application was only used for limited code length [26]. [PERSON], [PERSON] et al. used the deep learning algorithm to reduce the complexity of the SC algorithm [27]. However, all of them cannot be directly applied to decoding longer polar codes. To apply the machine learning in polar code decoding, researchers combine machine learning with traditional polar decoding algorithms. There are many combinations of BP algorithm and machine learning. In terms of reducing the complexity, [PERSON], [PERSON] et al. proposed a neural network BP decoder that can be executed at any code length, which reduced the decoding bit error rate (BER) and saved 50% of the hardware cost [28]. [PERSON], [PERSON] et al. proposed a segmentation decoding scheme based on neural networks, which complied with the BP decoding law and divided polar codes into single-parity checks (SPCs) and repetition code (RC) nodes and decoded them using a neural network to achieve the same bit error performance as the SC and BP algorithms with lower complexity [29]. In terms of improving decoding performance, [PERSON], [PERSON] et al. used the check relationship between the cyclic redundancy check (CRC) remainder and the decoding result to propose a comprehensive loss function of polar code frozen bits, which realized the unsupervised decoding of the polar codes, and the decoding performance was better than that of the traditional BP decoding algorithm [30]. [PERSON], [PERSON] et al. proposed a BP structure similar to the res-net network, which achieved better decoding performance than the standard BP algorithm [31]. In terms of simultaneously improving decoding performance and reducing complexity, [PERSON], [PERSON] et al. used deep learning to improve the decoding performance of the BP algorithm and used lower computational complexity to achieve a bit error performance close to that of the CRC-aided SCL (CA-SCL) algorithm [32]. The SC algorithm and machine learning are less frequently combined. [PERSON], [PERSON] et al. divided the polar code into equal-length nodes and decoded them using neural networks [33] and obtained a lower complexity than [29].