PyTorch in Robotics - Yisong Yue, Caltech

PyTorch · Intermediate ·📐 ML Fundamentals ·6y ago

Key Takeaways

PyTorch is used for risk-aware machine learning in dynamic robotics control, enabling agile and safe robot behavior in complex environments, with applications such as the Neural Lander project. The research work at Caltech focuses on building deep learning systems for robotics control using PyTorch, incorporating techniques like compositional blending and residual aerodynamics modeling.

Full Transcript

[Music] for those of you don't know me my name is Z song you I'm a faculty member at Cal Tech I've been at Cal Tech for about five years studying all aspects of machine learning today I want to talk about some of our work at the intersection of learning and robotics and control and in particular we'll be talking about risk aware machine learning for dynamic robot control okay so that's a bit of a mouthful so let's unpack what these words mean so dynamic robot controls so what our dynamic robots well in my definition dynamic robots are robots that need to exhibit some level of agility so here's one example where the robot a drone must interact with the ground and fly really close to the ground but not touch it so this is a level of agility that can be quite hard to achieve with your off-the-shelf consumer drones and yet we were able to demonstrate how to do this and I'll talk a little bit about this in detail later on this presentation another example is of a dynamic boundary condition so the ground is a static boundary condition and a dynamic boundary condition you can think of as multiple drones interacting with each other so for example when one drone was on top of our second drone it creates what's called a downwash effect that can actually cause the lower drone to crash and so if you can learn how to control against that then you could perform very agile and graceful dynamic formations and that were previously not possible or very hard to engineer using classical control approaches other examples that will you do at Caltech include things like exoskeletons and prosthetics so you know how do you design exoskeleton gates that are optimized for the comfort of each individual person let's say an injured person while being stable safe upright and all those other factors simultaneously so these are just some of the examples that we've been working on at Caltech where we really need to be able to perform agile or dynamic robot control and so our goals are to have robots in these agile and dynamic settings that exhibit of course agility safety comfort aesthetics power consumption efficiency so on and so forth and it turns out that if you talk to a classical controls person or a roboticist leaving some of these dynamic behaviors can be very challenging because the environment is not perfectly modeled if you don't model the affordances you don't model the the boundary conditions if you don't model some of the stresses and deformations if the robot is as it's undergoing stress if you don't model some of these things very accurately then your simple models of the world will cause the robot to let's say fall over or crash and so that's where machine learning comes into play how do we use machine learning to learn all of these extra high order effects that are not model using nominal models of control in order to achieve these types of agility and aesthetics and comfort and so that's what we're doing at Caltech through a new center called cast cast stands for the center for autonomous systems and technology it was founded about two years ago and it basically is a center that allows faculty from electrode engineering mechanical engineering aerospace and computer science to come together and work on these problems very synergistically so if you're interested in learning more the URL is very easy cast at Caltech that edu invites you to visit our website and learn more it's ok so this is gonna be a machine learning talk and we're gonna talk about how to use machine learning to put it into a safety-critical real-world robot that's performing agile maneuvers by learning all these high order effects that we cannot model you by hand one thing that immediately jump jumps to mind is the fact that ok these robots because they're performing these potentially unsafe actions we need guarantees on safety stability on comfort when you fluent in airplanes for those of you traveled when you flew in an airplane last night to come to San Francisco that airplane has been certified by the FAA and by other governing bodies and by various companies to satisfy certain safety standards and a lot of that comes with theorems and proofs but learning as we use it today is largely a black box deep neural Nets to a first-order approximation is basically a black box certainly from the perspective of let's say certifications at that level that we will be required for these types of safety critical systems so how do we actually bridge this gap how do we get the power of machine learning get the power of deep neural Nets and yet get the safety guarantees that we need for safety-critical robotic systems and so at Caltech we've been studying this from a variety of perspectives as you can there's no silver bullet solution and so we can dichotomize or or categorize the various approaches along what is needed and what is useful and so my personal research has sort of decomposed these area into four philosophies if you will on the top left is what I call a compositional a hierarchical blending where you have a rule-based system you have a model basis then let's say a differential equation of gravity and and so forth but we blend learning as a component into this model on the top right we flip the script it's also compositional blending but rather than blending the learning into the model we blend various models within a larger learning based framework so you could think of this as a for example a neural net with model-based components as part of the neural architecture so this is of course something that's very exciting and a lot of people are thinking about on the bottom right you see an example where we have a planner but actually coming up with a plan that's probably safe could be lets say np-hard and so how do we use learning to learn accelerated solvers to solve these kind of problems potentially in real time so this is reminiscent of learning for accelerated research which you've seen to be successful in playing games so it's a variant of that and on the bottom left you see a additive blending where we blend learning based and model-based approaches additively of course in I don't have all day so in the interest of time it's gonna give you one quick example in compositional blending we're blend learning into an existing rule-based system and do so with theoretical guarantees and so the example is the neural Lander and so here the goal is to be able to gracefully and safely land a drone touching the ground in a very agile and provably safe manner for those of you don't know many drone controllers that you buy off-the-shelf they have trouble fully landing with the drone typically it gets close to the ground and then you have to just have to cut the power and the drone sort of falls awkwardly to the ground and the reason why that's the case is because the ground acts as a boundary condition which creates what's called the ground effect and the ground effect actually disrupts the nominal aerodynamics models that people use to create drone controllers and so whenever the drone gets close to any boundary condition has trouble actually controlling itself and so let's use learning to get around that and so this is what I call compositional blending so what you see on this slide and again you know if you're not an expert in control you this may be a little bit foreign to you but just keep in mind that most of this is very standard this is a standard drone controller that is implemented in almost all commercial drones or a variant thereof and there's one thing that we added and that's F that's F sub a and that is the ground effect classically it's hard to model this ground effect and so people just ignore it it's just always zero and we're gonna use learning to learn that one component and integrate it into a conventional controller that's the basic idea and so here's an example so at caltech we flew such a drone we try to predict how the aerodynamics evolve as we fly too close to the ground and the aerodynamics are wrong and we basically do least squares regression on the residual at in a nutshell that's what we do and we fit innernet to this residual to predict the residual ground effect from flying close to the ground and what you see in the green dots are the actual ground truth measurements what you see in the orange lines are classical models that people in control theory in aerodynamics Theory sort of developed by hand so equations of motion and aerodynamics that they built by hand and you can see that there are a very poor model of actually capturing real ground effects and yet the neuro net basically learns it perfectly or within a very very small error tolerance and this is particularly useful because now we can just plug this in to our nominal control model - in order to achieve agile drone control so here's an example on the left you see our neural Lander approach on the right is a standard base line without the residual dynamics learned and you can see that the nominal controller cannot properly touch the ground and typically what people do is just cut the power in Atlanta awkwardly and yet our controller can gracefully and safely to land and we can now even get it to land at very high speeds although we don't have a cool video for that yes yet so why don't we watch this one more time and so I hope this gives you a taste of how it pi torch and deep learning can be used to integrate with modern robotics to build agile safe dynamic robotic controllers that can perform interesting maneuvers interacting with the environments close to boundary conditions this is in many ways one of the next frontiers in robotics and control and so I like to thank my collaborators there of course too many people to thank most notably the students but here are the faculty that we span electrical engineering mechanical engineering aerospace and computer science and we work together through casts and I hope that if you're interested you come check us out so thank you all for your attention [Applause]

