## 3 Experiments
### Energy Analysis and Optimization
Compared to other neuron pruning methods, we believe that pruning neurons must be guided by the importance of this neuron to the entire neural network. We equate the network parameter pruning problem with the neuron classification problem, which divides all neurons in the network into two categories: prunable and non-prunable. Specifically, we apply the classification idea of the decision tree to classify all neurons in the network, then remove neurons with category prunable, and finally restore the network ability through iterative fine-tuning and pruning. This approach is structured pruning without sparse convolution kernels. Algorithm 2 shows the process of pruning neurons. The neuron pruning process is shown in Figure 11.  
Figure 11: The neuron pruning process. The white ‘\(\bigcirc\)’ denotes the neuron in the network, the length of the blue rectangle represents the importance score of the corresponding neuron, and the red ‘\(\bigcirc\)’ represents the neurons that are pruned in the network. We evaluate the importance of each neuron in the trained network. For the neuron \(\mathbf{N}_{i,j}\), the importance score of \(\mathbf{N}_{i,j}\) is calculated as follows:  
\[NIS_{i,j}=\frac{ACC_{p}}{ACC_{o}}*100 \tag{15}\]  
where \(ACC_{o}\) is the reconstruction accuracy of original network, \(ACC_{p}\) is the reconstruction accuracy of original network when the parameter value of \(\mathbf{N}_{i,j}\) is 0. We constructed a matrix \(\mathbf{NIS}\) to storage the neuron importance score. We first calculate the importance scores for all neurons, then multiply the prune rate and the number of weight parameters to get the number of parameters we need to prune. When pruning, we set the value of the neuron parameter corresponding to the smaller importance score to 0 according to the number of parameters to be pruned. After pruning, we retrain this simplified model to fine-tune the weights and iteratively the prune and retrain process until the model performance returns to the original performance. ```
1:Input: The model weights \(\mathbf{W}\), the prune rate \(\alpha\), the number of prune iterations iter
2: Get \(m\) which is the number of elements in \(\mathbf{W}\)
3: Get the number of \(\mathbf{W}\) that need pruning \(n=\alpha*m\)
4: Calculate the importance of neurons, get the neuron importance score matrix \(\mathbf{NIS}\)
5: Sorting \(\mathbf{NIS}\) from large to small
6: Get the prune threshold of neuron importance score \(thr=\mathbf{NIS}[n]\)
7:While\(i<m\)do
8:if\(\mathbf{NIS}[i]<thr\)then
9:\(\mathbf{W}[i]=0\)
10:end
11:\(i++\)
12:end
13:While\(k<iter\)do
14: Retrain the model to update parameters \(\mathbf{W}\) according to Algorithm 1
15: Execute step 2-12
16:\(k++\)
17:end
```  
**Algorithm 2**Pruning Neurons. We compared the pruning results of our neuron pruning method with other common methods at the same pruning rate. We record the reconstruction error of the model at different pruning rates. The results of model reconstruction error are shown in Figure 12. The test model is trained by the data of Node 7. For each pruning method, we retrain the pruned model. The number of iterations of fine-tuning and pruning is 5. Our pruning method has obvious advantages over other methods. When the pruning rate is 50%, the model reconstruction error of our method is 0.0971 \({}^{\circ}\)C, the model reconstruction error of _Random_ and _Mag_ are 0.6145 \({}^{\circ}\)C and 0.3624 \({}^{\circ}\)C respectively. When the pruning rate is 80%, the model reconstruction error of our method is only 0.3032 \({}^{\circ}\)C, and the reconstruction error of _Random_ and _Mag_ exceeds 1.5 \({}^{\circ}\)C. The results show that our method can accurately identify redundant neurons in the network. In our experiments, using our method to prune 40% of the model parameters does not affect the reconstruction accuracy of the model. Using our method to prune the model can further reduce the parameters and computation