Book Image

Machine Learning with Swift

By : Jojo Moolayil, Alexander Sosnovshchenko, Oleksandr Baiev
Book Image

Machine Learning with Swift

By: Jojo Moolayil, Alexander Sosnovshchenko, Oleksandr Baiev

Overview of this book

Machine learning as a field promises to bring increased intelligence to the software by helping us learn and analyse information efficiently and discover certain patterns that humans cannot. This book will be your guide as you embark on an exciting journey in machine learning using the popular Swift language. We’ll start with machine learning basics in the first part of the book to develop a lasting intuition about fundamental machine learning concepts. We explore various supervised and unsupervised statistical learning techniques and how to implement them in Swift, while the third section walks you through deep learning techniques with the help of typical real-world cases. In the last section, we will dive into some hard core topics such as model compression, GPU acceleration and provide some recommendations to avoid common mistakes during machine learning application development. By the end of the book, you'll be able to develop intelligent applications written in Swift that can learn for themselves.
Table of Contents (18 chapters)
Title Page
Packt Upsell
Contributors
Preface
Index

Summary


In this chapter, we learned about iOS compatible machine learning libraries and their features. We discussed five major deep learning frameworks: Caffe, TensorFlow, MXNet, and Torch, and so on. We also mentioned several smaller deep learning libraries and tools to convert deep learning models from one format to another. Among general purpose machine learning libraries, the most feature-rich and mature are AIToolbox, dlib, Shark, and YCML. NLP libraries for iOS are rare and restricted in their capabilities.

In addition to native iOS speech recognition and text-to-speech, there are several free and commercial libraries that provide the same functionality.

If you have some common computer vision tasks, you can find the appropriate algorithms in OpenCV or ccv libraries. OCR and all kinds of face-related tasks can also be performed using the open source toolchain. There are also several low-level libraries for linear algebra operations, tensors, and optimization that you can use to accelerate...