What is Deep Learning ?

The growth in annually published papers in AI has outpaced that of CS. This means that there is a growing number of AI publications by researchers from other scientific fields (Physics, Chemistry, Astronomy, Material Science, etc.).

Every year, 2/3 of the students of this course are not majoring in CS. Many CS 230 projects are a combination of computer science and other domains that students have expertise with. The number of papers published with the keyword “Neural Network” has been rapidly growing.

The number of Scopus papers on Neural Networks had a compound annual growth rate of 37% from 2014 to 2017. It has notably driven the growth of papers published In Machine Learning and Computer Vision. When we talk about Neural Networks we are talking about Deep Learning. Deep Learning is a subclass of Machine Learning, and Machine Learning is again a subclass of Artificial Intelligence. Deep learning has reshaped the research frontier of Machine Learning, Computer Vision, as well as Natural Language Processing. We’ve seen that Deep Learning/Machine Learning has already invaded our lives with lots of industrial products, for example, conversational assistants. Today cell phones are unlocked through face verification, which is another application powered by Deep Learning. Other applications are: Self-Driving - more especially Perception which aims at giving cars the ability to detect pedestrians and traffic signs - Itinerary, Mapping, Sentiment Analysis, Machine Translation.

Digitalization, computational power and the evolution of algorithms have allowed AI to boom. Machine Learning is all about trying to mimic a function mapping data to labels and use this function to make predictions of labels for new data afterwards. The way we use hardware to track all kinds of data we encountered in our daily life provide a giant database that the algorithms can take advantage from. Computational power is important because the mimicing process is all about iteratively doing large matrix multiplication. Unlike linear regression that only fits a line in high dimension space to the given data, Deep Learning is scalable to large data. That is to say, having a large number of data isn’t going to help linear regression pretty well, because it doesn’t have the ability the understand that large amount of data. Deep Learning, on the other hand, isn’t the case.

Introduction to Deep Learning Applications

1) SIGN language detection

Taking an input image of a hand which has a number (between 0 and 5) in sign language and predicting the number that the hand corresponds to. Problem highly correlated to sign translation.

SIGN Language detection

2) The Happy House

A house letting in smiling people only. An application part of sentiment analysis on an image.

The Happy House

Other related tasks are Face Verification or Face Recognition.

3) Face Recognition

Given an image of a person, prediction of their identity.

Face Recognition

4) Object Detection

Object Detection

For example, car detection for autonomous driving using YOLOv2.

Car Detection

5) Optimal goalkeeper shoot prediction

Determining the geographical location a player should kick a ball from to increase the chances to give it to one of their teammates.

Optimal goalkeeper shoot prediction

6) Art Generation

Generation of a content image as if it was painted with the style of another image.

Art generation

7) Music Generation using a sequence model

Music Generation

8) Text Generation

Given a large corpus of Shakespeare poems, producing a poem as if it was written by Shakespeare.

TetGeneration

9) Sentiment analysis

Based on the sentence, producing the emoji which represents this sentence. Task related to how smartphones are able to suggest emoji or a next word given a specific word.

Emojifier

10) Machine Translation

One of the major applications of Deep Learning.

Machine Translation

11) Trigger word detection

Building an algorithm which activates itself when the word “activate” is pronounced. Related to the functioning of Siri, Alexa, Cortana.

Trigger word detection

Examples of student projects

1) Coloring Black&White pictures with Deep Learning

To train such an algorithm, we would need colored images and their gray-scale versions to build the mapping between colored and gray-scale images.

Coloring Black&White pictures with Deep Learning

2) Predicting a price of an object from a picture

Students implemented a feature showing which parts of the bike were discriminative for the price of the bike. The algorithm was really efficient at predicting the price of kids’ bikes because it was looking at the back to see that there was an additional wheel. It was trained with data of kids’ bikes to be able to learn this pattern.

Prediction price of an object from a picture

3) Image-to-Image translation with Conditional GAN

The algorithm generates a map from an input satellite image.

Generated map images of different architecture and hyperparameters. Fron left to right are source aerial images, baseline, U-Net, U-Net with ImageGAN, ResNet-16, ResNet-9, ResNet-50, and ground truth map images

4) LeafNet: A Deep Learning Solution to Tree Species identification

Students built an application able to predict a tree species from a taken photograph of a leaf.

LeafNet app