Program Introduction

Leverage a pre-trained model for computer vision inferencing. You will convert pre-trained models into the framework agnostic intermediate representation with the Model Optimizer, and perform efficient inference on deep learning models through the hardware-agnostic Inference Engine. Finally, you will deploy an app on the edge, including sending information through MQTT, and analyze model performance and use cases

Introduction to AI at the Edge

Leveraging Pre-Trained Models

The Model Optimizer

The Inference Engine

Deploying an Edge App

Project Deploy a People Counter App at the Edge

Introduction to Hardware at the Edge

Grow your expertise in choosing the right hardware. Identify key hardware specifications of various hardware types (CPU, VPU, FPGA, and Integrated GPU). Utilize the Intel® DevCloud for the Edge to test model performance and deploy power-efficient deep neural network inference on on the various hardware types. Finally, you will distribute workload on available compute devices in order to improve model performance.

CPUs and Integrated GPUs

VPUs

FPGAs

Project Smart Queuing System

Introduction to Software Optimization

Learn how to optimize your model and application code to reduce inference time when running your model at the edge. Use different software optimization techniques to improve the inference time of your model. Calculate how computationally expensive your model is. Use the DL Workbench to optimize your model and benchmark the performance of your model. Use a VTune amplifier to find and fix hotspots in your application code. Finally, package your application code and data so that it can be easily deployed to multiple devices.

Reducing Model Operations

Reducing Model Size

Other Optimization Tools and Techniques

Project Computer Pointer Controller

TensoRT – Nvidia

Learn about TensorRT, developed by NVIDIA, an advanced software development kit (SDK) designed for high-speed deep learning inference.

Onnx, TensorRT, Docker Overview

NVIDIA Drivers

Nvidia Hardware and Software, Cuda programming API Levels

Docker Installation and Configuration

Installation of Docker Cuda Toolkit & Setup DockerFile with required packages

TensorRT & Onnx AI frameworks

Resnet 18 with ONNX-TENSORRT

Resnet 18 TensorRT Inference

YOLOV4 ONNX DNN

YOLOV4 ONNX DNN Video

YOLOv5 Onnx Inference – OpenCV

Yolov5 TensorRT Inference on Images

02. What is AI at the Edge

What is AI at the Edge? Summary

The edge means local (or near local) processing, as opposed to just anywhere in the cloud. This can be an actual local device like a smart refrigerator, or servers located as close as possible to the source (i.e. servers located in a nearby area instead of on the other side of the world).

The edge can be used where low latency is necessary, or where the network itself may not always be available. The use of it can come from a desire for real-time decision-making in certain applications.

Many applications with the cloud get data locally, send the data to the cloud, process it, and send it back. The edge means there’s no need to send to the cloud; it can often be more secure (depending on edge device security) and have less impact on a network. Edge AI algorithms can still be trained in the cloud, but get run at the edge.