There is a nearly endless list of resources for learning deep learning and machine learning more broadly. I've included some below, with my favorites marked by a . Currently, my personal recommendation would be to do the following:
.1For classical machine learning...
.aRead Chapters 1-2 of Hands-On Machine Learning with Scikit-Learn.
.bIf you have a relatively small amount of data where deep learning will not be viable, then stick with scikit-learn and skip the section below. Start tinkering.
.2For neural networks and deep learning...
.aFor a theoretical understanding of deep learning, refer to Understanding Deep Learning . It will provide a solid foundation, without being overly technical. Chapters 1-10 and 13 are particularly valuable within the context of our group. .bFor a practical understanding, go through the PyTorch documentation, which itself has several tutorials. Start tinkering with PyTorch on your own.
- Hands-On Machine Learning with Scikit-Learn, Keras & TensorFlow
- This is by far my top-choice recommendation for learning about scikit-learn and more "classical" machine learning topics. That said, the latter half (i.e. the Keras and TensorFlow sections) is probably worth skipping in favor of other options. Chapters 1-4 are a perfect intro.
- Probabilistic Machine Learning: An Introduction
- This takes a very statistics-oriented approach to machine learning. It is a modern classic but a bit on the more math-intensive side.
- Understanding Deep Learning by Prince
- This is definitely my favorite introductory book about deep learning. It strikes the perfect balance and provides the necessary context to understand what you will later be coding.
- Geometric Deep Learning
- Deep Learning by Goodfellow, Bengio, and Courville
- This is basically the standard deep learning book, but it's a bit on the math-intensive side and also missing newer topics.
- Probabilistic Machine Learning: Advanced Topics
- This is essentially the deep learning analogue of Probabilistic Machine Learning: An Introduction.