About the NOAA AI Workshop Tutorial Sessions
The Tutorial sessions at the NOAA Artificial Intelligence
Workshop will provide a hands-on experience
with Artificial Intelligence and its applications.
Registration will open on a rolling basis as tutorial details become available.
For more information, please contact: email@example.com
- Tutorial on Video and Image Analytics for Marine Environments (VIAME), a Do-It-Yourself AI Toolkit
- Matthew Dawkins, Anthony Hoogs
Recent developments in the collection of large-volume optical
survey data by autonomous underwater vehicles (AUVs), stationary camera
arrays, towed vehicles, satellites, and other platforms have made it
possible for marine scientists to generate size-structured abundance
estimates for different species of marine organisms and other objects
of interest. However, the immense volume of data collected by such
survey methods quickly exceeds manual processing capacity and creates
a strong need for automatic image analysis. To address these challenges, we have created an open-source,
permissively-licensed toolkit, Video and Image Analytics for Marine
Environments (VIAME), which provides a suite of AI capabilities
that are customizable by end-users, without any programming, to a
wide variety of image and video analytics.
In this session we will
first introduce VIAME and its capabilities, followed by a hands-on
software tutorial in which participants will use VIAME to solve
analytics problems on their own data. Topics to be covered include video annotation, object detection,
image-level classification, object tracking, object detector
customization and generation, image registration, size measurement,
depth-map generation, and detector evaluation. Though not required,
for the hands-on portion of the tutorial it is recommended that
participants bring a laptop with the software pre-downloaded
for instructions) and samples of
their own image or video data exhibiting an information extraction task.
- Technology requirements:
Minimal background needed, if possible participants
should use their own data with the software pre-installed.
The tutorial will cover both desktop and web versions of the
software. The desktop version requires Windows or Linux, the web
version requires an internet connection and a browser.
Software Installation Guidance:
There are two versions of the VIAME application: Web and Desktop.
A browser is all that is needed to run the Web application. Users can register for free and should create their own usernames for the Web application.
For the Desktop application, please download the prepared binaries for your specific operating system available on the VIAME GitHub website. The binaries will be downloaded as a .zip file. After extracting all binaries in an installation directory, you should be able to run the GUI. To test whether you have installed the software correctly, try to run:
It will take a few minutes to start up and run the first time you do this.
For a complete list of Desktop software installation instructions, see the
User's Quick-Start Guide on the VIAME GitHub website.
Important Notes on Desktop binaries:
1. For the hands-on portion of this tutorial related to the Desktop application, it is recommended that you install the Desktop binaries on a non-government issued computer. Government-issued computers will require the modification of specific IT permissions subject to your own branch/agency. If you only have access to a government-issued computer and wish to participate in the Desktop application portion of this tutorial, we recommend that you submit a ticket to your IT department as soon as possible to request help with the software installation.
2. Desktop application binaries are not available for Mac. However, if you only have access to a Mac, you can still participate in the hands-on portion of this tutorial related to the Web application, which should provide a near-complete experience.
- Session9_Tutorial_VIAME_20200922.mp4, (MP4, 178.54 MB)
Learning the Fundamentals of Machine Learning through Forecasting El Niño
- Ankur Mahesh (ClimateAI), Karthik Kashinath (LBL)
- ClimateAI & LBL
El Niño is a cycle of warm and cold temperatures in the equatorial
Pacific Ocean. In this tutorial, we will train machine learning algorithms to forecast
El Niño at lead times of 1-6 months. We will explore the following machine
- How should data be split into a train set and test set to ensure rigorous
evaluation of the machine learning model?
- Does older data serve as a good training set?
- Do standard preprocessing techniques in computer science (e.g., normalization)
work well with climate datasets?
- How does one use machine learning to forecast El Niño?
- How does the performance of different machine learning algorithms
compare to one another?
This tutorial is delivered in the form of a Colab notebook which
demonstrates the above principles through "fill-in-the-blank" code exercises,
visualization questions, and open-ended coding assignments. The notebook includes
step-by-step explanations of machine learning concepts and custom scaffold code
to assist with data downloading, loading, and formatting.
- Technology requirements:
Attendees should be familiar with Python, matplotlib, netCDF or xarray,
and pandas. Additionally, we recommend that attendees be familiar with
fundamentals of neural networks, linear regression, and train/test splits.
In this tutorial, we assume that attendees are familiar with the core
concepts of these machine learning algorithms, and we focus on applying
these algorithms to climate science.
The tutorial requires each person to have access to a fast internet
connection. All code will be run on Google Colab, a cloud-based system
for running Jupyter notebooks. Ahead of time, please confirm that you
can run the following set-up code on Google Colab:
- Navigate to this page;
- Press "Open in Colab" at the top of the notebook;
- In the Colab window, select "Edit > Notebook settings > Hardware Accelerator > GPU;
- Run the code cells, which set up the programming environment and
load the necessary data;
- If you have any issues with these two cells, please email
with the subject line 'NOAA AI Workshop Setup'.
- Please confirm ahead of time that your Google Colab environment
is functioning correctly. Should you experience any issues, please
see Technical Requirements item #5.
A Practical Introduction to Deep Learning for the Earth System Sciences, using PyTorch
- David Hall
In this tutorial, we will learn how to build deep
learning applications from the ground up using PyTorch.
We will begin simply and build toward full-fledged solutions
for detecting tropical cyclones and other strong storms in
model data and satellite observations. The primary goal of
this tutorial is to familiarize you with each of the concepts
and tools needed to begin building your own deep learning
applications. Previous experience with Python and Numpy are
desired, but not required.
- Technology requirements:
Familiarity with Python and Numpy are desired, but not required.
The tutorial will include both seminar and hands-on
activities. All hands-on activies will run on Google Colab.
Therefore, this tutorial requires each person to have an
active Google account and access to a web-browser to use
Google Colab. (Chrome browser is preferred for Mac users.)
Users do not need to download or install anything
prior to the tutorial session.
- Registration limited to 200 participants
Traditional Machine Learning Pipeline Applied to NWP Model Data
- Amanda Burke
- University of Oklahoma
The rapid introduction of machine learning models within the
atmospheric sciences has benefitted multiple sub-fields, such as
model parameterization, predictive modeling, ensemble post-processing
and many others. As computing capabilities continue to grow,
machine learning will likely become even more important within
the atmospheric sciences. This tutorial provides an overview
of the machine learning pipeline, covering necessary fundamentals
for individuals interested in exploring traditional machine learning
models. Using NWP model data, attendees will learn about and apply
different supervised learning principles using python. Fundamental
applications include data pre-processing, dataset partitioning,
feature selection, as well as model tuning, training, and
evaluating. This hands-on tutorial will briefly explore linear
models and decision trees, with resources to apply the fundamental
concepts to a range of other machine learning models.
- Technology requirements:
Prior knowledge of Python (basic to intermediate experience)
is a must.
This tutorial is comprised of hands-on exercises. All
exercises will run on Google Colab. Therefore, this
tutorial requires each participant to have an active Google
account and access to a web-browser to use Google Colab.
Users do not need to download or install anything prior
to the tutorial session.
- Important Note:
- Please note that the first 30 participants to
register will be accepted into the tutorial session
and will receive remote participation information in
a separate email closer to the tutorial. All other
registrants will be put on a waiting list. If you
register and cannot attend, please email the organizers
as soon as possible to free your spot for another person.
- Registration limited to 30 participants