The classic textbook “Deep Learning” by Goodfellow, Bengio, and Courville offers a solid theoretical foundation, but its treatment can feel a bit dense for newcomers. In my experience, the most engaging and hands‑on introduction is “Hands‑On Machine Learning with Scikit‑Learn, Keras & TensorFlow” by Aurélien Géron. That said, I wouldn’t recommend starting there today (especially the deep‑learning chapters) since the material is tightly tied to TensorFlow/Keras, which may not be the most beginner‑friendly entry point any longer.
It covers the basic details from a minimalist auto-grad implementation up to usable GPT-2-style transformers without the bells and whistles of production-ready frameworks or the heavy mathematical burden of more academic introductions into Deep Learning. A truly great resource for someone with some Python knowledge to start with!
In my opinion, Andrej’s experience as principal instructor for the Stanford class CS 231n: Convolutional Neural Networks for Visual Recognition really shines through.