intro-to-cnn-p1
Repo for hosting workshop materials delivered on 28/02/2022
Questions you will answer in this workshop
Learning Objectives
- What are convolutional layers and how do Convolutional Neural Networks Work (CNNs)
- Introduction to CNN classifiers, object detectors, and Semantic Segmentation
- Learn to convert a fully dense network to a CNN in TensorFlow to improve the performance of image classifiers
- A quick look into Object detection CNNs
- Learn how to design CNNs for your AI application
What will I learn during this workshop
Prerequisites
In this training, we will approach the problem from the ground up. Reviewing how CNNs work without getting bogged down into the detail and getting some models training as fast as possible. The workshop materials will be delivered in a combination of coding exercises and lectures.
- Python programming language: See Udacity - Intro to Python
- Tensorflow Fundamental: See Microsoft Learn
Steps
This workshop consists of the following activities:
Slides
You can access the slides here
Setup
- Clone this git repository using
git clone https://github.com/beginners-machine-learning-london/intro-to-cnn-p1
- Open the project in your IDE such as Pycharm
- Run the following command to install the required packages (Learn more about python virtual environments here):
- Create the environment using
python -m venv venv
- Activate the environment using
source venv/bin/activate
- Install the required packages using
pip install -r requirements.txt
- Create the environment using
Featured technologies
- Python: Python is a programming language that lets you work more quickly and integrate your systems more effectively.
- Tensorflow: A deep learning framework by Google (used in most production environments).
- Keras: A high-level API for Tensorflow.
- OpenCV: Open source computer vision library for computer vision and image processing.
- Matplotlib: A library for plotting graphs and images in Python.
- Numpy: A library for scientific computing with Python.
Dataset Source
- The Fashion MNIST datasets are provided as part of the deep learning framework Tensorflow under the MIT license.
- The dataset consists of 60,000 28x28 grayscale images of 10 classes: T-shirt/top, Trouser, Pullover, Dress, Coat, Sandal, Shirt, Sneaker, Bag, Ankle boot.
- The images are divided into train and test sets. The training set contains 60,000 images. The test set contains 10,000 images.
- This dataset is used in this workshop to train a CNN.
- The images are 28x28 grayscale images.
- The labels are one-hot encoded.
- The training set is used to train the model and The test set is used to evaluate the model.
Learn More
Collaboration, Questions and Discussions
- BML Slack Channel - Join our slack workspace to collaborate with others, discuss ideas and post any questions you have about our group or the workshops
- Have questions about workshop exercises or setting up your AWS account and configurations? Post them here
Workshop Feedback
- How was this workshop? Please provide us with some feedback here so that we can improve the content and delivery of future workshops.