Học sâu ứng dụng với PyTorch (Từ không đến thành thạo)
Khóa học này cung cấp một giới thiệu toàn diện về Học sâu (Deep Learning) bằng cách sử dụng PyTorch, khung phần mềm phổ biến nhất trong nghiên cứu học máy. Bắt đầu từ nền tảng tensor, sinh viên sẽ lần lượt đi qua toàn bộ quy trình học máy, thị giác máy tính, kỹ thuật lập trình phần mềm theo mô-đun, học truyền đạt (transfer learning) và triển khai mô hình. Nội dung chương trình được xây dựng theo hướng "mã nguồn trước", nhấn mạnh thực hành trực tiếp và thí nghiệm.
Tổng quan khóa học
📚 Tóm tắt nội dung
Khóa học này cung cấp một giới thiệu toàn diện về Học sâu (Deep Learning) bằng PyTorch, khung phần mềm phổ biến nhất cho nghiên cứu học máy. Bắt đầu từ nền tảng tensor, sinh viên sẽ lần lượt đi qua toàn bộ quy trình học máy, thị giác máy tính, kỹ thuật phần mềm theo mô-đun, học chuyển giao (transfer learning), và triển khai mô hình. Chương trình học mang tính "code-first", nhấn mạnh thực hành và thí nghiệm trực tiếp, đảm bảo sinh viên không chỉ hiểu lý thuyết mà còn có thể xây dựng, tối ưu hóa và triển khai các hệ thống học sâu vững chắc.
Một tóm tắt ngắn gọn về mục tiêu chính là thành thạo toàn bộ sinh thái PyTorch, từ toán học cơ bản đến ứng dụng thị giác máy tính sẵn sàng sản xuất.
🎯 Mục tiêu học tập
- Triển khai toàn bộ quy trình học máy trong PyTorch, từ các thao tác tensor cơ bản đến huấn luyện, đánh giá và lưu trữ mô hình.
- Thiết kế và triển khai các kiến trúc học sâu, bao gồm Mạng nơ-ron nhân tạo (ANNs) và Mạng nơ-ron tích chập (CNNs), cho các bài toán phân loại phức tạp và thị giác máy tính.
- Chuyển đổi mã thử nghiệm thành phần mềm chuẩn sản xuất, theo mô hình kỹ thuật và cấu trúc thư mục chuẩn.
- Sử dụng các kỹ thuật nâng cao như Học chuyển giao và theo dõi thí nghiệm hệ thống (TensorBoard) để đạt kết quả tiên tiến nhất trên các tập dữ liệu tùy chỉnh.
- Chuẩn bị và triển khai mô hình đã huấn luyện vào ứng dụng web tương tác và tận dụng các tính năng hiện đại của PyTorch 2.0 để tăng tốc suy luận.
Bài học 共 10 课时 · 预计 30.0h
Bài học
Lesson
This lesson introduces PyTorch tensors as the fundamental data structures for deep learning, emphasizing their role in GPU-accelerated computation and automatic differentiation. Students will learn to manage tensor properties like shape, dtype, and device, while mastering essential manipulation techniques for building and training neural networks.
This lesson introduces the standardized six-pillar PyTorch workflow, providing a repeatable blueprint for building, training, and deploying deep learning models. Students will learn how to manage data preparation, tensor alignment, and the core training loop to ensure robust model performance and generalization.
This lesson explores the necessity of non-linear activation functions, such as ReLU, in deep neural networks to overcome the limitations of linear models when classifying complex, non-linear data. Students will learn how to build and train a PyTorch model capable of forming intricate decision boundaries using hidden layers and appropriate loss functions like Binary Cross Entropy.
This lesson introduces Convolutional Neural Networks (CNNs) as an efficient alternative to fully connected networks for processing high-dimensional image data. Students will learn how CNNs utilize local receptive fields, shared weights, and pooling to achieve parameter efficiency, as well as how to format image data into the required (N, C, H, W) tensor structure for PyTorch.
This lesson explores how to build efficient data pipelines in PyTorch by transitioning from simple toy datasets to managing complex, real-world data. Students learn to decouple data processing by using the Dataset class for individual sample retrieval and transformation, and the DataLoader for optimized, parallelized batch delivery.
This lesson explores the transition from experimental Jupyter Notebooks to production-ready modular Python scripts by emphasizing the importance of the Separation of Concerns principle. Students learn to organize deep learning projects into distinct components—such as data setup, model architecture, and training logic—to improve code reproducibility, testability, and scalability.
This lesson introduces transfer learning as a solution to the high resource demands of deep learning by reusing pre-trained models to achieve high accuracy with limited data. Students learn how to freeze feature extraction layers and adapt the classifier head in PyTorch to effectively apply generalized visual knowledge to specific new tasks.
This lesson explores the necessity of systematic experiment tracking in deep learning to overcome the reproducibility crisis and ensure reliable model development. Students learn how to implement automated tracking for hyperparameters, environment states, and performance metrics to facilitate effective debugging, optimization, and project collaboration.
This lesson focuses on the transition from theoretical research to practical engineering by teaching students how to deconstruct scientific papers into modular, high-performance PyTorch code. You will learn to map complex mathematical architectures like the Vision Transformer into functional components while mastering systematic debugging techniques for tensor shapes and data types.
This lesson covers the transition from exploratory research to production-ready deployment by focusing on refactoring code into modular, stateless services. Students will learn how to optimize models for low-latency inference, ensure reproducibility, and properly export model artifacts using state dictionaries and inference mode.