A Polar code decoding method, device, electronic device, and computer-readable storage medium assisted by deep learning
Through deep neural network prediction of the wrong node position in polarization code decoding, and combining the specified position shift pruning technology, the existing polarization code decoding methods are solved, and efficient decoding performance is achieved.
Patent Information
- Application Number
- CN202211550829.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-05
- Publication Date
- 2025-06-17
- Estimated Expiration
- 2042-12-05
AI Technical Summary
The existing polarization coding decoding methods are difficult to achieve ideal error correction performance under high signal-to-noise ratio, and the calculation complexity is high, and multiple decoding is required to achieve ideal results.
By establishing a deep neural network model, predict the position of the bit node of the information that is lost in the correct path in SCL decoding, and perform the second decoding with the SCL decoder with the specified position shift pruning to improve the decoding performance.
On the basis of performing only one additional decoding, the performance of the decoder is greatly improved, and the effect similar to that of a high-performance CA-SCL decoder can be achieved.
Smart Images

Figure CN115720095B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of electronic communication, and particularly relates to a polar code decoding method, device, electronic device and computer-readable storage medium assisted by deep learning. Background Art
[0002] The polar code proposed by Professor Arikan is the first channel code that has been strictly proven to achieve the capacity of the binary symmetric channel. However, the SC decoding of polar codes far from reaches the theoretical error correction performance. To solve this problem, an SCL decoder has been proposed, whose decoding performance can approach the maximum likelihood decoding performance in the case of high signal-to-noise ratio. At the same time, concatenating the information bits with cyclic redundancy check (CRC) can significantly improve the decoding performance.
[0003] When an error occurs in SC decoding, we can try to correct the error in additional decoding. One method is to use SCF decoding to flip the bits at low-reliability positions, which can, to a certain extent, prevent the error propagation of SC decoding and also has an effect on SCL decoding, but the computational complexity is very high. Later, a shift pruning operation was proposed for SCL decoding, that is, shifting the window at low-reliability positions. This scheme can achieve better performance and does not require additional space. It can exceed the performance of the bit flipping scheme with fewer attempts, so it can reduce a certain amount of computational complexity.
[0004] Although the above methods have been improved in performance to a certain extent, they often require multiple decodings to achieve the ideal result. Therefore, how to obtain better performance improvement with as few attempts as possible is one of the research focuses of post-decoding processing. Summary of the Invention
[0005] The main purpose of the present invention is to accurately estimate the information bit nodes where the correct path is lost in the first run of SCL decoding by using a deep neural network, and combine with an SCL decoder that can specify position shift pruning to perform decoding again, and finally achieve excellent decoding performance.
[0006] To achieve the above object, the present invention provides a polar code decoding method assisted by neural network post-processing, including the following steps:
[0007] Step 1) Establish a data set;
[0008] Step 2) Given pre-training of the neural network model: Use a large amount of labeled data collected from the above data set to train the given neural network model, and stop training when the inference of the training model has a high degree of fit with the labels in the data set, and complete the model training;
[0009] Step 3) First SCL decoding: First, perform the first SCL decoding. If the decoding result can pass the CRC check, it is considered that the decoding is successful, and the path passing the CRC check is output as the decoding output; otherwise, proceed to the next step 4).
[0010] Step 4) Neural network predicts the error decoding position: Use the path metric tensor value obtained in step 3) as the input of the neural network model, and the neural network model predicts and outputs an estimate of the position where the correct path is removed.
[0011] Step 5) Second SCL decoding: According to the soft information of the bits to be decoded received by the channel and the removed position predicted in step 4), execute a specified position shift pruning SCL decoder, that is, for the specified decoding node position, the SCL decoder discards the first L of the 2L split paths and retains the last L paths as the set of subsequent decoding paths; for other decoding node positions, normally retain the first L paths as the set of subsequent decoding paths; and
[0012] Step 6) Determine whether the L paths output by the specified position shift pruning SCL decoding pass the cyclic redundancy CRC check. If so, output the path passing the CRC check as the decoding output; otherwise, output the first path as the output; the decoding terminates.
[0013] A further improvement of the present invention is that step 1) further includes the following steps:
[0014] Step 1.1 Input the log-likelihood ratio LLR and the source codeword into the decoder for decoding.
[0015] Step 1.2 During the decoding process, for each decoded codeword bit, compare the source codeword with the first L decoding paths in the current List. If there is no matching path, store the 2L path metric tensors as X and the current information bit node position as label Y, and run until the program ends.
[0016] A further improvement of the present invention is that the pre-training method of the neural network model includes the following steps:
[0017] Step 2.1 Establish a data set of the failure positions of polar code SCL decoding: Repeatedly run the SCL decoding process at the working signal-to-noise ratio, collect a sufficient amount of labeled data, and form a data set.
[0018] Step 2.2 According to the data set established in step 1), characterized in that: (X, Y) is used as a set of labeled data, where X is an L×K-dimensional PM tensor formed by the L decoding path metrics PM collected during the polar code SCL decoding process, and Y is the information bit node position where the correct path is removed from the L paths of the SCL decoder.
[0019] Step 2.3 Select a neural network model and perform the following training process on the selected neural network model: Initialize the parameters of the neural network model, train the neural network model using the labeled dataset collected in step 1), and stop training when the inference of the trained model has a high degree of fit with the label Y in the dataset, thus completing the model training.
[0020] To achieve the above invention objectives, the present invention also provides a polar code decoding device based on neural network assisted post-processing, including:
[0021] A dataset module, configured to establish a dataset of the failure positions of polar code SCL decoding, repeatedly run the SCL decoding process based on Monte Carlo simulation at the working signal-to-noise ratio, collect a sufficient amount of labeled data, and form a dataset;
[0022] A pre-training module for the neural network model, configured to train the neural network model using a large amount of labeled data collected by the above dataset module, and stop training when the inference of the trained model has a high degree of fit with the label in the dataset, thus completing the model training;
[0023] A first SCL decoding module, configured to perform the first SCL decoding to determine whether the decoding result can pass the CRC check;
[0024] A neural network error decoding position prediction module, configured to predict the position where the correct path is removed;
[0025] A second SCL decoding module, configured to execute a specified position shift pruning SCL decoder according to the soft information of the bits to be decoded received by the channel and the predicted removed position.
[0026] The further improvement of the present invention lies in that the second SCL decoding module includes: for the specified decoding node position, the SCL decoder discards the first L paths among the 2L paths obtained by splitting, and retains the last L paths as the set of subsequent decoding paths; for other decoding node positions, the first L paths are normally retained as the set of subsequent decoding paths.
[0027] To achieve the above invention objectives, the present invention also provides an electronic device, including:
[0028] A processor; and
[0029] A memory, configured to store executable instructions of the processor;
[0030] Wherein, the processor is configured to execute the foregoing method by executing the executable instructions.
[0031] To achieve the above invention objectives, the present invention also provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the foregoing method is implemented.
[0032] The beneficial effects of the present invention are as follows: Compared with other post-processing methods, the performance of the decoder is greatly improved on the basis of only performing one additional decoding. Description of the Drawings
[0033] Figure 1 It is a graph of the number of data sets collected;
[0034] Figure 2 It is a decoding flow chart;
[0035] Figure 3 It is a performance simulation graph. Detailed Implementation Manner
[0036] In order to make the objectives, technical solutions, and advantages of the present invention clearer, the present invention will be described in detail below with reference to the drawings and specific embodiments.
[0037] It should be emphasized that during the description of the present invention, various formulas and constraints are distinguished by using consistent labels before and after, but it does not exclude using different labels to denote the same formula and / or constraint. The purpose of this setting is to more clearly illustrate the features of the present invention.
[0038] The present invention takes the polar code with a code rate of 1 / 2 as an example to describe in detail a polar code decoding method based on neural network-assisted post-processing provided by the present invention.
[0039] For a Polar code with a code rate of 1 / 2, its code length is N = 128, the information bit length is K = 64, the CRC check bit length is 8, and the list length of SCL decoding is L = 32; the auxiliary neural network uses a ResNet18 neural network. Of course, other neural networks can also be selected for the auxiliary neural network, which is not limited here.
[0040] A method for collecting a data set includes the following steps:
[0041] 1) Input the log-likelihood ratio LLR and the source codeword together into the decoder for decoding;
[0042] 2) During the decoding process, for each decoded codeword, compare the source codeword with the first 32 decoding paths in the current List. If there is no matching path, store the 64 path metric tensors as X and the current information bit node position as label Y, and run until the program ends.
[0043] As Figure 1 shown, it is the details of data collection for this embodiment.
[0044] As Figure 2As shown in the figure, a polarization code decoding method based on neural network assisted post - processing includes the following steps:
[0045] 1) Pre - training of the ResNet18 neural network model: Use a large amount of labeled data collected from the above - mentioned dataset to train the ResNet18 neural network model. Stop training when the inference of the training model has a high degree of fit with the label Y in the dataset, and complete the model training;
[0046] 2) First SCL decoding: First, perform the first SCL decoding. If the decoding result can pass the CRC check, it is considered that the decoding is successful, and the path passing the CRC check is output as the decoding output; otherwise, execute the next step 3);
[0047] 3) ResNet18 neural network predicts the error decoding position: Use the path metric tensor value obtained in step 3) as the input of the ResNet18 neural network model, and the neural network model predicts and outputs an estimate of the position where the correct path is removed;
[0048] 4) Second SCL decoding: According to the soft information of the bits to be decoded received by the channel and the removed position predicted in step 3), execute a specified - position shift pruning SCL decoder, that is, for the specified decoding node position, the SCL decoder discards the first 32 of the 64 split paths and retains the last 32 paths as the set of subsequent decoding paths; for other decoding node positions, normally retain the first L paths as the set of subsequent decoding paths.
[0049] In this embodiment, mainly through the powerful learning ability of the ResNet18 neural network, it can more accurately predict the position where the correct path is removed in the first SCL decoding. Then, in the second SCL decoding, shift pruning is performed at the specified position, thereby greatly improving its decoding performance. The performance of the post - processing decoder assisted by the neural network can already reach that of the CA - SCL decoder with a list size of 128 at the signal - to - noise ratio where there is dataset training. At other signal - to - noise ratio positions, it can still exceed the CA - SCL decoder with a list size of 64. Compared with other post - processing methods, the present invention greatly improves the performance of the decoder on the basis of only performing one additional decoding.
[0050] As Figure 3 shown, it is the performance details of this embodiment.
[0051] The pre - training method of the ResNet18 neural network model includes the following steps:
[0052] 1) Establish a dataset of the failure positions of polarization code SCL decoding: Repeatedly run the SCL decoding process at the working signal - to - noise ratio, collect a sufficient amount of labeled data, and form a dataset;
[0053] 2) Based on the dataset established in step 1), taking (X, Y) as a set of labeled data, where X is an L×K-dimensional PM tensor formed by L path metric PMs collected during the SCL decoding process of the polar code, and Y is the position of the information bit nodes where the correct path is removed from the L paths of the SCL decoder;
[0054] 3) Select a neural network model and perform the following training process on the selected neural network model: Initialize the parameters of the neural network model, train the neural network model using the labeled dataset collected in step 1), and stop training when the inference of the trained model has a high degree of fit with the label Y in the dataset to complete the model training.
[0055] In summary, a neural network-assisted SCL decoding method for polar codes of the present invention includes the following steps:
[0056] 1) Obtain the soft information of N bits to be decoded, where N is the code length;
[0057] 2) Perform the SCL decoding process on the soft information to be decoded. At the same time, traverse the information nodes during the SCL decoding process to collect L path metric PMs to form an L×K-dimensional PM tensor, and output the L paths of the SCL decoding and the L×K-dimensional PM tensor, where L is the number of retained paths of the SCL decoding, and K is the number of information nodes of the polar code;
[0058] 3) Determine whether the L paths output by the SCL decoding pass the cyclic redundancy CRC check. If so, the decoding terminates, and the paths passing the CRC check are output as the decoding output; otherwise, perform the next step 4);
[0059] 4) Use the L×K-dimensional PM tensor generated in step 2) as the input of the trained neural network model. The neural network model predicts the position where the correct path is removed during the SCL decoding process and outputs an estimate of the position where the correct path is removed.
[0060] 5) According to the soft information of the bits to be decoded obtained in step 1) and the removed position predicted in step 4), execute an SCL decoder with specified position shift pruning, where the specified position is set to the removed position predicted in step 4);
[0061] 6) The SCL decoder with specified position shift pruning in step 5) performs the following operations: For the specified decoding node position, the SCL decoder discards the first L of the 2L paths obtained by splitting and retains the last L paths as the set of subsequent decoding paths; for other decoding node positions, the rules of the SCL decoder remain unchanged, that is, the first L of the 2L paths obtained by splitting are normally retained as the set of subsequent decoding paths;
[0062] 7) Determine whether the L paths output by the specified - position shifted pruning SCL decoding pass the cyclic redundancy CRC check. If so, output the paths that pass the CRC check as the decoding output; otherwise, output the first path as the output; and terminate the decoding.
[0063] The present invention also provides a polar code decoding device based on neural - network - assisted post - processing, including: a data - set module for establishing a data set of the positions where the SCL decoding of the polar code fails. Based on Monte Carlo simulation at the working signal - to - noise ratio, repeatedly run the SCL decoding process, collect a sufficient amount of labeled data, and form a data set; a pre - training module of the ResNet18 neural - network model for training the ResNet18 model using a large amount of labeled data collected by the above - mentioned data - set module. Stop training when the fitting degree between the inference of the trained model and the labels in the data set is relatively high to complete the model training; a first SCL decoding module for performing the first SCL decoding to determine whether the decoding result can pass the CRC check; an incorrect - decoding - position prediction module of the ResNet18 neural network for predicting the positions where the correct paths are removed; and a second SCL decoding module for performing a specified - position shifted pruning SCL decoder according to the soft information of the bits to be decoded received by the channel and the predicted removed positions.
[0064] The second SCL decoding module includes: for the specified decoding - node positions, the SCL decoder discards the first L paths among the 2L split paths and retains the last L paths as the set of subsequent decoding paths; for other decoding - node positions, normally retain the first L paths as the set of subsequent decoding paths.
[0065] The present invention also provides an electronic device, including a processor and a memory. The memory is used to store the executable instructions of the processor; the processor is configured to execute the foregoing method by executing the executable instructions.
[0066] The present invention also provides a computer - readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the foregoing method is implemented.
[0067] The beneficial effects of the present invention are as follows: Compared with other post - processing methods, on the basis of only performing one additional decoding, the performance of the decoder is greatly improved.
[0068] The above embodiments are only used to illustrate the technical solutions of the present invention and not to limit them. Although the present invention has been described in detail with reference to the preferred embodiments, those of ordinary skill in the art should understand that the technical solutions of the present invention can be modified or equivalently replaced without departing from the spirit and scope of the technical solutions of the present invention.
Claims
1. A neural network-assisted polar code decoding method, characterized in that, It includes the following steps: Step 1) Establish a data set; Step 2) Given pre-training of the neural network model: Use a large amount of labeled data collected from the above data set to train the given neural network model, and stop training when the inference of the training model has a relatively high degree of fit with the labels in the data set, and complete the model training; Step 3) First SCL decoding: First perform the first SCL decoding. If the decoding result can pass the CRC check, it is considered that the decoding is successful, and the path passing the CRC check is output as the decoding output; otherwise, execute the next step 4); Step 4) The neural network predicts the error decoding position: Use the path metric tensor value obtained in step 3) as the input of the neural network model, and the neural network model predicts and outputs an estimate of the position where the correct path is removed; Step 5) Second SCL decoding: According to the soft information of the bits to be decoded received by the channel and the removed position predicted in step 4), execute a specified position shift pruning SCL decoder, that is, for the specified decoding node position, the SCL decoder discards the first L of the 2L split paths and retains the last L paths as the set of subsequent decoding paths; for other decoding node positions, normally retain the first L paths as the set of subsequent decoding paths; And Step 6) Determine whether the L paths output by the specified position shift pruning SCL decoding pass the cyclic redundancy CRC check. If so, output the paths passing the CRC check as the decoding output; otherwise, output the first path as the output; the decoding terminates.
2. The method according to claim 1, characterized in that: Step 1) further includes the following steps: Step 1.1 Input the log-likelihood ratio LLR and the source code word into the decoder for decoding; Step 1.2 During the decoding process, every time a code word is decoded, compare the source code word with the first L decoding paths in the current List. If there is no matching path, store the 2L path metric tensors as X and the current information bit node position as label Y, and run until the program ends.
3. The method according to claim 2, characterized in that: The pre-training method of the neural network model includes the following steps: Step 2.1 Establish a data set of the failure positions of polar code SCL decoding: Repeatedly run the SCL decoding process at the working signal-to-noise ratio, collect sufficient labeled data, and form a data set; Step 2.2 According to the data set established in step 1), it is characterized in that: (X, Y) is used as a set of labeled data, X is an L×K-dimensional PM tensor formed by the L decoding path metrics PM collected during the polar code SCL decoding process, and Y is the information bit node position where the correct path is removed from the L paths of the SCL decoder; Step 2.3 Select a neural network model, and perform the following training process on the selected neural network model: Initialize the parameters of the neural network model, use the labeled data set collected in step 1) to train the neural network model, and stop training when the inference of the training model has a relatively high degree of fit with the label Y in the data set, and complete the model training.
4. A neural network-assisted post-processing polar code decoding device, characterized in that, It includes: A data set module for establishing a data set of the failure positions of polar code SCL decoding, repeatedly running the SCL decoding process based on Monte Carlo simulation at the working signal-to-noise ratio, collecting sufficient labeled data, and forming a data set; The pre-training module of the neural network model is used to train the neural network model using a large amount of labeled data collected by the above dataset module, and stop training when the fitting degree between the inference of the trained model and the labels in the dataset is relatively high, thus completing the model training; The first SCL decoding module is used to perform the first SCL decoding to determine whether the decoding result can pass the CRC check; The error decoding position prediction module of the neural network is used to predict the position where the correct path is removed from the output; The second SCL decoding module is used to execute a specified position shift pruning SCL decoder according to the soft information of the bits to be decoded received by the channel and the predicted removed position; The second SCL decoding module includes: for the specified decoding node position, the SCL decoder discards the first L paths among the 2L paths obtained by splitting, and retains the last L paths as the set of subsequent decoding paths; for other decoding node positions, the first L paths are normally retained as the set of subsequent decoding paths.
5. An electronic device, characterized in that, Comprising: A processor; And A memory for storing the executable instructions of the processor; Wherein, the processor is configured to execute the method described in any one of claims 1 to 3 by executing the executable instructions.
6. A computer-readable storage medium, on which a computer program is stored, characterized in that, When the computer program is executed by the processor, it implements the method described in any one of claims 1 to 3.