Deep Learning for Robotics
This course is about learning the basics of Deep Learning using the super cool Neural Networks!
Deep Learning is a powerful technique to address problems that were previously unbearable for society, due to the difficulty of translating them into computers, their computational cost, or their mathematical complexity.
With good supervision and critical thinking, many new algorithms can be designed using Neural Networks, but you are going to need to put into practice your previous knowledge of mathematics, statistics, and computer programming.
In this course, we will assume a previous background in mathematics and statistics applications. Their concepts will be used within Python code, classes and functions, and useful libraries such as Keras and Tensorflow.
Also, we will assume previous knowledge of some basic ROS functionalities, on how to create packages, start simulations, run ROS nodes, and compile their code.
You’ll be presented with the two typical challenges for unsupervised learning: regression and classification algorithms. You are going to see the key components of a neural network, neurons, and understand the role of weights, biases, activation functions, loss, and accuracy.
You’ll be presented with the hyperparameters that rule the behavior of a neural network.
You’ll learn how by inspecting the learning evolution of our algorithm we can choose to apply one or another optimization technique to improve its results.
You’ll be presented with an example of a Convolutional Neural Network, an excellent tool to solve Computer Vision problems. You’ll see which neurons and mathematical operations allow extracting features of images, and then classify them into labels. You are going to be challenged to improve their performance of them with optimization techniques.
Simulation Robots Used
My name is Irene, I’m a Physicist and Engineer from Barcelona. I’m passionate about applying Artificial Intelligence to Robotics, while focusing in the utility and beauty of fundamental mathematics and physics involved. ROS gives me the tools to enjoy all of that!
What exercises will you be doing
Create a simple NN in order to predict the future position of a robot.
Neural Network in Python
Program a Neural Network from scratch, using Python.
Configure a Neural Network in order to modify its behavior.
Develop a CNN to detect cars (and other objects) on the environment.
Identify traffic signs with the TurtleBot3 robot.
Unit 1: Introduction to the Deep Learning for Robotics Course
A brief introduction to the concepts you will be covering during the course.
Unit 2: Deep Learning Basics
Learn the basic structure of a Neural Network.
Unit 2.5: How to Program an L-layer Neural Network in Python
Learn how to program a whole NN from scratch.
Unit 3: Hyperparameter Tuning
Learn the basic parameters that rule a Neural Network.
Unit 4: Convolutional neural networks
Learn to apply convolutions to images in order to detect patterns.
A challenge project where you’ll apply the previous concepts and simulate a maze environment where the TurtleBot identifies traffic signs.
Ready to have this ROS skill?
Start learning online quickly and easily