Pruning (artificial neural network)
Appearance
![]() | This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
In the context of artificial neural network, pruning is the practice of removing parameters (which may entail removing individual parameters, or parameters in groups such as by neurons) from an existing network.[1] The goal of this process is to maintain accuracy of the network while increasing its efficiency. This can be done to reduce the computational resources required to run the neural network.
A basic algorithm for pruning is as follows:[2][3]
- Evaluate the importance of each neuron.
- Rank the neurons according to their importance (assuming there is a clearly defined measure for "importance").
- Remove the least important neuron.
- Check a termination condition (to be determined by the user) to see whether to continue pruning.
References
- ^ Blalock, Davis; Ortiz, Jose Javier Gonzalez; Frankle, Jonathan; Guttag, John (2020-03-06). "What is the State of Neural Network Pruning?". arXiv:2003.03033 [cs.LG].
- ^ Molchanov, P., Tyree, S., Karras, T., Aila, T., & Kautz, J. (2016). Pruning convolutional neural networks for resource efficient inference. arXiv preprint arXiv:1611.06440.
- ^ Pruning deep neural networks to make them fast and small.