Deep Learning: A Visual Introduction
Deep Learning: A Visual Introduction
Deep Learning: A Visual Introduction
A Visual Introduction
Interest
Google NGRAM & Google Trends
Hype or Reality?
Quotes
I have worked all my life in Machine Learning, and I’ve never seen one
algorithm knock over benchmarks like Deep Learning
– Andrew Ng (Stanford & Baidu)
Input: Output:
Artificial
Sensors Intelligence Movement
Data Text
Machine Learning - Basics
Introduction
Machine Learning
Algorithm
Labeled Data
Training
Prediction
Provides various techniques that can learn from and make predictions on data
Machine Learning - Basics
Learning Approaches
Classification Regression
(supervised – predictive) (supervised – predictive)
Our brain has lots of neurons connected together and the strength of
the connections between neurons represents long term knowledge.
DNNresearch
Acquired
Deep Learning - Basics
No more feature engineering
Traditional
Feature
Learning
Engineering
Input Data Algorithm
Deep
Learning
Input Data Algorithm
Deep Learning - Basics
Architecture
Consists of one input, one output and multiple fully-connected hidden layers in-
between. Each layer is represented as a series of neurons and progressively extracts
higher and higher-level features of the input until the final layer essentially makes a
decision about what the input shows. The more layers the network has, the higher-
level features it will learn.
Deep Learning - Basics
The Neuron
Forward it trough
the network to get
Sample labeled data predictions
Learns by generating an error signal that measures the difference between the
predictions of the network and the desired values and then using this error signal
to change the weights (or parameters) so that predictions get more accurate.
Deep Learning - Basics
Gradient Descent
Gradient Descent finds the (local) the minimum of the cost function (used to
calculate the output error) and is used to adjust the weights.
Deep Learning - Basics
Data transformation in other dimensions
Convolution layer is a feature detector that automagically learns to filter out not
needed information from an input by using convolution kernel.
Pooling layers compute the max or average value of a particular feature over a
region of the input data (downsizing of input images). Also helps to detect objects
in some unusual places and reduces memory size.
Deep Learning - Basics
Recurrent Neural Nets (RNN)
RNNs are general computers which can learn algorithms to map input
sequences to output sequences (flexible-sized vectors). The output
vector’s contents are influenced by the entire history of inputs.
The LSTM units give the network memory cells with read, write
general computers which can learn algorithms to map input sequences to
and reset operations. During training, the network can learn when
output sequences
it should remember data and when it should throw it away.
To generate text, we feed a character into the trained RNN and get a distribution
over what characters are likely to come next (red = likely). We sample from this
distribution, and feed it right back in to get the next letter.
This highlighted neuron gets very excited (green = excited, blue = not excited) when
the RNN is inside the [[ ]] markdown environment and turns off outside of it.
The RNN is likely using this neuron to remember if it is inside a URL or not.
Deep Learning - Basics
Image Captioning – Combining CNN and RNN
A close up of a child holding Two pizzas sitting on top of A man flying through the air
a stuffed animal a stove top oven while riding a skateboard
Deep Learning - Basics
Natural Language Processing – Embeddings
Embeddings are used to turn textual data (words, sentences, paragraphs) into high-
dimensional vector representations and group them together with semantically
similar data in a vectorspace. Thereby, computer can detect similarities
mathematically.
Deep Learning - Basics
Natural Language Processing – Word2Vec
Outperforms humans in over 30 Atari games just by receiving the pixels on the
screen with the goal to maximize the score (Reinforcement Learning)
Deep Learning - Basics
DeepMind Deep Q-Learning
Excels in tasks where the basic unit (pixel, word) has very little meaning
in itself, but the combination of such units has a useful meaning
Deep Learning - Tools
Its all Open Source
Deep Learning - Tools
Computing is affordable
Deeper models that can learn from much fewer training cases