Yolo Tầm nhìn Thâm Quyến
Thâm Quyến
Tham gia ngay
Bảng chú giải thuật ngữ

Huấn luyện phân tán (Distributed Training)

Khám phá cách huấn luyện phân tán mở rộng quy mô khối lượng công việc AI trên nhiều GPU. Tìm hiểu cách tăng tốc. Ultralytics Luyện tập YOLO26 với DDP để có kết quả nhanh hơn và chính xác hơn.

Huấn luyện phân tán là một phương pháp trong học máy, trong đó khối lượng công việc huấn luyện mô hình được chia nhỏ cho nhiều bộ xử lý hoặc máy tính. Cách tiếp cận này rất cần thiết để xử lý các tập dữ liệu quy mô lớn và các kiến ​​trúc mạng nơ-ron phức tạp mà nếu không sẽ mất một lượng thời gian không thực tế để huấn luyện trên một thiết bị duy nhất. Bằng cách tận dụng sức mạnh tính toán kết hợp của nhiều Bộ xử lý đồ họa (GPU) hoặc Tensor Với các bộ xử lý trung tâm (TPU), việc huấn luyện phân tán giúp tăng tốc đáng kể chu kỳ phát triển, cho phép các nhà nghiên cứu và kỹ sư lặp lại quy trình nhanh hơn và đạt được độ chính xác cao hơn trong các mô hình của họ.

Cách thức hoạt động của đào tạo phân tán

Ý tưởng cốt lõi đằng sau huấn luyện phân tán là song song hóa. Thay vì xử lý dữ liệu tuần tự trên một chip, nhiệm vụ được chia thành các phần nhỏ hơn và được xử lý đồng thời. Có hai chiến lược chính để đạt được điều này:

  • Song song hóa dữ liệu : Đây là phương pháp phổ biến nhất cho các tác vụ như phát hiện đối tượng . Trong thiết lập này, một bản sao của toàn bộ mô hình được đặt trên mỗi thiết bị. Dữ liệu huấn luyện toàn cục được chia thành các lô nhỏ hơn, và mỗi thiết bị xử lý một lô khác nhau cùng một lúc. Sau mỗi bước, độ dốc (các cập nhật cho mô hình) được đồng bộ hóa trên tất cả các thiết bị để đảm bảo trọng số của mô hình luôn nhất quán.
  • Song song hóa mô hình : Khi một mạng nơ-ron (NN) quá lớn để chứa vừa trong bộ nhớ của một bộ xử lý đơn lẻ. GPU Trong mô hình này, bản thân nó được phân tán trên nhiều thiết bị. Các lớp hoặc thành phần khác nhau của mô hình nằm trên các chip khác nhau, và dữ liệu được truyền giữa chúng. Điều này thường cần thiết để huấn luyện các mô hình nền tảng khổng lồ và các Mô hình Ngôn ngữ Lớn (LLM) .

Các Ứng dụng Thực tế

Đào tạo phân tán đã làm thay đổi các ngành công nghiệp bằng cách giúp giải quyết những vấn đề mà trước đây không thể thực hiện được về mặt tính toán.

  • Lái xe tự hành: Phát triển các phương tiện tự hành an toàn đòi hỏi phải phân tích hàng petabyte dữ liệu video và cảm biến. Các kỹ sư ô tô sử dụng các cụm máy tính phân tán lớn để huấn luyện các mô hình thị giác nhằm phân đoạn ngữ nghĩa và phát hiện làn đường theo thời gian thực. Quy mô khổng lồ này đảm bảo rằng trí tuệ nhân tạo trong các hệ thống ô tô có thể phản ứng đáng tin cậy với các điều kiện đường xá đa dạng.
  • Hình ảnh y tế: Trong lĩnh vực chăm sóc sức khỏe, việc phân tích các bản quét 3D độ phân giải cao như MRI đòi hỏi bộ nhớ và sức mạnh xử lý đáng kể. Huấn luyện phân tán cho phép các nhà nghiên cứu xây dựng các công cụ chẩn đoán hiệu suất cao để phát hiện khối u và các nhiệm vụ quan trọng khác. Bằng cách sử dụng các khung phần mềm như NVIDIA MONAI , các bệnh viện có thể huấn luyện các mô hình trên các tập dữ liệu đa dạng mà không gặp phải tình trạng tắc nghẽn bộ nhớ, từ đó cải thiện kết quả ứng dụng AI trong chăm sóc sức khỏe .

Sử dụng đào tạo phân tán với Ultralytics

Các ultralytics Thư viện này giúp việc triển khai huấn luyện song song dữ liệu phân tán (DDP) trở nên dễ dàng. Bạn có thể mở rộng quy mô huấn luyện của mình với các thuật toán tiên tiến nhất. YOLO26 Quản lý mô hình trên nhiều GPU bằng cách đơn giản chỉ định chỉ số thiết bị trong các tham số huấn luyện.

from ultralytics import YOLO

# Load a pre-trained YOLO26 model
model = YOLO("yolo26n.pt")

# Train the model using two GPUs (device 0 and 1)
# The library automatically handles the DDP communication backend
results = model.train(data="coco8.yaml", epochs=100, device=[0, 1])

Các khái niệm và so sánh liên quan

Việc phân biệt huấn luyện phân tán với các thuật ngữ tương tự trong hệ sinh thái học máy sẽ giúp hiểu rõ vai trò cụ thể của chúng:

  • So với Học tập Liên kết: Mặc dù cả hai đều liên quan đến nhiều thiết bị, nhưng mục tiêu của chúng khác nhau. Huấn luyện phân tán thường tập trung dữ liệu trong một cụm máy chủ hiệu năng cao để tối đa hóa tốc độ. Ngược lại, học tập liên kết giữ dữ liệu phi tập trung trên các thiết bị của người dùng (như điện thoại thông minh) để ưu tiên quyền riêng tư dữ liệu , cập nhật mô hình toàn cục mà không cần dữ liệu thô rời khỏi nguồn.
  • So với Điện toán hiệu năng cao (HPC): HPC là một lĩnh vực rộng lớn bao gồm siêu máy tính cho các mô phỏng khoa học như dự báo thời tiết. Huấn luyện phân tán là một ứng dụng cụ thể của HPC được áp dụng cho các thuật toán tối ưu hóa trong học sâu. Nó thường dựa vào các thư viện giao tiếp chuyên dụng như NVIDIA NCCL để giảm thiểu độ trễ giữa các GPU.

Mở rộng quy mô với nền tảng đám mây

Quản lý cơ sở hạ tầng cho huấn luyện phân tán có thể phức tạp. Các nền tảng hiện đại đơn giản hóa điều này bằng cách cung cấp môi trường được quản lý. Ví dụ, Nền tảng Ultralytics cho phép người dùng quản lý tập dữ liệu và khởi tạo các lần chạy huấn luyện có thể được triển khai trên môi trường đám mây hoặc cụm máy tính cục bộ. Sự tích hợp này giúp đơn giản hóa quy trình làm việc từ chú thích dữ liệu đến triển khai mô hình cuối cùng, đảm bảo việc mở rộng quy mô lên nhiều GPU diễn ra liền mạch nhất có thể. Tương tự, các nhà cung cấp dịch vụ đám mây như Google Cloud Vertex AIAmazon SageMaker cung cấp cơ sở hạ tầng mạnh mẽ để chạy các tác vụ huấn luyện phân tán ở quy mô doanh nghiệp.

Tham gia Ultralytics cộng đồng

Tham gia vào tương lai của AI. Kết nối, hợp tác và phát triển cùng với những nhà đổi mới toàn cầu

Tham gia ngay