SlideShare a Scribd company logo
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Deep Learning & Applications in Visual Sensing for
Robotics
Son N. Tran
June 21, 2016
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Plan
1 Deep Learning: A Brief Introduction
2 Machine Learning & Deep Learning for Beginers
3 Visual Sensing: How to Recognise Objects
4 Applications in Robotics
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Deep Learning Rumours
Deep Learning!!! Sound interesting, huh? Everyone is talking
about it.
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
DL in Games
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
DL in Weather Forecasting
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
DL in Healthcare
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
DL in Beauty Industry
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
DL in Robotics
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Neural Networks
So, what is deep learning???
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Neural Networks
Let’s start with Neural Networks.
Example:
x1 = 1, x2 = 0, x3 = 0, x4 = 1
⇒ h1 = f (2 ∗ 1 + 3 ∗ 0 + 2 ∗ 0 + 1 ∗ 1 + 0.5) = f (3.5).
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Neural Networks
Let’s start with Neural Networks.
linear: f (x) = x
logsig: f (x) = 1/(1 + e−x )
tansig: f (x) = ex −e−x
ex +e−x
relu (rectifier linear): f (x) = max(0, x + N(0, x)) where N is
Normal distribution (Gauss).
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Neural Networks
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Train Neural Networks
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Deeper Networks
More number of layers → better prediction?
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Deeper Networks
More number of layers → better prediction?
No
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Deeper Networks
More number of layers → better prediction?
No
Gradient exploding/diminishing
Overfitting
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Unsupervised Learning
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Unsupervised Learning
Autoencoder
Restricted Boltzmann
Machines
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Unsupervised Learning
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Stacking & Layer-wise Pretraining
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Rectifier Linear Units
relu (rectifier linear): f (x) = max(0, x + N(0, x)) where N is
Normal distribution (Gauss).
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Dropout
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Convolutional Neural Networks: Image input
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Convolutional Neural Networks: What is convolution?
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Convolutional Neural Networks: Stacking Component.
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Convolutional Neural Networks: A Model.
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Plan
1 Deep Learning: A Brief Introduction
2 Machine Learning & Deep Learning for Beginers
3 Visual Sensing: How to Recognise Objects
4 Applications in Robotics
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Skills
Programming skills (Python, C/C++, Lua, MATLAB,Java)
Matrix Calculation
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Tools
TensorFlow:
Convnet
Theano
Caffe
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Online courses
Coursera
Machine Learning
Neural Networks for Machine Learning
Udacity
Intro to Machine Learning
Machine Learning
Deep Learning
Youtube: mathematicalmonk - Machine Learning
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Private Courses & Mentoring
Email: piedu.team@gmail.com
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Coding Example: Convolutional Network with TensorFlow
TensorFlow
Tensor (multi-dimensional matrix) computation library.
Optimization algorithms
Reduce coding effort
Easy to deploy
Cross-platform support
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Coding Example: Convolutional Network with TensorFlow
Building graph:
1. with tf.Graph().as default():
2. images, labels = distorted inputs()
3. logits = build model(images)
4. loss = loss func(logits,labels)
5. train op = train batch(loss,global step)
6. for step in xrange(FLAGS.max steps):
7 , loss value = sess.run([train op, loss])
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Coding Example: Convolutional Network with TensorFlow
3. logits = build model(images)
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Coding Example: Convolutional Network with TensorFlow
1. filters = tf.get variable(’weights’, shape=[5, 5,
3, 64],
initializer=tf.truncated normal initializer(stddev=1e-4))
2. conv op = tf.nn.conv2d(images, filters, [1, 1, 1,
1], padding=’SAME’)
3. biases = tf.get variable(’biases’, [64],
initializer=tf.constant initializer(0.0))
4. conv bias = tf.nn.bias add(conv op, biases)
5. conv1 = tf.nn.relu(conv bias, name=scope.name)
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Coding Example: Convolutional Network with TensorFlow
1. filters = tf.get variable(’weights’, shape=[5, 5,
3, 64],
initializer=tf.truncated normal initializer(stddev=1e-4))
2. conv op = tf.nn.conv2d(images, filters, [1, 1, 1,
1], padding=’SAME’)
3. biases = tf.get variable(’biases’, [64],
initializer=tf.constant initializer(0.0))
4. conv bias = tf.nn.bias add(conv op, biases)
5. conv1 = tf.nn.relu(conv bias, name=scope.name)
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Coding Example: Convolutional Network with TensorFlow
1. filters = tf.get variable(’weights’, shape=[5, 5,
3, 64],
initializer=tf.truncated normal initializer(stddev=1e-4))
2. conv op = tf.nn.conv2d(images, filters, [1, 1, 1,
1], padding=’SAME’)
3. biases = tf.get variable(’biases’, [64],
initializer=tf.constant initializer(0.0))
4. conv bias = tf.nn.bias add(conv op, biases)
5. conv1 = tf.nn.relu(conv bias, name=scope.name)
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Coding Example: Convolutional Network with TensorFlow
1. filters = tf.get variable(’weights’, shape=[5, 5,
3, 64],
initializer=tf.truncated normal initializer(stddev=1e-4))
2. conv op = tf.nn.conv2d(images, filters, [1, 1, 1,
1], padding=’SAME’)
3. biases = tf.get variable(’biases’, [64],
initializer=tf.constant initializer(0.0))
4. conv bias = tf.nn.bias add(conv op, biases)
5. conv1 = tf.nn.relu(conv bias, name=scope.name)
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Coding Example: Convolutional Network with TensorFlow
1. filters = tf.get variable(’weights’, shape=[5, 5,
3, 64],
initializer=tf.truncated normal initializer(stddev=1e-4))
2. conv op = tf.nn.conv2d(images, filters, [1, 1, 1,
1], padding=’SAME’)
3. biases = tf.get variable(’biases’, [64],
initializer=tf.constant initializer(0.0))
4. conv bias = tf.nn.bias add(conv op, biases)
5. conv1 = tf.nn.relu(conv bias, name=scope.name)
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Coding Example: Convolutional Network with TensorFlow
1. pool1 = tf.nn.max pool(conv1, ksize=[1, 3, 3, 1],
strides=[1, 2, 2, 1], padding=’SAME’, name=’pool1’)
2. norm1 = tf.nn.lrn(pool1, 4, bias=1.0, alpha=0.001
/ 9.0, beta=0.75, name=’norm1’)
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Coding Example: Convolutional Network with TensorFlow
3. logits = build model(images)
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Plan
1 Deep Learning: A Brief Introduction
2 Machine Learning & Deep Learning for Beginers
3 Visual Sensing: How to Recognise Objects
4 Applications in Robotics
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Object Localisation
Selective search: Demo
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Object Localisation
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Object Localisation
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Recognition model
Use Object Localisation techniques to generate candidate
objects.
Extract the bounding-boxes and use them to train another
Deep CNN for prediction
or
Train a single deep CNN for both localisation and recognition.
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Regconition: demo
Demo: http://demo.bagiks.com
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Bagiks Team
Bagiks team: http://www.bagiks.com/
Interested in using/helping to improve the solutions? contact
team@bagiks.com
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Plan
1 Deep Learning: A Brief Introduction
2 Machine Learning & Deep Learning for Beginers
3 Visual Sensing: How to Recognise Objects
4 Applications in Robotics
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Camera Sensor
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Driverless Car
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
Serving Robots
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
and more ...
Cleaner robot.
Personal assistant
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
Deep Learning: A Brief Introduction
Machine Learning & Deep Learning for Beginers
Visual Sensing: How to Recognise Objects
Applications in Robotics
THANKS!
PiEdu
Bagiks
Thank you.
Contact Presenter: sontn.fz@gmail.com
Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics

