Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Title Page
Copyright and Credits
Machine Learning for Mobile
Humble Bundle
About Packt
Why subscribe?
Packt.com
Contributors
About the authors
About the reviewer
Packt is searching for authors like you
Preface
Who this book is for
What this book covers
To get the most out of this book
Download the example code files
Download the color images
Conventions used
Get in touch
Reviews
Introduction to Machine Learning on Mobile
Definition of machine learning
When is it appropriate to go for machine learning systems?
The machine learning process
Defining the machine learning problem
Preparing the data
Building the model
Selecting the right machine learning algorithm
Training the machine learning model
Testing the model
Evaluation of the model
Making predictions/Deploying in the field
Types of learning
Supervised learning
Unsupervised learning
Semi-supervised learning
Reinforcement learning
Challenges in machine learning
Why use machine learning on mobile devices?
Ways to implement machine learning in mobile applications
Utilizing machine learning service providers for a machine learning model
Ways to train the machine learning model
On a desktop (training in the cloud)
On a device
Ways to carry out the inference – making predictions
Inference on a server
Inference on a device
Popular mobile machine learning tools and SDKs
Skills needed to implement on-device machine learning
Summary
Supervised and Unsupervised Learning Algorithms
Introduction to supervised learning algorithms
Deep dive into supervised learning algorithms
Naive Bayes
Decision trees
Linear regression
Logistic regression
Support vector machines
Random forest
Introduction to unsupervised learning algorithms
Deep dive into unsupervised learning algorithms
Clustering algorithms
Clustering methods
Hierarchical agglomerative clustering methods
K-means clustering
Association rule learning algorithm
Summary
References
Random Forest on iOS
Introduction to algorithms
Decision tree
Advantages of the decision tree algorithm
Disadvantages of decision trees
Advantages of decision trees
Random forests
Solving the problem using random forest in Core ML
Dataset
Naming the dataset
Technical requirements
Creating the model file using scikit-learn
Converting the scikit model to the Core ML model
Creating an iOS mobile application using the Core ML model
Summary
Further reading
TensorFlow Mobile in Android
An introduction to TensorFlow
TensorFlow Lite components
Model-file format
Interpreter
Ops/Kernel
Interface to hardware acceleration
The architecture of a mobile machine learning application
Understanding the model concepts
Writing the mobile application using the TensorFlow model
Writing our first program
Creating and Saving the TF model
Freezing the graph
Optimizing the model file
Creating the Android app
Copying the TF Model
Creating an activity
Summary
Regression Using Core ML in iOS
Introduction to regression
Linear regression
Dataset
Dataset naming
Understanding the basics of Core ML
Solving the problem using regression in Core ML
Technical requirements
How to create the model file using scikit-learn
Running and testing the model
Importing the model into the iOS project
Writing the iOS application
Running the iOS application
Further reading
Summary
The ML Kit SDK
Understanding ML Kit
ML Kit APIs
Text recognition
Face detection
Barcode scanning
Image labeling
Landmark recognition
Custom model inference
Creating a text recognition app using Firebase on-device APIs
Creating a text recognition app using Firebase on-cloud APIs
Face detection using ML Kit
Face detection concepts
Sample solution for face detection using ML Kit
Running the app
Summary
Spam Message Detection
Understanding NLP
Introducing NLP
Text-preprocessing techniques
Removing noise
Normalization
Standardization
Feature engineering
Entity extraction
Topic modeling
Bag-of-words model
Statistical Engineering
TF–IDF
TF
Inverse Document Frequency (IDF)
TF-IDF
Classifying/clustering the text
Understanding linear SVM algorithm
Solving the problem using linear SVM in Core ML
About the data
Technical requirements
Creating the Model file using Scikit Learn
Converting the scikit-learn model into the Core ML model
Writing the iOS application
Summary
Fritz
Introduction to Fritz
Prebuilt ML models
Ability to use custom models
Model management
Hand-on samples using Fritz
Using the existing TensorFlow for mobile model in an Android application using Fritz
Registering with Fritz
Uploading the model file (.pb or .tflite)
Setting up Android and registering the app
Adding Fritz's TFMobile library
Adding dependencies to the project
Registering the FritzJob service in your Android Manifest
Replacing the TensorFlowInferenceInterface class with Fritz Interpreter
Building and running the application
Deploying a new version of your model
Creating an android application using fritz pre-built models
Adding dependencies to the project
Registering the Fritz JobService in your Android Manifest
Creating the app layout and components
Coding the application
Using the existing Core ML model in an iOS application using Fritz
Registering with Fritz
Creating a new project in Fritz
Uploading the model file (.pb or .tflite)
Creating an Xcode project
Installing Fritz dependencies
Adding code
Building and running the iOS mobile application
Summary
Neural Networks on Mobile
Introduction to neural networks
Communication steps of a neuron
The activation function
Arrangement of neurons
Types of neural networks
Image recognition solution
Creating a TensorFlow image recognition model
What does TensorFlow do?
Retraining the model
About bottlenecks
Converting the TensorFlow model into the Core ML model
Writing the iOS mobile application
Handwritten digit recognition solution
Introduction to Keras
Installing Keras
Solving the problem
Defining the problem statement
Problem solution
Preparing the data
Defining the model's architecture
Compiling and fitting the model
Converting the Keras model into the Core ML model
Creating the iOS mobile application
Summary
Mobile Application Using Google Vision
Features of Google Cloud Vision
Sample mobile application using Google Cloud Vision
How does label detection work?
Prerequisites
Preparations
Understanding the Application
Output
Summary
The Future of ML on Mobile Applications
Key ML mobile applications
Facebook
Google Maps
Snapchat
Tinder
Netflix
Oval Money
ImprompDo
Dango
Carat
Uber
GBoard
Key innovation areas
Personalization applications
Healthcare
Targeted promotions and marketing
Visual and audio recognition
E-commerce
Finance management
Gaming and entertainment
Enterprise apps
Real estate
Agriculture
Energy
Mobile security
Opportunities for stakeholders
Hardware manufacturers
Mobile operating system vendors
Third-party mobile ML SDK providers
ML mobile application developers
Summary
Question and Answers
FAQs
Data science
What is data science?
Where is data science used?
What is big data?
What is data mining?
Relationship between data science and big data
What are artificial neural networks?
What is AI?
How are data science, AI, and machine learning interrelated?
Machine learning framework
Caffe2
scikit-learn
TensorFlow
Core ML
Mobile machine learning project implementation
What are the high-level important items to be considered before starting the project?
What are the roles and skills required to implement a mobile machine learning project?
What should you focus on when testing the mobile machine learning project?
What is the help that the domain expert will provide to the machine learning project?
What are the common pitfalls in machine learning projects?
Installation
Python
Python dependencies
Xcode
References
Other Books You May Enjoy
Leave a review - let other readers know what you think
← Prev
Back
Next →
← Prev
Back
Next →