# Denoising Generalization Performance of Channel Estimation in Multipath Time-Varying OFDM Systems
## 4 NDR-Net Assisted Channel Estimation
### Complexity Analysis  
This subsection will represent the complexity of channel estimation algorithms by using the symbol \(\mathcal{O}\). For the conventional channel estimation algorithms, the computational complexity required by LS is \(\mathcal{O}(N_{C})\) and the MMSE algorithm is \(\mathcal{O}(N_{C}\)\({}^{3})\). For AI-based channel estimation algorithms, only the computational complexity of online training needs \begin{table}
\begin{tabular}{c c c c c c c c c} \hline \hline \multirow{2}{*}{**Method**} & \multicolumn{8}{c}{**Noise Level (SNR/dB)**} \\ \cline{2-9}  & **0** & **5** & **10** & **15** & **20** & **25** & **30** & **35** \\ \hline Maxpooling & 0 & 4.83 & 9.86 & 14.76 & 19.37 & 24.06 & 28.36 & 33.34 \\ Averagepooling & 0 & 5.13 & 10.13 & 15.22 & 20.14 & 24.76 & 29.49 & 34.85 \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Noise level estimates for two pooling methods. \begin{table}
\begin{tabular}{c c c c c c c c} \hline \hline \multirow{2}{*}{**Method**} & \multicolumn{8}{c}{**RMSE**} \\ \cline{2-9}  & **0** & **5** & **10** & **15** & **20** & **25** & **30** & **35** \\ \hline Maxpooling & 0 & 0.18 & 0.15 & 0.25 & 0.64 & 0.95 & 1.64 & 1.67 \\ Averagepooling & 0 & 0.16 & 0.15 & 0.23 & 0.17 & 0.26 & 0.54 & 1.19 \\ \hline \hline \end{tabular}
\end{table} 
Table 3: RMSE for two pooling methods. to be considered because the training process is done in advance and does not occupy real-time computing and storage resources. For the noise level estimation stage in the NDR-Net algorithm, the \(CNN_{N}\) module has a total of L layers, which includes the convolutional part and the fully connected part, and the computational volume is represented by \(\mathcal{C}_{1}\) and \(\mathcal{C}_{2}\) respectively. The fully connected layer has 4 layers. For the denoising stage, the \(CNN_{D}\) module has a total of H layer, and the computational volume is denoted by \(\mathcal{C}_{3}\). Then the complexity of NDR-Net can be expressed as:  
\[ \begin{split}\mathcal{O}(\mathcal{C}_{1}+\mathcal{C}_{2}+ \mathcal{C}_{3})&=\mathcal{O}\Bigg{(}B_{N}E_{N}\Bigg{(}2N_{c}k_{ 1}^{2}+n_{L-4}k_{L-4}^{2}+\sum_{l=2}^{L-5}n_{l-1}n_{l}k_{l}^{2}\Bigg{)}\\ &+B_{N}E_{N}\sum_{l=L-3}^{L}n_{l-1}n_{l}+B_{D}E_{D}\Bigg{(}d_{1} k_{1}^{2}+2N_{c}k_{H}^{2}+\sum_{h=2}^{H-1}d_{h-1}d_{h}k_{h}^{2}\Bigg{)}\Bigg{)}\end{split}  \tag{13}\]  
where \(B_{N}\) and \(E_{N}\) represent the size of mini-batch and epochs of \(CNN_{N}\) module, respectively. \(B_{D}\) and \(E_{D}\) represent the size of mini-batch and epochs of \(CNN_{D}\) module, respectively. \(k_{l}^{2}\) denotes the size of kernels in \(i\)-th layer, \(n_{i}\) and \(d_{i}\) denotes the number of neurons of \(CNN_{N}\)and \(CNN_{D}\) at \(i\)-th layer, respectively. Here for each group of OFDM signals there have \(n_{1}=d_{H}=2N_{\mathcal{C}}\). As can be seen, the computational complexity of the model is closely related to the number of neurons per layer. The complexity of other high-speed channel estimation algorithms can also be obtained by the same calculation. The numbers of the parameters and the Floating Point Operations (FLOPs) of these high-speed algorithms are presented in Table 4.  
It can be noticed that the computational complexity of NDR-Net is higher than that of ChannelNet and KDML since the \(CNN_{N}\) module brings additional computations. The complexity of NDR-Net is lower than that of CBDNet because NDR-Net introduces a pooling module in the network to reduce the computational effort. Since the \(CNN_{N}\) module can predict the noise level of the environment in advance, the denoising module of NDR-Net has only 5 layers, which can greatly reduce the training FLOPs. Specifically, although NDR-Net requires 7k more FLOPs than KDML, it can adapt to different physical environments, which is beneficial in general. It should be emphasized here that due to the time-varying nature of the wireless channels, the specific environmental SNR, channel model, movement speed and data sets have to be taken into account when a network model is trained.