More Related Content

DOC
Robinson CV
PPT
In seminar 19.10.12 india
PPT
Customer Satisfaction On South East Bank
DOCX
Marketing project work
PPT
Marketing personal
PPTX
CUSTOMER SATISFACTION ON PUBLIC AND PRIVATE BANK OF INDIA
PPT
Trampojos (diegojo) sin caras
PPTX
LA CUENTA CONTABILIDAD
Robinson CV
In seminar 19.10.12 india
Customer Satisfaction On South East Bank
Marketing project work
Marketing personal
CUSTOMER SATISFACTION ON PUBLIC AND PRIVATE BANK OF INDIA
Trampojos (diegojo) sin caras
LA CUENTA CONTABILIDAD

Similar to [Fablab Hanoi] 20160618_Talk: Deep Learning & Applications in Visual Sensing for Robotics (20)

PPTX
Deep Learning in Robotics Enhancing Perception and Decision-Making (1).pptx
PPTX
Deep Learning in Robotics Enhancing Perception and Decision-Making (1).pptx
PPTX
Deep Learning in Robotics Enhancing Perception and Decision-Making (1).pptx
PPTX
Deep Learning in Robotics Enhancing Perception and Decision-Making (1).pptx
PPTX
Deep Learning in Robotics Enhancing Perception and Decision-Making.pptx
PPTX
Panacea - Augmented Reality
PDF
Final_draft_Practice_School_II_report
PDF
ArtificialIntelligenceInObjectDetection-Report.pdf
PPTX
Face Attendence System For Automation Attendance System
PPTX
realtimeobject (2).pptx
DOCX
Obj report
PDF
Fontys - Demystify AI. Wat is er mogelijk met AI en wat niet?
PPTX
Computer vision - Applications and Trends
PDF
Robotics Classes for Elementary Students.pdf
PDF
CRIMINAL IDENTIFICATION FOR LOW RESOLUTION SURVEILLANCE
PDF
Robot nao
PDF
AI in Industrial Robotics Applications
DOCX
Native android applications developer
PPTX
Sais svcc
Deep Learning in Robotics Enhancing Perception and Decision-Making (1).pptx
Deep Learning in Robotics Enhancing Perception and Decision-Making (1).pptx
Deep Learning in Robotics Enhancing Perception and Decision-Making (1).pptx
Deep Learning in Robotics Enhancing Perception and Decision-Making (1).pptx
Deep Learning in Robotics Enhancing Perception and Decision-Making.pptx
Panacea - Augmented Reality
Final_draft_Practice_School_II_report
ArtificialIntelligenceInObjectDetection-Report.pdf
Face Attendence System For Automation Attendance System
realtimeobject (2).pptx
Obj report
Fontys - Demystify AI. Wat is er mogelijk met AI en wat niet?
Computer vision - Applications and Trends
Robotics Classes for Elementary Students.pdf
CRIMINAL IDENTIFICATION FOR LOW RESOLUTION SURVEILLANCE
Robot nao
AI in Industrial Robotics Applications
Native android applications developer
Sais svcc
Ad

