Learning in Communication Systems

By using trainable parameter initialization and machine learning technology in the communication system to generate and update training symbols, the problem of inefficient modulation scheme selection and parameter initialization in the prior art is solved, and the end-to-end performance of the communication system is improved.

CN113906704BActive Publication Date: 2025-01-03NOKIA TECHNOLOGIES OY
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN201980096967.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2019-05-30
Publication Date
2025-01-03
Estimated Expiration
2039-05-30

AI Technical Summary

Technical Problem

During the data transmission process of existing communication systems, there are inefficient problems in the selection of modulation schemes and parameter initialization, which affects end-to-end performance.

Method used

Using the method of training parameter initialization, the training symbols are generated through probability functions and distribution functions, and the parameters of the transmitter and receiver are updated through channels in the training mode, and the machine learning principles such as neural networks and Gumbel-softmax algorithms are used to optimize the transmission system. performance.

Benefits of technology

Improve the end-to-end performance of the transmission system, optimize the loss function, and achieve more efficient data symbol transmission and reception.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113906704B_ABST
    Figure CN113906704B_ABST
Patent Text Reader

Abstract

An apparatus, method and computer program are described, comprising: initializing trainable parameters of a transmission system having a transmitter, a channel and a receiver; generating training symbols based on a differentiable distribution function; sending modulated training symbols to the receiver through the channel in a training mode; generating a loss function based on the generated training symbols and the modulated training symbols as received at the receiver of the transmission system; and generating updated parameters of the transmission system to minimize the loss function.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification relates to learning in communication systems. Background Art

[0002] A simple communication system includes a transmitter, a transmission channel, and a receiver. The choice of the communication scheme used in the transmission of data from the transmitter to the receiver can have a significant impact on the end-to-end performance of such a communication system. Although some progress has been made, there is still room for further development in this area. Summary of the invention

[0003] In a first aspect, the present specification describes an apparatus comprising: means for initializing (e.g., randomly or in some other manner—such as on the basis of channel information) trainable parameters of a transmission system, wherein the transmission system comprises a transmitter, a channel, and a receiver, wherein the transmitter comprises a transmitter algorithm for converting one or more inputs (e.g., (multiple) data bits or a data stream) into one or more data symbols and a modulator for converting the data symbols into transmit symbols according to a modulation scheme, wherein the trainable parameters of the transmission system comprise a probability function (e.g., implementing probability shaping, as described above) that defines the probability of an individual data symbol being output by the transmitter algorithm; means for initializing (e.g., randomly or in some other manner—such as on the basis of channel information) trainable parameters of a transmission system, wherein the transmission system ... A component for generating training symbols based on a distribution function, wherein the distribution function is differentiable; a component for sending modulated training symbols to a receiver through a channel in a training mode; a component for generating a loss function based on the generated training symbols and the modulated training symbols as received at a receiver of a transmission system; a component for generating updated parameters of the transmission system (e.g., using machine learning principles, such as by updating a neural network) to minimize the loss function, wherein generating the updated parameters of the transmission system includes: updating the parameters of the transmitter algorithm; and a component for repeating the following until a first condition is met: generating training symbols, generating a loss function, and updating the parameters of the transmission system. The data symbols may be a finite discrete set of symbols. The data symbols may correspond to constellation points of the transmitter. The probability function may be a non-differentiable discrete function (and may be replaced by a differentiable approximation (distribution function) during training). Generating training symbols based on a differentiable distribution function may enable the use of back propagation during training parameters.

[0004] Updating the parameters of the training algorithm may include: training the probability function. Updating the parameters may also include: updating other parameters, such as the modulator constellation.

[0005] The distribution function may be an approximation of a probability function. For example, the distribution function may be a differentiable approximation of a probability function (which may be discrete and non-differentiable).

[0006] The training symbols may be generated by a Gumbel-softmax algorithm, such as using Gumbel-softmax reparameterization.

[0007] The transmit symbols (and the training symbols in the training mode) may correspond to fixed constellation positions of a modulation scheme implemented by the modulator. Alternatively, the transmit symbols (and the training symbols in the training mode) may correspond to variable constellation positions of a modulation scheme implemented by the modulator, wherein the trainable parameters of the transmission system include the constellation point positions of the modulation scheme.

[0008] The receiver may be configured to receive the transmit symbols as transmitted over the channel in an operational mode and to receive modulated training symbols as transmitted over the channel in a training mode.

[0009] Generating updated parameters of the transmission system may comprise updating parameters of a trainable receiver algorithm. Thus, for example, end-to-end training of the transmission system may be provided.

[0010] Some embodiments may include: means for updating trainable parameters of a transmission system using the generated updated parameters of the transmission system. For example, transmitter parameters may be updated in a training mode and then deployed to a transmitter algorithm. The trainable parameters of the transmitter system may include one or more of: trainable parameters of a transmitter algorithm; trainable parameters of a modulator; and trainable parameters of a receiver.

[0011] The probability function and the distribution function may depend at least in part on channel information of the transmission system (such as the signal-to-noise ratio).

[0012] In some embodiments, the first condition comprises a defined performance level.Alternatively, or in addition, the first condition may comprise a defined number of iterations.

[0013] The transmitter algorithm may be implemented as a lookup table in operational mode.

