From Conventional Machine
Learning to Deep Learning
and Beyond
by GB Chun Hao, Chang
Email: ccha97u@gmail.com
Who am I ?
I graduated from IDEA lab 4 months ago with a Master degree.
As a junior Machine Learning Engineer, my job is to understand the latest Deep
Learning research on Computer Vision and implement/modify them for the
Company’s needs
The following contents are my extremely limited experiences
(less than 4 months) and summary.
Please correct me if you found any error ;)
Overview
1. Brief introduction of Deep Learning
2. Two Popular Networks: CNN and RNN
3. Conventional Learning Model vs Deep Learning
4. The Strength of DNN
5. The Flaws of DNN
6. Beyond Regular Machine Learning Tasks
7. Appendix: Hardwares for DNN
What is Deep Learning
Deep Learning refers to Deep Neural Network.
It belongs to Neural Networks family, a branch of Machine Learning
Two popular branches in DNN
Convolutional
Neural Network
For Computer Vision
Tasks
Recurrent
Neural Network
For Sequential Problem
Convolutional Neural Network
The most popular Neural Network in Computer Vision
CNN is able to capture different levels of feature representation
The following pictures are generated purely by the weights of learned models
Image of the Bird Saxophone
CNN in Typical Computer Vision Tasks
CNN outperforms hand-crafted methods on Image
Classification and Object Detection tasks
Recurrent Neural Network
Recurrent Neural Network is able to memorize and recall the memory.
RNN are suitable for sequential data:
RNN is good at Time Series and Natural Language
Processing. RNN is Turing Complete
RNN Example - Word Embeddings
Mapping words into continuous vectors
(Some word embedding techniques does not need DNN at all. For example Word2Vec)
RNN Example - Language Translation
Shallow Neural Network
Shallow Neural Network is similar to most of
the conventional supervised models
Pros:
1.Easy to train and test
2.Able to approach any continuous function
Cons:
1.Performance depends on well-designed
features
2.Difficult to generalize the prediction
Deep Neural Network
Pros:
1.Automatically learn the High-level features representation
2.Modularity: DNN can be composed like LEGO bricks
3.Able to do Transfer Learning
Cons:
1.Requires tons of data for training
2.Expensive computation power
for training and testing (no CV)
What makes DNN so popular?
It has the three advantages:
1. Self-learned high-level features representations
2. Modularity
3. Transfer Learning
Why are these so important?
Self-Learned High-Level Feature Representation (⅓)
It means that you no longer need hand-crafted "Feature Engineering"
In the past, it takes several experts years to do the Feature Engineering on a
specific task
Self-Learned High-Level Feature Representation(⅔)
DNN simplify the pipelines of Machine Learning tasks (by removing Feature
Engineering), therefore researcher can use similar tools to solve different kinds of
tasks.
You can address different kinds of problems with similar
DNN models!
Self-Learned High-Level Feature Representation(3/3)
Example: The following LRCN model (CNN + RNN) is able to handle three
different kinds of problem: Activity Recognition, Image Description and Video Description
Modularity (¼)
DNN models can be composed just like building LEGO buildings
Modularity (2/4) :
For example, we want a DNN model for Object Detection, but we only have a
Image Classification DNN model(VGG-16).
We can either construct a complicated pipeline with conventional detectors or
compose a bigger DNN model with other DNN modules.
VGG-16
For Image Classification only
Object Detection Task
Modification
Modularity (¾) : From Image Classification to Object
detection
VGG-16
VGG-16
VGG-16 + ROI Polling Layer
VGG-16 + Region Proposal Network+ ROI Polling Layer
SVM
Selective Search
Selective Search
R-CNN
Fast R-CNN
Faster R-CNN
For Image Classification only
Complicated and slow
End-to-End and Fast
Modularity (4/4)
It’s also simple to replace one component in DNN
For example, ResNet-52 outperforms VGG-16 on Image Classification, we can
replace the VGG-16 with ResNet-52 in Faster R-CNN in order to improve the overall
performance in Object Detection
VGG-16 + Region Proposal Network+ ROI Polling Layer
Faster R-CNN
ResNet-52 + Region Proposal Network+ ROI Polling Layer
Faster R-CNN
VGG-16
ResNet-52
Replace
The learned knowledge of one task can be used in another task.
An apple detection model or data can help you to do orange detection!
Transfer Learning(¼)
Transfer Learning(2/4)
Conventional Machine Learning models are difficult to apply Transfer Learning.
The model depends on domain specific features and is sensitive to the data
distribution. Furthermore, different kinds of model(SVM, decision trees) can not
share their weights easily
Difficult
Transfer Learning(¾)
Use a pre-trained model and fine-tune it to adapt new domain tasks is a
common practice in DNN.
Example:
VGG-16
ImageNet Model
(Classification)
Style Recognition
Pedestrian Detection
Fine-Tuning
Fine-Tuning
Transfer Learning(4/4): Wisdom of the DNN Models
Many researchers not only publish their
thesis and source code. The Trained
Models are also shared on-line.
You can download the Pre-trained
Models, combine them or fine-tune them.
Caffe Model Zoo
DNN Minimize the gaps between areas
Text Data
Voice and
other Signals
Image and
Videos
Reinforcement
Learning
DNN can help you get into other research areas easier!
Are DNN models really that magical?
Hehehe, NO
DNN models are nice tools but not that
magical.
Let me give you some clues and
my experience
Flaws of DNN (⅓): MS-CNN Compromise on the Data Distribution
Do you find anything conflicting with the advantages of DNN models?
Flaws of DNN (⅔): TSN Compromise on Self-Learning Feature
Do you find anything conflicting with the advantages of DNN models?
Flaws of DNN(3/3): Adversarial Examples
Maybe it’s not a big deal, but Adversarial Examples somehow breaks the
belief of “DNN models are similar to human brains”
DNN are still wonderful tools to use
The above problems are not
serious and have solutions.
Furthermore, there are tons
of researchers are working
on better and smarter DNN
models.
Beyond Regular Machine Learning Tasks
Except for the regular classification and regression tasks. DNN models more than
that.
Once you can define and evaluate the task mathematically, you can apply DNN
models
Think DNN models as
“Trainable Program that does everything”
CNN model - Google Deep Dream
CNN model - Neural Style
CNN models - Generative Adversarial Network
RNN - Generated Kanji
RNN - Generated Latex Files
RNN - Composing Music
Combine CNN with RNN
Image + Time Series = Videos
and varieties of applications!
CNN+RNN: LRCN
CNN+RNN: Image Captioning
Demonstration Attention
Mechanism to sequentialize
an image by focusing on
different spots
RNN module decide which
part of image to focus
CNN+RNN: Image Based Question Answering
Deep Q-Networks (Reinforcement Learning)
DNN that implements Q-Learning algorithms
Neural Turing Machine
A Turing machine that is differentiable and can be trained on gradient descent
A DNN model that able to
control external storage
Memory Network End-to-End
Zero-Shot & One-Shot Learning
Models that depends on small dataset and able to detects never-seen classes
Researcher are using DNN to do Zero-Shot & One-Shot Learning tasks
Any Question? :)
Hardwares: Nvidia - Biggest Player in DNN
For normal users, the only choice to run DNN is Nvidia video cards
Nvidia will be focusing more on Intelligence Computations and Self Driving Cars in
future
Hardwares: Google Tensor Processing Unit
This Google homemade
TPU are mysterious and
not accessible for
outsiders.
Hardwares: Movidius Fathom
A USB stick for DNN
computations from Movidus
Movidius was purchased Intel recently
Hardware: Physical Neural Network
Started from 1960, PNN is
hardware electrically similar to
neural networks.
A BrainChip From NeuromorThings

