This article covers how to get started with Machine Learning using a Jetson Nano.
Step 1. Take a free course
NVIDIA provides free online machine learning courses as part of their Deep Learning Institute.
If you are new to Machine Learning and own a Jetson Nano, this is a good course to start with:
- Getting Started With AI On Jetson Nano (courses.nvidia.com)
I like this course because NVIDIA provides a disk image that you can flash to a micro-SD card. You don’t have to deal with messy installs.
The other reason I like this course is because it uses Jupyter Notebooks to run the examples in Python. Jupyter Notebooks and Python are the preferred way to work with the latest machine learning frameworks, such as TensorFlow and PyTorch.
What the course teaches
The NVIDIA course teaches you how to use a camera to train a neural network to recognize features. For example you will train neural networks to recognize the following live via a camera:
- thumbs up vs thumbs down
- various facial expressions
Because the course uses Jupyter Notebooks all training is done in the browser. You just click a button on the screen to take a series of images, then run those images through training. Then watch the UI to see the computer’s best guess. Nothing could be simpler.
There is a lot of information and theory behind what makes the tutorials work, some of which the course points to. But you won’t get bogged down or overwhelmed with too much infomation starting out.
Here is just a small list of things you will learn about while taking the course:
- Jupyter Notebooks
- Deep Learning Frameworks (TensorFlow, PyTorch)
- Image Classification using a camera
- Inference from live data
- Convolutional Neural Networks (CNNs)
- Artificial Neural Networks (ANNs)
- Deep Learning Models
To take the course above you will need the following:
- Jetson Nano Development Kit
- Micro-SD card with adapter
- Power Supply
- Micro-USB cable
- To access the course you will need the cable to tether your computer to the Jetson Nano
- This is convenient for new students who haven’t installed a WiFi adapter yet
- A camera hooked up to the Jetson Nano (see the course for camera model recommendations)
- USB Camera
- Raspberry Pi Camera (yes, you can plug a PiCamera into a Jetson Nano)
If you need any of the parts above, see my Jetson Resource Guide.
For more information on power supplies, see my article:
Step 2. Build a JetBot
There are a number of robot projects out there that use the Jetson Nano. I would suggest that you start with JetBot. It’s the open source project created and managed by NVIDIA.
If you own a 3D printer you can print out your own robot body. Or you can buy a kit from one of the vendors listed here:
Just like with the AI course, the JetBot uses Jupyter and a camera to train and recognize images.
One example shows how to train the robot to detect a live image which means it’s path is blocked. Upon recognition of a blocked path, a function is called to turn the robot in hopes that it can continue.
Step 3. Read up on the subject
If you are new to Machine Learning here are some books that I recommend:
- Deep Learning (MIT Press Essential Knowledge series)
- This book gives a high level view of Deep Learning and Machine Learning
- It’s great for managers and new students of the technology
- Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems
- Deep Learning with Python
- Deep Learning (Adaptive Computation and Machine Learning series)
Step 4. Watch some videos!
- But what is a Neural Network? (3 Blue 1 Brown)
- NVIDIA JetBot: Jetson Nano Vision-Controlled AI Robot (Explaining Computers)
- AlphaGo - The Movie (DeepMind)
Step 5. Take more courses!
Udemy affiliate links
I only recommend courses that I’ve taken or am currently taking. Unless otherwise specified I have no association with the course author(s).
- Deep Learning A-Z: Hands-On Artificial Neural Networks
- Data Science A-Z: Real-Life Data Science Exercises Included
- Python A-Z: Python For Data Science With Real Exercises!
In this article you learned how to get started with Machine Learning using a Jetson Nano and learned about the following:
- NVIDIA’s free course for getting started with Machine Learning on a Jetson Nano
- A project for building a neural network based robot using a Jetson Nano
- Books to read to learn more about developing neural networks using the latest frameworks
- Where to find related videos
- Where to find more courses related to Python, Deep Learning, Machine Learning and Data Science
- Jetson Nano Power Supply (Barrel vs. Micro USB)
- Jetson Resource Guide
- Jetson Xavier NX Jupyter Setup (Docker)
- In this article I provide instructions for owners of a Jetson Xavier NX
- What’s the Difference Between Artificial Intelligence, Machine Learning and Deep Learning?
- Convolutional Neural Network (CNN)
- Artificial Neural Network
- Jetson Nano Brings AI Computing to Everyone
- NVIDIA Isaac SDK - signup and login required
About the Author
Mitch Allen has worked for software companies in Silicon Valley, along Boston’s Route 128 and in New York’s Silicon Alley. He currently works for a robotics company in Massachusetts.