Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Hands-On Machine Learning with C++
Hands-On Machine Learning with C++

Hands-On Machine Learning with C++: Build, train, and deploy end-to-end machine learning and deep learning pipelines

Arrow left icon
Profile Icon Kirill Kolodiazhnyi Profile Icon Kirill Kolodiazhnyi
Arrow right icon
$47.99
Full star icon Full star icon Full star icon Half star icon Empty star icon 3.8 (6 Ratings)
eBook May 2020 530 pages 1st Edition
eBook
$47.99
Paperback
$59.99
Subscription
Free Trial
Renews at $12.99p/m
Arrow left icon
Profile Icon Kirill Kolodiazhnyi Profile Icon Kirill Kolodiazhnyi
Arrow right icon
$47.99
Full star icon Full star icon Full star icon Half star icon Empty star icon 3.8 (6 Ratings)
eBook May 2020 530 pages 1st Edition
eBook
$47.99
Paperback
$59.99
Subscription
Free Trial
Renews at $12.99p/m
eBook
$47.99
Paperback
$59.99
Subscription
Free Trial
Renews at $12.99p/m

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Product feature icon AI Assistant (beta) to help accelerate your learning
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Key benefits

  • Become familiar 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

Description

C++ can make your machine learning models run faster and more efficiently. This handy guide will help you learn the fundamentals of machine learning (ML), showing you how to use C++ libraries to get the most out of your data. This book makes machine learning with C++ for beginners easy with its example-based approach, demonstrating how to implement supervised and unsupervised ML algorithms through real-world examples. This book will get you hands-on with tuning and optimizing a model for different use cases, assisting you with model selection and the measurement of performance. You’ll cover techniques such as product recommendations, ensemble learning, and anomaly detection using modern C++ libraries such as PyTorch C++ API, Caffe2, Shogun, Shark-ML, mlpack, and dlib. Next, you’ll explore neural networks and deep learning using examples such as image classification and sentiment analysis, which will help you solve various problems. Later, you’ll learn how to handle production and deployment challenges on mobile and cloud platforms, before discovering how to export and import models using the ONNX format. By the end of this C++ book, you will have real-world machine learning and C++ knowledge, as well as the skills to use C++ to build powerful ML systems.

Who is this book for?

You will find this C++ machine learning book useful if you want to get started with machine learning algorithms and techniques using the popular C++ language. As well as being a useful first course in machine learning with C++, this book will also appeal to data analysts, data scientists, and machine learning developers who are looking to implement different machine learning models in production using varied datasets and examples. Working knowledge of the C++ programming language is mandatory to get started with this book.

What you will learn

  • Explore how to load and preprocess various data types to suitable C++ data structures
  • Employ key machine learning algorithms with various C++ libraries
  • Understand the grid-search approach to find the best parameters for a machine learning model
  • Implement an algorithm for filtering anomalies in user data using Gaussian distribution
  • Improve collaborative filtering to deal with dynamic user preferences
  • Use C++ libraries and APIs to manage model structures and parameters
  • Implement a C++ program to solve image classification tasks with LeNet architecture

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : May 15, 2020
Length: 530 pages
Edition : 1st
Language : English
ISBN-13 : 9781789952476
Category :
Languages :
Tools :

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Product feature icon AI Assistant (beta) to help accelerate your learning
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Product Details

Publication date : May 15, 2020
Length: 530 pages
Edition : 1st
Language : English
ISBN-13 : 9781789952476
Category :
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$12.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 6,500+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$129.99 billed annually
Feature tick icon Unlimited access to Packt's library of 6,500+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$179.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 6,500+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 198.97
Hands-On Machine Learning with C++
$59.99
Expert C++
$43.99
Modern C++ Programming Cookbook
$94.99
Total $ 198.97 Stars icon
Banner background image

Customer reviews

Top Reviews
Rating distribution
Full star icon Full star icon Full star icon Half star icon Empty star icon 3.8
(6 Ratings)
5 star 66.7%
4 star 0%
3 star 0%
2 star 16.7%
1 star 16.7%
Filter icon Filter
Top Reviews

Filter reviews by




