Channel Decoding Method and Apparatus, Training Method and Apparatus for Neural Network Model for Channel Decoding
Channel decoding is performed through pre-trained neural network models, and the decoding generator and discriminator are trained by Generative Adversarial Neural Network (GAN), which solves the problem of high complexity of existing channel decoding algorithms, and achieves the effect of low bit error rate and fast decoding.
Patent Information
- Application Number
- CN202180002056.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-07-02
- Publication Date
- 2025-07-25
- Estimated Expiration
- 2041-07-02
AI Technical Summary
The existing channel decoding algorithm based on confidence propagation algorithm has high complexity and long decoding time, making it difficult to meet the needs of the new generation of wireless communication systems for low bit error rates and high transmission rates.
A pre-trained neural network model, including a decoding generator and a decoding discriminator, is used to obtain a neural network model that can effectively distinguish information sequences and decoding codewords through iterative training, and a generative adversarial neural network (GAN) is used for channel decoding.
A channel decoding scheme with low bit error rate, low decoding time and low decoding complexity is realized, which improves decoding performance and reduces decoding delay.
Smart Images

Figure CN115804067B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of mobile communication technologies, and particularly to a channel decoding method and apparatus, and a training method and apparatus for a neural network model for channel decoding. Background Art
[0002] With the commercialization of 5G technology, higher requirements are put forward for the data transmission rate, data transmission volume, etc. of wireless communication systems. Therefore, a channel decoding technology with lower bit error rate and higher data transmission rate is needed to support the transmission requirements of various service data of wireless communication systems. Summary of the Invention
[0003] The present disclosure provides a channel decoding method and apparatus, which implement the decoding of codewords based on a pre-trained neural network model, thereby providing a channel decoding solution with low bit error rate, low decoding duration, and low decoding complexity. In addition, the present disclosure also provides a training method and apparatus for a neural network model for channel decoding to obtain a neural network model that can be used for channel decoding through iterative training.
[0004] An embodiment of the first aspect of the present disclosure provides a training method for a neural network model for channel decoding. The neural network model includes a decoding generator and a decoding discriminator. The method includes: obtaining an information sequence training set including information sequence samples, and obtaining received codeword samples to be decoded based on the information sequence samples; using the received codeword samples as input features of the decoding generator, using the information sequence samples and the decoded codeword samples output by the decoding generator as input features of the decoding discriminator, and using whether the information sequence samples and the decoded codeword samples can be distinguished as output features of the decoding discriminator, and performing iterative training to obtain the pre-trained neural network model.
[0005] Optionally, the obtaining the received codeword samples to be decoded based on the information sequence samples includes: obtaining encoded codeword samples through an encoder based on the information sequence samples; modulating the encoded codeword samples to obtain modulated codeword samples; and inputting the modulated codeword samples into a noisy channel to obtain the received codeword samples after channel transmission.
[0006] Optionally, each round of training in the iterative training includes: obtaining, by the decoding generator, a decoded codeword sample corresponding to the information sequence sample based on the received codeword sample obtained from the information sequence sample used for this round of training; determining, by the decoding discriminator based on the decoded codeword sample and the information sequence sample, whether the decoded codeword sample and the information sequence sample can be distinguished; if it is determined that the decoded codeword sample and the information sequence sample can be distinguished, updating the decoding generator and the decoding discriminator by the backpropagation method, and repeating the above steps until all the information sequence samples used for this round of training have passed through the decoding generator and the decoding discriminator, and then starting the next round of training; and if it is determined that the decoded codeword sample and the information sequence sample cannot be distinguished, ending the iterative training and obtaining the pre-trained neural network model.
[0007] Optionally, the training objectives of the decoding discriminator and the decoding generator are expressed as:
[0008]
[0009] where G represents the decoding generator, D represents the decoding discriminator, V(D, G) represents the difference between the information sequence sample and the decoded codeword sample, represents the training objective of the decoding generator and the decoding discriminator, where the training objective of the decoding generator is to minimize the difference between the information sequence sample and the decoded codeword sample, and the training objective of the decoding discriminator is to maximize the distinction between the information sequence sample and the decoded codeword sample. x represents the information sequence sample input to the decoding discriminator, x ∼ p data (x) indicates that x follows the data distribution input to the decoding generator, z represents the input noise, z ∼ p z (z) indicates that z follows the noise variable distribution input to the decoding generator, represents the probability distribution.
[0010] Optionally, the decoding discriminator is updated using the gradient ascent method based on the following formula:
[0011]
[0012] where D represents the decoding discriminator, represents the updated decoding discriminator, m represents the number of information sequence samples participating in this round of training, x i represents the information sequence sample input to the decoding discriminator for the i-th time, represents the information sequence sample input to the decoding discriminator in the previous time.
[0013] Optionally, the decoding generator is updated using the gradient descent method based on the following formula:
[0014]
[0015] where G represents the decoding generator, D represents the decoding discriminator, represents the updated decoding generator, m represents the number of information sequence samples participating in this round of training, and y i represents the received codeword sample input to the decoding generator at the i-th time.
[0016] Optionally, the encoder is a low-density parity-check (LDPC) code encoder.
[0017] Optionally, the modulator is binary phase shift keying (BPSK) modulation.
[0018] Optionally, the noisy channel is one of the following: an additive white Gaussian noise (AWGN) channel; and a Rayleigh channel.
[0019] Optionally, the neural network model is a generative adversarial network (GAN) model.
[0020] An embodiment of the second aspect of the present disclosure provides a channel decoding method, including: decoding a received codeword to be decoded obtained after an information sequence is transmitted through a channel based on a pre-trained neural network model to obtain a decoded codeword corresponding to the received codeword; where the pre-trained neural network model includes a decoding generator, and the decoding generator decodes the received codeword to output the decoded codeword.
[0021] Optionally, the neural network model further includes a decoding discriminator, and the pre-trained neural network model is obtained through the following process: obtaining an information sequence training set including information sequence samples, and obtaining received codeword samples to be decoded based on the information sequence samples; using the received codeword samples as input features of the decoding generator, using the information sequence samples and the decoded codeword samples output by the decoding generator as input features of the decoding discriminator, and using the ability to distinguish between the information sequence samples and the decoded codeword samples as output features of the decoding discriminator, and performing iterative training to obtain the pre-trained neural network model.
[0022] Optionally, obtaining the received codeword samples to be decoded based on the information sequence samples includes: obtaining encoded codeword samples through an encoder based on the information sequence samples; modulating the encoded codeword samples to obtain modulated codeword samples; and inputting the modulated codeword samples into a noisy channel to obtain received codeword samples after channel transmission.
[0023] Optionally, each round of training in the iterative training includes: obtaining, by the decoding generator, a decoded codeword sample corresponding to the information sequence sample based on the received codeword sample obtained from the information sequence sample for this round of training; determining, by the decoding discriminator based on the decoded codeword sample and the information sequence sample, whether the decoded codeword sample and the information sequence sample can be distinguished; if it is determined that the decoded codeword sample and the information sequence sample can be distinguished, updating the decoding generator and the decoding discriminator by backpropagation, and repeating the above steps until all the information sequence samples for this round of training have passed through the decoding generator and the decoding discriminator and then starting the next round of training; and if it is determined that the decoded codeword sample and the information sequence sample cannot be distinguished, ending the iterative training and obtaining the pre-trained neural network model.
[0024] Optionally, the training objectives of the decoding discriminator and the decoding generator are expressed as:
[0025]
[0026] where G represents the decoding generator, D represents the decoding discriminator, V(D, G) represents the difference between the information sequence sample and the decoded codeword sample, represents the training objectives of the decoding generator and the decoding discriminator, where the training objective of the decoding generator is to minimize the difference between the information sequence sample and the decoded codeword sample and the training objective of the decoding discriminator is to maximize the distinction between the information sequence sample and the decoded codeword sample, x represents the information sequence sample input to the decoding discriminator, x ∼ p data (x) indicates that x follows the data distribution input to the decoding generator, z represents the input noise, z ∼ p z (z) indicates that z follows the noise variable distribution input to the decoding generator, represents the probability distribution.
[0027] Optionally, the decoding discriminator is updated using the gradient ascent method based on the following formula:
[0028]
[0029] where D represents the decoding discriminator, represents the updated decoding discriminator, m represents the number of information sequence samples participating in this round of training, x i represents the information sequence sample input to the decoding discriminator at the i-th time, represents the information sequence sample input to the decoding discriminator in the previous time.
[0030] Optionally, the decoding generator is updated using the gradient descent method based on the following formula:
[0031]
[0032] where G represents the decoding generator, D represents the decoding discriminator, represents the updated decoding generator, m represents the number of information sequence samples participating in this round of training, and y i represents the received codeword sample input to the decoding generator at the i-th time.
[0033] Optionally, the encoder is a low-density parity-check (LDPC) code encoder.
[0034] Optionally, the modulator is binary phase shift keying (BPSK) modulation.
[0035] Optionally, the noisy channel is one of the following: an additive white Gaussian noise (AWGN) channel; and a Rayleigh channel.
[0036] Optionally, the neural network model is a generative adversarial network (GAN) model.
[0037] An embodiment of the third aspect of the present disclosure provides a training device for a neural network model for channel decoding. The neural network model includes a decoding generator and a decoding discriminator. The device includes: an acquisition module, configured to acquire an information sequence training set including information sequence samples, and obtain received codeword samples to be decoded based on the information sequence samples; and a training module, configured to use the received codeword samples as input features of the decoding generator, use the information sequence samples and the decoded codeword samples output by the decoding generator as input features of the decoding discriminator, and use the ability to distinguish between the information sequence samples and the decoded codeword samples as output features of the decoding discriminator, and perform iterative training to obtain the pre-trained neural network model.
[0038] An embodiment of the fourth aspect of the present disclosure provides a channel decoding device, including: a decoding module, configured to decode a received codeword to be decoded obtained after an information sequence is transmitted through a channel based on a pre-trained neural network model, to obtain a decoded codeword corresponding to the received codeword; wherein, the pre-trained neural network model includes a decoding generator, and the decoding generator decodes the received codeword to output the decoded codeword.
[0039] An embodiment of the fifth aspect of the present disclosure provides an electronic device, including: a memory; a processor, connected to the memory and configured to execute computer-executable instructions on the memory to implement the training method for the neural network model for channel decoding according to the embodiment of the first aspect or the channel decoding method according to the embodiment of the second aspect.
[0040] An embodiment of the sixth aspect of the present disclosure provides an electronic device, including: a model trainer, configured to obtain a pre-trained neural network model based on an information sequence sample and a received codeword sample to be decoded corresponding to the information sequence sample, where the neural network model includes a decoding generator and a decoding discriminator, and the model trainer is configured to use the received codeword sample as an input feature of the decoding generator, use the information sequence sample and a decoded codeword sample output by the decoding generator as input features of the decoding discriminator, and use whether the information sequence sample and the decoded codeword sample can be distinguished as an output feature of the decoding discriminator, and perform iterative training to obtain the pre-trained neural network model; a decoder, configured to decode a received codeword to be decoded obtained after the information sequence is transmitted through a channel based on the pre-trained neural network model to obtain a decoded codeword corresponding to the received codeword.
[0041] An embodiment of the seventh aspect of the present disclosure proposes a computer storage medium, where the computer storage medium stores computer-executable instructions; after the computer-executable instructions are executed by a processor, the training method of the neural network model for channel decoding in the first aspect embodiment or the channel decoding method in the second aspect embodiment can be implemented.
[0042] An embodiment of the present disclosure also provides a training method and apparatus for a neural network model for channel decoding. By obtaining an information sequence training set including information sequence samples and obtaining a received codeword sample to be decoded based on the information sequence samples, and using the received codeword sample as an input feature of the decoding generator, using the information sequence sample and a decoded codeword sample output by the decoding generator as input features of the decoding discriminator, and using whether the information sequence sample and the decoded codeword sample can be distinguished as an output feature of the decoding discriminator, iterative training is performed to obtain a trained neural network model. The trained neural network model obtained thereby can decode a received codeword to be decoded after the information sequence is transmitted through a channel to obtain the original information sequence.
[0043] An embodiment of the present disclosure provides a channel decoding method and apparatus. By decoding a received codeword to be decoded obtained after the information sequence is transmitted through a channel based on a pre-trained neural network model to obtain a decoded codeword corresponding to the received codeword, where the pre-trained neural network model includes a decoding generator for decoding the received codeword to output a decoded codeword. Thus, the decoding of the received codeword to be decoded can be realized through the pre-trained neural network model, thereby realizing a channel decoding scheme with a low bit error rate, a low decoding duration, and a low decoding complexity.
[0044] Additional aspects and advantages of the present disclosure will be given in part in the following description, become apparent in part from the following description, or be learned through the practice of the present disclosure. Description of the Drawings
[0045] The above-mentioned and / or additional aspects and advantages of the present disclosure will become apparent and be readily understood from the following description of embodiments in conjunction with the drawings, where:
[0046] Figure 1 FIG. is a schematic flowchart of a method for training a neural network model for channel decoding according to an embodiment of the present disclosure;
[0047] Figure 2 FIG. is a schematic flowchart of a method for training a neural network model for channel decoding according to an embodiment of the present disclosure;
[0048] Figure 3 FIG. is a schematic flowchart of a method for training a neural network model for channel decoding according to an embodiment of the present disclosure;
[0049] Figure 4 FIG. is a schematic flowchart of a channel decoding method according to an embodiment of the present disclosure;
[0050] Figure 5 FIG. is a schematic structural diagram of an apparatus for a method for training a neural network model for channel decoding provided by an embodiment of the present disclosure;
[0051] Figure 6 FIG. is a schematic structural diagram of a channel decoding apparatus provided by an embodiment of the present disclosure;
[0052] Figure 7 FIG. is a schematic structural diagram of an electronic device provided by an embodiment of the present disclosure;
[0053] Figure 8 FIG. is a schematic structural diagram of an electronic device provided by an embodiment of the present disclosure. Detailed Embodiments
[0054] Embodiments of the present disclosure will be described in detail below. Examples of the embodiments are shown in the drawings, where 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 drawings are exemplary and are intended to explain the present disclosure, and should not be construed as limiting the present disclosure.
[0055] The commercialization of 5G has promoted the progress of human lifestyles and education, making life more intelligent and accelerating the process of social informatization. At the same time, this has also led to an exponential expansion of user data and system capacity. Therefore, higher requirements are put forward for the data transmission rate and system capacity of the new generation of wireless communication systems.
[0056] In the existing channel decoding algorithm based on the belief propagation algorithm, after receiving an information sequence, all variable nodes receive corresponding received values. Each variable node will transmit a reliability message to all check nodes adjacent to it. After receiving the reliability message, each check node makes a process and transmits a new reliability message to all variable nodes adjacent to it. This process can be regarded as one iteration. After one iteration, a decision is made. If the check equation is satisfied, the decoding ends and the decision result is output. Otherwise, the iteration is performed again, and so on until the check equation is satisfied or the maximum number of iterations is reached. Since continuous iteration is required to implement decoding, the existing channel decoding algorithm based on the belief propagation algorithm has high complexity, long decoding time, and complex implementation of decoding devices.
[0057] Therefore, the channel decoding technology is in the evolution stage of a new generation of technology. An important feature of the new generation of channel decoding technology is to maintain massive data transmission and keep a low bit error rate while increasing the transmission rate. At the same time, different service types have different requirements for channel decoding technology according to performance requirements. For example, in eMBB service data, LDPC codes are used for long codes, while Polar codes are used for short codes. Therefore, a channel decoding scheme with a lower bit error rate, faster decoding speed, and lower complexity of the decoding model is needed to support the transmission requirements of various service data.
[0058] The present disclosure proposes a channel decoding method and apparatus, which realizes the decoding of codewords through a pre-trained neural network model, thereby providing a channel decoding scheme with a low bit error rate, low decoding duration, and low decoding complexity. In addition, the present disclosure also proposes a training method and apparatus for a neural network model for channel decoding to obtain a neural network model that can be used for channel decoding through the training process.
[0059] The following will introduce in detail the channel decoding method and its apparatus provided by the present application with reference to the accompanying drawings.
[0060] Figure 1 The flowchart of a training method for a neural network model for channel decoding according to an embodiment of the present disclosure is shown. The neural network model includes a decoding generator and a decoding discriminator. As Figure 1 shown, the method includes the following steps.
[0061] Step S101, obtain an information sequence training set including information sequence samples, and obtain received codeword samples to be decoded based on the information sequence samples.
[0062] Among them, the neural network model can be a generative adversarial network (GAN, Generative Adversarial Networks) model.
[0063] GAN is a feature learning method for artificial intelligence networks. It transforms raw data into higher-level and more abstract expressions through some simple but non-linear models. As long as there are enough transformation combinations, very complex features can be learned. Currently, GAN has been applied in the fields of computer vision, image processing, speech recognition, natural language processing, etc. and achieved excellent performance.
[0064] Among them, the information sequence training set is a data set used to train the neural network model, which can include multiple information sequences. The information sequence can be, for example, a binary information sequence.
[0065] In addition, a received codeword sample is obtained based on the information sequence sample. Since the received codeword sample is obtained after encoding, the received codeword sample is the codeword sample to be decoded.
[0066] In step S102, use the received codeword sample as the input feature of the decoding generator, use the information sequence sample and the decoded codeword sample output by the decoding generator as the input features of the decoding discriminator, and use the ability to distinguish between the information sequence sample and the decoded codeword sample as the output feature of the decoding discriminator, and perform iterative training to obtain a pre-trained neural network model. Among them, the decoding generator outputs a decoded codeword sample based on the received codeword sample.
[0067] The decoding generator in the neural network model is used to decode the received codeword sample to be decoded and output the corresponding decoded codeword sample, while the decoding discriminator is used to distinguish between the information sequence sample and the decoded codeword sample obtained from the decoding generator. By performing the iterative training process with the ability to distinguish between the information sequence sample and the decoded codeword sample as the output feature of the decoding discriminator, a trained neural network model can be obtained. In the trained neural network model, the decoding generator can decode the received codeword obtained from the information sequence into a decoded codeword that the decoding discriminator cannot distinguish from the information sequence, that is, the decoded codeword is the information sequence (at least from the perspective of the decoding discriminator). In other words, the decoding generator can decode the received codeword to be decoded back to the information sequence.
[0068] According to the embodiments of the present invention, by obtaining an information sequence training set including information sequence samples and obtaining a received codeword sample to be decoded based on the information sequence samples, and using the received codeword sample as the input feature of the decoding generator, using the information sequence sample and the decoded codeword sample output by the decoding generator as the input features of the decoding discriminator, and using the ability to distinguish between the information sequence sample and the decoded codeword sample as the output feature of the decoding discriminator, iterative training is performed to obtain a trained neural network model. The trained neural network model obtained thereby can decode the received codeword to be decoded after the information sequence is transmitted through the channel to obtain the original information sequence.
[0069] Figure 2 The flowchart shows a training method for a neural network model for channel decoding according to an embodiment of the present disclosure. Based on Figure 1 the illustrated embodiment, in this exemplary embodiment, a specific implementation manner of obtaining a received codeword sample to be decoded based on an information sequence sample is described.
[0070] As Figure 2 shown, Figure 1 the specific steps of step S101 shown can specifically include the following steps.
[0071] Step S201: Based on the information sequence sample, obtain an encoded codeword sample through an encoder.
[0072] The information sequence sample can be encoded by an encoder to obtain an encoded codeword sample. Among them, the encoder can be an encoder for a channel coding scheme in a mobile communication system, such as a Low-Density Parity Check (LDPC) encoder, a Polar code encoder, or a Turbo code encoder. Since the LDPC code is a linear block code with a sparse parity-check matrix, its characteristics are completely determined by the parity-check matrix, that is, it has a structured construction and is more suitable for deep learning network learning. Therefore, it is easier to obtain a neural network model suitable for LDPC code decoding compared to unstructured codes.
[0073] Step S202: Modulate the encoded codeword sample to obtain a modulated codeword sample.
[0074] After obtaining the encoded codeword sample, a modulated codeword sample can be obtained by modulating the encoded codeword sample. Among them, for example, modulation schemes such as Binary Phase Shift Keying (BPSK) modulation or Frequency Shift Keying (FSK) modulation can be used to modulate the encoded codeword sample.
[0075] Step S203: Input the modulated codeword sample into a noisy channel to obtain a received codeword sample after channel transmission.
[0076] The modulated codeword sample obtained through modulation can be transmitted through a noisy channel to obtain a received codeword sample. Thus, the received codeword sample is a codeword with noise.
[0077] In the exemplary embodiment, the noisy channel can be an Additive White Gaussian Noise (AWGN) channel or a Rayleigh channel.
[0078] For example, in a specific example, an information sequence x of length L (where the total length of the information sequence is L and the length of the sequence containing information is less than or equal to L) can be input into an LDPC encoder to obtain a codeword u of length M (this length M can be greater than L or less than or equal to L, depending on the coding method adopted by the encoder). The codeword u is modulated by BPSK to obtain a codeword s. Then, the codeword s is input into an AWGN channel to obtain a noisy codeword y, where y = s + n and n represents noise.
[0079] According to an embodiment of the present invention, a received codeword sample to be decoded can be obtained after encoding, modulating, and transmitting through a noisy channel for an information sequence sample.
[0080] Figure 3 The flowchart shows a training method of a neural network model for channel decoding according to an embodiment of the present disclosure. Based on Figure 1 In the illustrated embodiment, in this exemplary embodiment, the specific implementation of each round of training in iterative training is described.
[0081] As Figure 3 shown, Figure 1 Step S102 shown can specifically include the following steps.
[0082] Step S301, based on the received codeword sample obtained from the information sequence sample for this round of training, obtain a decoded codeword sample corresponding to the information sequence sample through a decoding generator.
[0083] For each round of training, one or more information sequence samples can be used. For example, the received codeword samples obtained from one or more information sequence samples can be input into the decoding generator to obtain one or more decoded codeword samples corresponding to one or more information sequence samples respectively.
[0084] Step S302, based on the decoded codeword sample and the information sequence sample, determine whether the decoded codeword sample and the information sequence sample can be distinguished through a decoding discriminator.
[0085] One or more decoded codeword samples output from the decoding generator and the corresponding one or more information sequence samples are input into the decoding discriminator, and the decoding discriminator determines whether the decoded codeword sample and the information sequence sample can be distinguished.
[0086] In the exemplary embodiment, the training objectives of the decoding discriminator and the decoding generator can be expressed as:
[0087]
[0088] where G represents the decoding generator, D represents the decoding discriminator, and V(D, G) represents the difference between the information sequence sample and the decoded codeword sample. Denote the training objectives of the decoding generator and the decoding discriminator. The training objective of the decoding generator is to minimize the difference between the information sequence samples and the decoded codeword samples, and the training objective of the decoding discriminator is to maximize the ability to distinguish between the information sequence samples and the decoded codeword samples. Let \(x\) represent the input data of the decoding discriminator, and \(x\sim p data (x)\) indicates that \(x\) follows the data distribution input to the decoding generator. Let \(z\) represent the input noise, and \(z\sim p z (z)\) indicates that \(z\) follows the noise variable distribution input to the decoding generator. Denote the probability distribution. Among them, \(p z (z)\) can follow a normal distribution.
[0089] The training objective of the decoding discriminator is achieved by updating the decoding discriminator while keeping the decoding generator unchanged. The training objective of the decoding generator is achieved by updating the decoding generator based on the discrimination of the difference between the information sequence samples and the decoded codeword samples by the updated decoding discriminator.
[0090] Step S303, if it is determined that the decoded codeword samples and the information sequence samples can be distinguished, update the decoding generator and the decoding discriminator by the backpropagation method, and repeat the above steps until all the information sequence samples used in this round of training have passed through the decoding generator and the decoding discriminator, and then start the next round of training.
[0091] If the decoding discriminator can distinguish the decoded codeword samples and the information sequence samples, it indicates that the difference between the decoded codeword samples generated by the decoding generator from the received codeword samples and the information sequence samples can be distinguished by the decoding discriminator, that is, the decoding of the received codeword samples by the decoding generator does not fully restore the information sequence. Therefore, the current neural network model is not suitable for decoding the received codewords, and it is necessary to update the decoding generator so that it can learn a more suitable decoding algorithm. At the same time, it is necessary to update the decoding discriminator so that the discrimination ability of the decoding discriminator is enhanced. Continuously update the decoding generator and the decoding discriminator through the training process, so as to finally reach the Nash equilibrium state.
[0092] For example, for a decoded codeword sample and an information sequence sample input to the decoding discriminator, if the decoding discriminator can distinguish the decoded codeword sample and the information sequence sample, then update the decoding generator and the decoding discriminator. Specifically, update the decoding generator by using the gradient descent method so that the updated decoding generator can minimize the difference between the information sequence samples and the decoded codeword samples, and update the decoding discriminator by using the gradient ascent method so that the updated decoding discriminator can maximize the ability to distinguish between the information sequence samples and the decoded codeword samples.
[0093] In an exemplary embodiment, the decoding discriminator is updated using the gradient ascent method based on the following formula:
[0094]
[0095] where D represents the decoding discriminator, represents the updated decoding discriminator, m represents the number of information sequence samples participating in this round of training, and x i represents the information sequence sample input to the decoding discriminator at the i-th time, represents the information sequence sample input to the decoding discriminator in the previous time.
[0096] In an exemplary embodiment, the decoding generator is updated using the gradient descent method based on the following formula:
[0097]
[0098] where G represents the decoding generator, D represents the discriminator, represents the updated decoding generator, m represents the number of information sequence samples participating in this round of training, and y i represents the received codeword sample input to the decoding generator at the i-th time.
[0099] After updating the decoding generator and the decoding discriminator, the above steps are repeated using the updated decoding generator and the updated decoding discriminator until all the information sequence samples used for this round of training have been processed by the decoding generator and the decoding discriminator.
[0100] That is to say, after updating the decoding generator and the decoding discriminator, if there are information sequence samples among one or more information sequence samples used for this round of training that have not been processed by the decoding generator and the decoding discriminator, then the received codeword sample obtained from any one of the unprocessed information sequence samples is input into the decoding generator to obtain the decoded codeword sample corresponding to this information sequence sample, and this information sequence sample and the decoded codeword sample are input into the decoding discriminator to determine whether the two can be distinguished. If they can be distinguished, the decoding generator and the decoding discriminator are updated again, and so on, until there are no information sequence samples among one or more information sequence samples used for this round of training that have not been processed by the decoding generator and the decoding discriminator, that is, all the information sequence samples used for this round of training have been used, then the next round of training can be started.
[0101] Step S304, if it is determined that the decoded codeword sample and the information sequence sample cannot be distinguished, end the iterative training and obtain the pre-trained neural network model.
[0102] If the decoding discriminator cannot distinguish between the decoded codeword samples and the information sequence samples, it indicates that the decoding generator can completely restore the information sequence samples based on the received codeword samples. Therefore, the current neural network model is suitable for decoding the received codewords, and the iterative training ends, thus obtaining a pre-trained neural network model.
[0103] According to an embodiment of the present invention, in the iterative training, the decoding discriminator is continuously updated by the gradient ascent method and the decoding generator is continuously updated by the gradient descent method, so as to obtain a trained neural network model suitable for decoding the received codewords.
[0104] Figure 4 The flowchart of a channel decoding method according to an embodiment of the present disclosure is shown, as Figure 4 shown, the method includes the following steps.
[0105] Step S401, based on the pre-trained neural network model, decode the received codeword to be decoded obtained after the information sequence is transmitted through the channel, so as to obtain a decoded codeword corresponding to the received codeword.
[0106] Wherein, the pre-trained neural network model includes a decoding generator, and the decoding generator decodes the received codeword to output a decoded codeword.
[0107] In this embodiment, the received codeword obtained after the information sequence is transmitted through the channel can be input into the pre-trained neural network model, and the pre-trained neural network model decodes the received codeword through its decoding generator to output a decoded codeword corresponding to the received codeword.
[0108] Wherein, the neural network model can be a generative adversarial network (GAN, Generative Adversarial Networks) model. Using the pre-trained neural network model, especially the GAN model, to implement channel decoding can bring the following advantages:
[0109] 1. Low bit error rate: As the number of training times increases, the decoding performance gradually approaches the maximum a posteriori probability performance, and the bit error rate is lower than that of the belief propagation algorithm.
[0110] 2. Low decoding duration: The channel decoding based on the neural network model will have a very short decoding duration after the neural network model is trained, reducing the decoding delay.
[0111] 3. Low decoding algorithm complexity: GAN is based on backpropagation and does not require a Markov chain, thus reducing the decoding algorithm complexity.
[0112] According to an embodiment of the present invention, decoding of received codewords obtained after transmission of initial codewords through channels is implemented based on a pre-trained neural network model, thereby realizing a channel decoding scheme with low bit error rate, low decoding time and low decoding complexity.
[0113] The pre-trained neural network model can be based on the above reference Figures 1-3 The training method of the neural network model for channel decoding is described. The specific steps can be referred to the above description and will not be repeated here.
[0114] Corresponding to the training methods for the neural network model for channel decoding provided in the above-mentioned embodiments, the present disclosure also provides a training device for the neural network model for channel decoding. Since the training device for the neural network model for channel decoding provided in the embodiments of the present disclosure corresponds to the training methods for the neural network model for channel decoding provided in the above-mentioned embodiments, the implementation method of the training method for the neural network model for channel decoding is also applicable to the training device for the neural network model for channel decoding provided in this embodiment, and will not be described in detail in this embodiment. Figure 5 It is a structural schematic diagram of a training device for a neural network model for channel decoding proposed in the present disclosure.
[0115] Figure 5 A structural diagram of a training device 500 for a neural network model for channel decoding provided in an embodiment of the present disclosure, wherein the neural network model includes a decoding generator and a decoding discriminator.
[0116] like Figure 5 As shown, the training device 500 of the neural network model for channel decoding includes:
[0117] An acquisition module 501 is used to acquire an information sequence training set including information sequence samples, and obtain received codeword samples to be decoded based on the information sequence samples; and
[0118] The training module 502 is used to use the received codeword samples as input features of the decoding generator, the information sequence samples and the decoded codeword samples output by the decoding generator as input features of the decoding discriminator, and the ability to distinguish the information sequence samples from the decoded codeword samples as output features of the decoding discriminator to perform iterative training to obtain the pre-trained neural network model.
[0119] According to an embodiment of the present invention, an information sequence training set including information sequence samples is obtained, and a received codeword sample to be decoded is obtained based on the information sequence samples. Then, the received codeword sample is used as the input feature of a decoding generator, the information sequence samples and the decoded codeword samples output by the decoding generator are used as the input features of a decoding discriminator, and the ability to distinguish between the information sequence samples and the decoded codeword samples is used as the output feature of the decoding discriminator, and iterative training is performed to obtain a trained neural network model. The trained neural network model obtained thereby can decode the received codeword to be decoded after the information sequence is transmitted through the channel to obtain the original information sequence.
[0120] In some embodiments, the obtaining module 501 is configured to: based on the information sequence samples, obtain encoded codeword samples through an encoder; modulate the encoded codeword samples to obtain modulated codeword samples; and input the modulated codeword samples into a noisy channel to obtain received codeword samples after channel transmission.
[0121] In some embodiments, the training module 502 is configured to: based on the received codeword samples obtained from the information sequence samples for the current round of training, obtain decoded codeword samples corresponding to the information sequence samples through a decoding generator; based on the decoded codeword samples and the information sequence samples, determine through a decoding discriminator whether the decoded codeword samples and the information sequence samples can be distinguished; if it is determined that the decoded codeword samples and the information sequence samples can be distinguished, update the decoding generator and the decoding discriminator through the backpropagation method, and repeat the above steps until all the information sequence samples for the current round of training have passed through the decoding generator and the decoding discriminator, and then start the next round of training; if it is determined that the decoded codeword samples and the information sequence samples cannot be distinguished, end the iterative training and obtain a pre-trained neural network model.
[0122] In some embodiments, the training objectives of the decoding discriminator and the decoding generator are expressed as:
[0123]
[0124] where G represents the decoding generator, D represents the decoding discriminator, V(D, G) represents the difference between the information sequence samples and the decoded codeword samples, represents the training objectives of the decoding generator and the decoding discriminator. The training objective of the decoding generator is to minimize the difference between the information sequence samples and the decoded codeword samples, and the training objective of the decoding discriminator is to maximize the ability to distinguish between the information sequence samples and the decoded codeword samples. x represents the information sequence samples input to the decoding discriminator, x ∼ p data (x) indicates that x follows the data distribution input to the decoding generator, z represents the input noise, z ∼ pz (z) indicates that z follows the distribution of the noise variable input to the decoding generator, represents the probability distribution.
[0125] In some embodiments, the decoding discriminator is updated using the gradient ascent method based on the following formula:
[0126]
[0127] where D represents the decoding discriminator, represents the updated decoding discriminator, m represents the number of information sequence samples participating in this round of training, and x i represents the information sequence sample input to the decoding discriminator for the i-th time, represents the information sequence sample input to the decoding discriminator in the previous time.
[0128] In some embodiments, the decoding generator is updated using the gradient descent method based on the following formula:
[0129]
[0130] where G represents the decoding generator, D represents the decoding discriminator, represents the updated decoding generator, m represents the number of information sequence samples participating in this round of training, and y i represents the received codeword sample input to the decoding generator for the i-th time.
[0131] In some embodiments, the encoder is a low-density parity-check (LDPC) code encoder.
[0132] In some embodiments, the modulator is binary phase shift keying (BPSK) modulation.
[0133] In some embodiments, the noisy channel is one of the following: an additive white Gaussian noise (AWGN) channel; and a Rayleigh channel.
[0134] In some embodiments, the neural network model is a generative adversarial network (GAN) model.
[0135] Figure 6 It is a schematic structural diagram of a channel decoding device 600 provided by an embodiment of the present disclosure.
[0136] As Figure 6As shown, the device 600 includes: a decoding module 601, configured to decode a received codeword to be decoded obtained after an information sequence is transmitted through a channel based on a pre-trained neural network model, so as to obtain a decoded codeword corresponding to the received codeword; wherein, the pre-trained neural network model includes a decoding generator, and the decoding generator decodes the received codeword to output the decoded codeword.
[0137] By implementing this embodiment, the received codeword to be decoded obtained after the information sequence is transmitted through the channel is decoded based on the pre-trained neural network model, so as to obtain a decoded codeword corresponding to the received codeword, wherein the pre-trained neural network model includes a decoding generator for decoding the received codeword to output the decoded codeword. Thus, the decoding of the codeword to be decoded can be realized through the pre-trained neural network model, thereby realizing a channel decoding scheme with a low bit error rate, a low decoding duration, and a low decoding complexity.
[0138] In some embodiments, the neural network model further includes a decoding discriminator, and the pre-trained neural network model is obtained through the following process: obtaining an information sequence training set including information sequence samples, and obtaining received codeword samples to be decoded based on the information sequence samples; using the received codeword samples as input features of the decoding generator, using the information sequence samples and the decoded codeword samples output by the decoding generator as input features of the decoding discriminator, and using whether the information sequence samples and the decoded codeword samples can be distinguished as output features of the decoding discriminator, and performing iterative training to obtain the pre-trained neural network model.
[0139] In some embodiments, the obtaining of the received codeword samples to be decoded based on the information sequence samples includes: obtaining coded codeword samples through an encoder based on the information sequence samples; modulating the coded codeword samples to obtain modulated codeword samples; and inputting the modulated codeword samples into a noisy channel to obtain received codeword samples after being transmitted through the channel.
[0140] In some embodiments, each round of training in iterative training includes: obtaining, by the decoding generator, a decoded codeword sample corresponding to the information sequence sample based on the received codeword sample obtained from the information sequence sample for this round of training; determining, by the decoding discriminator based on the decoded codeword sample and the information sequence sample, whether the decoded codeword sample and the information sequence sample can be distinguished; if it is determined that the decoded codeword sample and the information sequence sample can be distinguished, updating the decoding generator and the decoding discriminator by the backpropagation method, and repeating the above steps until all the information sequence samples for this round of training have been processed by the decoding generator and the decoding discriminator and then starting the next round of training; and if it is determined that the decoded codeword sample and the information sequence sample cannot be distinguished, ending the iterative training and obtaining the pre-trained neural network model.
[0141] In some embodiments, the training objectives of the decoding discriminator and the decoding generator are expressed as:
[0142]
[0143] where G represents the decoding generator, D represents the decoding discriminator, V(D, G) represents the difference between the information sequence sample and the decoded codeword sample, represents the training objectives of the decoding generator and the decoding discriminator, where the training objective of the decoding generator is to minimize the difference between the information sequence sample and the decoded codeword sample and the training objective of the decoding discriminator is to maximize the distinction between the information sequence sample and the decoded codeword sample, x represents the information sequence sample input to the decoding discriminator, x ∼ p data (x) indicates that x follows the data distribution input to the decoding generator, z represents the input noise, z ∼ p z (z) indicates that z follows the noise variable distribution input to the decoding generator, represents the probability distribution.
[0144] In some embodiments, the decoding discriminator is updated using the gradient ascent method based on the following formula:
[0145]
[0146] where D represents the decoding discriminator, represents the updated decoding discriminator, m represents the number of information sequence samples participating in this round of training, x i represents the information sequence sample input to the decoding discriminator for the i-th time, represents the information sequence sample input to the decoding discriminator in the previous time.
[0147] In some embodiments, the decoding generator is updated using the gradient descent method based on the following formula:
[0148]
[0149] where G represents the decoding generator, D represents the decoding discriminator, represents the updated decoding generator, m represents the number of information sequence samples participating in this round of training, and y i represents the received codeword sample input to the decoding generator at the i-th time.
[0150] In some embodiments, the encoder is a low-density parity-check (LDPC) code encoder.
[0151] In some embodiments, the modulator is binary phase shift keying (BPSK) modulation.
[0152] In some embodiments, the noisy channel is one of the following: an additive white Gaussian noise (AWGN) channel; and a Rayleigh channel.
[0153] In some embodiments, the neural network model is a generative adversarial network (GAN) model.
[0154] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device and a computer-readable storage medium. As Figure 7 shown, it is a block diagram of an electronic device according to an embodiment of the present disclosure. The electronic device is intended to represent various forms of digital computers, such as, a laptop computer, a desktop computer, a workbench, a personal digital assistant, a server, a blade server, a mainframe computer, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as, a personal digital processor, a cellular phone, a smart phone, a wearable device, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.
[0155] As Figure 7As shown, the electronic device includes: one or more processors 710, a memory 720, and interfaces for connecting the components, including a high-speed interface and a low-speed interface. Each component is interconnected using different buses and can be mounted on a common motherboard or otherwise installed as required. The processor can process instructions executed within the electronic device, including instructions stored in the memory or on the memory for displaying graphical information of a GUI on an external input / output device (such as a display device coupled to the interface). In other embodiments, if necessary, multiple processors and / or multiple buses can be used with multiple memories and multiple memories. Similarly, multiple electronic devices can be connected, with each device providing part of the necessary operations (such as an array of servers, a set of blade servers, or a multi-processor system). Figure 7 In the example, one processor 710 is taken.
[0156] The memory 720 is the non-transitory computer-readable storage medium provided by the present disclosure. Wherein, the memory stores instructions executable by at least one processor, enabling the at least one processor to execute the data transmission method provided by the present disclosure. The non-transitory computer-readable storage medium of the present disclosure stores computer instructions for causing a computer to execute the data transmission method provided by the present disclosure.
[0157] As a non-transitory computer-readable storage medium, the memory 720 can be used to store non-transitory software programs, non-transitory computer-executable programs, and modules, such as the program instructions / modules corresponding to the data transmission method in the embodiments of the present disclosure. The processor 710 executes various functional applications and data processing of the server by running the non-transitory software programs, instructions, and modules stored in the memory 720, thereby implementing the data transmission method in the above method embodiments.
[0158] The memory 720 can include a program storage area and a data storage area. Among them, the program storage area can store an operating system and application programs required for at least one function; the data storage area can store data created according to the use of the positioning electronic device, etc. In addition, the memory 720 can include high-speed random access memory and can also include non-transitory memory, such as at least one magnetic disk storage device, a flash memory device, or other non-transitory solid-state storage devices. Optionally, the memory 720 can optionally include memories remotely located relative to the processor 710, and these remote memories can be connected to the positioning electronic device through a network. Examples of the above networks include, but are not limited to, the Internet, an enterprise intranet, a local area network, a mobile communication network, and combinations thereof.
[0159] The electronic device may further include: an input device 730 and an output device 740. The processor 710, the memory 720, the input device 730, and the output device 740 may be connected through a bus or other means. Figure 7 Take the connection through the bus as an example.
[0160] The input device 730 can receive input digital or character information, and generate key signal inputs related to the user settings and function controls for positioning the electronic device, such as input devices like touch screens, keypads, mice, trackpads, touch panels, pointing sticks, one or more mouse buttons, trackballs, joysticks, etc. The output device 740 may include display devices, auxiliary lighting devices (e.g., LEDs), and tactile feedback devices (e.g., vibration motors), etc. The display device may include, but is not limited to, liquid crystal displays (LCDs), light-emitting diode (LED) displays, and plasma displays. In some embodiments, the display device may be a touch screen.
[0161] Various embodiments of the systems and techniques described herein can be implemented in digital electronic circuit systems, integrated circuit systems, dedicated ASICs (application-specific integrated circuits), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a dedicated or general-purpose programmable processor, and can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit the data and instructions to the storage system, the at least one input device, and the at least one output device.
[0162] These computational programs (also referred to as programs, software, software applications, or code) include machine instructions for a programmable processor, and these computational programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. As used herein, the terms "machine-readable medium" and "computer-readable medium" refer to any computer program product, device, and / or apparatus (e.g., disks, optical disks, memories, programmable logic devices (PLDs)) for providing machine instructions and / or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal. The term "machine-readable signal" refers to any signal for providing machine instructions and / or data to a programmable processor.
[0163] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and a pointing device (e.g., a mouse or a trackball) through which the user can provide input to the computer. Other kinds of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, speech input, or tactile input).
[0164] The systems and techniques described herein can be implemented in a computing system including backend components (e.g., as a data server), or a computing system including middleware components (e.g., an application server), or a computing system including frontend components (e.g., a user computer having a graphical user interface or a web browser through which the user can interact with an implementation of the systems and techniques described herein), or a computing system including any combination of such backend components, middleware components, or frontend components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local area network (LAN), wide area network (WAN), and the Internet.
[0165] A computer system can include a client and a server. The client and the server are generally far from each other and typically interact through a communication network. The client - server relationship is created by computer programs running on the respective computers and having a client - server relationship with each other.
[0166] Those skilled in the art can also understand that the various illustrative logical blocks and steps listed in the embodiments of this application can be implemented by electronic hardware, computer software, or a combination of both. Whether such functionality is implemented by hardware or software depends on the specific application and the design requirements of the entire system. For each specific application, those skilled in the art can use various methods to implement the described functionality, but such implementation should not be construed as exceeding the scope of protection of the embodiments of this application.
[0167] Figure 8 A block diagram of another electronic device according to an embodiment of the present disclosure is shown.
[0168] As Figure 8 shown, the electronic device 800 includes a model trainer 810 and a decoder 820.
[0169] Among them, the model trainer 810 is used to obtain a pre-trained neural network model based on an information sequence sample and a received codeword sample to be decoded corresponding to the information sequence sample, where the neural network model includes a decoding generator and a decoding discriminator.
[0170] Specifically, the model trainer is used to use the received codeword sample as the input feature of the decoding generator, use the information sequence sample and the decoded codeword sample output by the decoding generator as the input features of the decoding discriminator, and use the ability to distinguish the information sequence sample and the decoded codeword sample as the output feature of the decoding discriminator, and perform iterative training to obtain the pre-trained neural network model.
[0171] The decoder 820 is used to decode the received codeword to be decoded obtained after the information sequence is transmitted through the channel based on the pre-trained neural network model to obtain a decoded codeword corresponding to the received codeword.
[0172] The present application also provides a readable storage medium, on which instructions are stored, and when the instructions are executed by a computer, the functions of any of the above method embodiments are implemented.
[0173] The present application also provides a computer program product, and when the computer program product is executed by a computer, the functions of any of the above method embodiments are implemented.
[0174] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer programs. When the computer program is loaded and executed on a computer, the processes or functions described in the embodiments of the present application are generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer program can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer program can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by wire (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that the computer can access or a data storage device such as a server or data center that includes one or more integrated available media. The available medium can be a magnetic medium (such as a floppy disk, hard disk, magnetic tape), an optical medium (such as a high-definition digital video disc (DVD)), or a semiconductor medium (such as a solid state disk (SSD)), etc.
[0175] Those of ordinary skill in the art can understand that the various numerical numbers such as the first, second, etc. involved in this application are only for the convenience of description and are not used to limit the scope of the embodiments of this application, nor do they represent the order of precedence.
[0176] At least one in this application can also be described as one or more. The plurality can be two, three, four, or more, and this application does not make any restrictions. In the embodiments of this application, for a technical feature, the technical features in this technical feature are distinguished by "first", "second", "third", "A", "B", "C", and "D", etc. There is no order of precedence or size order among the technical features described by the "first", "second", "third", "A", "B", "C", and "D".
[0177] The corresponding relationships shown in the various tables in this application can be configured or predefined. The values of the information in each table are only examples and can be configured as other values, which are not limited in this application. When configuring the corresponding relationships between the configuration information and each parameter, it is not necessarily required to configure all the corresponding relationships shown in the tables. For example, in the tables of this application, the corresponding relationships shown in some rows can also not be configured. Another example is that appropriate deformation adjustments can be made based on the above tables, such as splitting, merging, etc. The names of the parameters shown in the titles of the above tables can also be other names understandable by the communication device, and the values or representation methods of the parameters can also be other values or representation methods understandable by the communication device. When implementing the above tables, other data structures can also be used, such as arrays, queues, containers, stacks, linear lists, pointers, linked lists, trees, graphs, structures, classes, heaps, hash tables or hash maps, etc.
[0178] The predefined in this application can be understood as definition, pre - definition, storage, pre - storage, pre - negotiation, pre - configuration, solidification, or pre - firing.
[0179] Those of ordinary skill in the art can realize that the units and algorithm steps of each example described in combination with the embodiments disclosed in this article can be implemented by electronic hardware, or by a combination of computer software and electronic hardware. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of this application.
[0180] Those skilled in the art can clearly understand that for the convenience and conciseness of description, the specific working processes of the systems, devices, and units described above can refer to the corresponding processes in the foregoing method embodiments and will not be elaborated herein.
[0181] As described above, this is only the specific implementation manner of this application, but the protection scope of this application is not limited thereto. Any person skilled in the art within the technical scope disclosed in this application can easily think of changes or substitutions, which should all be covered by the protection scope of this application. Therefore, the protection scope of this application should be subject to the protection scope of the claimed rights.
Claims
1. A training method for a neural network model for channel decoding, characterized in that, The neural network model includes a decoding generator and a decoding discriminator, and the method includes: Obtaining an information sequence training set including information sequence samples, and obtaining received codeword samples to be decoded based on the information sequence samples; and Using the received codeword samples as input features of the decoding generator, using the information sequence samples and the decoded codeword samples output by the decoding generator as input features of the decoding discriminator, and using the ability to distinguish between the information sequence samples and the decoded codeword samples as the output feature of the decoding discriminator, performing iterative training to obtain a pre-trained neural network model, where the training objective of the decoding generator is to minimize the difference between the information sequence samples and the decoded codeword samples and the training objective of the decoding discriminator is to maximize the distinction between the information sequence samples and the decoded codeword samples.
2. The method according to claim 1, wherein The obtaining of the received codeword samples to be decoded based on the information sequence samples includes: Based on the information sequence samples, obtaining encoded codeword samples through an encoder; Modulating the encoded codeword samples to obtain modulated codeword samples; and Inputting the modulated codeword samples into a noisy channel to obtain received codeword samples after channel transmission.
3. The method according to claim 1, wherein Each round of training in the iterative training includes: Based on the received codeword samples obtained from the information sequence samples used for the current round of training, obtaining decoded codeword samples corresponding to the information sequence samples through the decoding generator; Based on the decoded codeword samples and the information sequence samples, determining through the decoding discriminator whether the decoded codeword samples and the information sequence samples can be distinguished; If it is determined that the decoded codeword samples and the information sequence samples can be distinguished, updating the decoding generator and the decoding discriminator through the backpropagation method, and repeating the above steps until all the information sequence samples used for the current round of training have passed through the decoding generator and the decoding discriminator, and then starting the next round of training; and If it is determined that the decoded codeword samples and the information sequence samples cannot be distinguished, ending the iterative training and obtaining the trained neural network model.
4. The method according to claim 3, characterized in that The training objectives of the decoding discriminator and the decoding generator are expressed as: Among them, G represents the decoding generator, D represents the decoding discriminator, and V(D, G) represents the difference between the information sequence sample and the decoded codeword sample. Represents the training objective of the decoding generator and the decoding discriminator. x represents the information sequence sample input to the decoding discriminator, and x ∼ p data (x) indicates that x follows the data distribution input to the decoding generator. z represents the input noise, and z ∼ p z (z) indicates that z follows the noise variable distribution input to the decoding generator. Represents the probability distribution.
5. The method according to claim 3, wherein Updating the decoding discriminator using the gradient ascent method based on the following formula: where D represents the decoding discriminator, represents the updated decoding discriminator, m represents the number of information sequence samples participating in this round of training, and x i represents the information sequence sample input to the decoding discriminator for the i-th time, represents the information sequence sample input to the decoding discriminator in the previous time.
6. The method according to claim 3, wherein Updating the decoding generator using the gradient descent method based on the following formula: Among them, G represents the decoding generator, and D represents the decoding discriminator. represents the updated decoding generator, m represents the number of information sequence samples participating in this round of training, and y i represents the received codeword sample input to the decoding generator for the i-th time.
7. The method according to claim 2, wherein The encoder is a low-density parity-check (LDPC) code encoder.
8. The method according to claim 2, wherein The modulator is binary phase shift keying (BPSK) modulation.
9. The method according to claim 2, wherein The noisy channel is one of the following: An additive white Gaussian noise (AWGN) channel; and A Rayleigh channel.
10. The method according to any one of claims 1-9, characterized in that, The neural network model is a generative adversarial network (GAN) model.
11. A channel decoding method, characterized in that, Including: Based on the pre-trained neural network model, decoding the received codeword to be decoded obtained after the information sequence is transmitted through the channel to obtain a decoded codeword corresponding to the received codeword; Wherein, the pre-trained neural network model includes a decoding generator, and the decoding generator decodes the received codeword to output the decoded codeword; The neural network model further includes a decoding discriminator, and the pre-trained neural network model is obtained through the following process: Obtain an information sequence training set including information sequence samples, and obtain received codeword samples based on the information sequence samples; and Use the received codeword samples as the input features of the decoding generator, use the information sequence samples and the decoded codeword samples output by the decoding generator as the input features of the decoding discriminator, and use the ability to distinguish between the information sequence samples and the decoded codeword samples as the output features of the decoding discriminator, and perform iterative training to obtain the pre-trained neural network model, where the training objective of the decoding generator is to minimize the difference between the information sequence samples and the decoded codeword samples, and the training objective of the decoding discriminator is to maximize the distinction between the information sequence samples and the decoded codeword samples.
12. The method according to claim 11, wherein The obtaining of the received codeword samples to be decoded based on the information sequence samples includes: Based on the information sequence samples, obtain encoded codeword samples through an encoder; Modulate the encoded codeword samples to obtain modulated codeword samples; and Input the modulated codeword samples into a noisy channel to obtain the received codeword samples after channel transmission.
13. The method according to claim 11, characterized in that, Each round of training in the iterative training includes: Based on the received codeword samples obtained from the information sequence samples used for this round of training, obtain the decoded codeword samples corresponding to the information sequence samples through the decoding generator; Based on the decoded codeword samples and the information sequence samples, determine through the decoding discriminator whether the decoded codeword samples and the information sequence samples can be distinguished; If it is determined that the decoded codeword samples and the information sequence samples can be distinguished, update the decoding generator and the decoding discriminator through the backpropagation method, and repeat the above steps until all the information sequence samples used for this round of training have passed through the decoding generator and the decoding discriminator, and then start the next round of training; and If it is determined that the decoded codeword samples and the information sequence samples cannot be distinguished, end the iterative training and obtain the trained neural network model.
14. The method according to claim 13, wherein The training objectives of the decoding discriminator and the decoding generator are expressed as: Among them, G represents the decoding generator, D represents the decoding discriminator, and V(D, G) represents the difference between the information sequence sample and the decoded codeword sample. represents the training objective of the decoding generator and the decoding discriminator, x represents the information sequence sample input to the decoding discriminator, and x ∼ p data (x) indicates that x follows the data distribution input to the decoding generator, z represents the input noise, and z ∼ p z (z) indicates that z follows the noise variable distribution input to the decoding generator. represents the probability distribution.
15. The method according to claim 13, wherein Update the decoding discriminator using the gradient ascent method based on the following formula: where D represents the decoding discriminator, represents the updated decoding discriminator, m represents the number of information sequence samples participating in this round of training, and x i represents the information sequence sample input to the decoding discriminator for the i-th time, represents the information sequence sample input to the decoding discriminator in the previous time.
16. The method according to claim 13, wherein Update the decoding generator using the gradient descent method based on the following formula: Among them, G represents the decoding generator, and D represents the decoding discriminator. represents the updated decoding generator, m represents the number of information sequence samples participating in this round of training, and y i represents the received codeword sample input to the decoding generator for the i-th time.
17. The method according to any one of claims 11-16, characterized in that, The neural network model is a generative adversarial network GAN model.
18. A training device for a neural network model for channel decoding, characterized in that, The neural network model includes a decoding generator and a decoding discriminator, and the device includes: An acquisition module, configured to acquire an information sequence training set including information sequence samples, and obtain received codeword samples to be decoded based on the information sequence samples; and A training module, configured to use the received codeword samples as the input features of the decoding generator, use the information sequence samples and the decoded codeword samples output by the decoding generator as the input features of the decoding discriminator, and use the ability to distinguish between the information sequence samples and the decoded codeword samples as the output features of the decoding discriminator, and perform iterative training to obtain a pre-trained neural network model, where the training objective of the decoding generator is to minimize the difference between the information sequence samples and the decoded codeword samples, and the training objective of the decoding discriminator is to maximize the difference between the information sequence samples and the decoded codeword samples.
19. A channel decoding device, characterized in that, Comprising: A decoding module, configured to decode a received codeword to be decoded obtained after an information sequence is transmitted through a channel based on the pre-trained neural network model to obtain a decoded codeword corresponding to the received codeword; Wherein, the pre-trained neural network model includes a decoding generator, and the decoding generator decodes the received codeword to output the decoded codeword; the neural network model further includes a decoding discriminator, and the pre-trained neural network model is obtained through the following process: Obtain an information sequence training set including information sequence samples, and obtain received codeword samples based on the information sequence samples; and Use the received codeword samples as the input features of the decoding generator, use the information sequence samples and the decoded codeword samples output by the decoding generator as the input features of the decoding discriminator, and use the ability to distinguish between the information sequence samples and the decoded codeword samples as the output features of the decoding discriminator, and perform iterative training to obtain the pre-trained neural network model, where the training objective of the decoding generator is to minimize the difference between the information sequence samples and the decoded codeword samples, and the training objective of the decoding discriminator is to maximize the difference between the information sequence samples and the decoded codeword samples.
20. An electronic device, wherein, Comprising: A memory; A processor, connected to the memory and configured to execute computer-executable instructions on the memory to be able to implement the method according to any one of claims 1-10.
21. An electronic device, wherein, Comprising: A memory; A processor, connected to the memory and configured to execute computer-executable instructions on the memory to be able to implement the method according to any one of claims 11-17.
22. An electronic device, comprising: A model trainer for obtaining a pre-trained neural network model based on an information sequence sample and a received codeword sample to be decoded corresponding to the information sequence sample, wherein the neural network model includes a decoding generator and a decoding discriminator, and the model trainer is configured to use the received codeword sample as an input feature of the decoding generator, use the information sequence sample and a decoded codeword sample output by the decoding generator as input features of the decoding discriminator, and use the ability to distinguish between the information sequence sample and the decoded codeword sample as an output feature of the decoding discriminator, and perform iterative training to obtain the pre-trained neural network model, wherein the training objective of the decoding generator is to minimize the difference between the information sequence sample and the decoded codeword sample, and the training objective of the decoding discriminator is to maximize the difference in distinguishing between the information sequence sample and the decoded codeword sample; A decoder for decoding a received codeword to be decoded obtained after an information sequence is transmitted through a channel based on the pre-trained neural network model to obtain a decoded codeword corresponding to the received codeword.
23. A computer storage medium, wherein, The computer storage medium stores computer-executable instructions; after the computer-executable instructions are executed by a processor, the method according to any one of claims 1-10 can be implemented.
24. A computer storage medium, wherein, The computer storage medium stores computer-executable instructions; after the computer-executable instructions are executed by a processor, the method according to any one of claims 11-17 can be implemented.
Citation Information
Patent Citations
Channel estimation method based on convolutional neural network under fast fading channel
CN110351212A