Requirements
-
You should have some basic knowledge of Android App Development using Java or Kotlin
Tired of traditional Android App Development courses? Now its time to learn something new and trending for Android. Machine Learning is at its peak and Android App Development is also in demand than what is better than learning both?
This course is designed for Android developers who want to learn Machine Learning and deploy machine learning models in their android apps using TensorFlow Lite. If you have very basic knowledge of Android App development and want to learn Machine Learning use in Android Applications this course is for you. This course will get you started in building your FIRST deep learning model and Android Application using both java and Kotlin Tensorflow Lite, and Android studio. We will learn about machine learning and deep learning and then train your first model and deploy it in android application using Android studio. All the materials for this course are FREE.
You can implement Application build during the apps using both java and kotlin. Separate Lectures are provided for both of these languages.
You don’t need any prior knowledge of Machine Learning to start this course. We will start by learning
-
Python Programming Language
-
Data Science Libraries
-
Basics of Machine Learning and Deep Learning
-
Tensorflow and Tensorflow Lite
Then we will train our first Machine Learning model and Develop Android Application for it using Android Studio.
The course includes examples from basic to advance
-
A very simple example
-
Example using saved model
-
Example using concrete function
-
Predicting fuel efficiency of automobiles (Regression Example)
-
Recognizing handwritten digits (Classification example)
-
Cats and Dogs classification
-
Rock Paper and Scissors Problem
-
Flowers Recognition Example
-
Stones Recognition Example
-
Fruits Recognition Example
-
Predicting Fitness of a person Practice Activity
-
Human and Horse Practice Activity
For each of these examples, we will firstly train Machine Learning model then build Android Application
We will start by learning about the basics of the Python programming language. Then we will learn about some famous Machine Learning libraries like Numpy, Matplotlib, and Pandas. After that, we will learn about Machine learning and its types. Then we look at Supervised learning in detail. We will try to understand classification and regression through examples. After we will start Deep learning. We start by looking and the basic structure of neural networks. Then we will understand the working of neural networks through an example.
Then we will learn about the Tensorflow 2.0 library and how we can use it to train Machine Learning models. After that, we will look at Tensorflow lite how we can convert our Machine Learning models to tflite format which will be used inside Android Applications. There are three ways through which you can get a tflite file
-
From Keras Model
-
From Concrete Function
-
From Saved Model
We will cover all these three methods in this course.
We will learn about Feed Forwarding, Back Propagation, and activation functions through a practical example. We also look at cost function, optimizer, learning rate, Overfitting, and Dropout. We will also learn about data preprocessing techniques like One hot encoding and Data normalization.
Next, we implement a neural network using Google’s new TensorFlow library.
You should take this course If you are an Android Developer and want to learn the basics of machine learning(Deep Learning) and deploy ML models in your Android applications using Tensorflow lite and Android Studio.
This course provides you with many practical examples so that you can really see how you can train and deploy machine learning model in android. We will use Android Studio for developing Android Application for models we trained.
Another section at the end of the course shows you how you can use datasets available in different formats for a number of practical purposes.
After getting your feet wet with the fundamentals, I provide a brief overview of how you can add your machine learning model in google’s existing android machine learning project templates.
Suggested Prerequisites:
-
Basic Knowledge of Android App Development
TIPS (for getting through the course):
-
Write code yourself, don’t just sit there and look at my code.
Who this course is for:
-
Beginner Android Developers want to make their Android applications smart
-
Android Developers want to use Machine Learning in their Android Applications
-
Developers interested in the practical implementation of Machine Learning and computer vision
-
Students interested in machine learning – you’ll get all the tidbits you need to add machine learning models in android using Android studio
-
Professionals who want to use machine learning models in Android Application.
-
Machine Learning experts want to deploy their models in Android using Android studio and Tensorflow lite
Introduction
Setting up the environment
After completing this lecture you will be able to download and install Anaconda IDE. Anaconda contain a number of software to work with python.
In this lecture we install Tensorflow in anaconda using anaconda prompt.We will execute command that will download Tensorflow and install it.Than we will look at Spyder that is contained inside anaconda and we write our code inside spyder.
Learning Python
Data Science Libraries
Machine Learning and Deep Learning
In this lecture will we look at machine learning and its types. Than we will look at classification and regression.We will try to understand difference between classification and regression problems trough examples.
In this lecture we will look at deep learning. We will look at basic structure of neural networks.
In this lecture we will understand working of neural network through an example.We will see how neural network predict labels and how weights are updated while training.
In this lecture we will look at different concepts of machine learning and deep learning.
Tensorflow
Training First model and creating Android Application
In this lecture we will train our first deep learning model.Firstly we will create out own dataset that contain certain pattern. You will see that how our model will pattern in our data.Than we will save our model in a tflite format which will be used in android application.
In this lecture we will create our first android application.We will add our model inside asset folder than we will use this model to predict label.
Concrete function and Saved model examples
Predicting Fuel Efficiency of automobiles
In this lecture we will work on a real world regression problem .We will learn how to download dataset using from internet and than how to preprocess data for model training.
In this lecture we will look at one of important step of data preprocessing known as one hot encoding.You will learn that how to handle categorical data while model training.
In this lecture you will learn that how can you normalize you data before passing that data for model training.Than we will create our model that contain neural network.Than we will train our model on that data.
In this lecture we will create android application for the model we trained in the previous lecture.We will add our model in android studio project.
In this lecture we complete coding of application we started in the previous lecture. You will learn how to pass input to model and get output from that model in java.
Recognizing Handwritten digits
In this lecture you will learn that how you can use keras dataset for model training.We will use keras digit recognition data set.So we will load this data set using pandas.
In this lecture you will learn how to plot images using matplotlib as we are working with images in this classification example.Then we will normalize our dataset that contain images of size 28*28 pixels.
In this lecture you will learn that how you can add dropout while creating your learning model.We will create our model and train it on our training dataset.
In this lecture we will evaluate the model we trained in the previous lecture.After testing our model we will save our model in a tflite format.
In this lecture you will learn about finger paint view we will be using in our application to draw and capture and written digits.
In this lecture we will look at the code present in Result class.This class is responsible for extracting our output.
In this lecture we will display result that model predicted in the respected textviews. We use Result class for that purpose.
In this lecture we will test application we created. We will draw different digits with our finger in finger paint view and see what our model thinks that these digits are.
Recognition Section
Cats and Dogs Classification
In this lecture, we will train machine learning model on cats and dogs dataset. We will use transfer learning and retrain ImageNetV2 model on our dataset.
In this lecture, we will use cats and dogs model that we trained in the previous lecture inside Android Application.
Rock Paper and Scissors Problem
Practice Activity 1 Predict Fitness of a Person
This lecture contains introduction of practice section and structure of practice activity.For each practice activity initial code will be provided to you and your task is to complete the code and get required accuracy of the model
Practice Activity 2 Human and Horses
Bonus
In this lecture we will look at kaggle.com and how we can download datasets from it.
In this lecture we will write code to load images we downloaded in previous lecture.We will see how we can work with real world images dataset
In this lecture we will see how we can work with datasets available in format.