Chương 52 mô hình song hành
Mô hình song hành là một loại song hành tính toán sách lược, trong đó nhiều cái vi xử lý ( Tiết điểm ) đồng thời xử lý mô hình khác biệt bộ phận.
Mô hình song hành chủ yếu dùng xử lý cỡ lớn mạng lưới thần kinh mô hình, như chiều sâu trong học tập cuốn tích mạng lưới thần kinh (CNN) cùng tuần hoàn mạng lưới thần kinh (RNN) các loại.
Mô hình song hành có thể rõ rệt đề cao tính toán tính năng, nhất là tại trong chiều sâu học tập huấn luyện cùng quá trình suy luận.
Mô hình song hành mấu chốt tư tưởng là đem cỡ lớn mạng lưới thần kinh mô hình chia cắt thành nhiều cái Tử Mô Hình, mỗi cái vi xử lý ( Tiết điểm ) phụ trách xử lý một cái Tử Mô Hình.
Mô hình song hành có thể tại trong nhiều loại song hành tính toán mô hình thực hiện, nhưcùng GPGPU( Thông dụng GPU tính toán ). Phía dưới là thực hiện mô hình song hành một chút đề nghị:
1.
Mô hình phân chia:
Đem cỡ lớn mạng lưới thần kinh mô hình chia cắt thành nhiều cái Tử Mô Hình, để tại nhiều cái vi xử lý ( Tiết điểm ) ở giữa thực hiện phụ tải cân đối.
Mô hình phân chia có thể căn cứ vào mạng lưới thần kinh kết cấu ( Như tầng, module chờ ) tiến hành, cũng có thể căn cứ vào mạng lưới thần kinh tham số ( Như quyền trọng, lại đưa chờ ) tiến hành.
2.
Thông tin cùng đồng bộ:
Mô hình song hành cần tại vi xử lý ( Tiết điểm ) ở giữa tiến hành thông tin cùng đồng bộ, để trao đổi ở giữa kết quả cùng sát nhập kết quả cuối cùng.
Thông tin cùng đồng bộ sách lược cần cân nhắc thông tin chi phí, tính toán hiệu suất cùng chương trình có thể mở rộng tính chất các loại nhân tố. Thường gặp thông tin cùng đồng bộ sách lược bao quát điểm đối điểm thông tin, tụ tập thông tin cùng phân trị sách lược các loại.
3.
Lập trình mô hình cùng kho ủng hộ:
Mô hình song hành có thể sử dụng nhiều loại lập trình mô hình cùng kho thực hiện, nhưđẳng.
Lựa chọn thích hợp lập trình mô hình cùng kho có thể giúp đơn giản hoá lập trình việc làm, đề cao khai phát hiệu suất.
4.
Mô hình cục bộ tính chất cùng tính toán song hành tính chất:
Mô hình song hành cần đầy đủ lợi dụng mô hình cục bộ tính chất cùng tính toán song hành tính chất, lấy đề cao tính toán hiệu suất.
Mô hình cục bộ tính chất có thể thông qua sử dụng cục bộ tồn trữ khí, cache cùng dự lấy sách lược tới thực hiện, mà tính toán song hành tính chất có thể thông qua đem cỡ lớn mạng lưới thần kinh mô hình chia cắt thành nhỏ hơn độc lập nhiệm vụ tới thực hiện.
5.
Dung sai cùng có thể mở rộng tính chất:
Mô hình song hành cần cân nhắc dung sai cùng có thể mở rộng tính chất, lấy ứng đối tính toán qua trình bên trong xuất hiện trục trặc cùng tính năng bình cảnh.
Dung sai sách lược có thể bao quát sai lầm kiểm trắc, sai lầm uốn nắn cùng sai lầm khôi phục các loại, mà có thể mở rộng tính chất sách lược có thể bao quát động thái phụ tải cân đối, mô hình một lần nữa phân phối cùng tính toán tài nguyên điều chỉnh các loại.
Phía dưới là một cái sử dụng PyTorch thực hiện mô hình song hành đơn giản thí dụ mẫu.
Tại trong cái này ví dụ, chúng ta đem một cái mạng lưới thần kinh mô hình khác biệt tầng phân bố tại nhiều cái GPU lên.
Đầu tiên, bảo đảm cài đặt PyTorch kho.
Tiếp đó, sáng tạo một cái đơn giản nhiều tầng cảm giác cơ (MLP) mô hình:
"""python
nn.ReLU(),
nn.ReLU(),
)
"""
Kế tiếp, sử dụngThực hiện mô hình song hànhSẽ tự động đem mô hình khác biệt tầng phân bố tại nhiều cái GPU lên:
"""python
Thu phát
"""
Tại trong cái này ví dụ, chúng ta đầu tiên thu hoạch có thể dùng GPU số lượng.
Tiếp đó, chúng ta sử dụngĐem MLP mô hình phân bố tại nhiều cái GPU lên.
Cuối cùng, chúng ta vì mô hình sáng tạo một cái ngẫu nhiên đưa vào tensor "x", đồng thời tính toán thu phátSẽ tự động đem mô hình khác biệt tầng phân bố tại nhiều cái GPU lên, lấy đề cao tính toán tính năng.
Cái này ví dụ chỉ dùng tại biểu thị mục đích.
Tại trong ứng dụng thực tế, ngài có thể cần sử dụng cao cấp hơn mô hình ( Như cuốn tích mạng lưới thần kinh hoặc tuần hoàn mạng lưới thần kinh ) cùng với càng lớn tập dữ liệu.