Don't get me wrong, doing the exercises is important and (perhaps) essential for learning a subject, but the key is not to burn out too quickly. Very often some of the best and most important material is in the latter part of a technical book. So I recommend reading them like technical papers: in multiple passes. If you at least superficially read through the book cover to cover at the very least you'll have a map of the territory. Additionally, it's often the case that more advanced topics in a book give you insight into why the early topics are truly so important.
And while exercises are good, you'll learn even faster if you find a practical problem you want to solve related to the material. Most people on HN will say that you must do all the exercises or you can't possibly learn. But I've found the best tactic is to read a technical book until you hit something that scratches a personal itch. For example, maybe you'll be reading a book on deep learning and then late in the book come across a section on latent factors, a problem that you're interested in and didn't know about. Even though you skimmed most of the book until this point, if you want to implement this model you have to go back and really learn all of the pieces you need to build what you want.
What if you never find anything that really clicks with you? Then you're probably better off just skimming the book for now. The key part of that is "for now". Suppose you read through a stats book and nothing piques your interest, but you come across the idea that there is some way to run a test such that you control for variance between two groups. We'll perhaps in 5 years you'll come across a problem that requires you to do just this! Because you skimmed the book you'll at least know "statistics has a solution to this problem!" Then you can go back and really learn how this solution works.
Personally I recommend against doing every exercise in a book until you need to understand that material to solve a larger, more practical problem. The best way to learn anything technical is to solve a problem with it, but you can't solve a problem with a technique if you don't even know the technique exists, so keep reading!
Get the book on your phone, and just read it every now and again and if it doesn't make sense, try to use it as a detailed study plan e.g. Many compiler textbooks emphasize the importance of instruction scheduling without necessarily teaching it very well, but now you know that you need to understand instruction scheduling from somewhere.
^ If I'm learning a new topic I'll usually grab one famous book and two more modern one's and alternate between books if something is vague/confusing
At the end of each chapter/section, write a one page summary, in as simple language as possible, to teach a hypothetical new student what you just learned.
Even better if you can then compare what you just learned to other things you know to clearly separate them in your mind.