From Conventional Machine Learning to Deep Learning and Beyond.pptx

  • 1.
    From Conventional Machine Learningto Deep Learning and Beyond by GB Chun Hao, Chang Email: ccha97u@gmail.com
  • 2.
    Who am I? I graduated from IDEA lab 4 months ago with a Master degree. As a junior Machine Learning Engineer, my job is to understand the latest Deep Learning research on Computer Vision and implement/modify them for the Company’s needs The following contents are my extremely limited experiences (less than 4 months) and summary. Please correct me if you found any error ;)
  • 3.
    Overview 1. Brief introductionof Deep Learning 2. Two Popular Networks: CNN and RNN 3. Conventional Learning Model vs Deep Learning 4. The Strength of DNN 5. The Flaws of DNN 6. Beyond Regular Machine Learning Tasks 7. Appendix: Hardwares for DNN
  • 4.
    What is DeepLearning Deep Learning refers to Deep Neural Network. It belongs to Neural Networks family, a branch of Machine Learning
  • 5.
    Two popular branchesin DNN Convolutional Neural Network For Computer Vision Tasks Recurrent Neural Network For Sequential Problem
  • 6.
    Convolutional Neural Network Themost popular Neural Network in Computer Vision CNN is able to capture different levels of feature representation The following pictures are generated purely by the weights of learned models Image of the Bird Saxophone
  • 7.
    CNN in TypicalComputer Vision Tasks CNN outperforms hand-crafted methods on Image Classification and Object Detection tasks
  • 8.
    Recurrent Neural Network RecurrentNeural Network is able to memorize and recall the memory. RNN are suitable for sequential data: RNN is good at Time Series and Natural Language Processing. RNN is Turing Complete
  • 9.
    RNN Example -Word Embeddings Mapping words into continuous vectors (Some word embedding techniques does not need DNN at all. For example Word2Vec)
  • 10.
    RNN Example -Language Translation
  • 11.
    Shallow Neural Network ShallowNeural Network is similar to most of the conventional supervised models Pros: 1.Easy to train and test 2.Able to approach any continuous function Cons: 1.Performance depends on well-designed features 2.Difficult to generalize the prediction
  • 12.
    Deep Neural Network Pros: 1.Automaticallylearn the High-level features representation 2.Modularity: DNN can be composed like LEGO bricks 3.Able to do Transfer Learning Cons: 1.Requires tons of data for training 2.Expensive computation power for training and testing (no CV)
  • 13.
    What makes DNNso popular? It has the three advantages: 1. Self-learned high-level features representations 2. Modularity 3. Transfer Learning Why are these so important?
  • 14.
    Self-Learned High-Level FeatureRepresentation (⅓) It means that you no longer need hand-crafted "Feature Engineering" In the past, it takes several experts years to do the Feature Engineering on a specific task
  • 15.
    Self-Learned High-Level FeatureRepresentation(⅔) DNN simplify the pipelines of Machine Learning tasks (by removing Feature Engineering), therefore researcher can use similar tools to solve different kinds of tasks. You can address different kinds of problems with similar DNN models!
  • 16.
    Self-Learned High-Level FeatureRepresentation(3/3) Example: The following LRCN model (CNN + RNN) is able to handle three different kinds of problem: Activity Recognition, Image Description and Video Description
  • 17.
    Modularity (¼) DNN modelscan be composed just like building LEGO buildings
  • 18.
    Modularity (2/4) : Forexample, we want a DNN model for Object Detection, but we only have a Image Classification DNN model(VGG-16). We can either construct a complicated pipeline with conventional detectors or compose a bigger DNN model with other DNN modules. VGG-16 For Image Classification only Object Detection Task Modification
  • 19.
    Modularity (¾) :From Image Classification to Object detection VGG-16 VGG-16 VGG-16 + ROI Polling Layer VGG-16 + Region Proposal Network+ ROI Polling Layer SVM Selective Search Selective Search R-CNN Fast R-CNN Faster R-CNN For Image Classification only Complicated and slow End-to-End and Fast
  • 20.
    Modularity (4/4) It’s alsosimple to replace one component in DNN For example, ResNet-52 outperforms VGG-16 on Image Classification, we can replace the VGG-16 with ResNet-52 in Faster R-CNN in order to improve the overall performance in Object Detection VGG-16 + Region Proposal Network+ ROI Polling Layer Faster R-CNN ResNet-52 + Region Proposal Network+ ROI Polling Layer Faster R-CNN VGG-16 ResNet-52 Replace
  • 21.
    The learned knowledgeof one task can be used in another task. An apple detection model or data can help you to do orange detection! Transfer Learning(¼)
  • 22.
    Transfer Learning(2/4) Conventional MachineLearning models are difficult to apply Transfer Learning. The model depends on domain specific features and is sensitive to the data distribution. Furthermore, different kinds of model(SVM, decision trees) can not share their weights easily Difficult
  • 23.
    Transfer Learning(¾) Use apre-trained model and fine-tune it to adapt new domain tasks is a common practice in DNN. Example: VGG-16 ImageNet Model (Classification) Style Recognition Pedestrian Detection Fine-Tuning Fine-Tuning
  • 24.
    Transfer Learning(4/4): Wisdomof the DNN Models Many researchers not only publish their thesis and source code. The Trained Models are also shared on-line. You can download the Pre-trained Models, combine them or fine-tune them. Caffe Model Zoo
  • 25.
    DNN Minimize thegaps between areas Text Data Voice and other Signals Image and Videos Reinforcement Learning DNN can help you get into other research areas easier!
  • 26.
    Are DNN modelsreally that magical? Hehehe, NO DNN models are nice tools but not that magical. Let me give you some clues and my experience
  • 27.
    Flaws of DNN(⅓): MS-CNN Compromise on the Data Distribution Do you find anything conflicting with the advantages of DNN models?
  • 28.
    Flaws of DNN(⅔): TSN Compromise on Self-Learning Feature Do you find anything conflicting with the advantages of DNN models?
  • 29.
    Flaws of DNN(3/3):Adversarial Examples Maybe it’s not a big deal, but Adversarial Examples somehow breaks the belief of “DNN models are similar to human brains”
  • 30.
    DNN are stillwonderful tools to use The above problems are not serious and have solutions. Furthermore, there are tons of researchers are working on better and smarter DNN models.
  • 31.
    Beyond Regular MachineLearning Tasks Except for the regular classification and regression tasks. DNN models more than that. Once you can define and evaluate the task mathematically, you can apply DNN models Think DNN models as “Trainable Program that does everything”
  • 32.
    CNN model -Google Deep Dream
  • 33.
    CNN model -Neural Style
  • 34.
    CNN models -Generative Adversarial Network
  • 35.
  • 36.
    RNN - GeneratedLatex Files
  • 37.
  • 38.
    Combine CNN withRNN Image + Time Series = Videos and varieties of applications!
  • 39.
  • 40.
    CNN+RNN: Image Captioning DemonstrationAttention Mechanism to sequentialize an image by focusing on different spots RNN module decide which part of image to focus
  • 41.
    CNN+RNN: Image BasedQuestion Answering
  • 42.
    Deep Q-Networks (ReinforcementLearning) DNN that implements Q-Learning algorithms
  • 43.
    Neural Turing Machine ATuring machine that is differentiable and can be trained on gradient descent A DNN model that able to control external storage
  • 44.
  • 45.
    Zero-Shot & One-ShotLearning Models that depends on small dataset and able to detects never-seen classes Researcher are using DNN to do Zero-Shot & One-Shot Learning tasks
  • 46.
  • 47.
    Hardwares: Nvidia -Biggest Player in DNN For normal users, the only choice to run DNN is Nvidia video cards Nvidia will be focusing more on Intelligence Computations and Self Driving Cars in future
  • 48.
    Hardwares: Google TensorProcessing Unit This Google homemade TPU are mysterious and not accessible for outsiders.
  • 49.
    Hardwares: Movidius Fathom AUSB stick for DNN computations from Movidus Movidius was purchased Intel recently
  • 50.
    Hardware: Physical NeuralNetwork Started from 1960, PNN is hardware electrically similar to neural networks. A BrainChip From NeuromorThings