GitHub - NYP-AI/Learning-Materials: A Public Repository containing all of NYP AI’s past event materials
A Public Repository containing all of NYP AI’s past event materials - GitHub - NYP-AI/Learning-Materials: A Public Repository containing all of NYP AI’s past event materials

NYP AI CV Camp 2020 takes a deeper dive into the Computer Vision landscape. From Image Processing to Deep Learning Convolutional Neural Networks, we cover the niche aspects of Machine Learning. The camp was conducted across four days: 4th - 7th January 2021, including 2 days of learning and 2 days of assignments.

Day 1: Image Processing

To start off the Camp, we reintroduced the already familiar concept of Supervised Learning. In the later stages of our Camp, we would be heavily focused on supervised learning modelling techniques, hence we emphasised the need for a solid understanding of the Supervised Learning paradigm.

Supervised Learning...

This was followed by a high-level overview of the Image Classification domain.

Steps for an Image Classification Project

To offer participants a code-free way to train their own image-based models, we utilized Google's Teachable Machine, which you can find here @ https://teachablemachine.withgoogle.com/.

Teachable Machine allows you to train your own Image Classification model, straight from your webcam.

Teachable Machine - Train your Image Classifier with no code required

Diving into the details of Image Processing, we covered Numpy Arrays for image datasets. Β 

All images can be "broken down" to Numpy Arrays

Participants also got to create their own image from scratch, using Numpy Arrays.

All these skills culminated in the final project of the day: Training our own Fruit Classifier.

Using the Kaggle API for downloading datasets
Creating our own Dataset from .jpg images
Output of our Logistic Regression model :)

Day 2: Convolutional Neural Networks

For our Second Day, we introduced state-of-the-art Machine Learning Algorithms for Images: CNNs.

By explaining the limitations of Traditional Algorithms for Images (I.e Logistic Regression), participants could see the clear benefits of utilizing CNNs.

The importance of CNNs

Given the Black-boxed nature of Deep Learning Algorithms, concise animations were used to provide a deeper level of understanding of the CNN algorithm. Namely, the concept of Convolutions and Filters were introduced.

How convolution operations work

As CNNs allow us to work with 3 Dimensional, coloured images, our preprocessing steps would slightly differ from Day 1.

We don't have to grayscale and flatten our Image Arrays..

Moving on to the more exciting aspects of Day 2 - Actual modelling using Tensorflow's Sequential API

Training our model within a single line

The results of our Algorithm were extremely accurate - A gigantic leap from yesterday's Logistic Regression Model.

Clearly, CNNs are the winner for Image Classification tasks

Moving Forward

We really had a blast teaching our members new ML techniques, particularly dabbling with Deep Learning Algorithms. We'll be back with even more awesome content in the future🀞. Until then! ~