More from Fablab Hanoi (9)

DOCX
[Fablab Hanoi] 20170304_Aquaponics preparation
PDF
[Fablab Hanoi] 20170304_Talk: DIY Aquaponics
PPT
[Fablab Hanoi] 20161211_Talk: Trí tuệ nhân tạo và ứng dụng _Chương 3: Hệ chuy...
PPT
[Fablab Hanoi] 20161211_Talk:Trí tuệ nhân tạo và ứng dụng _Chương 2: Tìm kiếm
PPT
[Fablab Hanoi] 20161211_Talk: Trí tuệ nhân tạo và ứng dụng_Chương 1: Tổng quan
PPTX
[Fablab Hanoi] 20160531 Project Helping Hand Vietnam
PDF
Fablab hanoi 20160420_cnc machine and its application
PDF
Fablab hanoi kakidiy_drone101
PDF
Fablab hanoi 20160305_introduction
[Fablab Hanoi] 20170304_Aquaponics preparation
[Fablab Hanoi] 20170304_Talk: DIY Aquaponics
[Fablab Hanoi] 20161211_Talk: Trí tuệ nhân tạo và ứng dụng _Chương 3: Hệ chuy...
[Fablab Hanoi] 20161211_Talk:Trí tuệ nhân tạo và ứng dụng _Chương 2: Tìm kiếm
[Fablab Hanoi] 20161211_Talk: Trí tuệ nhân tạo và ứng dụng_Chương 1: Tổng quan
[Fablab Hanoi] 20160531 Project Helping Hand Vietnam
Fablab hanoi 20160420_cnc machine and its application
Fablab hanoi kakidiy_drone101
Fablab hanoi 20160305_introduction
Ad

Recently uploaded (20)

PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Electronic commerce courselecture one. Pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Spectroscopy.pptx food analysis technology
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Machine learning based COVID-19 study performance prediction
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
Cloud computing and distributed systems.
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Approach and Philosophy of On baking technology
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Per capita expenditure prediction using model stacking based on satellite ima...
MIND Revenue Release Quarter 2 2025 Press Release
Building Integrated photovoltaic BIPV_UPV.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
NewMind AI Weekly Chronicles - August'25 Week I
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Electronic commerce courselecture one. Pdf
Review of recent advances in non-invasive hemoglobin estimation
Spectroscopy.pptx food analysis technology
Agricultural_Statistics_at_a_Glance_2022_0.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
Machine learning based COVID-19 study performance prediction
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Cloud computing and distributed systems.
Digital-Transformation-Roadmap-for-Companies.pptx
Approach and Philosophy of On baking technology
Dropbox Q2 2025 Financial Results & Investor Presentation
Understanding_Digital_Forensics_Presentation.pptx
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...

[Fablab Hanoi] 20160618_Talk: Deep Learning & Applications in Visual Sensing for Robotics

  • 1. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Deep Learning & Applications in Visual Sensing for Robotics Son N. Tran June 21, 2016 Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 2. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Plan 1 Deep Learning: A Brief Introduction 2 Machine Learning & Deep Learning for Beginers 3 Visual Sensing: How to Recognise Objects 4 Applications in Robotics Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 3. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Deep Learning Rumours Deep Learning!!! Sound interesting, huh? Everyone is talking about it. Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 4. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics DL in Games Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 5. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics DL in Weather Forecasting Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 6. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics DL in Healthcare Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 7. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics DL in Beauty Industry Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 8. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics DL in Robotics Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 9. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Neural Networks So, what is deep learning??? Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 10. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Neural Networks Let’s start with Neural Networks. Example: x1 = 1, x2 = 0, x3 = 0, x4 = 1 ⇒ h1 = f (2 ∗ 1 + 3 ∗ 0 + 2 ∗ 0 + 1 ∗ 1 + 0.5) = f (3.5). Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 11. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Neural Networks Let’s start with Neural Networks. linear: f (x) = x logsig: f (x) = 1/(1 + e−x ) tansig: f (x) = ex −e−x ex +e−x relu (rectifier linear): f (x) = max(0, x + N(0, x)) where N is Normal distribution (Gauss). Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 12. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Neural Networks Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 13. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Train Neural Networks Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 14. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Deeper Networks More number of layers → better prediction? Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 15. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Deeper Networks More number of layers → better prediction? No Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 16. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Deeper Networks More number of layers → better prediction? No Gradient exploding/diminishing Overfitting Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 17. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Unsupervised Learning Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 18. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Unsupervised Learning Autoencoder Restricted Boltzmann Machines Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 19. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Unsupervised Learning Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 20. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Stacking & Layer-wise Pretraining Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 21. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Rectifier Linear Units relu (rectifier linear): f (x) = max(0, x + N(0, x)) where N is Normal distribution (Gauss). Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 22. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Dropout Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 23. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Convolutional Neural Networks: Image input Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 24. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Convolutional Neural Networks: What is convolution? Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 25. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Convolutional Neural Networks: Stacking Component. Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 26. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Convolutional Neural Networks: A Model. Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 27. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Plan 1 Deep Learning: A Brief Introduction 2 Machine Learning & Deep Learning for Beginers 3 Visual Sensing: How to Recognise Objects 4 Applications in Robotics Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 28. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Skills Programming skills (Python, C/C++, Lua, MATLAB,Java) Matrix Calculation Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 29. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Tools TensorFlow: Convnet Theano Caffe Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 30. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Online courses Coursera Machine Learning Neural Networks for Machine Learning Udacity Intro to Machine Learning Machine Learning Deep Learning Youtube: mathematicalmonk - Machine Learning Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 31. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Private Courses & Mentoring Email: piedu.team@gmail.com Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 32. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Coding Example: Convolutional Network with TensorFlow TensorFlow Tensor (multi-dimensional matrix) computation library. Optimization algorithms Reduce coding effort Easy to deploy Cross-platform support Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 33. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Coding Example: Convolutional Network with TensorFlow Building graph: 1. with tf.Graph().as default(): 2. images, labels = distorted inputs() 3. logits = build model(images) 4. loss = loss func(logits,labels) 5. train op = train batch(loss,global step) 6. for step in xrange(FLAGS.max steps): 7 , loss value = sess.run([train op, loss]) Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 34. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Coding Example: Convolutional Network with TensorFlow 3. logits = build model(images) Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 35. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Coding Example: Convolutional Network with TensorFlow 1. filters = tf.get variable(’weights’, shape=[5, 5, 3, 64], initializer=tf.truncated normal initializer(stddev=1e-4)) 2. conv op = tf.nn.conv2d(images, filters, [1, 1, 1, 1], padding=’SAME’) 3. biases = tf.get variable(’biases’, [64], initializer=tf.constant initializer(0.0)) 4. conv bias = tf.nn.bias add(conv op, biases) 5. conv1 = tf.nn.relu(conv bias, name=scope.name) Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 36. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Coding Example: Convolutional Network with TensorFlow 1. filters = tf.get variable(’weights’, shape=[5, 5, 3, 64], initializer=tf.truncated normal initializer(stddev=1e-4)) 2. conv op = tf.nn.conv2d(images, filters, [1, 1, 1, 1], padding=’SAME’) 3. biases = tf.get variable(’biases’, [64], initializer=tf.constant initializer(0.0)) 4. conv bias = tf.nn.bias add(conv op, biases) 5. conv1 = tf.nn.relu(conv bias, name=scope.name) Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 37. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Coding Example: Convolutional Network with TensorFlow 1. filters = tf.get variable(’weights’, shape=[5, 5, 3, 64], initializer=tf.truncated normal initializer(stddev=1e-4)) 2. conv op = tf.nn.conv2d(images, filters, [1, 1, 1, 1], padding=’SAME’) 3. biases = tf.get variable(’biases’, [64], initializer=tf.constant initializer(0.0)) 4. conv bias = tf.nn.bias add(conv op, biases) 5. conv1 = tf.nn.relu(conv bias, name=scope.name) Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 38. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Coding Example: Convolutional Network with TensorFlow 1. filters = tf.get variable(’weights’, shape=[5, 5, 3, 64], initializer=tf.truncated normal initializer(stddev=1e-4)) 2. conv op = tf.nn.conv2d(images, filters, [1, 1, 1, 1], padding=’SAME’) 3. biases = tf.get variable(’biases’, [64], initializer=tf.constant initializer(0.0)) 4. conv bias = tf.nn.bias add(conv op, biases) 5. conv1 = tf.nn.relu(conv bias, name=scope.name) Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 39. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Coding Example: Convolutional Network with TensorFlow 1. filters = tf.get variable(’weights’, shape=[5, 5, 3, 64], initializer=tf.truncated normal initializer(stddev=1e-4)) 2. conv op = tf.nn.conv2d(images, filters, [1, 1, 1, 1], padding=’SAME’) 3. biases = tf.get variable(’biases’, [64], initializer=tf.constant initializer(0.0)) 4. conv bias = tf.nn.bias add(conv op, biases) 5. conv1 = tf.nn.relu(conv bias, name=scope.name) Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 40. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Coding Example: Convolutional Network with TensorFlow 1. pool1 = tf.nn.max pool(conv1, ksize=[1, 3, 3, 1], strides=[1, 2, 2, 1], padding=’SAME’, name=’pool1’) 2. norm1 = tf.nn.lrn(pool1, 4, bias=1.0, alpha=0.001 / 9.0, beta=0.75, name=’norm1’) Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 41. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Coding Example: Convolutional Network with TensorFlow 3. logits = build model(images) Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 42. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Plan 1 Deep Learning: A Brief Introduction 2 Machine Learning & Deep Learning for Beginers 3 Visual Sensing: How to Recognise Objects 4 Applications in Robotics Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 43. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Object Localisation Selective search: Demo Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 44. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Object Localisation Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 45. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Object Localisation Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 46. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Recognition model Use Object Localisation techniques to generate candidate objects. Extract the bounding-boxes and use them to train another Deep CNN for prediction or Train a single deep CNN for both localisation and recognition. Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 47. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Regconition: demo Demo: http://demo.bagiks.com Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 48. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Bagiks Team Bagiks team: http://www.bagiks.com/ Interested in using/helping to improve the solutions? contact team@bagiks.com Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 49. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Plan 1 Deep Learning: A Brief Introduction 2 Machine Learning & Deep Learning for Beginers 3 Visual Sensing: How to Recognise Objects 4 Applications in Robotics Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 50. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Camera Sensor Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 51. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Driverless Car Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 52. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics Serving Robots Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 53. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics and more ... Cleaner robot. Personal assistant Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics
  • 54. Deep Learning: A Brief Introduction Machine Learning & Deep Learning for Beginers Visual Sensing: How to Recognise Objects Applications in Robotics THANKS! PiEdu Bagiks Thank you. Contact Presenter: sontn.fz@gmail.com Son N. Tran Deep Learning & Applications in Visual Sensing for Robotics