[0014] The loss function may be related to one or more of block error rate, bit error rate, mutual information, and categorical cross entropy.

[0015] The means for generating updated parameters of the transmission system may optimize one or more of a learning rate and a batch size of the symbolic approximation used in a training mode.

[0016] The means for generating updated parameters of the transmission system may use stochastic gradient descent (or some other back-propagation algorithm) to update the parameters.

[0017] The transmitter may include a transmitter neural network configured to implement the transmitter algorithm. The receiver algorithm may include a receiver neural network.

[0018] The components may include: at least one processor; and at least one memory including computer program code, the at least one memory and the computer program being configured to: together with the at least one processor, cause execution of the apparatus.

[0019] In a second aspect, the present specification describes a method comprising: initializing trainable parameters of a transmission system, wherein the transmission system comprises a transmitter, a channel, and a receiver, wherein the transmitter comprises a transmitter algorithm for converting one or more inputs into one or more data symbols and a modulator for converting the data symbols into transmission symbols according to a modulation scheme, wherein the trainable parameters of the transmission system comprise a probability function defining the probability of an individual data symbol being output by the transmitter algorithm; generating training symbols based on a distribution function, wherein the distribution function is differentiable; sending the modulated training symbols to the receiver through the channel in a training mode; generating a loss function based on the generated training symbols and the modulated training symbols as received at the receiver of the transmission system; generating updated parameters of the transmission system to minimize the loss function, wherein generating the updated parameters of the transmission system comprises updating the parameters of the transmitter algorithm; and repeating the following items until a first condition is met: generating training symbols, generating a loss function, and updating the parameters of the transmission system.

[0020] The training symbols can be generated by the Gumbel-softmax algorithm.

[0021] The transmitted symbols may correspond to fixed constellation positions of a modulation scheme implemented by the modulator. Alternatively, the transmitted symbols may correspond to variable constellation positions of a modulation scheme implemented by the modulator, wherein the trainable parameters of the transmission system include constellation point positions of the modulation scheme.

[0022] Generating updated parameters of the transmission system may include updating parameters of a trainable receiver algorithm.

[0023] Some embodiments include: updating trainable parameters of the transmission system using the generated updated parameters of the transmission system. The trainable parameters of the transmitter system may include one or more of: trainable parameters of a transmitter algorithm; trainable parameters of a modulator; and trainable parameters of a receiver.

[0024] The probability function and the distribution function may depend at least in part on channel information of the transmission system.

[0025] The second aspect may further include at least some of the features of the first aspect as described above.

[0026] In a third aspect, the present specification describes an apparatus configured to perform any method as described with reference to the second aspect.

[0027] In a fourth aspect, the present specification describes a work product comprising: a lookup table or array created by means of the method of the second aspect.

[0028] In a fifth aspect, the present specification describes computer readable instructions which, when executed by a computing device, cause the computing device to perform any method as described with reference to the third aspect or the fourth aspect.

[0029] In a sixth aspect, the present specification describes a computer-readable medium comprising program instructions stored thereon to perform at least the following operations: initialize trainable parameters of a transmission system, wherein the transmission system comprises a transmitter, a channel, and a receiver, wherein the transmitter comprises a transmitter algorithm for converting one or more inputs into one or more data symbols and a modulator for converting the data symbols into transmission symbols according to a modulation scheme, wherein the trainable parameters of the transmission system comprise a probability function defining the probability of an individual data symbol being output by the transmitter algorithm; generate training symbols based on a distribution function, wherein the distribution function is differentiable; send modulated symbols to a receiver through a channel in a training mode; generate a loss function based on the generated symbols and the modulated symbols as received at a receiver of the transmission system; generate updated parameters of the transmission system to minimize the loss function, wherein generating the updated parameters of the transmission system comprises: updating the parameters of the transmitter algorithm; and repeating the following items until a first condition is met: generating symbol approximations, generating loss functions, and updating the parameters of the transmission system.

[0030] In a seventh aspect, the present specification describes a computer program comprising instructions for causing a device to perform at least the following operations: initialize trainable parameters of a transmission system, wherein the transmission system comprises a transmitter, a channel, and a receiver, wherein the transmitter comprises a transmitter algorithm for converting one or more inputs into one or more data symbols and a modulator for converting the data symbols into transmission symbols according to a modulation scheme, wherein the trainable parameters of the transmission system comprise a probability function defining the probability of an individual data symbol being output by the transmitter algorithm; generate training symbols based on a distribution function, wherein the distribution function is differentiable; send modulated symbols to a receiver through a channel in a training mode; generate a loss function based on the generated symbols and the modulated symbols as received at a receiver of the transmission system; generate updated parameters of the transmission system to minimize the loss function, wherein generating the updated parameters of the transmission system comprises: updating the parameters of the transmitter algorithm; and repeating the following items until a first condition is met: generating symbol approximations, generating a loss function, and updating the parameters of the transmission system.

