
Convolutional Neural Networks for Image Classification
Discover the power of Convolutional Neural Networks (CNN) for image classification. Learn about convolutions, pooling, and training a CNN using techniques like backpropagation and dropout. Explore popular libraries like Keras, Pytorch, and TensorFlow for efficient CNN training on GPUs.
Download Presentation

Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.
E N D
Presentation Transcript
Convolutional neural network Usman Roshan
Convolutions Now that we understand convolutions let us look at a convolutional neural network The key is to remember that convolutions give us a new representation of an image Can we try to optimize the parameters of a convolutional network for image classification? First let us see a typical convolutional neural network
Convolutional neural network Below we see a typical convolutional neural network.
Convolutional neural network (CNN) We see that a CNN has two main components: convolutions and pooling Convolutions serve to partition the image and look at local regions instead of the entire image as given Pooling reduces dimensionality which helps in the optimization of parameters
CNN training We train a CNN with stochastic gradient descent as we do in neural networks Main ideas: Back propagation to determine convolutional parameters (see https://becominghuman.ai/back-propagation-in- convolutional-neural-networks-intuition-and-code- 714ef1c38199 for a simple example) Dropout (see http://jmlr.org/papers/v15/srivastava14a.html) Stochastic gradient descent (see https://leon.bottou.org/publications/pdf/compstat- 2010.pdf) Data augmentation
CNN training For a typical network we have many parameters that take long to train To speed this up the training is performed on GPUs by parallelizing dot products for example Libraries to train CNNs: Keras (easy to use front end but slow) Pytorch (not hard to use and allows fast development) Tensorflow (hardest to use but also the fastest, new version may have a Keras interface) We will train a simple CNN for the flower image dataset