Convolutional neural networks (CNNs) are commonly used in data science domain especially for computer vision and image classification tasks. I implemented a CNN with Keras library to perform a binary classification task. I tried to explain the concepts of each step in a convolutional neural network and the theory behind them.
The images are taken from Caltech101 dataset:
http://www.vision.caltech.edu/Image_Datasets/Caltech101/
References: 1- L. Fei-Fei, R. Fergus and P. Perona. Learning generative visual models from few training examples: an incremental Bayesian approach tested on 101 object categories. IEEE. CVPR 2004, Workshop on Generative-Model Based Vision. 2004