Cover all the machine learning techniques relevant for forecasting problems, ranging from univariate and multivariate time series to supervised learning, to state-of-the-art deep forecasting models such as LSTMs, recurrent neural networks, Facebook’s open-source Prophet model, and Amazon’s DeepAR model. Rather than focus on a specific set of models, this book presents an exhaustive overview of all the techniques relevant to practitioners of forecasting. It begins by explaining the different categories of models that are relevant for forecasting in a high-level language. Next, it covers univariate and multivariate time series models followed by advanced machine learning and deep learning models. It concludes with reflections on model selection such as benchmark scores vs. understandability of models vs. compute time, and automated retraining and updating of models. Each of the models presented in this book is covered in depth, with an intuitive simple explanation of the model, a mathematical transcription of the idea, and Python code that applies the model to an example data set. Reading this book will add a competitive edge to your current forecasting skillset. The book is also adapted to those who have recently started working on forecasting tasks and are looking for an exhaustive book that allows them to start with traditional models and gradually move into more and more advanced models. What You Will Learn Who This Book Is For The advanced nature of the later chapters makes the book relevant for applied experts working in the domain of forecasting, as the models covered have been published only recently. Experts working in the domain will want to update their skills as traditional models are regularly being outperformed by newer models.
If you purchased this book expecting truly "Advanced" forecasting stuff, you might be in for a bit of a let-down, unless you're just getting started and happen to find Boosted Trees, NNs, RNNs, LSTMs, and other more exotic models completely new to you. However, it is not at all a bad book. In many ways, it is very good.
Depending on the audience, this book could easily be rated anywhere from 2 - 5 stars. So let's go with 3.5 and round up.
Pedagogically, the book is very effective. During my math degree, I did not receive any formal education on time series analysis or forecasting; I had to pick things up as I went. Hence I found the gradual progression from AR models all the way to SARIMAX and VARMAX models very refreshing, especially when exposed to their strengths and weaknesses through their application to various datasets.
Each model is discussed in its own chapter, building on the material from previous ones just as the models do when increasing in complexity and predictive power. It is all done very well.
Aside from the mathematical model definition for each model (i.e. the "equation"), there's very little in terms of technical exposition and no derivations at all. So skip it if that's what you're looking for.
In terms of the code, I found everything in good working order, though I did not precisely copy-and-paste straight from the book's repo. I followed the main ideas along using my own code and checked the output against the author's to make sure I was not introducing errors.
Like other reviewers have pointed out, there's a lot of repetition when it comes to the code in most of the chapters. Sometimes the author will change a single hyperparameter in a block of code 50-lines long, and copy the whole thing again when he changes values once more. I did not find it annoying, and beginners might benefit from it, but it could be argued that it needs editing.
The book lost some points with me because while the author touts his experience working for a world-renowned amusement park where, presumably, he gets paid lotta cheese to forecast stuff, there's not a single anecdote nor professional "war story" where he had to tweak things or solve some mystery using his mastery of the subject.
Also, some of the chapters are a bit shallow in terms of the overall contrast between models and when you'd want to use one over the other.
But by far the worst offence is that while he advises the reader to benchmark models and compare, there is just a single table in chapter 19 where he compares the result of the same model using different hyperparameters. It would have been great to culminate the text with a master table comparing (when possible) all models against the SAME DATASET so we can see which model prevails.
Also, maybe for future versions it would be a good idea to include a cheat sheet that outlines what each model is good for and what assumptions it makes on the data.
Overall, I still think the book is a worthwhile addition to my data science library. I'd recommend it to anyone looking for a good basic to intermediate introduction to the subject.