
Hands-On Machine Learning with C++: Build, train, and deploy end-to-end machine learning and deep learning pipelines 2nd Edition
Author(s): Kirill Kolodiazhnyi (Author)
- Publisher: Packt Publishing
- Publication Date: 24 Jan. 2025
- Edition: 2nd
- Language: English
- Print length: 512 pages
- ISBN-10: 1805120573
- ISBN-13: 9781805120575
Book Description
Apply supervised and unsupervised machine learning algorithms using C++ libraries, such as PyTorch C++ API, Flashlight, Blaze, mlpack, and dlib using real-world examples and datasets
Free with your book: DRM-free PDF version + access to Packt’s next-gen Reader*
Key Features
- Familiarize yourself with data processing, performance measuring, and model selection using various C++ libraries
- Implement practical machine learning and deep learning techniques to build smart models
- Deploy machine learning models to work on mobile and embedded devices
- Purchase of the print or Kindle book includes a free PDF eBook
Book Description
Written by a seasoned software engineer with several years of industry experience, this book will teach you the basics of machine learning (ML) and show you how to use C++ libraries, along with helping you create supervised and unsupervised ML models.
You’ll gain hands-on experience in tuning and optimizing a model for various use cases, enabling you to efficiently select models and measure performance. The chapters cover techniques such as product recommendations, ensemble learning, anomaly detection, sentiment analysis, and object recognition using modern C++ libraries. You’ll also learn how to overcome production and deployment challenges on mobile platforms, and see how the ONNX model format can help you accomplish these tasks.
This edition is updated with key topics such as sentiment analysis implementation using transfer learning and transformer-based models, with tracking and visualizing ML experiments with MLflow. An additional section shows how to use Optuna for hyperparameter selection. The section on model deployment into mobile platform includes a detailed explanation of real-time object detection for Android with C++.
By the end of this C++ book, you’ll have real-world machine learning and C++ knowledge, as well as the skills to use C++ to build powerful ML systems.
*Email sign-up and proof of purchase required
What you will learn
- Employ key machine learning algorithms using various C++ libraries
- Load and pre-process different data types to suitable C++ data structures
- Find out how to identify the best parameters for a machine learning model
- Use anomaly detection for filtering user data
- Apply collaborative filtering to manage dynamic user preferences
- Utilize C++ libraries and APIs to manage model structures and parameters
- Implement C++ code for object detection using a modern neural network
Who this book is for
This book is for beginners looking to explore machine learning algorithms and techniques using C++. This book is also valuable for data analysts, scientists, and developers who want to implement machine learning models in production. Working knowledge of C++ is needed to make the most of this book.
Table of Contents
- Introduction to Machine Learning with C++
- Data Processing
- Measuring Performance and Selecting Models
- Clustering
- Anomaly Detection
- Dimensionality Reduction
- Classification
- Recommender Systems
- Ensemble Learning
- Neural Networks for Image Classification
- Sentiment Analysis with BERT and Transfer Learning
- Exporting and Importing Models
- Tracking and Visualizing ML Experiments
- Deploying Models on a Mobile Platform
Editorial Reviews
Review
“Hands-On Machine Learning with C++ by Kirill Kolodiazhnyi provides a comprehensive guide to machine learning with C++, covering topics from linear algebra to advanced techniques like neural networks and recommender systems. The book includes practical examples and code snippets in C++ to help readers understand and implement machine learning concepts, along with real-world applications of machine learning, including image classification, sentiment analysis, and recommender systems.”
Sudharshan Reddy, AI/ML Technical Program & Product Lead at Facebook
“This is an excellent book for those with C++ experience and some basic linear algebra skills. Its practical examples allow the reader to get started quickly, with an approach that’s great for those of us who prefer to dive in and learn by doing. The wide variety of libraries covered will allow the reader to cover a broad variety of techniquesf – great for those trying to get a wide survey of the space.”
Rich Timmer, Vice President of Engineering, EticaAG
“Hands-On Machine Learning with C++” (Second Edition) is a unique and comprehensive guide that bridges the gap between C++ and machine learning (ML). This book is packed with valuable information, making it an essential read for anyone interested in leveraging C++ for ML applications.
One of the standout features of this book is its step-by-step approach to utilizing C++ in the context of ML. It covers a wide range of topics, from basic to advanced ML concepts, and explains how to implement them using C++.”
Yacob Cohen Arazi, Software Engineer at NVIDIA, Organizer of the San Diego C++ Meetup
About the Author
Kirill Kolodiazhnyi is a seasoned soft ware engineer with expertise in custom soft ware development. He has several years of experience building machine learning models and data products using C++. He holds a bachelor’s degree in computer science from the Kharkiv National University of Radio Electronics.
Wow! eBook