[0031] In an eighth aspect, the present specification describes an apparatus comprising: at least one processor; and at least one memory comprising computer program code, which, when executed by the at least one processor, causes the apparatus to: initialize trainable parameters of a transmission system, wherein the transmission system comprises a transmitter, a channel, and a receiver, wherein the transmitter comprises a transmitter algorithm for converting one or more inputs into one or more data symbols and a modulator for converting the data symbols into transmission symbols according to a modulation scheme, wherein the trainable parameters of the transmission system comprise a probability function defining the probability of an individual data symbol being output by the transmitter algorithm; generate training symbols based on a distribution function, wherein the distribution function is differentiable; send modulated symbols to a receiver through the channel in a training mode; generate a loss function based on the generated symbols and the modulated symbols as received at a receiver of the transmission system; generate updated parameters of the transmission system to minimize the loss function, wherein generating the updated parameters of the transmission system comprises: updating the parameters of the transmitter algorithm; and repeating the following until a first condition is met: generating symbol approximations, generating a loss function, and updating the parameters of the transmission system.

[0032] In a ninth aspect, the present specification describes an apparatus comprising: an initialization module for initializing (e.g., randomly or in some other manner—such as based on channel information) trainable parameters of a transmission system, wherein the transmission system comprises a transmitter, a channel, and a receiver, wherein the transmitter comprises a transmitter algorithm for converting one or more inputs (e.g., (multiple) data bits or data streams) into one or more data symbols and a modulator for converting the data symbols into transmission symbols according to a modulation scheme, wherein the trainable parameters of the transmission system comprise a probability function (e.g., implementing probability shaping, as described above) that defines the probability of an individual data symbol being output by the transmitter algorithm; a training module (e.g., a shaping device); A transmission system is provided with a plurality of transmission modules, each of which is a plurality of transmission modules, and each of which is a plurality of transmission modules. The transmission system is provided with a plurality of transmission modules, each of which is a plurality of transmission modules, and each of which is a plurality of transmission modules. The transmission system is provided with a plurality of transmission modules, each of which is a plurality of transmission modules, and each of which is a plurality of transmission modules. The transmission system is provided with a plurality of transmission modules, each of which is a plurality of transmission modules, and each of which is a plurality of transmission modules. The transmission system is provided with a plurality of transmission modules, each of which is a plurality of transmission modules, and each of which is a plurality of transmission modules. The transmission system is provided with a plurality of transmission modules, each of which is a plurality of transmission modules, and each of which is a plurality of transmission modules, ... BRIEF DESCRIPTION OF THE DRAWINGS

[0033] Example embodiments will now be described by way of non-limiting example with reference to the following schematic diagrams, in which:

[0034] Figure 1 is a block diagram of an example end-to-end communication system according to an example embodiment;

[0035] Figure 2 Yes, you can Figure 1 A block diagram of an example transmitter for use in a communication system; Figure 3 Yes, you can Figure 1 A block diagram of an example receiver for use in a communication system of;

[0036] Figure 4 is a block diagram of a transmission system according to an example embodiment; Figure 5 is a block diagram of a transmitter according to an example embodiment;

[0037] Figure 6 is a block diagram of an example receiver module according to an example embodiment;

[0038] Figure 7 is a flow chart illustrating an algorithm according to an example embodiment;

[0039] Figure 8 is a block diagram of components of a system according to an exemplary embodiment; and

[0040] 9a and 9b illustrate tangible media, respectively a removable memory unit and a compact disk (CD), storing computer readable code that, when executed by a computer, performs operations according to an embodiment. DETAILED DESCRIPTION

[0041] The scope of protection sought by the present invention is set out by the independent claims. Embodiments and features described in this specification that do not fall within the scope of the independent claims, if any, are to be construed as examples useful for understanding the various embodiments of the present invention.

[0042] In this specification and the drawings, like reference numerals refer to like elements throughout.

[0043] Figure 1 1 is a block diagram of an example end-to-end communication system (generally indicated by reference numeral 1) according to an example embodiment. System 1 includes a transmitter 2, a channel 4, and a receiver 6. From a system level, system 1 converts input bits (b) received at the input of transmitter 2 into output bits (b) at the output of receiver 6. More specifically, the transmitter 2 converts input bits (b) into transmit symbols (x) for transmission via the channel 4, and the receiver 6 generates output bits (y) from the symbols (y) received via the channel 4.

[0044] Figure 2 is a block diagram of an example transmitter 2 that may be used in the system 1 described above. Figure 2 As shown in , the transmitter 2 includes a bit to symbol module 12 and a modulator 14. The bit to symbol module 12 receives the input data bits (b) and converts those bits into data symbols (s) for transmission. For example, the input data bits (b) can take the form of a data stream that is packaged for transmission by the bit to symbol module 12. The modulator 14 converts the data symbols into transmit symbols (x) according to a modulation scheme. The transmit symbols are then transmitted through the channel 4 and received at the receiver 6 as received symbols (y).

[0045] Figure 3 is a block diagram of an example receiver 6 that may be used in the communication system 1 described above. Figure 3As shown in FIG. 1 , the receiver 6 includes a demodulator 22 and a demapper module 24. The demodulator 22 converts the received symbol (y) into a symbol probability The demapper 24 converts the symbol probabilities into bit probabilities p(b i |y).

