A deep unfolding based approximate projection ADMM decoding method and system
By combining deep learning and the ADMM decoding algorithm, the edge parameters from the verification node to the variable node are optimized, solving the problems of high computational resource consumption and unreliable performance in communication systems, and achieving a high-efficiency, low-complexity decoding performance improvement.
Patent Information
- Application Number
- CN202210819543.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-12
- Publication Date
- 2025-12-05
- Estimated Expiration
- 2042-07-12
AI Technical Summary
Existing communication system encoding and decoding methods suffer from the problem of being a black box model, which consumes a lot of computational resources, has unreliable performance, and is difficult to locate problems. Furthermore, the projection computation of existing deep learning and ADMM decoding algorithms is highly complex.
By combining deep learning with the ADMM decoding algorithm, and through deep feature expansion and hierarchical scheduling algorithms, trainable weight parameters are added to optimize the edges from the verification node to the variable node, reducing the number of iterations and parameters. A large amount of noisy codeword data is used to train the learnable parameters, thereby improving decoding performance.
It improves the convergence speed and performance of the decoding algorithm, reduces the number of parameters, simplifies hardware implementation, reduces memory requirements, and enhances decoding efficiency and interpretability.
Smart Images

Figure CN115395963B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of communication technology, and in particular to an approximate projection ADMM decoding method and system based on depth unfolding. Background Technology
[0002] In the field of communications, there are widespread applications of encoding and decoding, and deep learning is often introduced to handle the encoding and decoding problems of large and complex communication systems.
[0003] While implementing neural network models in communication systems is simple, it inevitably has significant drawbacks. Firstly, building and running a neural network consumes substantial memory and computational resources. Secondly, the performance of the communication system cannot be guaranteed; a communication system built with neural networks is like a black box model, where only its inputs and outputs can be observed, making it impossible to pinpoint the problem by analyzing its internal structure. As an alternative to black-box models, model-driven networks are becoming increasingly prevalent in communication systems. The core idea of model-driven networks is to integrate traditional algorithms with guaranteed performance with deep learning tools, thereby combining the advantages of both approaches.
[0004] Based on the above advantages, the traditional model that first applied the deep learning framework was the Belief Propagation (BP) decoding algorithm. Modifying the update formula from variable nodes to check nodes in the BP decoding algorithm by adding trainable weight parameters during edge calculation, and training the added weight parameters, the BP decoder with iterative expansion of the learned weight parameters significantly outperforms the traditional BP decoder. With the continuous development of linear programming decoding optimization algorithms, they have surpassed probabilistic decoding algorithms in both decoding efficiency and performance. Related researchers have combined deep learning technology with the Alternating Direction Method of Multipliers (ADMM) decoding algorithm with a penalty function to construct a neural network model. Deep learning technology is used to optimize the penalty parameters, improving the decoding algorithm's performance; however, the projection part of the calculation is not optimized, making the computation relatively complex. Summary of the Invention
[0005] This invention provides an approximate projection ADMM decoding method and system based on depth unfolding to overcome the deficiencies in the prior art.
[0006] In a first aspect, the present invention provides an approximate projection ADMM decoding method based on depth unfolding, comprising:
[0007] Determine the codeword to be decoded in the communication system;
[0008] The codeword to be decoded is input into a pre-trained decoding model to obtain the decoding result output by the decoding model;
[0009] The decoding model is obtained by iteratively expanding the ADMM horizontal scheduling decoding model based on line segment projection using the deep expansion feature in deep learning and the hierarchical scheduling algorithm.
[0010] According to the present invention, an approximate projection ADMM decoding method based on depth unrolling is provided, wherein the decoding model is obtained through the following steps:
[0011] Determine the ADMM horizontal scheduling decoding model based on line segment projection;
[0012] A preset parameter set is obtained based on the hierarchical scheduling algorithm, and a training dataset and optimizer are constructed based on the parameter set.
[0013] The ADMM level scheduling decoding model based on line segment projection is trained using the training dataset to obtain the decoding model.
[0014] According to the present invention, an approximate projection ADMM decoding method based on depth unfolding is provided, wherein determining the ADMM level scheduling decoding model based on line segment projection includes:
[0015] Determine the received codeword, selection matrix, weight parameter vector, and maximum number of iterations;
[0016] Calculate the log-likelihood ratio vector corresponding to the received codeword, and initialize the current iteration number and the verification node layer information;
[0017] Update all variable node information;
[0018] Update the verification node information and the variable node information connected to the current verification node in sequence;
[0019] Traverse all verification nodes until the maximum number of iterations is reached to obtain the ADMM horizontal scheduling decoding model based on line segment projection.
[0020] According to the approximate projection ADMM decoding method based on depth unfolding provided by the present invention, the updating of all variable node information includes:
[0021] Determine the vector to be projected and initialize the indicator vector;
[0022] Determine the positions of the first and second elements at a preset distance from the vector to be projected;
[0023] Update the indicator vector so that the number of 1s in the indicator vector is odd;
[0024] Based on the positions of the first and second elements, determine the two even-numbered vertices closest to the vector to be projected;
[0025] Calculate the projection result of the vector to be projected onto the line segment connecting the two even-numbered vertices;
[0026] Obtain the weight parameters of any check node to any variable node edge, the set of check nodes connected to any variable node, and the log-likelihood ratio corresponding to any received codeword information, determine the penalty parameters, and update the information of all variable nodes.
[0027] According to the present invention, an approximate projection ADMM decoding method based on depth unrolling is provided, wherein obtaining a preset parameter set based on the hierarchical scheduling algorithm and constructing a training dataset and an optimizer based on the parameter set includes:
[0028] Unmodulated raw codeword information is obtained by encoding randomly generated information through a generator matrix;
[0029] The original codeword information is transmitted through preset modulation encoding and preset information with a signal-to-noise ratio to be determined, and the signal-to-noise ratio to be determined corresponding to the best transmission performance is obtained to determine the training dataset.
[0030] Several typical optimizers are obtained, and an adaptive adjustment strategy is used to determine the learning rate among these typical optimizers.
[0031] Initialize the learning rate and stop training when the loss function value no longer decreases or the maximum number of training iterations is reached;
[0032] The optimizer is the typical optimizer that corresponds to the fastest convergence speed of the deep neural network or the best decoding performance of the pre-trained deep neural network model.
[0033] According to the present invention, an approximate projection ADMM decoding method based on depth unfolding is provided, which trains the ADMM level scheduling decoding model based on line segment projection using the training dataset to obtain the decoding model, including:
[0034] Perform forward propagation computation on the training dataset;
[0035] The difference between the predicted value and the label value is calculated using a loss function;
[0036] Backpropagation calculation is performed based on the forward propagation calculation and the loss function;
[0037] The learnable parameters are updated based on the optimizer until the model converges or reaches the maximum number of training samples, thus obtaining the decoding model.
[0038] Secondly, the present invention also provides an approximate projection ADMM decoding system based on depth unfolding, comprising:
[0039] The determination module is used to determine the codeword to be decoded in the communication system;
[0040] The processing module is used to input the codeword to be decoded into a pre-trained decoding model and obtain the decoding result output by the decoding model;
[0041] The decoding model is obtained by iteratively expanding the ADMM horizontal scheduling decoding model based on line segment projection using the deep expansion feature in deep learning and the hierarchical scheduling algorithm.
[0042] Thirdly, the present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the depth-unfold-based approximate projection ADMM decoding method as described above.
[0043] Fourthly, the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the depth-unfold-based approximate projection ADMM decoding method as described above.
[0044] Fifthly, the present invention also provides a computer program product, including a computer program that, when executed by a processor, implements the depth-unfold-based approximate projection ADMM decoding method as described above.
[0045] The present invention provides an approximate projection ADMM decoding method and system based on depth expansion. By deploying the ADMM horizontal scheduling decoding algorithm based on line segment projection into a neural network model through deep learning, it adds trainable parameters to the edges from the check node to the variable node based on the idea of check node penalty. It uses the hierarchical scheduling idea to accelerate the convergence speed of the algorithm, reduce the number of parameters, and uses a large amount of noisy codeword data for training to optimize the learnable parameters and improve the performance of traditional decoding algorithm models. Attached Figure Description
[0046] To more clearly illustrate the technical solutions in this invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0047] Figure 1 This is a flowchart illustrating the approximate projection ADMM decoding method based on depth unfolding provided by the present invention.
[0048] Figure 2 This is a schematic diagram of the (8, 4) rule code neural network structure provided by the present invention;
[0049] Figure 3 This is a flowchart of the ADMM horizontal scheduling decoding algorithm based on depth unfolding line segment projection provided by the present invention;
[0050] Figure 4 This is a comparison chart of the decoding performance of the pre-trained model under different signal-to-noise ratio datasets of C1 codewords provided by this invention;
[0051] Figure 5 This is a comparison chart of the convergence speed of different optimizers used in training the ADMM decoding algorithm model based on depth unfolding line segment projection provided by this invention;
[0052] Figure 6 This is a comparison chart of the decoding performance of pre-trained models after training with different optimizers provided by this invention;
[0053] Figure 7 This is a flowchart of the training algorithm for the ADMM horizontal scheduling decoding model based on depth unfolding line segment projection provided by the present invention.
[0054] Figure 8 This is a comparison chart of the decoding performance of the C2 codeword under 10 iterations provided by this invention;
[0055] Figure 9 This is a comparison chart of the decoding performance of the C2 codeword under 20 iterations provided by this invention;
[0056] Figure 10 This is a comparison chart of the decoding performance of the C2 codeword under 30 iterations provided by this invention;
[0057] Figure 11 This is a parameter distribution diagram of the C2 codeword ADMM-LSA-D-DL-20 pre-trained model provided by the present invention;
[0058] Figure 12 This is a comparison chart of the frame error rate performance of the C2 codeword pre-trained model without penalty function provided by this invention under different signal-to-noise ratios;
[0059] Figure 13 This is a comparison chart of the frame error rate performance of the C2 codeword pre-trained model with penalty function provided by this invention under different signal-to-noise ratios;
[0060] Figure 14 This is a schematic diagram of the structure of the approximate projection ADMM decoding system based on depth unfolding provided by the present invention;
[0061] Figure 15 This is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed Implementation
[0062] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.
[0063] To address the shortcomings of existing technologies, this invention proposes an approximate projection ADMM decoding method based on depth unfolding, such as... Figure 1 As shown, it includes:
[0064] Step 100: Determine the codeword to be decoded in the communication system;
[0065] Step 200: Input the character to be decoded into the pre-trained decoding model to obtain the decoding result output by the decoding model;
[0066] The decoding model is obtained by iteratively expanding the ADMM horizontal scheduling decoding model based on line segment projection using the deep expansion feature in deep learning and the hierarchical scheduling algorithm.
[0067] This invention combines the ADMM horizontal scheduling decoding algorithm based on line segment projection with deep learning technology. Based on the deep expansion concept in deep learning, it expands the traditional ADMM horizontal scheduling decoding algorithm based on line segment projection into a more robust structure. Learnable parameters are configured based on the concept of check node penalty, and learnable weight coefficients are added for weighted penalty during message transmission from check nodes to variable nodes. All weight coefficients constitute a learnable parameter vector. A hierarchical scheduling algorithm is used to reduce the number of iterations, allowing trainable parameters to share the same set of parameters in each iteration, thus reducing the number of parameters in the neural network. Deep learning technology is used to pre-train the model parameters to obtain optimal parameter values, which are then loaded for decoding to obtain a decoding model capable of processing codewords in common communication systems and obtaining decoding results.
[0068] The present invention applies deep unfolding, which has the following advantages: (1) The performance guarantee of the original iterative algorithm can be applied to the learned unfolded network, and appropriate constraints can be imposed on the learned parameters; (2) Most un-unfolded communication algorithms have a relatively small number of trainable parameters, thus simplifying training; (3) The unfolding algorithm is usually based on well-known methods, and effective hardware implementation is easy to obtain, which can reduce design time; (4) Compared with the unfolding of traditional algorithms, the algorithm is usually intuitive, interpretable, low in complexity and low in memory requirements, which is in stark contrast to black box networks.
[0069] It is understood that the depth-expansion-based segment projection ADMM hierarchical scheduling decoding algorithm proposed in this invention is a message iteration algorithm. The message transmission process during decoding can be represented using a Tanner graph, which represents the parity check matrix of a Low Density Parity Check Code (LDPC). The Tanner graph contains two types of vertices: n codeword bit vertices, corresponding to the columns of the parity check matrix; and m parity check equation vertices, corresponding to the rows of the parity check matrix. Compared to traditional deep neural networks, model-based neural networks are not entirely composed of perceptrons, but use the calculation formulas in the model. Therefore, the weights from the check nodes to the variable nodes are the weights in the neural network. Specifically, the first check node receives messages from all the variable nodes connected to it and calculates its outgoing message. Then, all variable nodes connected to the first check node receive messages from the check nodes connected to them and calculate their outgoing messages. This process of updating all check nodes sequentially completes one iteration. This message transmission process is repeated until the correct result is obtained or the maximum number of iterations is reached. In this neural network, the check nodes and variable nodes are the neurons, the message updates from check nodes to variable nodes and from variable nodes to check nodes constitute the hidden layers, the decoder initialization parameters and the received codewords are the inputs, and the final decoding result corresponds to the result of the entire neural network operation. The neural network structure is unfolded using the depth-expansion-based line segment projection ADMM horizontal scheduling decoding algorithm with a code rate of 1 / 2 and a degree of 4 for (8,4) regular codes. Figure 2 As shown.
[0070] Figure 2The leftmost and rightmost circles represent the input and output layers, respectively, while the middle section consists of hidden layers. These hidden layers are composed of multiple horizontal scheduling computation units, the number of which is determined by the maximum number of iterations; that is, one horizontal scheduling unit corresponds to one full iteration computation. Within each horizontal scheduling computation unit, from left to right, messages are updated for each verification node (square) and its connected variable nodes (circles), with the number of layers equal to the number of verification nodes. Unconnected verification nodes and variable nodes retain their previous values. The last circle of the last horizontal scheduling computation unit serves as the output layer of the neural network. Simulation experiments verify that, after training with deep learning technology, the proposed method improves the frame error rate performance by approximately 0.35 dB compared to traditional algorithms.
[0071] This invention deploys the ADMM level scheduling decoding algorithm based on line segment projection into a neural network model using deep learning. Based on the idea of penalizing check nodes, trainable parameters are added to the edges from check nodes to variable nodes. The hierarchical scheduling idea is used to accelerate the convergence speed of the algorithm, reduce the number of parameters, and use a large amount of noisy codeword data for training to optimize the learnable parameters and improve the performance of traditional decoding algorithm models.
[0072] Based on the above embodiments, the decoding model is obtained through the following steps:
[0073] Determine the ADMM horizontal scheduling decoding model based on line segment projection;
[0074] A preset parameter set is obtained based on the hierarchical scheduling algorithm, and a training dataset and optimizer are constructed based on the parameter set.
[0075] The ADMM level scheduling decoding model based on line segment projection is trained using the training dataset to obtain the decoding model.
[0076] Specifically, this invention combines ADMM horizontal scheduling based on line segment projection with deep unrolling in deep learning for model training. That is, an iterative algorithm is unrolled, parameters are added to the unrolled iterative algorithm for training, the ADMM horizontal scheduling decoding algorithm based on line segment projection is deployed into the neural network model, trainable parameters are added to the edges from the check node to the variable node based on the check node penalty idea, the hierarchical scheduling idea is used, and finally the decoding model is trained.
[0077] Based on any of the above embodiments, determining the ADMM level scheduling decoding model based on line segment projection includes:
[0078] Determine the received codeword, selection matrix, weight parameter vector, and maximum number of iterations;
[0079] Calculate the log-likelihood ratio vector corresponding to the received codeword, and initialize the current iteration number and the verification node layer information;
[0080] Update all variable node information;
[0081] Update the verification node information and the variable node information connected to the current verification node in sequence;
[0082] Traverse all verification nodes until the maximum number of iterations is reached to obtain the ADMM horizontal scheduling decoding model based on line segment projection.
[0083] The updating of all variable node information includes:
[0084] Determine the vector to be projected and initialize the indicator vector;
[0085] Determine the positions of the first and second elements at a preset distance from the vector to be projected;
[0086] Update the indicator vector so that the number of 1s in the indicator vector is odd;
[0087] Based on the positions of the first and second elements, determine the two even-numbered vertices closest to the vector to be projected;
[0088] Calculate the projection result of the vector to be projected onto the line segment connecting the two even-numbered vertices;
[0089] Obtain the weight parameters of any check node to any variable node edge, the set of check nodes connected to any variable node, and the log-likelihood ratio corresponding to any received codeword information, determine the penalty parameters, and update the information of all variable nodes.
[0090] Specifically, the neural network structure of the deep learning-based ADMM decoding model proposed in this invention is determined by the codeword parity-check matrix.
[0091] For an (n,k) LDPC code, its code length is n, its code rate is k / n, and its corresponding parity check matrix H is of size m×n, where m=nk. The input of the neural network corresponding to the (n,k) LDPC code is the log-likelihood ratio vector γ corresponding to the received codeword, and the output is the optimized variable x, both of size n×1.
[0092] In the hidden layer, m check nodes correspond to m neurons. During the information update process from variable node to check node, the check node receives the variable node layer information x from the hidden layer and obtains the corresponding check information L. j→i The detailed calculation formula is as follows:
[0093]
[0094] in This represents a line segment projection operation suitable for deep learning models. The detailed calculation steps are as follows:
[0095] 1. Receive the vector to be projected
[0096] 2. Initialize the indicator vector θ according to the following formula (2):
[0097] θ i =(sgn(v i -0.5)+1) / 2 (2)
[0098] 3. Next, according to the following formula (3), find the positions of the two elements in vector v that are closest to 0.5, and denote them as p and q respectively:
[0099]
[0100] 4. Update the indicator vector θ using formula (4), ensuring that one number in the indicator vector is odd:
[0101]
[0102] 5. Calculate the p-th and q-th elements of vector θ using formula (5) to find the two even-numbered vertices closest to the vector v to be projected, denoted as points A and B respectively:
[0103]
[0104] 6. Calculate the projection of vector v onto line segment AB using the projection formula from a point to a line segment. Clearly, points A and B differ only in two elements; therefore, line segment AB can be represented as AB = {0,…,B}. p -A p ,…,B q -A q ,…,0}, and Av={…,v p -A p ,…,v q -A q Therefore, we get z = A + t·AB, where
[0105] n variable nodes correspond to n neurons. During the information update process from the verification node to the variable node, the variable node receives information L from the verification node layer in the hidden layer. j→i The corresponding variable node information is obtained as x, and the detailed calculation formula is as follows:
[0106]
[0107] Where w j→i Let w be the weight parameter of the edge from the j-th check node to the i-th variable node. The weights of all edges connecting check nodes to variable nodes constitute a trainable vector w. During training, the penalty parameter μ remains fixed. |N v (i)|and γ i are known values, representing the log-likelihood ratios of the set of check nodes connected to the i-th variable node and the received i-th codeword information, respectively.
[0108] like Figure 3 As shown, the detailed steps of the depth-unfolded line segment projection ADMM horizontal scheduling decoding algorithm in this invention include:
[0109] 1. Receive codeword y, select matrix P j , weight parameter vector w, maximum number of iterations Iter.
[0110] 2. Calculate the corresponding LLR vector γ based on the received codeword y, and initialize the current iteration count to 0;
[0111] 3. Initialize λ j Let zj be an all-zero vector, initialize zj as an all-zero-.5 vector, and initialize L. i→j A vector consisting entirely of 0.5;
[0112] 4. Update all variable node information using formula (6);
[0113] 5. Traverse all verification nodes, update the verification node information using formula (1), and update the variable node information connected to the verification node using formula (6).
[0114] 6. Repeat step 5 until the maximum number of iterations is reached.
[0115] The corresponding algorithm is as follows:
[0116]
[0117]
[0118] The activation function is the relaxation function Π specified in the ADMM decoding algorithm. [0,1]The (·) structure restricts the final output of the neural network to the interval [0,1]. Considering that the correct codeword information is either 0 or 1, which is a binary classification problem, but also requiring evaluation of the difference between the correct codeword and the original codeword, the loss function is a weighted sum of the binary cross-entropy function and the mean squared error function. Binary cross-entropy is generally handled using the sigmoid function for binary classification problems, but the sigmoid function is symmetrical about 0 when restricting the output data to [0,1]. Since the output of the neural network, as the decoded codeword, uses 0.5 as its center, the sigmoid function needs to be offset to make it symmetrical about 0.5.
[0119] This invention effectively overcomes the problems of computational complexity and low efficiency of traditional neural network models by deploying the ADMM level scheduling decoding algorithm based on line segment projection into a neural network model.
[0120] Based on any of the above embodiments, the step of obtaining a preset parameter set based on the hierarchical scheduling algorithm and constructing a training dataset and optimizer based on the parameter set includes:
[0121] Unmodulated raw codeword information is obtained by encoding randomly generated information through a generator matrix;
[0122] The original codeword information is transmitted through preset modulation encoding and preset information with a signal-to-noise ratio to be determined, and the signal-to-noise ratio to be determined corresponding to the best transmission performance is obtained to determine the training dataset.
[0123] Several typical optimizers are obtained, and an adaptive adjustment strategy is used to determine the learning rate among these typical optimizers.
[0124] Initialize the learning rate and stop training when the loss function value no longer decreases or the maximum number of training iterations is reached;
[0125] The optimizer is the typical optimizer that corresponds to the fastest convergence speed of the deep neural network or the best decoding performance of the pre-trained deep neural network model.
[0126] This invention determines the training dataset and optimizer with the best relative performance by comparing various performance tests on the constructed training dataset and the selected optimizer.
[0127] Specifically, this invention first determines that both training and testing data are codeword information obtained by simulating binary phase shift keying (BPSK) modulation and transmission through an additive white Gaussian noise (AWGN) channel. All unmodulated raw codeword information is obtained by encoding randomly generated information using a generator matrix. The resulting random codewords are then BPSK modulated and transmitted through an AWGN channel with a fixed signal-to-noise ratio (SNR) to generate corresponding training codewords. The target training result is the random codeword to be transmitted. The SNR setting determines the extent to which the deep neural network learns codeword and channel information. If the training SNR is set too high, there will be very few decoding errors, and the deep neural network may not be able to learn potential error patterns. Conversely, if the SNR is too low, the deep neural network can only acquire very little codeword information, and the proposed network will have difficulty learning an effective decoding mechanism.
[0128] The following example uses the (128,64) rule code C1 with a code rate of 1 / 2 and a degree of 8 to determine the signal-to-noise ratio setting of the training dataset. Figure 4 The figure shows the experimental results of the pre-trained model trained on C1 codeword datasets with different signal-to-noise ratios (SNRs). "DL" represents the simulation result of the pre-trained model after deep neural network training, and "2.0", "3.0", "4.0", and "5.0" represent the SNRs of the training datasets as 2.0dB, 3.0dB, 4.0dB, and 5.0dB, respectively. The figure shows that a SNR of 3.0dB or 4.0dB yields better training results, while a SNR of 2.0dB or 5.0dB yields poorer results. Therefore, the final SNR setting for C1 codeword training is 3.0dB. In the simulation experiments, both model training and testing were performed on PyTorch running CentOS Linux release 7.4.1708, an Intel(R) Xeon(R) Silver 4114 CPU @ 2.20GHz, and an NVIDIA Tesla V100 PCIe 32GB. To fully utilize GPU resources, the batch_size setting during model training is evaluated based on the GPU memory size. Taking C1 codewords as an example, the batch_size is set to 4000 frames, and the epoch size is set to 100000 frames, meaning the entire training dataset consists of 100000 frames of codeword data. This is divided into sub-datasets of 4000 frames each. Each training iteration transmits the sub-datasets sequentially for training. Once all sub-datasets have been transmitted, one epoch of training is complete. Training is terminated when the preset maximum epoch is reached or the loss function value no longer decreases.
[0129] Furthermore, this invention also requires consideration of the selection of optimizers and the setting of learning rates during deep neural network training. During neural network training, the optimizer affects the updating of trainable parameters in the model, and the learning rate determines the step size of parameter updates in each iteration. A small learning rate leads to slow training, while an excessively large learning rate causes the model to fail to converge. This invention uses C4 codewords to test the impact of different optimizers on deep neural network training. The optimizers selected are RMSprop, ASGD, SGD, and Adam. The learning rate configuration employs an adaptive adjustment strategy, which can be implemented using standard functions provided in deep learning tools. The detailed strategy is as follows: the initial learning rate is 0.1. After 50 consecutive epochs of training, if the loss value does not decrease, the learning rate is adjusted to one-tenth of its original value. Simultaneously, the convergence status of the current model is assessed. If the model has failed to converge, it is reset. Training stops when the learning rate reaches 0.0001 and the loss function value no longer decreases or the maximum epoch is reached. Figure 5 A comparison of the convergence speeds of different optimizers for training ADMM decoding algorithms based on depth unfolding line segment projection is presented. Figure 6 This is a comparison chart of the decoding performance of pre-trained models trained using different optimizers, combined with... Figure 5 and Figure 6 The results show that the deep neural network converges fastest when Adam is selected as the optimizer, and the decoding performance of the pre-trained deep neural network model using Adam and SGD is the best. In subsequent model training, the Adam optimizer is selected in this invention.
[0130] Based on any of the above embodiments, the ADMM level scheduling decoding model based on line segment projection is trained using the training dataset to obtain the decoding model, including:
[0131] Perform forward propagation computation on the training dataset;
[0132] The difference between the predicted value and the label value is calculated using a loss function;
[0133] Backpropagation calculation is performed based on the forward propagation calculation and the loss function;
[0134] The learnable parameters are updated based on the optimizer until the model converges or reaches the maximum number of training iterations, thus obtaining the decoding model.
[0135] Specifically, the detailed training process of the neural network for the depth-unfolded line segment projection ADMM level scheduling decoding algorithm neural network in this invention is as follows: Figure 7 As shown:
[0136] 1. Read and initialize relevant parameters, and build the corresponding training dataset, network model, and optimizer;
[0137] 2. The training data is forward propagated using the network model generated by the depth-expanded line segment projection ADMM horizontal scheduling decoding algorithm;
[0138] 3. Use a loss function to calculate the difference between the predicted value and the label value;
[0139] 4. Backpropagation calculation;
[0140] 5. Update learnable parameters using the optimizer;
[0141] 6. Repeat steps 2 to 5 until the model converges or reaches the maximum number of training epochs.
[0142] The corresponding algorithm flow is as follows:
[0143]
[0144]
[0145] Furthermore, this invention also conducts simulation tests on a deep neural network pre-trained model of the ADMM level scheduling decoding algorithm based on depth unfolding line segment projection. The codeword information selected for pre-training is the (576, 480) regular code C2 with a degree of 20. During the training process of the deep learning decoding model, an l2 penalty function is introduced to improve decoding performance. The penalty coefficient μ corresponding to the codeword is 5.0, and the l2 penalty parameter α is 0.2. The penalty parameters are fixed during training. The signal-to-noise ratio of the codeword pre-training dataset is set to 3.5dB. The optimizer selected is the Adam optimizer, which has the best performance in the previous section, and the learning rate configuration adopts the same strategy as in the previous section. Training stops when the loss function value of the deep neural network model no longer decreases or reaches the maximum number of iterations. The optimal model during training is saved, and the optimal model is loaded for decoding simulation testing. Figure 8 , Figure 9 and Figure 10 The figure shows the decoding performance of C2 codewords at maximum iteration counts of 10, 20, and 30, where "10" represents a maximum iteration count of 10, "20" represents a maximum iteration count of 20, and "30" represents a maximum iteration count of 30. The experimental data in the figure shows that, regardless of whether it's 10, 20, or 30 iterations, the pre-trained model improves the decoding performance compared to the original algorithm. Specifically, when FER = 1 × 10... -3 At that time, the pre-trained model with a maximum of 10 iterations improved the performance by 0.15 dB compared to the original algorithm, the pre-trained model with a maximum of 20 iterations improved the performance by 0.35 dB compared to the original algorithm, and the pre-trained model with a maximum of 30 iterations improved the performance by 0.19 dB compared to the original algorithm. In the following experiments, the maximum number of iterations for all codewords was set to 20. Figure 11The parameter w distribution of the pre-trained model of the ADMM-LSA-D-DL-20 horizontal scheduling decoding algorithm based on depth expansion and line segment projection without penalty function under 20 iterations of C2 codewords is shown in the parameter value distribution diagram. It can be seen from the parameter value distribution diagram that the overall parameter distribution roughly conforms to a Gaussian distribution. Most of the edges from check nodes to variable nodes do not need to be penalized. Only a few edges have information weakened or enhanced. This is consistent with the idea of check node penalty based on deep learning. Deep learning technology is used to learn the structural characteristics of codewords from the dataset, thereby strengthening the weight of important information and weakening the weight of invalid or interfering information.
[0146] Figure 12 and Figure 13 The graphs show a comparison of the decoding performance of the original algorithm and the pre-trained model with and without a penalty function for C2 codewords. The graphs show that the model trained using deep learning consistently improves decoding performance compared to the original algorithm. This demonstrates the effectiveness of adding weight coefficients to the edges between check nodes and variable nodes, further validating the idea of penalizing check nodes. Specifically, for C2 codewords, when FER = 1 × 10... -3 At that time, the deep neural network pre-trained model improved decoding performance by 0.35 dB compared to the original algorithm. This demonstrates that the proposed method of adding weight parameters to the edges between the check node and the variable node can improve decoding performance. By using deep learning technology to optimize the weight coefficient of each message between the check node and the variable node, the effective message weight of the check node is strengthened from the characteristics of the codeword structure, while the weight of invalid and interference information in the check node is weakened, thereby improving decoding performance.
[0147] The approximate projection ADMM decoding system based on depth expansion provided by the present invention will be described below. The approximate projection ADMM decoding system based on depth expansion described below can be referred to in correspondence with the approximate projection ADMM decoding method based on depth expansion described above.
[0148] Figure 14 This is a schematic diagram of the structure of the approximate projection ADMM decoding system based on depth unfolding provided by the present invention, as shown below. Figure 14 As shown, it includes: a determining module 1401 and a processing module 1402, wherein:
[0149] The determining module 1401 is used to determine the codeword to be decoded in the communication system; the processing module 1402 is used to input the codeword to be decoded into a pre-trained decoding model to obtain the decoding result output by the decoding model; the decoding model is obtained by iteratively expanding the ADMM horizontal scheduling decoding model based on line segment projection using the deep expansion feature in deep learning and the hierarchical scheduling algorithm.
[0150] This invention deploys the ADMM level scheduling decoding algorithm based on line segment projection into a neural network model using deep learning. Based on the idea of penalizing check nodes, trainable parameters are added to the edges from check nodes to variable nodes. The hierarchical scheduling idea is used to accelerate the convergence speed of the algorithm, reduce the number of parameters, and use a large amount of noisy codeword data for training to optimize the learnable parameters and improve the performance of traditional decoding algorithm models.
[0151] Figure 15 An example is a schematic diagram of the physical structure of an electronic device, such as... Figure 15 As shown, the electronic device may include a processor 1510, a communications interface 1520, a memory 1530, and a communication bus 1540. The processor 1510, communications interface 1520, and memory 1530 communicate with each other via the communication bus 1540. The processor 1510 can call logic instructions in the memory 1530 to execute an approximate projection ADMM decoding method based on depth unrolling. This method includes: determining the codeword to be decoded in the communication system; inputting the codeword to be decoded into a pre-trained decoding model to obtain the decoding result output by the decoding model; the decoding model is obtained by iteratively unrolling an alternating direction multiplier method (ADMM) horizontal scheduling decoding model based on line segment projection using depth unrolling features in deep learning and a hierarchical scheduling algorithm.
[0152] Furthermore, the logical instructions in the aforementioned memory 1530 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0153] On the other hand, the present invention also provides a computer program product, which includes a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the depth-unfolded approximate projection ADMM decoding method provided by the above methods. The method includes: determining the codeword to be decoded in the communication system; inputting the codeword to be decoded into a pre-trained decoding model to obtain the decoding result output by the decoding model; the decoding model is obtained by iteratively unfolding the alternating direction multiplier method ADMM horizontal scheduling decoding model based on line segment projection using the depth unfolding feature in deep learning and the hierarchical scheduling algorithm.
[0154] In another aspect, the present invention also provides a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the depth-unfold-based approximate projection ADMM decoding method provided by the above methods. The method includes: determining a codeword to be decoded in a communication system; inputting the codeword to be decoded into a pre-trained decoding model to obtain a decoding result output by the decoding model; wherein the decoding model is obtained by iteratively unfolding an alternating direction multiplier method (ADMM) horizontal scheduling decoding model based on line segment projection using depth unfolding features in deep learning and a hierarchical scheduling algorithm.
[0155] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.
[0156] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.
[0157] Finally, it should be noted that 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 foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. An approximate projection ADMM decoding method based on depth unrolling, characterized in that, include: Determine the codeword to be decoded in the communication system; The codeword to be decoded is input into a pre-trained decoding model to obtain the decoding result output by the decoding model; The decoding model is obtained by iteratively expanding the alternating direction multiplier method (ADMM) horizontal scheduling decoding model based on line segment projection using the deep expansion feature in deep learning and the hierarchical scheduling algorithm. The decoding model is obtained through the following steps: Determine the ADMM horizontal scheduling decoding model based on line segment projection; A preset parameter set is obtained based on the hierarchical scheduling algorithm, and a training dataset and optimizer are constructed based on the parameter set. The ADMM level scheduling decoding model based on line segment projection is trained using the training dataset to obtain the decoding model; Determining the ADMM level scheduling decoding model based on line segment projection includes: Determine the received codeword, selection matrix, weight parameter vector, and maximum number of iterations; Calculate the log-likelihood ratio vector corresponding to the received codeword, and initialize the current iteration number and the verification node layer information; Update all variable node information; Update the verification node information and the variable node information connected to the current verification node in sequence; Traverse all verification nodes until the maximum number of iterations is reached to obtain the ADMM horizontal scheduling decoding model based on line segment projection.
2. The approximate projection ADMM decoding method based on depth unrolling according to claim 1, characterized in that, The update of all variable node information includes: Determine the vector to be projected and initialize the indicator vector; Determine the positions of the first and second elements at a preset distance from the vector to be projected; Update the indicator vector so that the number of 1s in the indicator vector is odd; Based on the positions of the first and second elements, determine the two even-numbered vertices closest to the vector to be projected; Calculate the projection result of the vector to be projected onto the line segment connecting the two even-numbered vertices; Obtain the weight parameters of any check node to any variable node edge, the set of check nodes connected to any variable node, and the log-likelihood ratio corresponding to any received codeword information, determine the penalty parameters, and update the information of all variable nodes.
3. The approximate projection ADMM decoding method based on depth unrolling according to claim 1, characterized in that, The step of obtaining a preset parameter set based on the hierarchical scheduling algorithm and constructing a training dataset and optimizer based on the parameter set includes: Unmodulated raw codeword information is obtained by encoding randomly generated information through a generator matrix; The original codeword information is transmitted through preset modulation encoding and preset information with a signal-to-noise ratio to be determined, and the signal-to-noise ratio to be determined corresponding to the best transmission performance is obtained to determine the training dataset. Several typical optimizers are obtained, and an adaptive adjustment strategy is used to determine the learning rate among these typical optimizers. Initialize the learning rate and stop training when the loss function value no longer decreases or the maximum number of training iterations is reached; The optimizer is the typical optimizer that corresponds to the fastest convergence speed of the deep neural network or the best decoding performance of the pre-trained deep neural network model.
4. The approximate projection ADMM decoding method based on depth unrolling according to claim 1, characterized in that, The ADMM level scheduling decoding model based on line segment projection is trained using the training dataset to obtain the decoding model, which includes: Perform forward propagation computation on the training dataset; The difference between the predicted value and the label value is calculated using a loss function; Backpropagation calculation is performed based on the forward propagation calculation and the loss function; The learnable parameters are updated based on the optimizer until the model converges or reaches the maximum number of training samples, thus obtaining the decoding model.
5. An approximate projection ADMM decoding system based on depth unrolling, characterized in that, include: The determination module is used to determine the codeword to be decoded in the communication system; The processing module is used to input the codeword to be decoded into a pre-trained decoding model and obtain the decoding result output by the decoding model; The decoding model is obtained by iteratively expanding the alternating direction multiplier method (ADMM) horizontal scheduling decoding model based on line segment projection using the deep expansion feature in deep learning and the hierarchical scheduling algorithm. The decoding model is obtained through the following steps: Determine the ADMM horizontal scheduling decoding model based on line segment projection; A preset parameter set is obtained based on the hierarchical scheduling algorithm, and a training dataset and optimizer are constructed based on the parameter set. The ADMM level scheduling decoding model based on line segment projection is trained using the training dataset to obtain the decoding model; Determining the ADMM level scheduling decoding model based on line segment projection includes: Determine the received codeword, selection matrix, weight parameter vector, and maximum number of iterations; Calculate the log-likelihood ratio vector corresponding to the received codeword, and initialize the current iteration number and the verification node layer information; Update all variable node information; Update the verification node information and the variable node information connected to the current verification node in sequence; Traverse all verification nodes until the maximum number of iterations is reached to obtain the ADMM horizontal scheduling decoding model based on line segment projection.
6. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the depth-unfold-based approximate projection ADMM decoding method as described in any one of claims 1 to 4.
7. A non-transitory 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 depth-unfold-based approximate projection ADMM decoding method as described in any one of claims 1 to 4.
8. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the depth-unfold-based approximate projection ADMM decoding method as described in any one of claims 1 to 4.
Citation Information
Patent Citations
Deep learning channel decoding method based on alternating direction multiplier method
CN110932734A
Self-learning decoding method for protograph low density parity check code and related device thereof
WO2021204163A1