nndl-practice is a tutorial repository that teaches neural networks and deep learning through PyTorch implementation and practical applications. The project accompanies the second edition of a textbook by Qiu Xiping, structured around ten chapters that progress from foundational concepts to advanced topics.
The repository addresses the challenge of learning deep learning by combining theory with hands-on implementation. Rather than treating algorithms and applications separately, it guides learners through understanding neural network models, implementing key components from scratch in PyTorch, and applying them to runnable case studies. The progression moves from linear models and convolutional networks through recurrent networks, attention mechanisms, graph neural networks, and large language models with agents.
The material suits students and engineers with Python experience who want to learn deep learning through practice. The repository provides multiple entry points depending on learning goals: beginners starting with PyTorch can follow chapters one through four, while those focused on computer vision, sequence modeling with Transformers, graph neural networks, or large language models can follow recommended paths that skip unnecessary prerequisites. The project requires Python 3.11 or later and PyTorch 2.7 or later, with notebooks defaulting to CPU execution though some chapters with longer training runs offer configuration options. Certain chapters require downloading datasets like IMDB or LCQMC before running.
The project maintains active development with continuous updates to both PDF and accompanying code as the second edition moves through publication preparation. The repository accepts errata and suggestions through its issue tracker, indicating ongoing refinement of the material. Notebooks and implementation explanations are provided for all ten chapters alongside test coverage.