[0046] Several modulation techniques may be used in implementations of the modulator 14 (and demodulator 22). These modulation techniques include amplitude shift keying (ASK), in which the amplitude of the carrier signal is modified based on the signal being transmitted, and phase shift keying (PSK), in which the phase of the carrier signal is modified based on the signal being transmitted. By way of example, quadrature phase shift keying (QPSK) is a form of phase shift keying in which two bits are modulated at a time, selecting one of four possible carrier phase shifts (e.g., 0, +90 degrees, 180 degrees, -90 degrees). Such carrier phase and amplitude are typically represented as constellation positions in the complex plane. The skilled person will be aware of many other suitable modulation techniques.

[0047] The choice of a modulation scheme used to transmit information, such as the communication system 1, has an impact on the end-to-end performance of such a communication system. Furthermore, such a modulation scheme may be optimized.

[0048] For communication schemes with multiple constellation points (such as amplitude shift keying modulation schemes and / or phase shift keying modulation schemes), the positions of such constellation points in the complex plane can be optimized. Alternatively, or in addition, the relative frequencies of using such constellation points can be optimized. Those approaches are referred to herein as geometric shaping and probabilistic shaping, respectively.

[0049] Figure 4 is a block diagram of a transmission system, generally indicated by reference numeral 30, according to an example embodiment. Transmission system 30 includes a transmitter 32, a channel 34, and a receiver 36 (which bear some similarities to transmitter 2, channel 4, and receiver 6 described above).

