For about four years this was simply the deep learning book, the one every reading list opened with and every practitioner claimed to have finished. That period has ended, and the honest thing to say now is that it contains one section of enduring value, one section that is useful in a limited way, and one section that has become a historical document. Knowing which is which turns it from a frustrating read into a genuinely worthwhile one. The structure is three parts.
Part one is applied mathematics and machine learning basics, covering linear algebra, probability and information theory, numerical computation, and a compressed introduction to machine learning. Part two is modern practical deep networks, covering feedforward networks, regularisation, optimisation, convolutional networks, sequence modelling with recurrent networks, and practical methodology. Part three is deep learning research, covering linear factor models, autoencoders, representation learning, structured probabilistic models, Monte Carlo methods, the partition function, approximate inference and deep generative models. Part two is why the book still matters.
The chapters on regularisation and on optimisation for training deep models are, in my view, the best sustained explanation available of why training deep networks works at all. Not what the techniques are, which any tutorial will tell you, but why. What dropout is actually doing and why the ensemble interpretation is useful. Why batch normalisation helps and what it changes about the optimisation landscape.
Why the difficulties in training deep networks are not primarily about local minima, which was folk wisdom at the time and is addressed directly. How initialisation interacts with depth. This material is conceptual rather than architectural, which is precisely why it survived a decade in which every architecture changed. If you only read two chapters of this book, read those two.
Part one is a well judged maths refresher. It is not a substitute for actually learning linear algebra, but if you learned it once and have forgotten which parts matter here, this tells you efficiently. The probability and information theory chapter in particular covers exactly what you need for the rest of the book and nothing you do not, which is harder to get right than it sounds. Part three is where the problem is.
It surveys the research frontier as it stood in 2016, and that frontier turned out to be pointing in largely the wrong direction. There is extensive material on restricted Boltzmann machines, deep belief networks, the partition function and its estimation, and structured probabilistic models. These were serious research programmes with serious people behind them, and they are now of essentially historical interest. Meanwhile the thing that actually happened, which is attention, transformers, scale, and pretraining on enormous corpora, is entirely absent, because the transformer paper came out the year after publication.
A reader who takes part three as a map of where the field is heading would be badly misled. That the book was never revised is the real complaint. The authors moved on to other things, which is entirely their right, but the result is that the canonical textbook of a fast moving field froze at a moment that turned out to be a hinge point. There is no second edition, there is not going to be one, and the recommendation lists that still open with this book are doing new readers a disservice by not saying so.
The presentation also has practical annoyances. The free online version is HTML that was clearly generated from LaTeX with minimal attention to how it reads in a browser, and on a phone it is close to unusable. There is no code at all, no exercises, and no practical guidance about implementation, which is defensible for a theory text but means it cannot function as a course. And the maths is not light.
The book demands real fluency and does not slow down. My 3.9 is a compromise between two different books bound together. Judged on part two alone I would rate it well above that, because that material is exceptional and has not been bettered. Judged as the comprehensive deep learning textbook it presents itself as, it is a decade out of date on the questions people currently care about.
The practical recommendation is to read parts one and two, treat part three as optional history, and get everything about transformers and language models from a resource written after 2020. Bishop's newer deep learning book covers similar ground with modern material, and for anything applied you want something with code in it. This one is for understanding foundations, and for that narrow purpose it remains very good.