Convolution Neural Network - a class of Deep Feed Forward Artificial Neural Network which are used most commonly for visual imaginary. These network are based on convolution and pooling of sample. They can be used for a wide variety of applications that include Image Captioning, Segmentation, Summarizing the video streams and a lot more.