[0050] As in Figure 4 As shown in , the transmitter 32 includes a bit-to-symbol module 37 ((similar to the bit-to-symbol module 12 described above), a modulator 38 ((similar to the modulator 14) and a shaping device 39. The receiver 36 includes a demodulator 40 ((similar to the demodulator 22) and a demapper module 41 (similar to the demapper module 24).

[0051] As discussed further below, the transmitter 32 maps the input stream of bits onto transmit symbols. The transmitter comprises a neural network (or some other function with trainable parameters).

[0052] The bit-to-symbol module 37 receives an incoming bit sequence of size N (given by b=[b1, ..., b N ]), and maps the bit sequence to a super symbol so that the frequency of occurrence of symbol s is consistent with the probability distribution p provided by the shaping device 39 θ (s) corresponds to. Here, is a finite discrete set of super symbols. The super symbol s is provided to the modulator 38, which maps s to a complex transmit symbol Above, where M is the number of channels used.

[0053] Channel 34 of system 30 uses complex transmission symbols And the output is The M received samples pooled in . The possibly unknown transition probability p(y|x) describes the input-output relationship of the channel 34 .

[0054] The receiver 36 of the system 30 receives the sequence of M samples generated by the channel 34. The demodulator 40 of the receiver 36 maps the received symbols to symbol probabilities p φ (s|y), and the demapper module 41 outputs the bit probability p(b i |y).

[0055] Figure 5 is a block diagram of a transmitter, generally indicated by reference numeral 50, according to an example embodiment. Transmitter 50 is an example of transmitter 32 described above; in particular, transmitter 50 illustrates an example arrangement for training transmitter 32 described above.

[0056] The transmitter 50 comprises a bits-to-symbol module 37, a modulator 38 and a shaping device 39 according to an example embodiment. The shaping device 39 may be used during training of the transmitter 50. As described further below, in a normal operating mode, the shaping device 39 may be replaced, for example with a look-up table providing appropriate settings.

[0057] The modulator 38 comprises an embedding module 52, a normalization module 54 and a real to complex conversion module 56. The shaping device 39 comprises a parameter module 60, a summation module 62, a Gumbel sampler 63, a softmax module 64, a softmaxτ module 65 and a straight-through estimator 66.

[0058] The bit-to-symbol module 37 maps the incoming bits b onto super symbols s. This mapping is done so that the frequency of using symbols is consistent with a given probability distribution p θ (s) matches. As discussed further below, the probability distribution p θ(s) is generated by the forming module 39.

[0059] The bit-to-symbol module 37 can be implemented in several ways. By way of example, a constant component distribution matching (CCDM) method can be used. CCDM involves mapping a vector of N1 bits to a vector of N2 symbols, where N1 and N2 are typically large numbers. From the set of all possible vectors of symbols of size N2, vectors are selected so that the symbols appear approximately with the desired target probability. These selected vectors form the set The larger N2 is, the better the approximation of the target probability is. N1 must satisfy Then, arithmetic coding is used to map the size N1 bit vector to the The symbol vector of .

[0060] As discussed in detail below, it may be necessary to use machine learning principles (such as back propagation) to train the system 50. The operations performed by the bits-to-symbol module 37 are discrete and non-differentiable functions, and therefore many training techniques used in machine learning are not applicable.

[0061] The shaping device 39 may be implemented as a neural network with parameters θ (or any other trainable function). Figure 5 As proposed in , the shaping device 39 can utilize a straight-through Gumbel-softmax reparameterization technique. The Gumbel-softmax technique states that any discrete probability distribution p can be reparameterized by the following equation θ Sample(s) Approximate sampling.

[0062]

[0063] in

[0064]

[0065] And g i (in ) is a sample from a Gumbel(0,1) distribution, and {z i}(in ) are the so-called logits (e.g. the log of the unnormalized probabilities - the softmax function reverses the process) computed by a trainable neural network with parameter θ. (The parameter τ is discussed further below.)

[0066] Through p θ = softmax(z) to obtain the distribution p from logits θ(s). In system 50, an example architecture of a neural network that generates logits is depicted. In the example, the logits are trained directly, and thus θ=z. Note: Other architectures are possible. For example, logits can be computed from channel information (such as signal-to-noise ratio) through a neural network.

[0067] By optimizing θ, the distribution p is optimized θ (s).

[0068] If the argmax operator is used instead of the softmax operator in equation (1) above, this will achieve the goal of getting from the exact distribution p θ (s) are sampled. The argmax output will be converted to a one-hot representation, i.e., a vector with a single element set to one and all other elements set to zero. The index of the element set to one will correspond to the output of argmax. However, the argmax operator is not differentiable, which prevents optimization of p by usual stochastic gradient descent (SGD) or similar back-propagation techniques. θ (s). The softmax function can be used as a differentiable approximation of the argmax operator. The positive parameter τ controls the generated samples The distribution of deviates from the exact distribution p θ (s). Setting τ to a low value achieves a better approximation, but makes training more difficult because it increases the sharpness of the softmaxτ layer, making backpropagation of gradients more difficult. A disadvantage of the softmax function is that it only outputs an approximation of the one-hot vector. To ensure that the input to the modulator is always a true one-hot vector when training, the output of the softmax can be fed into a pass-through estimator 66. The pass-through estimator is a very simple unit that discretizes its input to the closest true one-hot vector (by setting its largest element equal to one and all other elements to zero), but can be skipped (i.e., the discretization is ignored) when performing backpropagation.

[0069] Stochastic gradient descent seeks to optimize trainable parameters based on back-propagated gradients. Since in the arrangement described above, only the proposed sampling device and not the bit-to-symbol module 37 is trainable, different submodules are active during training and deployment. This is depicted by the switch 58 in the system 50.

[0070] During training, the trainable shaping device 39 is active and super symbols s are generated by it. In order to learn the distribution p that maximizes the information rate θ (s), the process of back-propagating gradients is fed into the trainable device and the parameters θ are updated accordingly. Once training is complete, the learned distribution pθ (s) is fed into the bit to symbol module 37 and switch 58 is set to "evaluate". Thus, at deployment, the symbol is now generated by the bit to symbol module 37, which uses the learned frequency p θ (s) Map the incoming bit stream onto the super symbols. As mentioned above, this arrangement can be implemented by a lookup table or some similar module.

[0071] Modulator 38 maps the symbols s onto constellation points x in the complex plane. The actual positions of these points may be fixed or may be modified using p θ (s) are jointly optimized. If the constellation is also learned, the modulator 38 can be implemented as a neural network with trainable parameters (or any other learnable function) and is composed of g ψ Indicates. Figure 5 An example architecture of a trainable modulator is shown in FIG. 5 , which includes an embedding layer 52 and a normalization layer 54. The embedding layer 52 has a dimension of K×2M, and the normalization layer 54 converts the learned distribution p θ (s) as the second input to ensure some power constraints, e.g. Finally, the real-to-complex conversion module 56 maps the 2M real outputs to M complex channel symbols. The skilled person will be aware of alternative implementations of the modulator 38 (particularly if the positions of the constellation points are fixed).

[0072] End-to-end learning can be used to train systems 30 and 50. Using this approach, transmitter 32, channel 34, and receiver 36 can be implemented as a single neural network, and the end-to-end system is trained to reconstruct (multiple) inputs and outputs. In some embodiments, a differentiated channel model can be assumed to be available. Alternative embodiments are possible, for example, in the case where no suitable channel model is available.

[0073] Using end-to-end training, with parameters Trainable receiver may be provided that the trainable receiver is implemented as a neural network (or some other trainable function).

[0074] Figure 6 is a block diagram of an example receiver module (generally indicated by reference numeral 70) according to an example embodiment. Receiver module 70 includes a complex to real conversion module 71, a first dense layer 72, a second dense layer 73, and a softmax layer 74. The provision of two dense layers in system 70 is only an example; any number of dense layers may be provided.

[0075] The complex-to-real conversion module 71 converts the received vector For example, we can obtain the real value by concatenating the real and imaginary parts of the samples. This is accomplished by using a vector of values ​​in .

[0076] The vectors thus obtained are fed to dense layers 72 and 73 which may have different activation functions (e.g. ReLU, tanh, sigmoid, linear, etc.). The softmax layer (the last layer) has output dimensions, and uses the softmax activation function to generate a discrete probability mass function p φ (s|y), the function p φ The elements of (s|y) can be interpreted as the probability that symbol s is sent.

[0077] To determine the trainable function θ (related to the probability shaping), (related to constellation position or geometric formation) and One or more of (related to the receiver), stochastic gradient descent (or some similar algorithm) is performed. One possible loss function that can be minimized is the cross entropy (CE) loss function, which is subtracted from the symbolic entropy:

[0078]

[0079] In equation (3), all realizations of symbol s and channel output y are expected. Assuming independent and identically distributed (iid) realizations, the loss function can be estimated as follows:

[0080]

[0081] where B denotes the batch size (i.e., the number of training examples used to approximate the loss). Note: If the modulator is assumed to have a fixed constellation, no Make optimizations.

[0082] Figure 7 is a flow chart illustrating an algorithm, generally indicated by reference numeral 80 , according to an example embodiment.

[0083] Algorithm 80 begins at operation 81, where a transmission system (such as that described above with reference to Figure 4 and Figure 5 Initialization may take many forms, for example, the initialization may set the trainable parameters randomly (or pseudo-randomly) or in some arbitrary manner; alternatively, the trainable parameters may be set to a predefined starting point or may be defined according to some algorithm (e.g. based on channel information of the transmission system, such as the signal-to-noise ratio).

[0084] Parameter initialization may be achieved by parameter module 60. Parameter module 60 may, for example, set an initial probability function that defines the probability of an individual data symbol being output by a transmitter algorithm (e.g., a constellation point of the transmitter). The probability function is a discrete function and is not directly differentiable.

[0085] The algorithm moves to operation 82 where training symbols are generated based on a distribution function, where the distribution function is differentiable. The distribution function may be an approximation (e.g., a differentiable approximation) of a probability function. As mentioned above, probability functions are typically discrete and non-differentiable probability functions, which is not conducive to back-propagation techniques often employed in machine learning processes (as discussed further below). Therefore, non-differentiable probability functions may be replaced by differential approximations during training.

[0086] The training symbols may be generated by a Gumbel-softmax algorithm (such as using the Gumbel-softmax reparameterization discussed above). The training symbols generated by the shaping device 39 as in the training mode are provided to the modulator 38 and the modulated training symbols are sent to the receiver 36 via the channel 34.

[0087] As discussed above, the training symbols (in the training mode) may correspond to fixed constellation positions of the modulation scheme implemented by the modulator 38. Similarly, the transmit symbols (in the normal operating mode) may correspond to fixed constellation positions.

[0088] Alternatively, the training symbols in the training mode (and the transmitted symbols in the normal operating mode) may correspond to variable constellation positions of the modulation scheme implemented by the modulator 38. Furthermore, the trainable parameters of the transmission system may include the constellation point positions of the modulation scheme.

[0089] The symbols generated and transmitted through the channel are received by the receiver 36 in operation 82 .

[0090] In operation 83, a loss function is generated based on the generated training symbols and the modulated training symbols as received at a receiver of the transmission system. The loss function can take many different forms. For example, the loss function can be related to one or more of block error rate, bit error rate, mutual information, and categorical cross entropy.

[0091] In operation 84, the parameters of the transmission system are updated so as to minimize the loss function, wherein generating the updated parameters of the transmission system includes updating the parameters of the transmitter algorithm (e.g., using machine learning principles, such as by updating a neural network network). Generating the updated parameters of the transmission system may include training the probability function discussed above. Thus, for example, the probability function may be trained so as to set the probability shaping such that the bit error rate (or some other error function) is minimized. Other parameters may also be updated, such as the modulator constellation position.

[0092] In addition to updating the trainable transmitter algorithm, generating updated parameters of the transmission system in operation 84 may include updating parameters of a trainable receiver algorithm (thereby enabling end-to-end training of the transmission system).

[0093] In operation 85, it is determined whether the algorithm 80 is completed. If so, the algorithm terminates at operation 86; otherwise, the algorithm returns to operation 82 so that operations 82 to 85 are repeated (i.e., the following operations are repeated: generating and sending training symbols, generating loss functions, and updating parameters of the transmission system).

[0094] When the condition is reached, the algorithm may be considered complete (in operation 85). Such a condition may take many forms. For example, operations 82 to 85 may be repeated until a defined performance level is reached. Alternatively, or in addition, operations 82 to 85 may be repeated until a defined number of iterations have been completed.

[0095] It should also be noted that the batch size B and / or the learning rate of the symbolic approximation used in the training performed (and possibly other parameters of the chosen SGD variant, such as ADAM, RMSProp, Momentum) can be optimization parameters of algorithm 80.

[0096] Once trained, the trainable parameters of the transmission system may be deployed. This may involve updating the trainable parameters of the transmission system using the generated updated parameters of the transmission system. Furthermore, the trainable parameters of the transmitter system may include one or more of the following: trainable parameters of the transmitter algorithm, trainable parameters of the modulator, and trainable parameters of the receiver.

[0097] Several modifications to the example embodiments described above are possible. For example, end-to-end training of the transmission systems 30 and 50 can be performed by utilizing the principles of reinforcement learning without knowledge of the relevant channel patterns and without the need for differentiable channel patterns. In addition, the principles of generative adversarial networks can be used to learn differentiable channel models. Once such a model has been learned, end-to-end learning can be performed using the learned channel model as a differentiable channel model.

[0098] For the sake of completeness, Figure 8 1 is a schematic diagram of components of one or more of the previously described modules (e.g., a transmitter neural network or a receiver neural network), which are collectively referred to below as a processing system 110. The processing system 110 may have a processor 112, a memory 114 tightly coupled to the processor and including a RAM 124 and a ROM 122, and optionally, a hardware key 120 and a display 128. The processing system 110 may include one or more network interfaces 118 for connecting to a network, such as a modem, which may be wired or wireless.

[0099] The processor 112 is connected to each of the other components so as to control the operation thereof.

[0100] The memory 114 may include non-volatile memory, a hard disk drive (HDD), or a solid state drive (SSD). The ROM 122 of the memory 114 stores, among other things, an operating system 125 and may store software applications 126. The RAM 124 of the memory 114 is used by the processor 112 to temporarily store data. The operating system 125 may contain code that, when executed by the processor, implements various aspects of the algorithm 80.

[0101] Processor 112 may take any suitable form. For example, it may be a microcontroller, multiple microcontrollers, a processor, or multiple processors.

[0102] Processing system 110 may be a stand-alone computer, a server, a console, or a network thereof.

[0103] In some embodiments, the processing system 110 may also be associated with external software applications. These external software applications may be applications stored on remote server devices and may be run partially or exclusively on the remote server devices. These applications may be referred to as cloud-hosted applications. The processing system 110 may communicate with the remote server devices in order to utilize the software applications stored on the remote server devices.

[0104] Fig. 9A and Fig. 9B Tangible media storing computer readable code are shown, respectively a removable memory unit 165 and a compact disk (CD) 168, which can perform methods according to the embodiments described above when run by a computer. The removable memory unit 165 can be a memory stick, such as a USB memory stick, with an internal memory 166 storing computer readable code. The memory 166 can be accessed by the computer system via a connector 167. The CD 168 can be a CD-ROM or a DVD or the like. Other forms of tangible storage media can be used.

[0105] Embodiments of the present invention may be implemented in software, hardware, application logic, or a combination of software, hardware, and application logic. The software, application logic, and / or hardware may reside in memory or on any computer medium. In an example embodiment, the application logic, software, or instructions are maintained on any of a variety of conventional computer-readable media. In the context of this document, "memory" or "computer-readable medium" may be any of the following non-transient media or components: These non-transient media or components may contain, store, convey, propagate, or transmit instructions for use by or in connection with an instruction execution system, apparatus, or device (such as a computer).

[0106] Where relevant, references to "computer-readable storage medium", "computer program product", "tangibly embodied computer program", etc. or "processor" or "processing circuit system", etc. should be understood to encompass not only computers with different architectures (such as single processor / multi-processor architecture and sequencer / parallel architecture), but also special-purpose circuits, such as field programmable gate arrays FPGAs, special-purpose circuits ASICs, signal processing devices, and other devices. References to computer programs, instructions, codes, etc. should be understood to express software for programmable processor firmware, such as the programmable content of a hardware device, which is an instruction for a processor or a configured setting or configuration setting for a fixed function device, gate array, programmable logic device, etc.

[0107] As used in this application, the term "circuitry" refers to all of the following: (a) hardware circuit implementations only (such as implementations only in analog and / or digital circuitry) and (b) combinations of circuitry and software (and / or firmware), such as (as applicable): (i) a combination of (multiple) processors or (ii) (multiple) processor / software (including (multiple) digital signal processors, software, portions of (multiple) memories that work together to enable a device (such as a server) to perform various functions) and (c) circuits (such as (multiple) microprocessors or portions of (multiple) microprocessors) that require software or firmware for operation (even if the software or firmware is not physically present).

[0108] If desired, the different functions discussed in this article may be performed in different orders and / or simultaneously with each other. In addition, if desired, one or more of the above functions may be optional or may be combined. Similarly, it is also understood that: Figure 7 The flowcharts are merely examples, and various operations depicted therein may be omitted, re-ordered, and / or combined.

[0109] It should be understood that the above exemplary embodiments are merely illustrative and do not limit the scope of the present invention. Other changes and modifications will be apparent to those skilled in the art after reading this specification.

[0110] In addition, the disclosure of the present application should be understood to include any novel feature or any novel combination of features or any generalization thereof disclosed herein explicitly or implicitly, and during the filing of the present application or any application derived from the present application, new claims may be formulated to cover any such feature and / or combination of such features.

[0111] Although various aspects of the invention are set out in the independent claims, further aspects of the invention comprise other combinations of features from the described embodiments and / or the dependent claims with features from the independent claims, not just the combinations explicitly set out in the claims.

[0112] It should also be noted herein that although various examples are described above, these descriptions should not be viewed in a limiting sense. Rather, several changes and modifications may be made without departing from the scope of the present invention as defined in the appended claims.

Claims

1. A device for learning in a communication system, comprising: means for initializing trainable parameters of a transmission system, wherein the transmission system comprises a transmitter, a channel, and a receiver, wherein the transmitter comprises a transmitter algorithm for converting one or more inputs into one or more data symbols and a modulator for converting the data symbols into transmit symbols according to a modulation scheme, wherein the trainable parameters of the transmission system comprise a probability function defining the probability of an individual data symbol being output by the transmitter algorithm; means for generating training symbols based on a distribution function, wherein the distribution function is differentiable; means for sending modulated training symbols to the receiver over the channel in a training mode; means for generating a loss function based on the generated training symbols and the modulated training symbols received at the receiver of the transmission system; means for generating updated parameters of the transmission system to minimize the loss function, wherein generating updated parameters of the transmission system comprises updating the parameters of the transmitter algorithm; as well as Means for repeating the following until a first condition is met: generating the training symbols, generating the loss function, and updating parameters of the transmission system.

2. The apparatus of claim 1, wherein the distribution function is an approximation of the probability function.

3. The apparatus according to claim 1 or claim 2, wherein the training symbols are generated by a Gumbel-softmax algorithm.

4. The apparatus of claim 1 or claim 2, wherein the transmitted symbols correspond to fixed constellation positions of a modulation scheme implemented by the modulator.

5. The apparatus of claim 1 or claim 2, wherein the transmitted symbols correspond to variable constellation positions of a modulation scheme implemented by the modulator, wherein the trainable parameters of the transmission system include constellation point positions of the modulation scheme.

6. The apparatus according to claim 1 or claim 2, wherein the receiver is configured to: receive the transmission symbol sent through the channel in an operation mode, and receive the modulated training symbol sent through the channel in a training mode.

7. The apparatus of claim 1 or claim 2, wherein generating updated parameters of the transmission system comprises: Updates the parameters of the trainable receiver algorithm.

8. The device according to claim 1 or claim 2, further comprising: Means for updating the trainable parameters of the transmission system using the generated updated parameters of the transmission system.

9. The apparatus of claim 8, wherein the trainable parameters of the transmitter system comprise one or more of: trainable parameters of the transmitter algorithm; trainable parameters of the modulator; and trainable parameters of the receiver.

10. The apparatus of claim 1 or claim 2, wherein the probability function and the distribution function depend at least in part on channel information of the transmission system.

11. An apparatus according to claim 1 or claim 2, wherein the first condition comprises a defined performance level.

12. An apparatus according to claim 1 or claim 2, wherein the first condition comprises a defined number of iterations.

13. An apparatus according to claim 1 or claim 2, wherein the transmitter algorithm is implemented as a look-up table in an operational mode.

14. The apparatus according to claim 1 or claim 2, wherein the loss function is related to one or more of block error rate, bit error rate, mutual information and classification cross entropy.

15. An apparatus according to claim 1 or claim 2, wherein the means for generating updated parameters of the transmission system optimizes one or more of a learning rate and a batch size of a symbolic approximation used in the training mode.

16. An apparatus according to claim 1 or claim 2, wherein the means for generating updated parameters of the transmission system updates the parameters using stochastic gradient descent.

17. An apparatus according to claim 1 or claim 2, wherein the transmitter comprises a transmitter neural network configured to implement the transmitter algorithm.

18. The apparatus according to claim 1 or claim 2, wherein the component comprises: at least one processor; as well as At least one memory includes computer program code, and the at least one memory and the computer program are configured to: together with the at least one processor, cause execution of the apparatus.

19. A method for learning in a communication system, comprising: initializing trainable parameters of a transmission system, wherein the transmission system comprises a transmitter, a channel, and a receiver, wherein the transmitter comprises a transmitter algorithm for converting one or more inputs into one or more data symbols and a modulator for converting the data symbols into transmit symbols according to a modulation scheme, wherein the trainable parameters of the transmission system comprise a probability function defining a probability of an individual data symbol being output by the transmitter algorithm; generating training symbols based on a distribution function, wherein the distribution function is differentiable; sending modulated training symbols to the receiver over the channel in a training mode; generating a loss function based on the generated training symbols and the modulated training symbols received at the receiver of the transmission system; generating updated parameters of the transmission system to minimize the loss function, wherein generating updated parameters of the transmission system comprises updating the parameters of the transmitter algorithm; as well as The following items are repeated until a first condition is met: generating the training symbols, generating the loss function, and updating the parameters of the transmission system.

20. The method of claim 19, wherein the training symbols are generated by a Gumbel-softmax algorithm.

21. The method according to claim 19 or claim 20, wherein: The transmitted symbols correspond to fixed constellation positions of a modulation scheme implemented by the modulator; or The transmit symbols correspond to variable constellation positions of a modulation scheme implemented by the modulator, wherein the trainable parameters of the transmission system include constellation point positions of the modulation scheme.

22. The method of claim 19 or claim 20, wherein generating updated parameters of the transmission system comprises: Updates the parameters of the trainable receiver algorithm.

23. The method according to claim 19 or claim 20, further comprising: The trainable parameters of the transmission system are updated using the generated updated parameters of the transmission system.

24. The method of claim 23, wherein the trainable parameters of the transmitter system include one or more of: trainable parameters of the transmitter algorithm; trainable parameters of the modulator; and trainable parameters of the receiver.

25. A method according to claim 19 or claim 20, wherein the probability function and the distribution function depend at least in part on channel information of the transmission system.

26. A work product comprising: A look-up table or array created by means of a method according to any one of claims 19 to 25.

27. A computer readable medium comprising program instructions for performing at least the following: initializing trainable parameters of a transmission system, wherein the transmission system comprises a transmitter, a channel, and a receiver, wherein the transmitter comprises a transmitter algorithm for converting one or more inputs into one or more data symbols and a modulator for converting the data symbols into transmit symbols according to a modulation scheme, wherein the trainable parameters of the transmission system comprise a probability function defining a probability of an individual data symbol being output by the transmitter algorithm; generating training symbols based on a distribution function, wherein the distribution function is differentiable; sending modulated training symbols to the receiver over the channel in a training mode; generating a loss function based on the generated training symbols and the modulated training symbols received at the receiver of the transmission system; generating updated parameters of the transmission system to minimize the loss function, wherein generating updated parameters of the transmission system comprises updating the parameters of the transmitter algorithm; as well as The following items are repeated until a first condition is met: generating the training symbols, generating the loss function, and updating the parameters of the transmission system.