Title: The 7 best deep learning books you should be reading right now - PyImageSearch

URL Source: https://pyimagesearch.com/2018/03/05/7-best-deep-learning-books-reading-right-now/

Published Time: 2018-03-05T15:00:13+00:00

Markdown Content:
![Image 1](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20600%20416'%3E%3C/svg%3E)

In today’s post I’m going to share with you the 7 best deep learning books (in no particular order) I have come across and would personally recommend you read.

Some of these deep learning books are _heavily theoretical_, focusing on the mathematics and associated assumptions behind neural networks and deep learning.

Other deep learning books are _entirely practical_ and teach through _code_ rather than _theory_.

And even other deep learning books straddle the line, giving you a healthy dose of theory while enabling you to “get your hands dirty” and learn by implementing (these tend to be my favorite deep learning books).

For each deep learning book I’ll discuss the core concepts covered, the target audience, and if the book is appropriate for you.

**To discover the 7 best books for studying deep learning, _just keep reading!_**

Before you choose a deep learning book, it’s best to assess your own personal learning style to ensure you get the most out of the book.

Start by asking yourself the following question:

> How do I best learn? Do I like to learn from theoretical texts? Or do I like to learn from code snippets and implementation?

Everyone has their own personal learning style and your answers here will dictate which deep learning books you should be reading.

For me personally, I like to strike a balance between the two.

Deep learning books that are entirely theoretical and go too far into the abstract make it far too easy for my eyes to gloss over.

But on the other hand, if a deep learning book skips theory entirely and jumps straight into implementation, I know I’m missing out on core theoretical underpinnings that may help me approach a new deep learning problem or project.

In my opinion, a good deep learning book needs to carefully balance the two.

We need theory to help us understand the core fundamentals of deep learning — and at the same time we need implementation and code snippets to help us reinforce what we just learned.

### [![Image 2](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20188%20250'%3E%3C/svg%3E)](http://www.deeplearningbook.org/)1\. Deep Learning

It’s hard (if not impossible) to write a blog post regarding the best deep learning books without mentioning Goodfellow, Bengio, and Courville’s [_Deep Learning_ text](http://www.deeplearningbook.org/).

This book is meant to be a textbook used to teach the fundamentals and theory surrounding deep learning in a college-level classroom.

Goodfellow et al.’s _Deep Learning_ is **entirely theoretical** and written for an academic audience. There is no code covered in the book.

The book starts with a discussion on machine learning basics, including the applied mathematics needed to effectively study deep learning (linear algebra, probability and information theory, etc.) from an academic perspective.

From there, the book moves into modern deep learning algorithms and techniques.

The final part of _Deep Learning_ focuses more on current research trends and where the deep learning field is moving.

I’ve personally read through this book twice, cover to cover, and have found it incredibly valuable, provided you have the mathematical/academic rigor required for such a textbook.

_Deep Learning_ is available for online viewing for free from [the book’s homepage](http://www.deeplearningbook.org/). You can purchase a hardcopy of the text [from Amazon](http://amzn.to/2GWPh37).

**You should read this deep learning book if…**

*   You learn from _theory_ rather than _implementation_
*   You enjoy academic writing
*   You are a professor, undergraduate, or graduate student doing work in deep learning

### [![Image 3](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20200%20159'%3E%3C/svg%3E)](http://neuralnetworksanddeeplearning.com/)

### 2\. Neural Networks and Deep Learning

My second theory-based deep learning (e)book recommendation is [_Neural Networks and Deep Learning_](http://neuralnetworksanddeeplearning.com/) by Michael Nielsen.

The book does include some code but it’s important to underline the _“some”_ — there are a total of seven Python scripts accompanying the book, all discussing a various fundamental machine learning, neural network, or deep learning technique on the MNIST dataset. The implementations are not the most “exciting” in the world, but they will help demonstrate some of the theoretical concepts in the text.

If you are new to machine learning and deep learning but are eager to dive into a _theory-based_ learning approach, Nielsen’s book should be your first stop.

The book is a much quicker read than Goodfellow’s _Deep Learning_ and Nielsen’s writing style combined with occasional code snippets makes it easier to work through.

**You should read this deep learning book if…**

*   You are looking for a theory-based deep learning text
*   Are new to machine learning/deep learning and want to approach the field from a more academic standpoint

### [![Image 4](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20199%20250'%3E%3C/svg%3E)](http://amzn.to/2oBWcYV)3\. Deep Learning with Python

Francois Chollet, Google AI researcher and creator of the popular [Keras deep learning library](https://keras.io/), published his book, [_Deep Learning with Python_](http://amzn.to/2oBWcYV) in October 2017.

Francois’ book takes a practitioner’s approach to deep learning. Some theory and discussion is included, but for every few paragraphs of theory, you’ll find a Keras implementation of the technique.

One of my favorite aspects of this book is how Francois includes examples for deep learning applied to computer vision, text, and sequences, making it a well rounded book for readers who want to learn the Keras library while studying machine learning and deep learning fundamentals.

I found Francois’ writing to be clear and accessible. His additional commentary on deep learning trends and history is phenomenal and insightful.

It’s important to note that this book is not meant to be a super deep dive into deep learning. Instead, it’s primary use is to teach you (1) the fundamentals of deep learning (2) through the Keras library (3) using practical examples in a variety of deep learning domains.

**You should read this deep learning book if…**

*   You are interested in the Keras library
*   You “learn by doing/implementing”
*   You want a quick understanding of how deep learning is applied to various fields, such as computer vision, sequence learning, and text

### [![Image 5](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20191%20250'%3E%3C/svg%3E)](http://amzn.to/2CUfltn)

### 4\. Hands-On Machine Learning with Scikit-Learn and TensorFlow

When I first purchased a copy of Aurélien Géron’s [_Hands-on Machine Learning with Scikit-Learn and TensorFlow_](http://amzn.to/2CUfltn), I wasn’t sure what to expect — had the title not included the word “TensorFlow” I may have breezed right by it, thinking it was only a basic introduction to machine learning.

But at the same time, appending the word “TensorFlow” to an already lengthy title that seems to focus on basic machine learning made me think it was a cheap marketing tactic to sell more copies — everyone is interested in deep learning, right?

Luckily, I was wrong — the book is a good read and the title shouldn’t deter you from reading through it.

Géron’s deep learning book is organized in two parts.

The first part covers basic machine learning algorithms such as Support Vector Machines (SVMs), Decision, Trees, Random Forests, ensemble methods, and basic unsupervised learning algorithms. Scikit-learn examples for each of the algorithms are included.

The second part then covers elementary deep learning concepts through the TensorFlow library.

**You should read this deep learning book if…**

*   You are new to machine learning and want to start with core principles with code examples
*   You are interested in the popular scikit-learn machine learning library
*   You want to quickly learn how to operate the TensorFlow library for basic deep learning tasks

[![Image 6](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20203%20250'%3E%3C/svg%3E)](http://amzn.to/2F8rMUl)

### 5\. TensorFlow Deep Learning Cookbook

If you like the “cookbook” style of teaching (little-to-no theory and lots of code), I would suggest taking a look at Gulli and Kapoor’s [_TensorFlow Deep Learning Cookbook_](http://amzn.to/2F8rMUl).

This deep learning book is _entirely_ hands-on and is a great reference for TensorFlow users.

Again, this book is not meant to necessarily _teach_ deep learning, but instead show you how to operate the TensorFlow library in the _context_ of deep learning.

Don’t get me wrong — you will _absolutely_ learn new deep learning concepts, techniques, and algorithms along the way, but the book takes a heavy-handed cookbook approach: lots of code and explanations of what the code is doing.

My only criticism of the book is that there are some typos in the code snippets. This can be expected when writing a book that is entirely code focused. Typos happen, I can certainly attest to that. Just be aware of this when you are working through the text.

**You should read this deep learning book if…**

*   You have already studied the fundamentals of deep learning
*   You are interested in the TensorFlow library
*   You enjoy the “cookbook” style of teaching where code is provided to solve a particular problem but the underlying theory is not discussed

[![Image 7](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20190%20250'%3E%3C/svg%3E)](http://amzn.to/2CSqN8W)

### 6\. Deep Learning: A Practitioners Approach

While most deep learning books that include code samples use Python, Adam Gibson and Josh Patterson’s [_Deep Learning: A Practitioners Approach_](http://amzn.to/2CSqN8W) instead use Java and the [DL4J library](https://deeplearning4j.org/).

Why Java?

Java is the most used programming language in large corporations, _especially_ at the enterprise level.

The first few chapters in Gibson and Patterson’s book discuss basic machine learning and deep learning fundamentals. The rest of the book includes Java-based deep learning code examples using DL4J.

**You should read this deep learning book if…**

*   You have a specific use case where the Java programming language needs to be utilized
*   You work for a large company or enterprise organization where Java is primarily used
*   You want to understand how to operate the DL4J library

[![Image 8](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20183%20250'%3E%3C/svg%3E)](https://pyimagesearch.com/deep-learning-computer-vision-python-book/)

### 7\. Deep Learning for Computer Vision with Python

I’ll be completely honest and forthcoming and admit that I’m biased — I wrote [_Deep Learning for Computer Vision with Python_](https://pyimagesearch.com/deep-learning-computer-vision-python-book/).

That said, my book really has become one of the best deep learning and computer vision resources available today (take a look at [this review](http://zbigatron.com/deep-learning-for-computer-vision-with-python-review/) and [this one as well](https://www.linkedin.com/pulse/you-need-check-out-book-want-understand-deep-learning-l%C3%B3pez-sanz/) if you need an honest second opinion).

Francois Chollet, AI researcher at Google and creator of Keras, had this to say about my new deep learning book:

> This book is a great, in-depth dive into practical deep learning for computer vision. I found it to be an approachable and enjoyable read: explanations are clear and highly detailed. You’ll find many practical tips and recommendations that are rarely included in other books or in university courses. **I highly recommend it, both to practitioners and beginners.** — Francois Chollet

And Adam Geitgey, the author of the popular [_Machine Learning is Fun!_](https://medium.com/@ageitgey/how-to-break-a-captcha-system-in-15-minutes-with-machine-learning-dbebb035a710) blog series, said this:

> I highly recommend grabbing a copy of _Deep Learning for Computer Vision with Python_. It goes into a lot of detail and has tons of detailed examples. It’s the only book I’ve seen so far that covers both how things work and how to actually use them in the real world to solve difficult problems. Check it out! — Adam Geitgey

If you’re interested in studying deep learning applied to computer vision (image classification, object detection, image understanding, etc.), _this is the perfect book for you._

Inside my book you will:

*   Learn the **foundations of machine learning and deep learning** in an accessible manner that balances both theory and implementation
*   Study **advanced deep learning techniques**, including object detection, multi-GPU training, transfer learning, and Generative Adversarial Networks (GANs)
*   **Replicate the results of state-of-the-art papers**, including ResNet, SqueezeNet, VGGNet, and others on the 1.2 million ImageNet dataset

Furthermore, I provide the best possible balance of both _theory_ and _hands-on implementation_. For each theoretical deep learning concept you’ll find an associated Python implementation to help you cement the knowledge.

[**Be sure to take a look**](https://pyimagesearch.com/deep-learning-computer-vision-python-book/) — and while you’re checking out the book, don’t forget to grab your (free) table of contents + sample chapters PDF of the book.

**You should read this deep learning book if…**

*   You are specifically interested in deep learning applied to computer vision and image understanding
*   You want an excellent balance between theory and implementation
*   You want a deep learning book that makes seemingly complicated algorithms and techniques easy to grasp and understand
*   You want a clear, easy to follow book to guide you on your path to deep learning mastery

### What's next? We recommend [PyImageSearch University](https://pyimagesearch.com/pyimagesearch-university/?utm_source=blogPost&utm_medium=bottomBanner&utm_campaign=What%27s%20next%3F%20I%20recommend).

**Course information:**  
84 total classes • 114+ hours of on-demand code walkthrough videos • Last updated: February 2024  
★★★★★ 4.84 (128 Ratings) • 16,000+ Students Enrolled

**I strongly believe that if you had the right teacher you could _master_ computer vision and deep learning.**

Do you think learning computer vision and deep learning has to be time-consuming, overwhelming, and complicated? Or has to involve complex mathematics and equations? Or requires a degree in computer science?

That’s _not_ the case.

All you need to master computer vision and deep learning is for someone to explain things to you in _simple, intuitive_ terms. _And that’s exactly what I do_. My mission is to change education and how complex Artificial Intelligence topics are taught.

If you're serious about learning computer vision, your next stop should be PyImageSearch University, the most comprehensive computer vision, deep learning, and OpenCV course online today. Here you’ll learn how to _successfully_ and _confidently_ apply computer vision to your work, research, and projects. Join me in computer vision mastery.

**Inside PyImageSearch University you'll find:**

*   ✓ **84 courses** on essential computer vision, deep learning, and OpenCV topics
*   ✓ **84 Certificates** of Completion
*   ✓ **114+ hours** of on-demand video
*   ✓ **Brand new courses released _regularly_**, ensuring you can keep up with state-of-the-art techniques
*   ✓ **Pre-configured Jupyter Notebooks in Google Colab**
*   ✓ Run all code examples in your web browser — works on Windows, macOS, and Linux (no dev environment configuration required!)
*   ✓ Access to **centralized code repos for _all_ 536+ tutorials** on PyImageSearch
*   ✓ **Easy one-click downloads** for code, datasets, pre-trained models, etc.
*   ✓ **Access** on mobile, laptop, desktop, etc.

[Click here to join PyImageSearch University](https://pyimagesearch.com/pyimagesearch-university/?utm_source=blogPost&utm_medium=bottomBanner&utm_campaign=What%27s%20next%3F%20I%20recommend)

Summary
-------

In this post you discovered my seven favorite books for studying deep learning.

Have you purchased or read through one of these books? If so, leave a comment and let me know what you think of it.

Did I miss a book that you think should be on this list? If so, be sure to [contact me](https://pyimagesearch.com/contact/) or leave a comment.

![Image 9](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20410%20567'%3E%3C/svg%3E)

#### Join the PyImageSearch Newsletter and Grab My FREE 17-page Resource Guide PDF

Enter your email address below to **join the PyImageSearch Newsletter** and **download my FREE 17-page Resource Guide PDF** on Computer Vision, OpenCV, and Deep Learning.