The spatial channels of all IoT devices are generated according to [1]} and each device has different distribution parameters. For each device, the number of paths is set as 3, the complex gain is generated from a complex-valued standard normal distribution, the azimuth and elevation of each path are generated from \((-\pi /2,\pi /2)\) , \(v_1\)  is set to \(0.1\) , and the number of components \(J\)  is set to 3, unless stated otherwise. For the proposed FAT-DL network, we use samples of size \(100,000\)  for training, \(30,000\)  for validation, and \(30,000\)  for testing. Herein, the testing data and training data follow the same distribution. The mini-batch size is set to be 128. In particular, we randomly select 128 samples from the training data set at each updating, and the total size of updating is set as \(1,000,000\) . The training and testing methods were implemented in Python using TensorFlow with the Adam optimizer [2]}, [3]}. The training rates for individual
optimization of Algorithm 2 are set as \(0.001\) , and for the global optimization of Algorithm 2, the training rate decreases to \(0.0005\) , \(0.0001\) , and \(0.00001\)  to reduce the validation error. The configures of the LAMP and LVAMP algorithms are the same as that of the FAT-DL algorithm. For the OMP-based device detection algorithm, the number of iterations is equal to the sparsity level of the vectorized device state matrix. For the FISTA algorithm, we set the maximum number of iterations as 500, which is enough to get a maximal absolute error inferior to an acceptable value between two iterations.
