Theoretical Understanding of Convolutional Neural Network: Concepts, Architectures, Applications, Future Directions | Synapse