Original Description

Learn about the research work at Caltech focused on risk aware machine learning for dynamic robotics control, and how PyTorch is being used to build deep learning systems for projects like the neural lander.
Watch on YouTube ↗ (saves to browser)
Sign in to unlock AI tutor explanation · ⚡30

Playlist

Uploads from PyTorch · PyTorch · 35 of 60

1 What is PyTorch?
What is PyTorch?
PyTorch
2 PyTorch Tutorial: A Quick Preview
PyTorch Tutorial: A Quick Preview
PyTorch
3 PyTorch Summer Hackathon 2019
PyTorch Summer Hackathon 2019
PyTorch
4 Tips and Tricks on Hacking with PyTorch: A Quick Tutorial by Brad Heintz
Tips and Tricks on Hacking with PyTorch: A Quick Tutorial by Brad Heintz
PyTorch
5 PyTorch 1.2 and PyTorch Hub: A Quick Introduction by Soumith Chintala and Ailing Zhang
PyTorch 1.2 and PyTorch Hub: A Quick Introduction by Soumith Chintala and Ailing Zhang
PyTorch
6 Torchtext 0.4 with Supervised Learning Datasets: A Quick Introduction by George Zhang
Torchtext 0.4 with Supervised Learning Datasets: A Quick Introduction by George Zhang
PyTorch
7 Torchaudio 0.3 with Kaldi Compatibility, New Transforms: A Quick Introduction by Jason Lian
Torchaudio 0.3 with Kaldi Compatibility, New Transforms: A Quick Introduction by Jason Lian
PyTorch
8 Torchvision 0.4 with Support for Video: A Quick Introduction by Francisco Massa
Torchvision 0.4 with Support for Video: A Quick Introduction by Francisco Massa
PyTorch
9 Introduction to Machine Learning for Developers at F8 2019
Introduction to Machine Learning for Developers at F8 2019
PyTorch
10 Powered by PyTorch at F8 2019
Powered by PyTorch at F8 2019
PyTorch
11 Developing and Scaling AI Experiences at Facebook with PyTorch at F8 2019
Developing and Scaling AI Experiences at Facebook with PyTorch at F8 2019
PyTorch
12 New Approaches to Image and Video Reconstruction Using Deep Learning at Facebook at F8 2019
New Approaches to Image and Video Reconstruction Using Deep Learning at Facebook at F8 2019
PyTorch
13 PyTorch Developer Conference 2018: Recap
PyTorch Developer Conference 2018: Recap
PyTorch
14 PyTorch Developer Conference 2018: Keynote & Deep Dive
PyTorch Developer Conference 2018: Keynote & Deep Dive
PyTorch
15 PyTorch Developer Conference 2018: Production & Research Sessions
PyTorch Developer Conference 2018: Production & Research Sessions
PyTorch
16 PyTorch Developer Conference 2018: Cloud & Academia Sessions
PyTorch Developer Conference 2018: Cloud & Academia Sessions
PyTorch
17 PyTorch Developer Conference 2018: Enterprise, Education, & Future of AI Panel
PyTorch Developer Conference 2018: Enterprise, Education, & Future of AI Panel
PyTorch
18 PyTorch Developer Conference 2019 | Full Livestream
PyTorch Developer Conference 2019 | Full Livestream
PyTorch
19 PyTorch Developer Conference 2019: Recap
PyTorch Developer Conference 2019: Recap
PyTorch
20 PyTorch Developer Conference Keynote - Mike Schroepfer
PyTorch Developer Conference Keynote - Mike Schroepfer
PyTorch
21 What’s new in PyTorch 1.3 - Lin Qiao
What’s new in PyTorch 1.3 - Lin Qiao
PyTorch
22 PyTorch Front-End Features: Named Tensors and Type Promotion - Gregory Chanan
PyTorch Front-End Features: Named Tensors and Type Promotion - Gregory Chanan
PyTorch
23 Research to Production: PyTorch JIT/TorchScript Updates - Michael Suo
Research to Production: PyTorch JIT/TorchScript Updates - Michael Suo
PyTorch
24 Quantization - Dmytro Dzhulgakov
Quantization - Dmytro Dzhulgakov
PyTorch
25 PyTorch ONNX Export Support - Lara Haidar, Microsoft
PyTorch ONNX Export Support - Lara Haidar, Microsoft
PyTorch
26 Apex -  Michael Carilli, NVIDIA
Apex - Michael Carilli, NVIDIA
PyTorch
27 Dataloader Design for PyTorch - Tongzhou Wang, MIT
Dataloader Design for PyTorch - Tongzhou Wang, MIT
PyTorch
28 Linear Algebra in PyTorch - Vishwak Srinivasan, CMU
Linear Algebra in PyTorch - Vishwak Srinivasan, CMU
PyTorch
29 PyTorch Mobile - David Reiss
PyTorch Mobile - David Reiss
PyTorch
30 Model Interpretability with Captum - Narine Kokhilkyan
Model Interpretability with Captum - Narine Kokhilkyan
PyTorch
31 Detectron2 - Next Gen Object Detection Library - Yuxin Wu
Detectron2 - Next Gen Object Detection Library - Yuxin Wu
PyTorch
32 Speech Extensions to Fairseq - Dmytro Okhonko
Speech Extensions to Fairseq - Dmytro Okhonko
PyTorch
33 PyTorch on Google Cloud TPUs - Google, Salesforce, Facebook
PyTorch on Google Cloud TPUs - Google, Salesforce, Facebook
PyTorch
34 PyTorch Summer Hackathon Winners - Joe Spisak, Sebastien Arnold, Tristan Deleu
PyTorch Summer Hackathon Winners - Joe Spisak, Sebastien Arnold, Tristan Deleu
PyTorch
PyTorch in Robotics - Yisong Yue, Caltech
PyTorch in Robotics - Yisong Yue, Caltech
PyTorch
36 StanfordNLP - Yuhao Zhang, Stanford
StanfordNLP - Yuhao Zhang, Stanford
PyTorch
37 Sotabench for Reproducible Research - Robert Stojnic, Papers with Code
Sotabench for Reproducible Research - Robert Stojnic, Papers with Code
PyTorch
38 Collaborative Natural Language Inference - Sasha Rush, Cornell
Collaborative Natural Language Inference - Sasha Rush, Cornell
PyTorch
39 Privacy Preserving AI - Andrew Trask, OpenMined
Privacy Preserving AI - Andrew Trask, OpenMined
PyTorch
40 CrypTen - Laurens van der Maaten
CrypTen - Laurens van der Maaten
PyTorch
41 PyTorch at Uber - Sidney Zhang, Uber
PyTorch at Uber - Sidney Zhang, Uber
PyTorch
42 PyTorch at Tesla - Andrej Karpathy, Tesla
PyTorch at Tesla - Andrej Karpathy, Tesla
PyTorch
43 PyTorch at Microsoft - Saurabh Tiwary, Microsoft
PyTorch at Microsoft - Saurabh Tiwary, Microsoft
PyTorch
44 PyTorch at Dolby Labs - Vivek Kumar, Dolby Labs
PyTorch at Dolby Labs - Vivek Kumar, Dolby Labs
PyTorch
45 PyTorch Developer Conference 2019 - Panel Discussion
PyTorch Developer Conference 2019 - Panel Discussion
PyTorch
46 Using deep learning and PyTorch to power next gen aircraft at Caltech
Using deep learning and PyTorch to power next gen aircraft at Caltech
PyTorch
47 Named Tensors, Model Quantization, and the Latest PyTorch Features - Part 1
Named Tensors, Model Quantization, and the Latest PyTorch Features - Part 1
PyTorch
48 TorchScript and PyTorch JIT | Deep Dive
TorchScript and PyTorch JIT | Deep Dive
PyTorch
49 Announcing the PyTorch Global Summer Hackathon 2020
Announcing the PyTorch Global Summer Hackathon 2020
PyTorch
50 Opening Up the Black Box: Model Understanding with Captum and PyTorch
Opening Up the Black Box: Model Understanding with Captum and PyTorch
PyTorch
51 PyTorch Mobile Runtime for Android
PyTorch Mobile Runtime for Android
PyTorch
52 Torchvision in 5 minutes
Torchvision in 5 minutes
PyTorch
53 3D Deep Learning with PyTorch3D
3D Deep Learning with PyTorch3D
PyTorch
54 What is Torchtext?
What is Torchtext?
PyTorch
55 TorchAudio: A Quick Intro
TorchAudio: A Quick Intro
PyTorch
56 PyTorch Mobile Runtime for iOS
PyTorch Mobile Runtime for iOS
PyTorch
57 PySlowFast: Deep learning with Video
PySlowFast: Deep learning with Video
PyTorch
58 PyTorch Pruning | How it's Made by Michela Paganini
PyTorch Pruning | How it's Made by Michela Paganini
PyTorch
59 Measuring Fairness in Machine Learning Systems
Measuring Fairness in Machine Learning Systems
PyTorch
60 PyTorch for Hackathons
PyTorch for Hackathons
PyTorch

