The disclosure relates generally to communications and, more particularly but not exclusively, to a radio receiver device with a neural network, as well as related methods and computer programs.
In wireless communication, reliable and efficient detection of transmitted data depends on accurate representation of the communication channel. Once the communication channel is estimated, the obtained estimates may be used, e.g., for equalization of received symbols. Moreover, in massive multiple-input multiple-output (MIMO) systems, besides data detection, channel estimation may be used, e.g., for calculation of beamforming coefficients.
Accordingly, channel estimation is an important part of establishing communications in wireless communication systems. Additionally, with the rise of massive MIMO techniques having sparse pilot structures supposed to support many layers and large antenna configurations, it becomes even more important to establish accurate channel estimation.
However, at least in some situations, current channel estimation implementations may be sub-optimal and provide a significant performance drop in complex channels. Additionally, at least in some situations the current implementations may not consider information that is captured across antennas (such as correlation), and resource blocks.
The scope of protection sought for various example embodiments of the invention is set out by the independent claims. The example embodiments and features, if any, described in this specification that do not fall under the scope of the independent claims are to be interpreted as examples useful for understanding various example embodiments of the invention.
An example embodiment of a radio receiver device comprises at least one processor, and at least one memory including computer program code. The at least one memory and the computer program code are configured to, with the at least one processor, cause the radio receiver device at least to perform: receiving a radio signal comprising a pilot signal, over a radio channel; performing raw channel estimation of the radio channel based on the received pilot signal, thereby obtaining a raw channel estimate; and processing the raw channel estimate. The processing of the raw channel estimate comprises applying a neural network, NN, to the raw channel estimate. The NN comprises at least one fully connected layer and at least one convolutional layer. The NN is executable to encode the raw channel estimate by mapping the raw channel estimate into an alternate domain, thereby obtaining an encoded channel estimate. The NN is further executable to decode the encoded channel estimate by mapping the encoded channel estimate to a frequency-interpolated channel estimate.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the at least one memory and the computer program code are further configured to, with the at least one processor, cause the radio receiver device to perform applying pre-processing on the raw channel estimate before the applying of the NN, the pre-processing comprising at least one of:
In an example embodiment, alternatively or in addition to the above-described example embodiments, the at least one memory and the computer program code are further configured to, with the at least one processor, cause the radio receiver device to perform applying post-processing on the frequency-interpolated channel estimate after the applying of the NN, the post-processing comprising at least one of:
In an example embodiment, alternatively or in addition to the above-described example embodiments, the pilot signal comprises a single demodulation reference signal, DMRS, in a slot.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the pilot signal comprises multiple DMRSs in a slot.
In an example embodiment, alternatively or in addition to the above-described example embodiments, separate inference is performed for each DMRS of the multiple DMRSs.
In an example embodiment, alternatively or in addition to the above-described example embodiments, joint inference is performed for each DMRS of the multiple DMRSs.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the at least one memory and the computer program code are further configured to, with the at least one processor, cause the radio receiver device to perform training the NN by performing dataset augmentation via at least one of: statistical insertion of noise, additional passes of data, passing over same data multiple times and randomly picking samples, or zero padding.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the training of the NN further comprises a regularization of a loss function.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the training of the NN further comprises a statistical momentum-based optimization.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the at least one memory and the computer program code are further configured to, with the at least one processor, cause the radio receiver device to perform providing at least one of a signal-to-noise ratio, SNR, of the raw channel estimate or an inverse fast Fourier transform, IFFT, of the raw channel estimate to the NN.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the radio channel comprises a physical downlink shared channel, PDSCH, a physical uplink shared channel, PUSCH, a physical downlink control channel, PDCCH, or a physical broadcast channel, PBCH.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the received radio signal comprises an orthogonal frequency-division multiplexing, OFDM, radio signal.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the radio receiver device comprises a multiple-input and multiple-output, MIMO, capable radio receiver device.
An example embodiment of a radio receiver device comprises means for performing: causing the radio receiver device to receive a radio signal comprising a pilot signal, over a radio channel; performing raw channel estimation of the radio channel based on the received pilot signal, thereby obtaining a raw channel estimate; and processing the raw channel estimate. The processing of the raw channel estimate comprises applying a neural network, NN, to the raw channel estimate. The NN comprises at least one fully connected layer and at least one convolutional layer. The NN is executable to encode the raw channel estimate by mapping the raw channel estimate into an alternate domain, thereby obtaining an encoded channel estimate. The NN is further executable to decode the encoded channel estimate by mapping the encoded channel estimate to a frequency-interpolated channel estimate.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the means are further configured to perform applying pre-processing on the raw channel estimate before the applying of the NN, the pre-processing comprising at least one of:
In an example embodiment, alternatively or in addition to the above-described example embodiments, the means are further configured to perform applying post-processing on the frequency-interpolated channel estimate after the applying of the NN, the post-processing comprising at least one of:
In an example embodiment, alternatively or in addition to the above-described example embodiments, the pilot signal comprises a single demodulation reference signal, DMRS, in a slot.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the pilot signal comprises multiple DMRSs in a slot.
In an example embodiment, alternatively or in addition to the above-described example embodiments, separate inference is performed for each DMRS of the multiple DMRSs.
In an example embodiment, alternatively or in addition to the above-described example embodiments, joint inference is performed for each DMRS of the multiple DMRSs.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the means are further configured to perform training the NN by performing dataset augmentation via at least one of: statistical insertion of noise, additional passes of data, passing over same data multiple times and randomly picking samples, or zero padding.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the training of the NN further comprises a regularization of a loss function.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the training of the NN further comprises a statistical momentum-based optimization.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the means are further configured to perform providing at least one of a signal-to-noise ratio, SNR, of the raw channel estimate or an inverse fast Fourier transform, IFFT, of the raw channel estimate to the NN.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the radio channel comprises a physical downlink shared channel, PDSCH, a physical uplink shared channel, PUSCH, a physical downlink control channel, PDCCH, or a physical broadcast channel, PBCH.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the received radio signal comprises an orthogonal frequency-division multiplexing, OFDM, radio signal.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the radio receiver device comprises a multiple-input and multiple-output, MIMO, capable radio receiver device.
An example embodiment of a method comprises: receiving, at a radio receiver device, a radio signal comprising a pilot signal, over a radio channel; performing, by the radio receiver device, raw channel estimation of the radio channel based on the received pilot signal, thereby obtaining a raw channel estimate; and processing, by the radio receiver device, the raw channel estimate. The processing of the raw channel estimate comprises applying a neural network, NN, to the raw channel estimate. The NN comprises at least one fully connected layer and at least one convolutional layer. The NN is executable to encode the raw channel estimate by mapping the raw channel estimate into an alternate domain, thereby obtaining an encoded channel estimate. The NN is further executable to decode the encoded channel estimate by mapping the encoded channel estimate to a frequency-interpolated channel estimate.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the method further comprises applying, by the radio receiver device, pre-processing on the raw channel estimate before the applying of the NN, the pre-processing comprising at least one of:
In an example embodiment, alternatively or in addition to the above-described example embodiments, the method further comprises applying, by the radio receiver device, post-processing on the frequency-interpolated channel estimate after the applying of the NN, the post-processing comprising at least one of:
In an example embodiment, alternatively or in addition to the above-described example embodiments, the pilot signal comprises a single demodulation reference signal, DMRS, in a slot.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the pilot signal comprises multiple DMRSs in a slot.
In an example embodiment, alternatively or in addition to the above-described example embodiments, separate inference is performed for each DMRS of the multiple DMRSs.
In an example embodiment, alternatively or in addition to the above-described example embodiments, joint inference is performed for each DMRS of the multiple DMRSs.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the method further comprises training, by the radio receiver device, the NN by performing dataset augmentation via at least one of: statistical insertion of noise, additional passes of data, passing over same data multiple times and randomly picking samples, or zero padding.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the training of the NN further comprises a regularization of a loss function.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the training of the NN further comprises a statistical momentum-based optimization.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the method further comprises providing, by the radio receiver device, at least one of a signal-to-noise ratio, SNR, of the raw channel estimate or an inverse fast Fourier transform, IFFT, of the raw channel estimate to the NN.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the radio channel comprises a physical downlink shared channel, PDSCH, a physical uplink shared channel, PUSCH, a physical downlink control channel, PDCCH, or a physical broadcast channel, PBCH.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the received radio signal comprises an orthogonal frequency-division multiplexing, OFDM, radio signal.
In an example embodiment, alternatively or in addition to the above-described example embodiments, the radio receiver device comprises a multiple-input and multiple-output, MIMO, capable radio receiver device.
An example embodiment of a computer program comprises instructions for causing a radio receiver device to perform at least the following: receiving a radio signal comprising a pilot signal, over a radio channel; performing raw channel estimation of the radio channel based on the received pilot signal, thereby obtaining a raw channel estimate; and processing the raw channel estimate. The processing of the raw channel estimate comprises applying a neural network, NN, to the raw channel estimate. The NN comprises at least one fully connected layer and at least one convolutional layer. The NN is executable to encode the raw channel estimate by mapping the raw channel estimate into an alternate domain, thereby obtaining an encoded channel estimate. The NN is further executable to decode the encoded channel estimate by mapping the encoded channel estimate to a frequency-interpolated channel estimate.
The accompanying drawings, which are included to provide a further understanding of the embodiments and constitute a part of this specification, illustrate embodiments and together with the description help to explain the principles of the embodiments. In the drawings:
Like reference numerals are used to designate like parts in the accompanying drawings.
Reference will now be made in detail to embodiments, examples of which are illustrated in the accompanying drawings. The detailed description provided below in connection with the appended drawings is intended as a description of the present examples and is not intended to represent the only forms in which the present example may be constructed or utilized. The description sets forth the functions of the example and the sequence of steps for constructing and operating the example. However, the same or equivalent functions and sequences may be accomplished by different examples.
A client device may include, e.g., a mobile phone, a smartphone, a tablet computer, a smart watch, or any hand-held, portable and/or wearable device. A client device may also be referred to as a user equipment (UE). A network node device may be a base station. A base station may include, e.g., a fifth-generation base station (gNB) or any such device suitable for providing an air interface for client devices to connect to a wireless network via wireless transmissions.
More specifically,
A transmitted signal X may be impaired by the effects of the wireless channel H and additive noise N, such that a received signal Y may have to be further processed to correctly decode the transmitted data. An objective of a channel estimator 200A is to provide a channel estimate Ĥ to an equalizer 200B, which produces a transmitted signal estimate {circumflex over (X)}, to be further demapped by a demapper 200C, and decoded.
The channel estimator 200A, the equalizer 200B, and/or the demapper 200C can, for example, be implemented with the at least one processor 202 and the at least one memory 204 of
For example, the radio receiver device 200 may estimate the channel 120 using dedicated pilot sequences with a predetermined value and position in time-frequency, known both to the radio transmitter device 110 and the radio receiver device 200. For example, demodulation reference symbols (DMRS) may be used for channel estimation for data detection, while sounding reference symbols (SRS) and channel-state information reference signals (CSI-RS) may be used to estimate corresponding beamforming coefficients.
As will be described in more detail below, at least in some embodiments, a neural network (NN) may be applied to a raw (least square) channel estimate which is a product of a received pilot sequence and a Hermitian of a transmitted sequence for a given pilot structure, i.e., =XPHYP. First encoded into an alternate domain (e.g., defined by an encoder during a training process), the alternative sequence may then be mapped back to a frequency-interpolated version (i.e., decoded) of the estimated channel, i.e., Ĥ=AE(
).
At least in some embodiments, the disclosure may be able to capture a complex-valued channel realization out of input data, and produce accurate channel estimates in various wireless conditions.
While some of the following examples focus on a physical uplink shared channel (PUSCH) channel, in general the disclosure may be applied to any physical channel that utilizes a DMRS for channel estimation, both in uplink direction (e.g., a physical uplink control channel (PUCCH)) and downlink (e.g., a physical downlink shared channel (PDSCH), a physical downlink control channel (PDCCH), or a physical broadcast channel, PBCH)) direction. Moreover, the disclosure may be applied to channel estimation based on a synchronization signal, such as an SRS, a CSI-RS, and/or a phase tracking reference signal (PTRS).
In the following, various example embodiments will be discussed. At least some of these example embodiments may allow applying a neural network (NN), comprising one or more fully connected layers and one or more convolutional neural network layers, to produce an output which minimizes a mean squared error between an ideal output for a given scenario and a realized output.
The radio receiver device 200 comprises one or more processors 202 and one or more memories 204 that comprise computer program code. The radio receiver device 200 may be configured to receive information from other devices. In one example, the radio receiver device 200 may receive signalling information and data in accordance with at least one cellular communication protocol. The radio receiver device 200 may be configured to provide at least one wireless radio connection, such as for example a 3GPP mobile broadband connection (e.g., 5G). The radio receiver device 200 may comprise, or be configured to be coupled to, at least one antenna 206 to receive radio frequency signals.
Although the radio receiver device 200 is depicted to include only one processor 202, the radio receiver device 200 may include more processors. In an embodiment, the memory 204 is capable of storing instructions, such as an operating system and/or various applications. Furthermore, the memory 204 may include a storage that may be used to store, e.g., at least some of the information and data used in the disclosed embodiments, such as the NN described in more detail below.
Furthermore, the processor 202 is capable of executing the stored instructions. In an embodiment, the processor 202 may be embodied as a multi-core processor, a single core processor, or a combination of one or more multi-core processors and one or more single core processors. For example, the processor 202 may be embodied as one or more of various processing devices, such as a coprocessor, a microprocessor, a controller, a digital signal processor (DSP), a processing circuitry with or without an accompanying DSP, or various other processing devices including integrated circuits such as, for example, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a microcontroller unit (MCU), a hardware accelerator, a special-purpose computer chip, a neural network chip, an artificial intelligence (AI) accelerator, or the like. In an embodiment, the processor 202 may be configured to execute hard-coded functionality. In an embodiment, the processor 202 is embodied as an executor of software instructions, wherein the instructions may specifically configure the processor 202 to perform the algorithms and/or operations described herein when the instructions are executed.
It is also possible to train one machine learning model with a specific architecture, then derive another machine learning model from that using processes such as compilation, pruning, quantization or distillation. The machine learning model can be executed using any suitable apparatus, for example a CPU, GPU, ASIC, FPGA, compute-in-memory, analogue, or digital, or optical apparatus. It is also possible to execute the machine learning model in an apparatus that combines features from any number of these, for instance digital-optical or analogue-digital hybrids. In some examples, the weights and required computations in these systems may be programmed to correspond to the machine learning model. In some examples, the apparatus may be designed and manufactured so as to perform the task defined by the machine learning model so that the apparatus is configured to perform the task when it is manufactured without the apparatus being programmable as such.
The memory 204 may be embodied as one or more volatile memory devices, one or more non-volatile memory devices, and/or a combination of one or more volatile memory devices and non-volatile memory devices. For example, the memory 204 may be embodied as semiconductor memories (such as mask ROM, PROM (programmable ROM), EPROM (erasable PROM), flash ROM, RAM (random access memory), etc.).
The radio receiver device 200 may comprise any of various types of digital devices capable of receiving radio communication in a wireless network. At least in some embodiments, the radio receiver device 200 may be comprised in a base station, such as a fifth-generation base station (gNB) or any such device providing an air interface for client devices to connect to the wireless network via wireless transmissions. At least in some embodiments, the radio receiver device 200 may comprise a multiple-input and multiple-output (MIMO) capable radio receiver device, such as a massive MIMO capable radio receiver device.
The at least one memory 204 and the computer program code are configured to, with the at least one processor 202, cause the radio receiver device 200 to at least perform receiving a radio signal comprising a pilot signal, over a radio channel. For example, the received radio signal may comprise an orthogonal frequency-division multiplexing (OFDM) radio signal. For example, the radio channel may comprise a physical downlink shared channel (PDSCH), a physical uplink shared channel (PUSCH), a physical downlink control channel, PDCCH, or a physical broadcast channel (PBCH). At least in some embodiments, the pilot signal may comprise a single demodulation reference signal (DMRS) in a slot, or the pilot signal may comprise multiple DMRSs in a slot.
For example, in the radio receiver device 200, when equipped with NRx antennas, after a fast Fourier transform (FFT) operation, a received frequency-domain signal Y occupying F subcarriers on a single OFDM symbol (Y∈N
where X∈N
N
N
The at least one memory 204 and the computer program code are further configured to, with the at least one processor 202, cause the radio receiver device 200 to perform raw channel estimation of the radio channel based on the received pilot signal, thereby obtaining a raw channel estimate.
The goal of the channel estimation is to produce channel estimates Ĥ, necessary for the equalization of received Ŷ. The estimation may be based pilot signals Xp, such as DMRSs, given as random sequences initialized by system parameters (such as a cell identifier (Cell ID), a frame and slot number, a radio network temporary identifier (RNTI), and/or a user identifier). Here, p∈P, where P denotes the set of DMRS time indices within a slot, and p denotes the DMRS time index within a slot belonging to set P. The number of DMRS symbols in a slot may be reconfigurable by radio resource management (RRM), e.g., up to four. Diagram 300A of
For the description of the NN below, the single DMRS case shown ) approximates well channel estimates on other (data) symbols within the slot (white fields), therefore Ĥ≈
. In the case of multiple DMRS symbols in a slot, such as the one shown in
Accordingly, raw channel estimation, {tilde over (H)}p=XpHYp, is performed on pilot symbols. However, the raw channel estimates may comprise a strong noise component in a low signal-to-noise ratio (SNR) region. The effect of the noise may be reduced or mitigated by applying smoothening to the raw channel estimates. The application of the NN described below may provide such smoothening, among other things.
The at least one memory 204 and the computer program code are further configured to, with the at least one processor 202, cause the radio receiver device 200 to perform processing the raw channel estimate. The processing of the raw channel estimate comprises applying a neural network (NN) to the raw channel estimate. The NN comprises at least one fully connected layer and at least one convolutional layer. The NN is executable to encode the raw channel estimate by mapping the raw channel estimate into an alternate domain, thereby obtaining an encoded channel estimate. The NN is further executable to decode the encoded channel estimate by mapping the encoded channel estimate to a frequency-interpolated channel estimate.
The at least one memory 204 and the computer program code may be further configured to, with the at least one processor 202, cause the radio receiver device 200 to perform applying pre-processing on the raw channel estimate before the applying of the NN.
The at least one memory 204 and the computer program code may be further configured to, with the at least one processor 202, cause the radio receiver device 200 to perform applying post-processing on the frequency-interpolated channel estimate after the applying of the NN.
Diagram 400A of NMSE(Hp, Ĥp) described in more detail below, an Adam optimizer block 406, and an output block 407. The NN 403 may comprise an encoder 403A (to perform the encoding of the raw channel estimate described above) and a decoder 403C (to perform the decoding of the encoded channel estimate described above).
CNN2D refers to a convolutional neural network block that produces a convolutional operation in a four-dimensional tensor (described in more detail below). This convolutional operation may comprise kernels and strides that consider computation of two-dimensional kernels with respect to two-dimensional strides and data matrices, whereby the data matrices are a portion of the input data {tilde over (H)}p.
CNNTranspose2D is similar to the CNN2D, except that the operation here is a transposed convolutional operation, and deconvolves the data.
MaxPool2D refers to a computation of a maximum for a two-dimensional kernel shape. This may be applied after the convolutional operation.
AvgPool2D refers to a computation of an average for a two-dimensional kernel shape. This may be applied after the convolutional operation.
Here, it is to be noted that either avgPool or max-Pool may be utilized.
A channel truth may be taken as an ideal channel estimate. In a simulated scenario or in a completely controlled environment, a channel profile is known. This real channel profile may be used to compare against an estimated channel. Then, the error is what is propagated to machine learning blocks.
Herein, the term Adam optimizer refers to an adaptive learning rate optimization algorithm that's been designed for training, e.g., deep neural networks. The result of the NMSE 405 calculation is a metric that is used by the Adam optimizer block 406. The Adam optimizer block 406 may contain the logic related to the optimization steps for machine learning model training. This may be linked with the backpropagation of the NMSE to the network and the weights and biases update of the machine learning model during training.
At least in some embodiments, the NN 403 may be trainable, and the pre-processing block 402 and/or the post-processing block 404 may be non-trainable.
Some or all of the elements of
The pre-processing block 402 may map complex three-dimensional raw estimates {tilde over (H)}p∈N
The pre-processing may comprise mapping (e.g., by block 402A of
Additionally/alternatively, the pre-processing may comprise separating (e.g., by block 402B of
Additionally/alternatively, the pre-processing may comprise reshaping (e.g., by block 402C of
Other pre-processing operations may also be possible.
The post-processing may comprise inverse operations (compared to the pre-processing), such as reshaping (e.g., by block 404A of
Additionally/alternatively, the post-processing may comprise concatenating (e.g., by block 404B of
Additionally/alternatively, the post-processing may comprise mapping (e.g., by block 404C of 2*N
As discussed above, the trainable NN 403 may comprise a neural network block 403A called encoder (En), to map the incoming data {tilde over (H)}p,AE into an alternate domain or feature set (FS) 403B that may better represent the input data for a subsequent block 403C called decoder (De), whose purpose is to decode this alternate feature mapping into an interpolated version of the channel estimates Ĥp,AE. In order to achieve this, both NNs may be trained together, so an error ϵ (i.e., the NMSE (Hp, Ĥp) described in more detail below) may be computed by comparing the approximated channel estimates Ĥp, while the error ϵ is propagated back to both the decoder 403C and the encoder 403A.
The architecture illustrated in
The input data {tilde over (H)}p,AE may represent raw channel estimates that may be grouped together in a tensor, the shape of which may be, e.g., as follows:
[bs,cs,hs,ws]
The model may be trained/inferenced per single Tx antenna/Rx antenna channel, concatenated in a batch, thus giving the input {tilde over (H)}p,AE shape as: [bs,2,1,Nsc*NPRB], in which Nsc depends on a slot configuration and denotes the number of DMRS subcarriers per port in one physical resource block (PRB), e.g., Nsc=6 for the PRB configuration shown in
The output of the decoder 403C, Ĥp,AE, may have a dimension [bs, 2, 1, 2*Nsc*NPRB], and it may contain the estimates that were achieved by the combined encoder 403A and decoder 403C. Due to the nature of convolutional operators, Ĥp is able to produce non-linear approximations of channels, given sufficient examples, thereby leading to enhanced approximations at least in some embodiments.
It is to be noted that here bs>1 implies that there is more than one sample of {tilde over (H)}p.
At least in some embodiments, separate inference may be performed for each DMRS of the multiple DMRSs. Alternatively, joint inference may be performed for each DMRS of the multiple DMRSs. In other words, at least in some embodiments, the trainable NN 403 may assume a slot configuration for a single DMRS, as shown in
The at least one memory 204 and the computer program code may be further configured to, with the at least one processor 202, cause the radio receiver device 200 to perform training the NN by performing dataset augmentation via statistical insertion of noise, additional passes of data, passing over same data multiple times and randomly picking samples, and/or zero padding.
In other words, the disclosure aims to provide a model that is able to learn features about the input structure. These features may help the model perform well on unknown sets of data. In order to achieve this, a training procedure, an example of which is illustrated by diagram 700 of
In a first embodiment, dataset augmentation may be produced in two ways: augmentation through statistical insertion of noise, and/or augmentation through additional passes of data. The first form of augmentation may be performed when, with a probability of a random number generator, Prng=0.14, noise is inserted to the input {tilde over (H)}, whereby the noise draws from three statistical distributions: Gaussian μ=0, σ=0.05, Rayleigh μ=0, σ=0.05, and uniform (max: −0.05, 0.05). Each batch b chosen during training is of a shape [64, 2, 1, 48]. This means that there are 64 randomly picked {tilde over (H)} that are affected by this random noise insertion. The first third of this batch may then be modified by Rayleigh noise, the second third may be modified by Gaussian, and the final third may be modified by the uniformly generated noise set. In other words, in each training step, a random number generator produces one realization of a uniform random variable (rng) in a segment [0,1]. If this realization is smaller than Prng, the one insertion of noise is executed. In this way, statistical insertion of augmented data may be performed Prng*100% of time.
In a second embodiment, dataset augmentation may be produced by passing over the same data multiple times and randomly picking the samples, to allow the optimization process the opportunity to learn and search for a global minima. The loss function used on this process is described below.
In a third embodiment, zero padding is used as a form of data augmentation and missing information handling. E.g., random imputation of zeros may be utilized, whereby zeros are added from the left-most PRB onwards, as illustrated in diagram 600 of
At least in some embodiments, the zero padding may allow the NN to learn how to deal with zeros in the data, and therefore with cases in which a number of PRBs are received that is smaller than ideal. This imputation of zeros may be done at random (uniformly), and so that a number of PRBs ranging between from NPRB−1 and 0 are zeroed in the input set.
At operation 701 of diagram 700 of
At least in some embodiments, the training of the NN may further comprise a regularization of a loss function. Here, regularization refers to a concept that assumes penalizing of a training metric in order to not overfit a training set. For example, the loss function may be a composition of terms. E.g., Huber Loss (denoted here) of PyTorch (https://pytorch.org), may be used as a starting point. In addition, the following definitions may be produced:
in which:
and real implies that ci=0, and imag implies ci=1. For example:
The final resulting criterion may be a composition of the previous terms and a weighting term α=1.20:
At least in some embodiments, the training of the NN may further comprise a statistical momentum-based optimization. Here, statistical momentum-based optimization refers to methods that leverage linear combinations of weights which aim to keep track of how fast a gradient descent is evolving over a number of iteration steps. A statistical component is then applied to an update step to allow further feasibility in high-dimensional problems, such as machine learning problems.
The statistical momentum-based optimization refers to the method presented in [6], where fundamentals are explored, and [7] where the concept applied to deep learning is exposed. During the training phase, the decoder 403C and the encoder 403A are separate. This means that NMSE(H, Ĥ) is backpropagated through each layer of biases and weights, for each separate model (decoder 403C and encoder 403A). At least in some embodiments, this may allow independent evaluation of what the encoder 403A and the decoder 403C are learning, as well as allow the encoder 403A to learn from errors produced by the decoder 403C.
The at least one memory 204 and the computer program code may be further configured to, with the at least one processor 202, cause the radio receiver device 200 to perform providing additional information available in the radio receiver device 200, such as an SNR of the raw channel estimate, and/or an inverse fast Fourier transform (IFFT) of the raw channel estimate to the NN. This may improve the learning performance of the NN.
At optional operation 801, the radio receiver device 200 may train the NN by performing dataset augmentation via statistical insertion of noise, additional passes of data, passing over same data multiple times and randomly picking samples, and/or zero padding.
At operation 802, the radio receiver device 200 receives a radio signal comprising a pilot signal, over the radio channel 120.
At operation 803, the radio receiver device 200 performs raw channel estimation of the radio channel 120 based on the received pilot signal, thereby obtaining a raw channel estimate.
At optional operation 804, the radio receiver device 200 may apply pre-processing on the raw channel estimate. The pre-processing is described in more detail above in connection with
At optional operation 805, the radio receiver device 200 may provide an SNR of the raw channel estimate or an IFFT of the raw channel estimate to the NN.
At operation 806, the radio receiver device 200 processes the raw channel estimate. As discussed above in more detail, the processing of the raw channel estimate comprises applying an NN to the raw channel estimate. The NN comprises at least one fully connected layer and at least one convolutional layer. The NN is executable to encode the raw channel estimate by mapping the raw channel estimate into an alternate domain, thereby obtaining an encoded channel estimate. The NN is further executable to decode the encoded channel estimate by mapping the encoded channel estimate to a frequency-interpolated channel estimate.
At optional operation 807, the radio receiver device 200 may apply post-processing on the raw channel estimate. The post-processing is described in more detail above in connection with
The method 800 may be performed by the radio receiver device 200 of
At least some of the embodiments described herein may allow applying a neural network, comprising one or more fully connected layers and one or more convolutional neural network layers, to produce an output which minimizes a mean squared error between an ideal output for a given scenario and a realized output.
At least some of the embodiments described herein may allow a trainable smoother of raw channel estimates that may have at least the following advantages:
At least some of the embodiments described herein may allow enhanced performance in high frequency selective channels and edge user situations.
The radio receiver device 200 may comprise means for performing at least one method described herein. In one example, the means may comprise the at least one processor 202, and the at least one memory 204 including program code configured to, when executed by the at least one processor, cause the radio receiver device 200 to perform the method.
The functionality described herein can be performed, at least in part, by one or more computer program product components such as software components. According to an embodiment, the radio receiver device 200 may comprise a processor or processor circuitry, such as for example a microcontroller, configured by the program code when executed to execute the embodiments of the operations and functionality described. Alternatively, or in addition, the functionality described herein can be performed, at least in part, by one or more hardware logic components. For example, and without limitation, illustrative types of hardware logic components that can be used include Field-programmable Gate Arrays (FPGAs), Program-specific Integrated Circuits (ASICs), Program-specific Standard Products (ASSPs), System-on-a-chip systems (SOCs), Complex Programmable Logic Devices (CPLDs), and Graphics Processing Units (GPUs).
Any range or device value given herein may be extended or altered without losing the effect sought. Also, any embodiment may be combined with another embodiment unless explicitly disallowed.
Although the subject matter has been described in language specific to structural features and/or acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as examples of implementing the claims and other equivalent features and acts are intended to be within the scope of the claims.
It will be understood that the benefits and advantages described above may relate to one embodiment or may relate to several embodiments. The embodiments are not limited to those that solve any or all of the stated problems or those that have any or all of the stated benefits and advantages. It will further be understood that reference to ‘an’ item may refer to one or more of those items.
The steps of the methods described herein may be carried out in any suitable order, or simultaneously where appropriate. Additionally, individual blocks may be deleted from any of the methods without departing from the spirit and scope of the subject matter described herein. Aspects of any of the embodiments described above may be combined with aspects of any of the other embodiments described to form further embodiments without losing the effect sought.
The term ‘comprising’ is used herein to mean including the method, blocks or elements identified, but that such blocks or elements do not comprise an exclusive list and a method or apparatus may contain additional blocks or elements.
It will be understood that the above description is given by way of example only and that various modifications may be made by those skilled in the art. The above specification, examples and data provide a complete description of the structure and use of exemplary embodiments. Although various embodiments have been described above with a certain degree of particularity, or with reference to one or more individual embodiments, those skilled in the art could make numerous alterations to the disclosed embodiments without departing from the spirit or scope of this specification.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2021/085210 | 12/10/2021 | WO |