# Deep Learning-Enhanced Autoencoder for Multi-Carrier Wireless Systems
## 3 Proposed GRU-MC-AE Network Architecture  
The structure of the proposed GRU-MC-AE network is shown in Figure 2. Our proposed model consists of three main parts: a DL-based encoder, a channel, and a DL-based decoder. The encoder section includes an input layer, a dense layer, a normalization layer, and a reshape layer. In the encoder, one of the \(M=2^{m}\) possible incoming messages \(s\) is mapped to a one-hot vector \(\mathbf{s}\) of size \(M\times 1\), where all entries are zero except for one, which is set to one. The next layer is a dense layer with a linear activation function. This layer produces a \(2N\)-dimensional vector \(\mathbf{u}\). The operation of this layer is expressed as follows:  
\[\mathbf{u}=\mathbf{Ws}+\mathbf{b}, \tag{3}\]  
where \(\mathbf{w}\) is the weight and \(\mathbf{b}\) is the bias vector. The following layer is a normalization layer implemented as a lambda function, which regulates the average transmission power for each subcarrier. The output of this layer is a \(2N\)-dimensional vector represented as follows:  
\[\mathbf{v}=\sqrt{NE_{a}}\mathbf{u}/\parallel\mathbf{u}\parallel, \tag{4}\]  
where \(E_{a}\) is the average energy of the transmitted symbol. The next layer is the reshape layer, which generates the real and imaginary parts by reshaping \(\mathbf{v}\) into an \(N\times 1\) complex-valued vector. The subsequent section is the channel implemented with a lambda layer, where noise is added to the signal. After passing through the channel, the output consists of both the received signal and the estimated channel coefficients. The final section is the decoder, which consists of an input layer, two GRU layers, and an output layer. In the input layer, a \(4N\)-dimensional real vector, denoted as \(\mathbf{\hat{x}}\), is constructed from the complex vectors \(\mathbf{y}\) and \(\mathbf{H}\). This vector is then fed into the GRU layers, which have \(Q_{1}\) and \(Q_{2}\) hidden nodes, respectively. The first GRU layer processes the channel output and generates a hidden state with \(Q_{1}\) units for each subcarrier. The second GRU layer further reduces the sequence to produce a single output vector of \(Q_{2}\) units. The internal structure of the GRU model is illustrated in Figure 3. The GRU streamlines the traditional RNN by incorporating two key gates: the update gate and the reset gate. The update gate manages the portion of the previous hidden state that is passed to the next time step, enabling the model to retain information across longer sequences. Conversely, the reset gate controls how much of the previous hidden state is discarded, allowing the model to clear its memory when it is necessary. The candidate hidden state is calculated using the current input and the reset hidden state, and the final hidden state is determined by combining the previous hidden state with the candidate state, based on the update gate's influence [39; 40]. Figure 2: The proposed GRU-MC-AE network model. The update gate, represented as \(d_{t}\), controls the extent to which the previous hidden state \(h_{t-1}\) is retained and passed on to the next time step. The reset gate, denoted as \(R_{t}\), regulates how much of the previous hidden state \(h_{t-1}\) should be discarded or reset before incorporating the new input. The candidate hidden state, \(\hat{h}_{t}\), represents the newly computed memory content, which is generated based on the current input and the modified hidden state. The final hidden state \(h_{t}\) at time step \(t\) is a combination of the previous hidden state \(h_{t-1}\) and the candidate hidden state \(\hat{h}_{t}\), controlled by the update gate \(d_{t}\).