Framework — tầng giữa toán học và phần cứng
Machine Learning Systems — Tập I, Chương 7
← tất cả bài họcDanh sách cảnh (13 mục, 100 cảnh)
Mục 1Mục đích0:00
Mục 2Ba bài toán của framework2:07
Mục 3Cái thang trừu tượng4:24
Mục 4Bài toán thực thi5:50
Mục 5Bài toán vi phân27:08
Mục 6Bài toán trừu tượng43:41
Mục 7Trừu tượng nn.Module65:43
Mục 8Phân tích các nền tảng framework69:56
Mục 9Đích triển khai73:46
Mục 10Chọn framework75:51
Mục 11Giải phẫu một bước huấn luyện79:38
Mục 12Ngộ nhận và cạm bẫy84:44
Mục 13Tổng kết88:37
📓 Sổ tay thực hành
Chạy trên Colab bằng CPU, không cần cài thêm gì.
1. Thuế điều phối: khi phụ trội lớn hơn việc thật
Leo cái thang trừu tượng trên một phép nhân ma trận, tính thuế điều phối 94 và 13 phần trăm của sách, đo phụ trội mỗi lần gọi trên CPU bằng cách chia cùng một lượng việc thành n lần gọi, áp định luật phụ trội điều phối cho một MLP nhỏ và một tầng GPT-3, rồi dựng lại bảng phân tích một bước huấn luyện, đếm các phép PyTorch thật sự điều phối và đo bước đó khi tầng ẩn rộng dần.
Mục 2. Ba bài toán của framework · 3. Cái thang trừu tượng · 4. Bài toán thực thi · 11. Giải phẫu một bước huấn luyện · 12. Ngộ nhận và cạm bẫy · 13. Tổng kết
chạy dưới 1 phútMở trong Colab ↗2. Đồ thị, hợp nhất và khi nào biên dịch hoàn vốn
Bắt đồ thị của một khối nhỏ bằng torch.fx, đọc từng đỉnh và loại mã chết, đếm các nhóm hợp nhất cùng số lần nạp và số byte theo mô hình 2kNb → 2Nb, xem lần theo vết đi sai nhánh mà không báo lỗi, đo một chuỗi tám phép chạy tức thời và sau torch.compile, rồi tính lợi ích biên dịch, điểm hoà vốn 134,000 ảnh và ngộ nhận 44.2× từ bảng giả định của chương.
Mục 2. Ba bài toán của framework · 4. Bài toán thực thi · 10. Chọn framework · 12. Ngộ nhận và cạm bẫy · 13. Tổng kết
chạy dưới 1 phútMở trong Colab ↗3. Vi phân tự động: băng, liên hợp và cái giá bộ nhớ
Tự viết chế độ xuôi bằng số đối ngẫu và chế độ ngược bằng một cuộn băng, chạy lại vết tính tay x² sin x của chương và kiểm với torch.autograd, đếm chi phí hai chế độ rồi đo grad với jacfwd, đọc đồ thị liên kết ngược, đếm con sóng bộ nhớ và lưu điểm kích hoạt, dựng lại bốn thành phần bộ nhớ huấn luyện (ResNet-50, Adam, 7 tỷ, 175 tỷ, thuế hành chính), cạm bẫy tăng batch, các cơ chế điều khiển luồng gradient và tầng tuyến tính viết theo kiểu hàm thuần khiết.
Mục 2. Ba bài toán của framework · 5. Bài toán vi phân · 6. Bài toán trừu tượng · 8. Phân tích các nền tảng framework · 12. Ngộ nhận và cạm bẫy · 13. Tổng kết
chạy dưới 1 phútMở trong Colab ↗4. Tensor, thiết bị và dữ liệu: những hợp đồng dưới một lời gọi model(x)
Tính hệ số 4.45 của tàu Mars Climate Orbiter rồi tạo lại lỗi cùng loại với một tensor NHWC, đọc siêu dữ liệu, sải bước, view và bản sao bằng tay, đo cái giá của một phép chép chuyển vị, dùng kiểu dữ liệu như một đòn bẩy (INT8 bằng tay, tràn dưới của FP16), tính bốn đường truyền của bảng 7 và đo độ trễ cùng băng thông của một đường copy, tính nhịp quy trình dữ liệu và đo bộ nạp MNIST, kiểm ba nguyên lý của nn.Module, rồi đặt một mô hình phát hiện từ khoá ví dụ lên đích 256 KB RAM.
Mục 2. Ba bài toán của framework · 3. Cái thang trừu tượng · 6. Bài toán trừu tượng · 7. Trừu tượng nn.Module · 9. Đích triển khai · 12. Ngộ nhận và cạm bẫy · 13. Tổng kết
chạy dưới 1 phútMở trong Colab ↗