Book Image

Mobile Artificial Intelligence Projects

By : Karthikeyan NG, Arun Padmanabhan, Matt R. Cole
Book Image

Mobile Artificial Intelligence Projects

By: Karthikeyan NG, Arun Padmanabhan, Matt R. Cole

Overview of this book

We’re witnessing a revolution in Artificial Intelligence, thanks to breakthroughs in deep learning. Mobile Artificial Intelligence Projects empowers you to take part in this revolution by applying Artificial Intelligence (AI) techniques to design applications for natural language processing (NLP), robotics, and computer vision. This book teaches you to harness the power of AI in mobile applications along with learning the core functions of NLP, neural networks, deep learning, and mobile vision. It features a range of projects, covering tasks such as real-estate price prediction, recognizing hand-written digits, predicting car damage, and sentiment analysis. You will learn to utilize NLP and machine learning algorithms to make applications more predictive, proactive, and capable of making autonomous decisions with less human input. In the concluding chapters, you will work with popular libraries, such as TensorFlow Lite, CoreML, and PyTorch across Android and iOS platforms. By the end of this book, you will have developed exciting and more intuitive mobile applications that deliver a customized and more personalized experience to users.
Table of Contents (12 chapters)
PyTorch Experiments on NLP and RNN
TensorFlow on Mobile with Speech-to-Text with the WaveNet Model
Implementing GANs to Recognize Handwritten Digits

Transfer learning basics

To implement the car damage prediction system, we are going to build our own TensorFlow-based machine learning (ML) model for the vehicle datasets. Millions of parameters are needed with modern recognition models. We need a lot of time and data to train a new model from scratch, as well as hundreds of Graphical Processing Units (GPUs) or Tensor Processing Units (TPUs) that run for hours.

Transfer learning makes this task easier by taking an existing model that is already trained and reusing it on a new model. In our example, we will use the feature extraction capabilities from the MobileNet model and train our own classifiers on top of it. Even if we don't get 100% accuracy, this works best in a lot of cases, especially on a mobile phone where we don't have heavy resources. We can easily train this model on a typical laptop for a few hours, even...