Karl Mueller Feb 15, 2023
Full star icon Full star icon Full star icon Full star icon Full star icon 5
While not a huge problem this book really needs the supplied Docker environment for the examples to work properly.I initially tried to set up the environment myself in my base Linux installation and found that some of the tools used in the book are difficult to find, difficult to compile, etc.Previously I knew nothing about Docker, but it wasn't difficult to learn and it is a useful system to know.It does raise the question about how useful some of the tools can be if they can only ever exist properly in the Docker environment provided with the book. Apart from that I found the book very useful for moving my ML knowledge developed in MATLAB, across to C++ which is the main language I use for development.
Amazon Verified review Amazon
Robin T. Wernick Feb 08, 2021
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Python has hijacked the Machine Learning territory over the last few years since 2014. This leaves the 'C' languages without a comparable foothold in this arena until this book was published. This book covers the gaping void between the 'C' language trained programmers and the Python Machine Language world. It has the same mathematical introduction theory, but counters with a set of code libraries that work with C++.This book will allow the C++ programmer to expand his programming scope without having to rewrite his entire code base in Python and learn a whole new programming language. Not only will it save enormous amounts of time, but it will also provide and give usage detail for a compatible PyTorch Deep Learning library for C++code use. Now the high performance world of GPU programming is available with a tensor interface to C++ programmers.
Amazon Verified review Amazon
Kindle Customer Dec 24, 2020
Full star icon Full star icon Full star icon Full star icon Full star icon 5
While Python normally does the job just fine when it comes to handling ML and more general analytics tasks, I have wanted for a long time to work on these kinds of problems using C++. Unfortunately, it has been very difficult to get started because of a severe lack of educational resources out there. Luckily, this book has finally filled that gap for me.What I really like about the book is that the author has put together a series of very complete examples for each method being discussed. Every program reads in an actual csv file with the data (as opposed to using some form of random number generation to create a toy example), puts it into the right format to be used with the given implementation of an ML method and then puts together a data set that one can use as output. As someone who has not had much experience with C++ outside a classroom setting, I found this extremely helpful, and it has made the material immediately applicable to my work in real life.The book covers just the right amount of theory in each chapter as well before diving into the C++ implementation, making the material accessible to developers who are relatively new to data science (which, as I understand, is actually the main target audience).
Amazon Verified review Amazon
Matthew Emerick Jun 15, 2020
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Disclaimer: The publisher asked me to review this book and gave me a review copy. I promise to be 100% honest in how I feel about this book, both the good and the less so.Personal Background: My first programming language after I started university was C++, followed by C. I'm glad to see that C++ can be used for ML problems, though I do understand that Python can be the easier choice. I try to keep in mind, however, that most if not all Python ML libraries are written in C/C++ to make it run faster.OverviewTo get the most out of this book, I would recommend that you have at least an intermediate competency of C++ and some basic knowledge of machine learning. The former is far more valuable than the later, in this case, as the author assumes that you know C++. There is no hand holding with the code. However, the author does walk you through ML from the basics to a moderate level.What I Like:This book is broken into four overall sections: Overview of Machine Learning, Machine Learning Algorithms, Advanced Examples, and Production and Deployment Challenges. This is an excellent selection of sections that make the overall book better organized. The first section gives a good overview of machine learning (as the title indicates), including a basic understanding of the math involved, data preproccessing, and general rundown of the considerations for choosing which ML technique you should use.The second section gives all the major ML algorithms that a junior ML developer will need. The book focuses on supervised and unsupervised ML, which is most of what you'll see in a business setting. This section finishes with a chapter on Ensemble Learning, where you use multiple ML algorithms to give you better results. The advanced examples mix and match some other algorithms to give you a basic understanding and a starting point for learning more. The final section looks at model deployment and mobile and cloud considerations. If you're new to machine learning and wish to use C++, this is a book book for it. Especially valuable are the Further Reading sections at the end of every chapter.What I Don't Like:When looking at the code, it was very different from the C++ code I learn nearly two decades ago. With the use of C++17, I faced a steep learning curve to use the code examples. While not a concern in and of itself, the first reference to C++17 I could find is on page 41. As someone who knows and enjoys an older version, this made using the code examples more difficult to me. I understand and agree with using a more recent version of the language, but would have appreciated a warning on the back cover or at least in the preface so that I could do some review first. A book recommendation for learning this version of C++ would have be appreciated as well.In the first chapter, the author divides machine learning up into two categories: supervised and unsupervised learning. While technically correct, there is a third category that doesn't fit well into either one: reinforcement learning. I wouldn't expect the author to delve into that niche sub field, it still should have been mentioned.What I Would Like to See:I really enjoyed this book. It has much to offer anyone with C++ experience. It is well organized and has much useful information. I am very happy to have it as part of my library. I think that a book from this author about C++ ML from Scratch would be interesting.Overall, I give this book a 4.9 out of 5. It's an excellent resource.
Amazon Verified review Amazon
George Ford Feb 12, 2023
Full star icon Full star icon Empty star icon Empty star icon Empty star icon 2
I originally bought this book with the hopes of being able to get a better grasp on machine learning with c++, since the back cover states: "This book makes machine learning with C++ for beginners easy with its example based approach". It starts off reviewing some of the basics of linear algebra... OK. But then in the next chapter, in an attempt to get you familiar with all of the different libraries, you begin loading data using API's without any background to what those API's do and then how you would use that data.The author tries to familiarize you with a bunch of different libraries, without truly ever really describing the details of any of them. The author will write code to accomplish a task with a given library, and then repeat the same with another library. But, in my opinion, this is done without much insight as to why you are doing what you are doing. Just copying code.The background info on neural networks, although helpful, does not really explain fully how they work, outside of providing the differential equations that are implemented.It is a really tough read to go from cover to cover, and I don't feel like you really grasp much, since too much is trying to be explained with a bunch of tools, but no focus on any given tool.I think it would be much better if someone were to focus on one or two tools (xtensor, libtorch, dlib, etc) and approach the subject in that manner. This way, you are familiarizing yourself with the subject as well as the library you are using
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

