## 3 Proposed System Model
### LSTM Channel Estimation  
Recurrent neural networks (RNNs) are considered a type of supervised learning algorithm. They can model consecutive information for estimation and recognition. RNNs consist of higher dimensional hidden layers made of artificial neurons with feedback loops containing non-linear dynamics [49]. Consequently, RNNs have two inputs, the current and the recent past sample, as shown in Figure 5, where the recent input is the non-looping input to each neuron and the recent past is the output that loops back into the network. The hidden layers are able to work as memory for the network state at a certain instant, which is conditioned on its preceding state [50]. This construction permits the RNNs to save, recall, and process the previous complex data for an extended period of time [50]. Also, RNNs have the ability to map a certain input to the output sequence during the present time period and forecast this sequence during the following periods of time [51]. Dispersion of the transmitted signal through a fading channel results in an expanded signal with long-term dependencies in between its samples. These dependencies vary from one signal to another and do not follow a certain pattern [28]. Using a feed-forward (FF) neural network to model long-term dependencies will require a high-dimensional feature space with a large number of neurons, leading to over-fitting and sub-optimality [52]. On the other hand, RNNs can model time dependencies with a much smaller number of neurons, due to their feedback recurrent connections. Since, the fading channel is a finite impulse response (FIR) system with a very long impulse response, it may be converted into an infinite impulse response (IIR) filter with a much smaller model and a few properly modeled poles [53,54]. This is equivalent to transforming an FF neural network to an RNN [52]. The traditional RNN using backpropagation through time suffers from the vanishing gradient problem and slow learning [52]. In order to resolve this limitation, [PERSON] and [PERSON] proposed long-short term memory (LSTM) neural networks [55], since LSTMs are able to model selective dependencies between different portions of the received signal with a small number of neurons and without learning problems. Moreover, they accept vector-based sequence data (where each time step has a vector of measurements), thus incorporating the magnitude and phase parts of the received signal simultaneously [28,52]. LSTMs introduce memory cells, which are able to store and access data over longer periods of time through their distinct structural design, and preserve the error from back-propagating, unlike the conventional RNN [56; 57]. Furthermore, LSTMs are able to efficiently utilize the past time series input data and handle the long-term dependency of time series. The basic LSTM includes an input layer, a hidden layer, and an output layer. Unlike the RNN, the hidden layer of the LSTM contains different gate units that control how the data propagates [58; 59]. Figure 6 shows the adopted LSTM channel estimation model, where \(t\) is the time-instant (step), \(y_{ti}\) is the input, \(H_{ti}\) is the output for user \(i\) at time instant \(t\), and \(C_{t}\) is the memory cell, which is transferred from a hidden layer to the next during each iteration. In addition, a forget gate, input (update) gate, and output gate are added to each hidden layer. The input gate uses the sigmoid function to decide which values are updated, and the output of the input gate is combined with the new candidate values, \(\widetilde{C}_{t}\), from the tan sigmoid (_tanh_) layer to update each state. The proposed LSTM channel estimation is given by Algorithm 2 below:  
```
Inputs: Transmitted pilot data, x\({}_{i}\), for users, target channel matrices, \(H_{i}\).