This video discusses the use of PyTorch in robotics for risk-aware machine learning and dynamic control, with applications such as the Neural Lander project. The research work at Caltech focuses on building deep learning systems for robotics control using PyTorch, incorporating techniques like compositional blending and residual aerodynamics modeling. By watching this video, viewers can learn how to apply PyTorch to robotics control problems and implement risk-aware machine learning algorithms.

Key Takeaways
  1. Use PyTorch to build deep learning systems for robotics control
  2. Implement compositional blending of conventional controllers with learned components
  3. Model residual aerodynamics using least squares regression
  4. Train neural networks using supervised learning techniques
  5. Integrate machine learning models with robotics systems
  6. Apply mathematical concepts to machine learning problems
  7. Design and implement machine learning pipelines for robotics control
💡 The use of PyTorch for risk-aware machine learning in dynamic robotics control enables agile and safe robot behavior in complex environments, with applications such as the Neural Lander project.

Related AI Lessons

The Python Dictionary Trick That Makes Interviewers Smile
Learn the Python dictionary trick that impresses interviewers and improves your coding skills
Dev.to · Ameer Abdullah
I Compared 50 Python Courses. Here Are My Top 5 Recommendations for 2026
Discover the top 5 Python courses for 2026, curated from a comparison of 50 courses, to enhance your programming skills and career prospects
Medium · Python
Machine learning for beginners #5
Learn the basics of machine learning through the analysis of self-driving cars and understand how ML is applied in real-world scenarios
Medium · AI
Beyond the Elephant: On Manifolds, Projections, and the Hidden Assumptions of Neural Geometry
Learn how neural geometry relies on manifolds, projections, and hidden assumptions to understand complex data, and why it matters for AI development
Medium · AI
Up next
Is Python Dead in 2026?| Truth About Python in AI Era | 90 Days Roadmap @FameWorldEducationalHub
FAME WORLD EDUCATIONAL HUB
Watch →