How do I buy and download an eBook? Chevron down icon Chevron up icon

Where there is an eBook version of a title available, you can buy it from the book details for that title. Add either the standalone eBook or the eBook and print book bundle to your shopping cart. Your eBook will show in your cart as a product on its own. After completing checkout and payment in the normal way, you will receive your receipt on the screen containing a link to a personalised PDF download file. This link will remain active for 30 days. You can download backup copies of the file by logging in to your account at any time.

If you already have Adobe reader installed, then clicking on the link will download and open the PDF file directly. If you don't, then save the PDF file on your machine and download the Reader to view it.

Please Note: Packt eBooks are non-returnable and non-refundable.

Packt eBook and Licensing When you buy an eBook from Packt Publishing, completing your purchase means you accept the terms of our licence agreement. Please read the full text of the agreement. In it we have tried to balance the need for the ebook to be usable for you the reader with our needs to protect the rights of us as Publishers and of our authors. In summary, the agreement says:

  • You may make copies of your eBook for your own use onto any machine
  • You may not pass copies of the eBook on to anyone else
How can I make a purchase on your website? Chevron down icon Chevron up icon

If you want to purchase a video course, eBook or Bundle (Print+eBook) please follow below steps:

  1. Register on our website using your email address and the password.
  2. Search for the title by name or ISBN using the search option.
  3. Select the title you want to purchase.
  4. Choose the format you wish to purchase the title in; if you order the Print Book, you get a free eBook copy of the same title. 
  5. Proceed with the checkout process (payment to be made using Credit Card, Debit Cart, or PayPal)
Where can I access support around an eBook? Chevron down icon Chevron up icon
  • If you experience a problem with using or installing Adobe Reader, the contact Adobe directly.
  • To view the errata for the book, see www.packtpub.com/support and view the pages for the title you have.
  • To view your account details or to download a new copy of the book go to www.packtpub.com/account
  • To contact us directly if a problem is not resolved, use www.packtpub.com/contact-us
What eBook formats do Packt support? Chevron down icon Chevron up icon

Our eBooks are currently available in a variety of formats such as PDF and ePubs. In the future, this may well change with trends and development in technology, but please note that our PDFs are not Adobe eBook Reader format, which has greater restrictions on security.

You will need to use Adobe Reader v9 or later in order to read Packt's PDF eBooks.

What are the benefits of eBooks? Chevron down icon Chevron up icon
  • You can get the information you need immediately
  • You can easily take them with you on a laptop
  • You can download them an unlimited number of times
  • You can print them out
  • They are copy-paste enabled
  • They are searchable
  • There is no password protection
  • They are lower price than print
  • They save resources and space
What is an eBook? Chevron down icon Chevron up icon

Packt eBooks are a complete electronic version of the print edition, available in PDF and ePub formats. Every piece of content down to the page numbering is the same. Because we save the costs of printing and shipping the book to you, we are able to offer eBooks at a lower cost than print editions.

When you have purchased an eBook, simply login to your account and click on the link in Your Download Area. We recommend you saving the file to your hard drive before opening it.

For optimal viewing of our eBooks, we recommend you download and install the free Adobe Reader version 9.