Neural network aided polar code decoding method and device based on key bits
By dividing polar codes into key bit neural network subcodes and traditional subcodes, and using neural network training models for decoding, the problems of high decoding complexity and low accuracy in existing technologies are solved, and efficient decoding performance is improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- NAVAL AVIATION UNIV
- Filing Date
- 2022-10-14
- Publication Date
- 2026-06-19
AI Technical Summary
Existing polar code decoding algorithms cannot simultaneously reduce complexity and improve decoding accuracy. Traditional deep learning methods have significant complexity limitations in long code decoding and cannot effectively improve SC decoding algorithms.
Polar codes are divided into key bit neural network subcodes (KSNNN) and traditional subcodes. The decoding model is trained using neural networks. The subcode type is identified by an improved binary subcode partitioning method. The corresponding model is called for maximum likelihood decoding during decoding.
While reducing decoding complexity, decoding accuracy is improved. Simulation results show that the bit error rate is reduced and the computation time is decreased.
Smart Images

Figure CN115694515B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of wireless communication. Background Technology
[0002] As the only channel coding system currently proven to reach the Shannon limit, polar codes are crucial for 5G and future 6G communications. To reduce interference during communication and enable automatic error checking or correction capabilities to improve data transmission reliability, channel coding techniques are widely used in various wireless communication systems. Commonly used coding techniques include Reed-Solomon (RS) codes, low-density parity-check (LDPC) codes, Turbo codes, Bose-Chaudhuri-Hocquenghem (BCH) codes, convolutional codes, and polar codes. Among these, polar codes have been rigorously proven to reach the Shannon limit in binary discrete memoryless channels (B-DMC) and binary erasure channels (BEC) when the code length approaches infinity. Due to their superior short-code performance, polar codes were selected as the control channel coding scheme for 5G enhanced mobile broadband (eMBB) scenarios at the 2016 3GPP RAN1#87 meeting, making improving their decoding performance a significant research opportunity.
[0003] In the field of wireless communication, the decoding problem of polar codes has received widespread attention both domestically and internationally. From traditional belief propagation (BP) and successive-cancellation (SC) algorithms, to early-stop BP algorithms, low-complexity BP algorithms, and fast SC decoding schemes to reduce decoding complexity, and further to successive-cancellation lists (SCL), successive-cancellation stacks, and CRC-assisted decoding algorithms to improve decoding performance, these improvements to traditional algorithms can only reduce decoding complexity or improve decoding performance; they cannot simultaneously address the needs for improved communication quality and reduced latency.
[0004] The development of traditional polar code decoding algorithms has reached a theoretical bottleneck, and algorithm improvements cannot simultaneously reduce complexity and improve decoding accuracy. Using neural network algorithms as polar code decoders cannot be directly applied to long codes due to complexity limitations. The combination of deep learning and traditional algorithms is mostly focused on the BP algorithm, with few improvements to the classic SC decoding algorithm using deep learning, which mainly focuses on reducing complexity. The problem to be solved in this application is how to use deep learning to improve the SC algorithm and achieve both reduced decoding complexity and improved decoding accuracy. Summary of the Invention
[0005] The present invention aims to at least partially solve one of the technical problems in the related art.
[0006] Therefore, the purpose of this invention is to propose a neural network-assisted polar code decoding method based on key bits, which can improve decoding accuracy while reducing the decoding complexity of polar codes.
[0007] To achieve the above objectives, a first aspect of the present invention proposes a neural network-assisted polar code decoding method based on key bits, comprising:
[0008] Obtain a set of soft-decision sequences for polar codes under different parameters;
[0009] The polar codes in the set are divided into a combination of KSNNN subcodes and traditional subcodes according to the improved binary code partitioning method, wherein the traditional subcodes include R-1 code, R-0 code, SPC code, and Rep code;
[0010] The decoding model of the KSNNN subcode is trained using a neural network;
[0011] Obtain the polar code soft decision sequence with determined parameters, determine the sub-code type of the polar code soft decision sequence according to the improved binary sub-code partitioning method, call the decoding model to decode when the polar code to be identified is KSNNN, and directly perform maximum likelihood decoding when the polar code to be identified is a traditional sub-code.
[0012] In addition, the neural network-assisted polar code decoding method based on key bits according to the above embodiments of the present invention may also have the following additional technical features:
[0013] Furthermore, in one embodiment of the present invention, the improved binary code partitioning method includes:
[0014] Define the length of the polar code sequence to be identified as N, and Pos as the position of the first information bit;
[0015] The polar code to be identified is identified. If it is determined that Pos is in the polar code to be identified and N is less than 32, then the polar code to be identified is KSNNN.
[0016] The decoding model is invoked for decoding.
[0017] Furthermore, in one embodiment of the present invention, after identifying the polar code to be identified, the method further includes:
[0018] When it is determined that Pos is not among the polar codes to be identified, it is determined whether the polar code to be identified is one of R-1 code, R-0 code, SPC code, and Rep code;
[0019] When the polar code to be identified is one of R-1 code, R-0 code, SPC code and Rep code, it is divided into the corresponding sub-code;
[0020] Perform maximum likelihood decoding directly.
[0021] Furthermore, in one embodiment of the present invention, it further includes:
[0022] If the polar code to be identified is not one of R-1 code, R-0 code, SPC code, or Rep code, the identification of the first half and the second half of the polar code sequence to be identified continues.
[0023] Furthermore, in one embodiment of the present invention, the neural network structure consists of a modulation layer, a noise layer, and a decoding layer, wherein the modulation layer and the noise layer are both custom function layers generated using tensorfow2.
[0024] To achieve the above objectives, a second aspect of the present invention provides a neural network-assisted polar code decoding device based on key bits, comprising the following modules:
[0025] The acquisition module is used to acquire a set of polar code soft decision sequences under different parameters;
[0026] The partitioning module is used to partition the polar codes in the set into a combination of KSNNN subcodes and traditional subcodes according to the improved binary subcode partitioning method, wherein the traditional subcodes include R-1 codes, R-0 codes, SPC codes, and Rep codes;
[0027] The training module is used to train a decoding model for the KSNNN subcode using a neural network;
[0028] The decoding module is used to acquire the polar code soft decision sequence with determined parameters, determine the sub-code type of the polar code soft decision sequence according to the improved binary sub-code partitioning method, call the decoding model to perform decoding when the polar code to be identified is KSNNN, and directly perform maximum likelihood decoding when the polar code to be identified is a traditional sub-code.
[0029] Furthermore, in one embodiment of the present invention, the partitioning module is further configured to:
[0030] Define the length of the polar code sequence to be identified as N, and Pos as the position of the first information bit;
[0031] The polar code to be identified is identified. If it is determined that Pos is in the polar code to be identified and N is less than 32, then the polar code to be identified is KSNNN.
[0032] The decoding model is invoked to perform decoding;
[0033] When it is determined that Pos is not among the polar codes to be identified, it is determined whether the polar code to be identified is one of R-1 code, R-0 code, SPC code, and Rep code;
[0034] When the polar code to be identified is one of R-1 code, R-0 code, SPC code and Rep code, it is divided into the corresponding sub-code;
[0035] Perform maximum likelihood decoding directly;
[0036] If the polar code to be identified is not one of R-1 code, R-0 code, SPC code, or Rep code, the identification of the first half and the second half of the polar code sequence to be identified continues.
[0037] To achieve the above objectives, a third aspect of the present invention provides a computer device, characterized in that it includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, it implements a neural network-assisted polar code decoding method based on key bits as described above.
[0038] To achieve the above objectives, a fourth aspect of the present invention provides a computer-readable storage medium having a computer program stored thereon, characterized in that the computer program, when executed by a processor, implements a neural network-assisted polar code decoding method based on key bits as described above.
[0039] The neural network-assisted polar code decoding method based on key bits proposed in this invention divides the long polar code into combinations of KSNNN, R-1, R-0, SPC, and Rep codes according to a subcode partitioning scheme. Then, a KSNNN model is trained using a neural network based on different KSNNN forms. Finally, these models are called during the decoding stage for fast decoding. Since the training and model storage processes can be completed offline in advance, computation time is significantly reduced. Simulation results verify the effectiveness of the decoding scheme; compared with SCD, this decoding scheme reduces both the decoding error rate and decoding complexity. Attached Figure Description
[0040] The above and / or additional aspects and advantages of the present invention will become apparent and readily understood from the following description of the embodiments taken in conjunction with the accompanying drawings, wherein:
[0041] Figure 1 This is a schematic flowchart of a neural network-assisted polar code decoding method based on key bits, provided in an embodiment of the present invention.
[0042] Figure 2 This is a schematic diagram of a neural network-assisted polar code decoding system model based on key bits, provided in an embodiment of the present invention.
[0043] Figure 3 The flowchart illustrates an improved subcode partitioning algorithm for identifying KSNNNs, as provided in an embodiment of the present invention.
[0044] Figure 4 This is a schematic diagram of a decoding process based on the combination of KSNNN and traditional subcodes, provided as an embodiment of the present invention.
[0045] Figure 5 This is a schematic diagram of a KSNNN training method provided in an embodiment of the present invention.
[0046] Figure 6 This is a schematic diagram illustrating the performance of NNN decoding provided in an embodiment of the present invention.
[0047] Figure 7 This is a schematic diagram illustrating the technical route of a neural network-assisted polar code decoding method based on key bits, provided in an embodiment of the present invention.
[0048] Figure 8 This is a schematic diagram illustrating the performance of an algorithm with different bitrates provided in an embodiment of the present invention.
[0049] Figure 9 This is a schematic diagram illustrating the decoding performance of different code lengths provided in an embodiment of the present invention.
[0050] Figure 10This is a schematic diagram comparing different algorithms provided in an embodiment of the present invention.
[0051] Figure 11 This is a schematic diagram of the decoding result under a Rayleigh fading channel provided in an embodiment of the present invention.
[0052] Figure 12 This is a schematic diagram of a neural network-assisted polar code decoding device based on key bits, provided in an embodiment of the present invention. Detailed Implementation
[0053] Embodiments of the present invention are described in detail below, examples of which are illustrated in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain the present invention, and should not be construed as limiting the present invention.
[0054] The following describes a neural network-assisted polar code decoding method based on key bits, according to an embodiment of the present invention, with reference to the accompanying drawings.
[0055] Example 1
[0056] Figure 1 This is a flowchart illustrating a neural network-assisted polar code decoding method based on key bits, provided in an embodiment of the present invention.
[0057] like Figure 1 As shown, this neural network-assisted polar code decoding method based on key bits includes the following steps:
[0058] S101: Obtain a set of soft decision sequences for polar codes under different parameters;
[0059] The most classic decoding algorithm for polar codes is the SC decoding algorithm. This algorithm strictly follows the recursive structure of polar codes, but it is prone to error propagation, resulting in less than ideal performance. The first error is highly likely to occur at the first information bit position, therefore this position is defined as the critical bit.
[0060] like Figure 1 As shown, let the polar code length be N and the information bit length be K, then the sequence to be encoded... The sequence is obtained after polar code encoding. The signal is obtained after BPSK modulation and AWGN channel. Finally, after decoding, we get... like Figure 2 As shown, the decoding scheme proposed in this invention utilizes soft decision information, and the demodulation process is completed before subcode recognition, which is not shown separately in the block diagram.
[0061] S102: Divide the polar codes in the set into a combination of KSNNN subcodes and traditional subcodes according to the improved binary code partitioning method, wherein the traditional subcodes include R-1 codes, R-0 codes, SPC codes, and Rep codes;
[0062] The first error in a polar code most likely occurs at the position of the first information bit. The simplest idea is to choose the position where the first information bit of the polar code appears as the first position of the neural network subcode, let's say that position is Pos, and the subcode length is N. S Then the position of the last bit of the subcode in the original polar code is Pos+N. S However, Pos is not always the exact first position in the KSNNN; it might be in the middle. The next step is to consider how to divide the original polar code into a combination of neural network subcodes and the other four traditional subcodes. Considering complexity, the actual required length of the polar code subcode is N. S ≤16, if the binary division method is directly used to divide the subcode, then for a polar code of length N, the length of NNN is NNN S The possible range of 2 to N obviously does not meet the algorithm requirements. Therefore, additional conditions need to be set to limit the subcode length. The algorithm flowchart is as follows: Figure 3 As shown.
[0063] Furthermore, in one embodiment of the present invention, the improved binary code partitioning method includes:
[0064] Define the length of the polar code sequence to be identified as N, and Pos as the position of the first information bit;
[0065] The polar code to be identified is identified. If it is determined that Pos is in the polar code to be identified and N is less than 32, then the polar code to be identified is KSNNN.
[0066] The decoding model is invoked for decoding.
[0067] Furthermore, in one embodiment of the present invention, after identifying the polar code to be identified, the method further includes:
[0068] When it is determined that Pos is not among the polar codes to be identified, it is determined whether the polar code to be identified is one of the R-1 code, R-0 code, SPC code, and Rep code.
[0069] When the polar code to be identified is one of R-1 code, R-0 code, SPC code and Rep code, it is divided into the corresponding sub-code;
[0070] Perform maximum likelihood decoding directly.
[0071] Furthermore, in one embodiment of the present invention, it further includes:
[0072] If the polar code to be identified is not one of the R-1 code, R-0 code, SPC code, or Rep code, continue to identify the first half and the second half of the polar code sequence to be identified.
[0073] Specifically, such as Figure 3 As shown, the initial input N is the code length to be decoded, which is also the initial input length of D and I. In the bit position vector D in the input box, 1 indicates that the position is an information bit, and 0 indicates that the position is a frozen bit. The initial content of the tag vector I is 0 to N-1, which represents the position of the current processing sequence. Its first element I[0] represents the starting position of the current code. N Z The starting position of the last subcode is fixed when the total code length and the length of NNN are determined, where NNN is of length N. S At that time, N Z =NN S The values remain constant during the calculation. N, D, and I continuously change during the flowchart calculation, where D(0:N / 2) represents the first half of the D sequence, and D(N / 2:N) represents the second half. The output Re is a five-dimensional matrix, with the first to fifth dimensions representing the subcode type, subcode start position, number of subcode information bits, subcode length, and subcode information bit position, respectively. During subcode partitioning, the decoding depth of each subcode, i.e., its position in the SC decoding tree, is recorded.
[0074] Assuming the polar code sequence to be identified has a length of N, and Pos is the position of the first information bit, a recursive process is used for subcode partitioning. First, the entire polar code of length N is identified, and it is determined whether Pos is present in the current code. If it is, and N is less than 32, then the subcode is a KSNNN. If not, it is further determined whether the code is one of Rep, R1, R0, or SPC. If it is, the decoding model is directly called for decoding. If not, the first and second halves of the sequence are identified, and the above process is repeated until the original code is completely decomposed into a set of subcodes. Although the identification process is recursive, performing only one recursive calculation does not introduce excessive computational complexity. This method of using half of the original sequence in the recursive operation to identify subcodes is called the binary subcode partitioning method.
[0075] Taking the polar code with N=32 as an example, according to Figure 3 The algorithm flowchart shown illustrates the subcode partitioning result and decoding process after subcode partitioning. Figure 4As shown, it is easy to see that the structure of KSNNN at this time is R-0(8)+Rep(4)+SPC(4), and the subcode structure of the original polar code is KSNNN(16)+Rep(4)+SPC(4)+R-1(8). In the actual execution process, the subcode classification program is executed first to record all possible forms of KSNNN, and the model is trained and saved for each specific form and all possible cases. In the final decoding stage, the model is called for the specific form of KSNNN. The decoding process based on the combination of KSNNN and traditional subcode is shown in the figure below. Figure 4 As shown.
[0076] S103: Train a decoding model for the KSNNN subcode using a neural network;
[0077] Neural network polar code subcodes, also known as neural network nodes (NNNs), can theoretically replace polar code decoders after being trained with sufficient sample data and obtaining appropriate weight parameters. However, like the original traditional decoding algorithms, the training complexity of neural networks increases exponentially with the polar code length. Furthermore, when a neural network is used as a classifier in decoding, the number of classes to be distinguished increases exponentially with the increase of information bits K. K As the magnitude increases, but the number of learnable features does not, the bit error rate will rise to some extent. Theoretically, even with higher complexity, there is no additional improvement in decoding performance. Therefore, neural networks can only be used to train the decoding of short to medium-length codes, and strictly speaking, only to train polar codes with small K values.
[0078] Matrix X represents all possible codewords of KSNNN in the partition of polar codes with different parameters. Correspondingly, the decoding result after flipping the key bits of the codeword is represented by D.
[0079] Furthermore, in one embodiment of the present invention, the neural network structure consists of a modulation layer, a noise layer, and a decoding layer, wherein both the modulation layer and the noise layer are custom function layers generated using tensorfow2.
[0080] The neural network structure of this invention consists of a modulation layer, a noise layer, and a decoding layer. All three layers require training, but only the decoding layer is needed during actual decoding. Specifically, as follows... Figure 5 As shown.
[0081] The structure of the training network is shown in Table 1. Both the modulation layer and the noise layer are custom function layers generated by the Keras tool in TensorFlow 2. In this paper, Gaussian white noise is selected, and the polar code is generated by the Gaussian construction method. The modulation method is BPSK. During training, the input of the network is X and the label is D. Different noise is added in each round of training, that is, the data X in each round of training is different from each other, in order to prevent overfitting.
[0082]
[0083] Table 1
[0084] A trained CNN can classify received signals, find the corresponding information sequences, and thus complete the decoding function. A well-trained neural network can achieve the performance of MAP decoding. NNN decoding results. Figure 6 As shown.
[0085] S104: Obtain the polar code soft decision sequence with determined parameters, determine the sub-code type of the polar code soft decision sequence according to the improved binary sub-code partitioning method, call the decoding model to decode when the polar code to be identified is KSNNN, and directly perform maximum likelihood decoding when the polar code to be identified is a traditional sub-code.
[0086] The above is the complete flowchart of the neural network-assisted polar code decoding method based on key bits. Figure 7 This is a schematic diagram of the technical route of the present invention.
[0087] Example 2
[0088] To illustrate the decoding performance of the proposed solution, the effectiveness of the algorithm is first simulated under different code rates and code lengths. Then, the performance of the proposed algorithm is compared with that of the fast successive cancellation (FSC) decoding algorithm and the successive cancellation (SC) decoding algorithm. All proposed algorithms employ... The proposed decoding scheme is a systematic polar code encoding scheme. Since the decoding scheme presented in this paper is only for the receiver, we are concerned with the bit error rate as the decoding performance. The decoding results of the decoding scheme used in this paper are labeled as KSNNAD. Other decoding schemes are labeled with their corresponding abbreviations.
[0089] 1) Simulation of the effectiveness of algorithms with different bit rates
[0090] Specifically, the simulation used a code length of 1024, and simulated the performance curves of KSNNAD code rates of 0.25, 0.5, and 0.75. The results are as follows: Figure 8 As shown.
[0091] 2) Simulation of the effectiveness of algorithms with different code lengths
[0092] The simulation used a code rate of 0.5, and simulated the performance curves of KSNNAD at code lengths of 64, 128, 256, 512, and 1024. The results are as follows. Figure 9 As shown.
[0093] 3) Comparison of different algorithms
[0094] The simulation used a code rate of 0.5 and a code length of 1024 to show the performance curves of KSNNAD and SCD. The results are as follows: Figure 10 As shown.
[0095] 4) Algorithm performance under Rayleigh channel
[0096] The expression for the received signal obtained after the transmitted signal s passes through a Rayleigh flat fading channel is as follows:
[0097] y(t)=h(t)·e jθ(t) ·s(t)+n(t),
[0098] Where h(t) is the fading factor, which follows a Rayleigh distribution, θ(t) is the phase, and n(t) is complex Gaussian white noise.
[0099] The performance of the simulated KSNNA decoding scheme and the SC algorithm is compared at a code length of 512 and a code rate of 0.5. The results are as follows: Figure 11 As shown, KSNNAD decoding performance is superior to SCD under both Gaussian and Rayleigh channel conditions.
[0100] Example 3
[0101] Compared to SCD, the KSNNAD scheme differs in the subcode partitioning and the process of calling the decoding model to decode the NNN subcodes. The complexity of subcode partitioning is negligible. The decoding layer model structure is shown in Table 1.
[0102] It is easy to see that calling this model once will introduce Multiplication and The algorithm in this paper uses K additions. S Since the subcode length is less than 16 and the neural network algorithm can be accelerated using a GPU, the complexity introduced by calling the model is acceptable. However, due to the variable subcode length, a specific expression cannot be given for the time step change of each specific polar code. Therefore, the decoding time step of each algorithm for polar codes under specific parameters is given to measure the decoding complexity of each algorithm. The following gives the decoding time step required for each decoding algorithm with a 2.5dB Gaussian construction, a code length of 128, and a code rate of 0.5. The subcode lengths of SCD and KSNNAD are both chosen to be N. S =16 / N S =8.
[0103]
[0104] Table 2
[0105] As shown in Table 2, KSNNAD effectively reduces the decoding step size compared to SCD, and the decoding time step size of KSNNAD is less affected by the subcode length. Since the decoding scheme proposed in this invention only calls the decoding model once, its complexity is acceptable. Compared to the traditional SCD algorithm, it still effectively reduces the runtime step size of the decoding algorithm.
[0106] The neural network-assisted polar code decoding method based on key bits proposed in this invention divides the long polar code into combinations of KSNNN, R-1, R-0, SPC, and Rep codes according to a subcode partitioning scheme. Then, a KSNNN model is trained using a neural network based on different KSNNN forms. Finally, these models are called during the decoding stage for fast decoding. Since the training and model storage processes can be completed offline in advance, computation time is significantly reduced. Simulation results verify the effectiveness of the decoding scheme; compared with SCD, this decoding scheme reduces both the decoding error rate and decoding complexity.
[0107] To achieve the above embodiments, the present invention also proposes a neural network-assisted polar code decoding device based on key bits.
[0108] Figure 12 This is a schematic diagram of a neural network-assisted polar code decoding device based on key bits, provided in an embodiment of the present invention.
[0109] like Figure 12 As shown, the key-bit-based neural network-assisted polar code decoding device includes: an acquisition module 100, a partitioning module 200, a training module 300, and a decoding module 400, wherein...
[0110] The acquisition module is used to acquire a set of polar code soft decision sequences under different parameters;
[0111] The partitioning module is used to partition the polar codes in the set into a combination of KSNNN subcodes and traditional subcodes according to the improved binary subcode partitioning method, wherein the traditional subcodes include R-1 codes, R-0 codes, SPC codes, and Rep codes;
[0112] The training module is used to train a decoding model for the KSNNN subcode using a neural network;
[0113] The decoding module is used to acquire the polar code soft decision sequence with determined parameters, determine the sub-code type of the polar code soft decision sequence according to the improved binary sub-code partitioning method, call the decoding model to perform decoding when the polar code to be identified is KSNNN, and directly perform maximum likelihood decoding when the polar code to be identified is a traditional sub-code.
[0114] Furthermore, in one embodiment of the present invention, the partitioning module is also used for:
[0115] Define the length of the polar code sequence to be identified as N, and Pos as the position of the first information bit;
[0116] The polar code to be identified is identified. If it is determined that Pos is in the polar code to be identified and N is less than 32, then the polar code to be identified is KSNNN.
[0117] The decoding model is invoked to perform decoding;
[0118] When it is determined that Pos is not among the polar codes to be identified, it is determined whether the polar code to be identified is one of R-1 code, R-0 code, SPC code and Rep code;
[0119] When the polar code to be identified is one of R-1 code, R-0 code, SPC code and Rep code, it is divided into the corresponding sub-code;
[0120] Perform maximum likelihood decoding directly;
[0121] If the polar code to be identified is not one of the R-1 code, R-0 code, SPC code, or Rep code, continue to identify the first half and the second half of the polar code sequence to be identified.
[0122] To achieve the above objectives, a third aspect of the present invention provides a computer device, characterized in that it includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, it implements the neural network-assisted polar code decoding method based on key bits as described above.
[0123] To achieve the above objectives, a fourth aspect of the present invention provides a computer-readable storage medium having a computer program stored thereon, characterized in that the computer program, when executed by a processor, implements the neural network-assisted polar code decoding method based on key bits as described above.
[0124] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the present invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.
[0125] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this invention, "a plurality of" means at least two, such as two, three, etc., unless otherwise explicitly specified.
[0126] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.
Claims
1. A neural network-assisted polar code decoding method based on key bits, characterized in that, Includes the following steps: Obtain a set of soft-decision sequences for polar codes under different parameters; The polar codes in the set are divided into a combination of key-bit-based neural network sub-codes and traditional sub-codes according to the improved binary sub-code partitioning method. The key-bit-based neural network sub-codes refer to neural network sub-codes that use the position of the first information bit in the polar code as the key bit and have a sub-code length of less than 32. The traditional sub-codes include R-1 codes, R-0 codes, SPC codes, and Rep codes. A decoding model is trained on a neural network subcode based on key bits using a neural network. Obtain the polar code soft decision sequence with determined parameters, and determine the sub-code type of the polar code soft decision sequence according to the improved binary code partitioning method, wherein the improved binary code partitioning method includes the following steps: Define the length of the polar code sequence to be identified as N, and Pos as the position of the first information bit; The polar code to be identified is identified. If Pos is found in the polar code to be identified and N is less than 32, then the polar code to be identified is a neural network sub-code based on key bits. When it is determined that Pos is not among the polar codes to be identified, it is determined whether the polar code to be identified is one of the R-1 code, R-0 code, SPC code, and Rep code. If so, then it is classified as the corresponding traditional subcode; If not, then continue to identify the first half and the second half of the polar code sequence to be identified; When the subcode type is a key-bit-based neural network subcode, the decoding model is invoked for decoding; when the subcode type is a traditional subcode, maximum likelihood decoding is performed directly.
2. The method of claim 1, wherein, The improved binary code partitioning method includes: Define the length of the polar code sequence to be identified as: , This is the position where the first information bit appears; The polar code to be identified is identified, and the judgment is made. In the polar code to be identified and If the value is less than 32, then the polar code to be identified is KSNNN; The decoding model is invoked to perform decoding.
3. The method of claim 2, wherein, After identifying the polar code to be identified, the process further includes: In judgment If the polar code to be identified is not among the polar codes to be identified, determine whether the polar code to be identified is one of the R-1 code, R-0 code, SPC code, and Rep code. When the polar code to be identified is one of R-1 code, R-0 code, SPC code and Rep code, it is divided into the corresponding sub-code; Perform maximum likelihood decoding directly.
4. The method according to claim 3, characterized in that, Also includes: If the polar code to be identified is not one of R-1 code, R-0 code, SPC code, or Rep code, the identification of the first half and the second half of the polar code sequence to be identified continues.
5. The method according to claim 1, characterized in that, The neural network structure consists of a modulation layer, a noise layer, and a decoding layer. Both the modulation layer and the noise layer are custom function layers generated using TensorFlow2.
6. A neural network-assisted polar code decoding device based on key bits, characterized in that, Includes the following modules: The acquisition module is used to acquire a set of polar code soft decision sequences under different parameters; The partitioning module is used to divide the polar codes in the set into a combination of key-bit-based neural network sub-codes and traditional sub-codes according to the improved binary sub-code partitioning method. The key-bit-based neural network sub-code refers to a neural network sub-code that uses the position of the first information bit in the polar code as the key bit and has a sub-code length of less than 32. The traditional sub-codes include R-1 codes, R-0 codes, SPC codes, and Rep codes. The training module is used to train a decoding model on a neural network subcode based on key bits using a neural network. The decoding module is used to obtain the polar code soft decision sequence with determined parameters, and to determine the sub-code type of the polar code soft decision sequence according to the improved binary code partitioning method, wherein the improved binary code partitioning method includes the following steps: Define the length of the polar code sequence to be identified as N, and Pos as the position of the first information bit; The polar code to be identified is identified. If Pos is found in the polar code to be identified and N is less than 32, then the polar code to be identified is a neural network sub-code based on key bits. When it is determined that Pos is not among the polar codes to be identified, it is determined whether the polar code to be identified is one of the R-1 code, R-0 code, SPC code, and Rep code. If so, then it is classified as the corresponding traditional subcode; If not, then continue to identify the first half and the second half of the polar code sequence to be identified; When the subcode type is a key-bit-based neural network subcode, the decoding model is invoked for decoding; when the subcode type is a traditional subcode, maximum likelihood decoding is performed directly.
7. The apparatus according to claim 6, characterized in that, The partitioning module is also used for: Define the length of the polar code sequence to be identified as: , This is the position where the first information bit appears; The polar code to be identified is identified, and the judgment is made. In the polar code to be identified and If the value is less than 32, then the polar code to be identified is KSNNN; The decoding model is invoked to perform decoding; In judgment If the polar code to be identified is not among the polar codes to be identified, determine whether the polar code to be identified is one of the R-1 code, R-0 code, SPC code, and Rep code. When the polar code to be identified is one of R-1 code, R-0 code, SPC code and Rep code, it is divided into the corresponding sub-code; Perform maximum likelihood decoding directly; If the polar code to be identified is not one of R-1 code, R-0 code, SPC code, or Rep code, the identification of the first half and the second half of the polar code sequence to be identified continues.
8. A computer device, comprising: The method includes a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the neural network-assisted polar code decoding method for key bits as described in any one of claims 1-5.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the neural network-assisted polar code decoding method for key bits as described in any one of claims 1-5.