Image Classification Overview
At the end of this lab, you will fully understand how to train and deploy an end-to-end image classification model using NVIDIA AI Enterprise frameworks and applications on Openshift which is an enterprise Kubernetes distribution. Openshift is to Kubernetes as Ubuntu is to Linux.
Applications used in this lab:
Triton Inference Server
Triton Inference Server Client SDK
What takes place in the lab:
Preprocessing images with TensorFlow API
Transfer learning/fine-tuning a model pre-trained on Imagenet data.
Deploying the model on the Triton Inference server
Writing a client application to send inference requests to the server.
Image classification is a process of identifying and grouping images into categories or classes using computer vision techniques. Over the years, these techniques have improved, and now deep learning algorithms are the most accurate methods for this task.
Training a large neural network from scratch is computationally intensive and usually requires quite a bit of hand-holding, from weight initialization to tuning hyperparameters like learning rate, etc. Transfer learning solves this issue. Here, we use a neural network that is already trained on a large amount of data and so is generalized enough to be fine-tuned to produce good results on specific use cases.