Machine Learning for iOS Developers

Book description

Harness the power of Apple iOS machine learning (ML) capabilities and learn the concepts and techniques necessary to be a successful Apple iOS machine learning practitioner!

Machine earning (ML) is the science of getting computers to act without being explicitly programmed. A branch of Artificial Intelligence (AI), machine learning techniques offer ways to identify trends, forecast behavior, and make recommendations. The Apple iOS Software Development Kit (SDK) allows developers to integrate ML services, such as speech recognition and language translation, into mobile devices, most of which can be used in multi-cloud settings. Focusing on Apple’s ML services, Machine Learning for iOS Developers is an up-to-date introduction to the field, instructing readers to implement machine learning in iOS applications.

Assuming no prior experience with machine learning, this reader-friendly guide offers expert instruction and practical examples of ML integration in iOS. Organized into two sections, the book’s clearly-written chapters first cover fundamental ML concepts, the different types of ML systems, their practical uses, and the potential challenges of ML solutions. The second section teaches readers to use models—both pre-trained and user-built—with Apple’s CoreML framework. Source code examples are provided for readers to download and use in their own projects. This book helps readers:

  • Understand the theoretical concepts and practical applications of machine learning used in predictive data analytics
  • Build, deploy, and maintain ML systems for tasks such as model validation, optimization, scalability, and real-time streaming
  • Develop skills in data acquisition and modeling, classification, and regression.
  • Compare traditional vs. ML approaches, and machine learning on handsets vs. machine learning as a service (MLaaS)
  • Implement decision tree based models, an instance-based machine learning system, and integrate Scikit-learn & Keras models with CoreML

Machine Learning for iOS Developers is a must-have resource software engineers and mobile solutions architects wishing to learn ML concepts and implement machine learning on iOS Apps.

Table of contents

  1. Cover
  2. Introduction
    1. What Does This Book Cover?
    2. Additional Resources
    3. Reader Support for This Book
  3. Part 1: Fundamentals of Machine Learning
    1. Chapter 1: Introduction to Machine Learning
      1. What Is Machine Learning?
      2. Types of Machine Learning Systems
      3. Common Machine Learning Algorithms
      4. Sources of Machine Learning Datasets
      5. Summary
    2. Chapter 2: The Machine-Learning Approach
      1. The Traditional Rule-Based Approach
      2. A Machine-Learning System
      3. The Machine-Learning Process
      4. Summary
    3. Chapter 3: Data Exploration and Preprocessing
      1. Data Preprocessing Techniques
      2. Selecting Training Features
      3. Summary
    4. Chapter 4: Implementing Machine Learning on Mobile Apps
      1. Device-Based vs. Server-Based Approaches
      2. Apple's Machine Learning Frameworks and Tools
      3. Third-Party Machine-Learning Frameworks and Tools
      4. Summary
  4. Part 2: Machine Learning with CoreML, CreateML, and TuriCreate
    1. Chapter 5: Object Detection Using Pre-trained Models
      1. What Is Object Detection?
      2. A Brief Introduction to Artificial Neural Networks
      3. Downloading the ResNet50 Model
      4. Creating the iOS Project
      5. Summary
    2. Chapter 6: Creating an Image Classifier with the Create ML App
      1. Introduction to the Create ML App
      2. Creating the Image Classification Model with the Create ML App
      3. Creating the iOS Project
      4. Summary
    3. Chapter 7: Creating a Tabular Classifier with Create ML
      1. Preparing the Dataset for the Create ML App
      2. Creating the Tabular Classification Model with the Create ML App
      3. Creating the iOS Project
      4. Summary
    4. Chapter 8: Creating a Decision Tree Classifier
      1. Decision Tree Recap
      2. Examining the Dataset
      3. Creating Training and Test Datasets
      4. Creating the Decision Tree Classification Model with Scikit-learn
      5. Using Core ML Tools to Convert the Scikit-learn Model to the Core ML Format
      6. Creating the iOS Project
      7. Summary
    5. Chapter 9: Creating a Logistic Regression Model Using Scikit-learn and Core ML
      1. Examining the Dataset
      2. Creating a Training and Test Dataset
      3. Creating the Logistic Regression Model with Scikit-learn
      4. Using Core ML Tools to Convert the Scikit-learn Model to the Core ML Format
      5. Creating the iOS Project
      6. Summary
    6. Chapter 10: Building a Deep Convolutional Neural Network with Keras
      1. Introduction to the Inception Family of Deep Convolutional Neural Networks
      2. A Brief Introduction to Keras
      3. Implementing Inception-v4 with the Keras Functional API
      4. Training the Inception-v4 Model
      5. Exporting the Keras Inception-v4 Model to the Core ML Format
      6. Creating the iOS Project
      7. Summary
  5. Appendix A: Anaconda and Jupyter Notebook Setup
    1. Installing the Anaconda Distribution
    2. Creating a Conda Python Environment
    3. Installing Python Packages
    4. Installing Jupyter Notebook
    5. Summary
  6. Appendix B: Introduction to NumPy and Pandas
    1. NumPy
    2. Pandas
    3. Summary
  7. Index
  8. End User License Agreement

Product information

  • Title: Machine Learning for iOS Developers
  • Author(s): Abhishek Mishra
  • Release date: March 2020
  • Publisher(s): Wiley
  • ISBN: 9781119602873