
Master convolutional neural networks with TensorFlow in Python, covering kernels, convolution, feature maps, pooling, MNIST training, and a fashion dataset with TensorBoard visualizations, architectures like AlexNet, GoogLeNet, and ResNet.
Explore how convolutional neural networks enable computer vision by processing images with spatial structure through convolutional layers. See real time applications from self-driving cars to face recognition.
Explore how image kernels act as filters in image processing, covering blur, sharpen, and edge detection. See how they bridge simple neural networks to convolutional neural networks.
discover how image transformations such as blur, sharpen, and edge detection are constructed from kernels that average and compare neighboring pixels to emphasize high-contrast edges.
Explore how kernels, represented as matrices, encode image transformations like blur, sharpening, and edge detection, and see why convolutional neural networks rely on these kernels to preserve structure.
Learn how sliding a kernel over an image produces a new image via convolution, clarify flipped versus non-flipped kernels, cross-correlation terminology, and edge handling challenges.
Learn how to handle image edges when applying kernels in convolutional neural networks, including zero padding, mirror padding, and omitting border pixels, with notes on information loss and pooling.
Explore why convolutional neural networks rely on learnable kernels and filters to transform images, preserve spatial structure, and reduce parameters, then build a CNN on MNIST to boost image recognition.
Explore how convolutional layers use kernels to detect features like arcs and acute angles, producing feature maps that summarize images, with many kernels creating hundreds of maps, including color depth.
Explore pooling in convolutional neural networks, focusing on 2x2 max pooling with stride 2 to reduce dimensionality, speed training, and reduce overfitting by preserving key features.
Trace how input dimensions shape cnn training as a 32×32×3 image becomes 28×28×10 after the first convolution and 14×14×10 after pooling, then 12×12×6 with a 3×3 kernel.
Learn how to fight overfitting in convolutional neural networks by using early stopping, monitoring validation loss and accuracy, and splitting data into training and validation sets.
Explore how optimizers minimize the loss in neural networks, covering gradient descent, learning rate, momentum, Adagrad, RMSprop, and Adam, and preview convolutional neural networks on the Mnist dataset.
Set up the Python-based environment for deep learning by installing Anaconda, Python 3, Jupyter Notebook, and the necessary packages, and learn the coding environment used in this course.
Explore why Python and Jupyter power data science, highlighting open source, cross-platform, high-level language benefits, IPython notebooks and kernels that run in a browser.
Install and set up the Anaconda distribution to include Python, Jupyter Notebook, and data science packages, choosing Python 3 and 64-bit on Windows, Mac, or Linux.
Explore the Jupiter dashboard to rename, move, and delete folders, manage files with checkboxes, upload notebooks, and create new IPython notebooks (.ipynb).
Explore how to use Jupyter dashboards by editing code and markdown cells, running with Ctrl-Enter or Shift-Enter, and switching between input and output fields.
Anaconda bundles numpy, pandas, matplotlib, itertools, and sklearn, plus TensorFlow 2 and TensorFlow datasets. Install via the Anaconda prompt with pip commands to set up the course.
Build and train a convolutional neural network on the MNIST dataset to classify handwritten digits using TensorFlow 2 in Python, Jupyter notebook, including data preprocessing and validation for early stopping.
Outline a simple convolutional neural network architecture for Mnist, with two convolutional and two max-pool layers, a flatten step, and a dense softmax classifier for ten digits.
Preprocess the mnist data by downloading with tfds, scaling pixels to 0–1, shuffling and splitting into train and validation sets, and batching for efficient neural network training.
Define and compile a cnn in TensorFlow 2 using a sequential architecture of conv, max pool, flatten, and dense layers, then train with early stopping to reach high validation accuracy.
Test the trained convolutional neural network on the mnist test set to report loss and accuracy, and analyze predictions with probability bars.
Explore TensorBoard with the MNIST CNN by logging training metrics, visualizing scalars and graphs, and enabling hyperparameter tuning and deeper insights through distributions and histograms.
Explore how to use the confusion matrix to evaluate classification models, visualize results with TensorBoard, and interpret per-class performance to improve TensorFlow image classifiers.
Tune CNN hyperparameters with Tensorboard by testing kernel sizes and optimizers on MNIST, logging results, and visualizing accuracy across combinations using hparams, parallel coordinates, and scatter plots.
Explore how convolutional layers form CNNs and implement a practical MNIST example, then learn to tackle real-world datasets by optimizing CNNs with regularization, dropout, and data augmentation.
Explore how regularization fights overfitting by reducing model capacity, adding a regularization term to the loss, and encouraging sparse or near-zero weights.
L2 regularization adds the L2 norm to the loss to shrink non-essential weights, linking weight decay, and outlining differences with SGD and adaptive optimizers.
Dropout randomly drops neurons during training to reduce overfitting and encourage independent features. TensorFlow scales outputs and applies dropout mainly to fully connected layers with rates 0.1 to 0.5.
Explore data augmentation to expand a model's capabilities by transforming training data, including mirroring, rotating, translating, color adjustments, noise, and more, beyond the original dataset.
Explore practical challenges in image classification with CNNs, building an automatic labeling system for fashion items to streamline product tagging and search.
Train a cnn to recognize and label fashion items using a dataset of 16,000 images, categorized into glasses, trousers, and shoes with multiple sublabels, and return labels for each image.
Convert images to numpy arrays for TensorFlow by resizing from 300 by 400 to 90 by 120 with Pillow, then convert to a numpy array for model input.
Train multiple models with hyperparameters and log results using TensorBoard. Visualize accuracy and confusion matrices, and automate parameter sweeps with a callback for the primary classification network.
Label fashion images into glasses and sunglasses, trousers and jeans, or shoes with the primary classification network, scaling images to 0-1 using NumPy datasets and TensorFlow.
Develop a compact two-convolutional layer CNN with a three-class output (glasses, sunglasses, trousers/jeans, shoes) and tune the first filter size and count via grid search.
Complete the primary classification by training a convolutional neural network with two convolutional layers, two max pool layers, and a dense output. Tune filter sizes, log results with tensorboard today.
Explore two approaches to label trousers or jeans by gender and type: separate mini-task models or a single four-class model, with hierarchical options and tradeoffs; lecture continues with combining labels.
Combine labels into four classes—male trousers, female trousers, male jeans, female jeans—and train a convolutional neural network in TensorFlow to assign one label per image.
Develop hierarchical convolutional neural networks to classify trousers and jeans by gender, then by type, and compare stacking versus separate gender-specific networks with performance around 80–90%.
Compare convolutional neural networks with TensorFlow for trousers and jeans, scoring gender and type predictions on a test set using a combined versus hierarchical labeling approach.
Apply L2 regularization and dropout to the network, analyze hyperparameter effects and random noise on accuracy, and introduce data augmentation as the next topic.
Augment the shoes dataset by mirroring images with numpy flip to capture left-to-right and right-to-left orientations, preserving labels while expanding from 5,000 to 10,000 images.
Explore why neural networks resemble a black box, examine failures from biased training data and adversarial inputs, and underscore the importance of understanding model behavior to improve reliability.
Are you a Deep Learning enthusiast who is now looking for their next challenge?
Are you interested in the field of Computer Vision and the ability of machines to extract insightful information from visuals and images?
Do you want to learn a valuable skill to put yourself ahead of the competition in this AI-driven world?
If you answered with “yes” to any of these questions, you have come to the right place and at the right time!
Here are 5 reasons this is the right course for you:
We have 1,170,000 students on Udemy and we know how to teach a complex topic in an easy to understand way
It contains numerous practical exercises
A real-life case study with 16,000 images
Save time – our course will get you there faster than the average courses on the topic
Notebook files, course notes, quiz questions, practice materials – all materials are inside the course
This course is a fantastic training opportunity to help you gain insights into the rapidly expanding field of Machine Learning and Computer Vision through the use of Convolutional Neural Networks.
Convolutional Neural Networks, or CNNs in short, are a subtype of deep neural networks that are extensively used in the field of Computer Vision. These networks specialize in inferring information from spatial-structure data to help computers gain high-level understanding from digital images and videos. That can be as simple a task as classifying an image to be a dog or a cat, but it can also explode in complexity as is the case with self-driving cars, for example.
This is where most of the active Machine Learning research is concentrated right now, and CNNs are a crucial part of it. So, it is high time to up your game and master this piece of the Deep Learning puzzle.
To do just that, we have devised this wonderful and engaging course for you. Although a general understanding of TensorFlow and the main deep learning concepts is required, we will start from the CNNs basics and build our way to proficiency. Moreover, we are firm believers that practice makes perfect, that’s why this course offers a comprehensive practical example of a real-world project. What’s more, it contains plenty of exercises, homework, downloadable files and notebooks, as well as quiz questions and course notes.
We’ll start this course by taking a look at Kernels in the context of image processing. Kernels are an essential tool for working with and understanding Convolutional Neural Networks. We’ll explore how to achieve different image transformations and help you understand the role of the mathematical operation of convolution in this process. This will be the basis for our next topic - convolutional layers.
Armed with all that knowledge, we will introduce the main subject of the course: Convolutional Neural Networks. Here, we’ll discuss intriguing concepts such as feature maps and pooling. In addition, we’ll inspect how such a network transforms the dimensions of the tensors.
Then, what follows is a short and optional neural networks revision. CNNs are simply a subtype of deep neural networks, so a general knowledge of NNs is required. That’s why we’ll revise the basics: activation functions, early stopping, and optimizers.
Once we’ve covered all that, you will have the minimum required knowledge to start putting all this theory to practice – by building your first Convolutional Neural Network.
Working on the MNIST dataset, we’ll help you grasp the general workflow of creating a CNN architecture and build one from scratch. You are going to train it to recognize handwritten digits – a very useful tool in the real world. At this point, you will get the hands-on opportunity to tinker and change the network and see the results for yourself.
And we won’t stop at creating the CNNs. We will also spend a good amount of time exploring them through TensorBoard – the go-to visualization and logging tool when working with TensorFlow. This will make your journey and experimentation in the field more straightforward and definitely more memorable. Neural networks are notorious for their difficult interpretation, so we will examine the Confusion Matrix as a tool to help you understand and interpret the results of your networks. Finally, we’ll show you how to easily tune the hyperparameters of your networks.
But there’s more.
We will show you how to master 3 common techniques to improve the performance of your models. In fact, you will have the opportunity to apply those techniques to the networks we create for the next practical section.
You heard that right! The idea of this course is to give you the real CNN experience. We will have an enormous practical exercise so you can work on a real-world project.
To do that, we’ve created our very own custom data set that comes from the fashion industry. It consists of more than 16,000 images of trousers, jeans, shoes, glasses, and sunglasses. And we will be using these for numerous practical examples and problems. We’ve devised a task to classify the different items with a corresponding label. Not only that, but we will also determine other characteristics, such as the items’ subtype and gender. Given the nature of these, we will be able to try out different techniques to achieve our goal and compare how these approaches fare against each other. You’ll get a taste of the real-world challenges of solving such a task, and gain experience with a real project that you can later add to your portfolio.
Finally, to cap it all off, we end this course with a review of the timeline of Convolutional Neural Networks professional research. We will dive into the workings of some popular CNN architectures, and all-stars like AlexNet, GoogLeNet, as well as ResNet will all make an appearance.
By the end of this course, you will be completely equipped with all the tools you need to confidently work on CNN projects!
We, at the 365 Data Science Team are committed to providing only the highest quality content to you – our students. That’s why we have teamed up with a true industry expert – Iskren Vankov. Iskren is a very capable Software developer and Computer Scientist with a Bachelor’s degree in Computer Science and Physics from The University of Edinburgh, and a Master’s degree in Computer Science from The University of Oxford. Iskren has also been engaged in Deep Learning programming for more than 5 years with a focus on Recurrent Neural Networks.
As with all of our courses, you have a 30-day money-back guarantee, if at some point you decide that the training isn’t the best fit for you.
What’s more, the course comes with plenty of exercises, homework, downloadable files, quiz questions, and course notes. Everything you need for a perfect learning experience.
So, what are you waiting for?
Click the ‘Buy now’ button and let’s explore CNNs together!