## 2 Principle
### Iterative Neural Network Pruning Technology  
Although neural networks are powerful, they always consume a large amount of storage, memory bandwidth, and computational resources. Neural network pruning is an optimization technique aimed at reducing the complexity of the network by removing certain weights or neurons, thereby improving runtime efficiency, reducing storage requirements, and sometimes enhancing generalization capabilities. The key steps of pruning are as follows: (1) Train a complete neural network until it reaches a satisfactory performance level on the training data. This initial network usually has more weights and neurons than actually needed. (2) Determine a criterion to decide which weights or neurons should be removed. (3) Based on the selected criterion, rank the weights or neurons in the network and remove those deemed unimportant. (4) Retrain the network to fine-tune the remaining weights, adapting them to the new network structure. This step helps to recover the performance that may have been lost by pruning.  
In data processing, we used threshold-based pruning, with the standard deviation (standard deviation, STD) as the measure. The basic idea of this method is that the distribution of weight values typically revolves around a central value (such as the mean) with a certain degree of dispersion, which can be measured by the standard deviation. A larger standard deviation indicates a more dispersed distribution of weight values, while a smaller standard deviation indicates a more concentrated distribution. Therefore, in step (3), for each weight matrix (each layer) in the network, the standard deviation of its weight values is calculated. A threshold for the standard deviation is set, which is a relative value to the layer's standard deviation. That is, threshold = threshold ratio \(\times\) standard deviation. Weights with a standard deviation below the set threshold are set to 0, completing the removal of weights.  
For each weight matrix, a weight value's standard deviation below the set threshold means that these weights have relatively smaller changes compared with other weights and may contribute less to the network's output. Therefore, removing those weights with a standard deviation below the set threshold.  
Iterative pruning allows the network to adapt gradually to the changes brought by pruning. After each pruning, the network is retrained to ensure its performance does not drop sharply. One-time pruning may lead to over-pruning, i.e., removing too many important weights, which can severely harm the network's performance. Iterative pruning avoids this situation by pruning gradually, ensuring that the network can still function normally after each pruning. Moreover, iterative pruning helps explore the optimal network structure. Through multiple iterations, different pruning strategies and degrees can be tried, eventually finding a network structure that is efficient and performs well. Figure 3 is a schematic diagram of the iterative pruning process for QAM.  
As depicted in Figure 3, for the 16 QAM signal, we employ an I/Q separation approach, decomposing the 16 QAM signal into two independent signals, each of which is then equalized using a neural network. Given that the I and Q path signals may experience different distortions and noise effects during transmission, handling them separately allows for the design of more suitable equalizers tailored to the characteristics of each path, thereby enabling more precise compensation for specific distortions on each path and enhancing overall equalization performance.