Weights & Biases
Khám phá cách Weights & Biases đơn giản hóa MLOps cho Ultralytics YOLO26. Tìm hiểu cách theo dõi các thử nghiệm, tối ưu hóa hyperparameter và quản lý artifact để tạo ra các model tốt hơn.
Weights & Biases (thường được viết tắt là W&B hoặc WandB) là một nền tảng Vận hành học máy (MLOps) toàn diện, được thiết kế để giúp các nhà khoa học dữ liệu và kỹ sư Machine Learning tinh gọn quy trình phát triển model. Là một công cụ ưu tiên developer, nền tảng này đóng vai trò là hệ thống ghi nhận trung tâm để theo dõi các experiment, quản lý phiên bản dataset và model, đồng thời trực quan hóa các metric hiệu suất theo thời gian thực. Trong bối cảnh phức tạp của trí tuệ nhân tạo, việc đảm bảo khả năng tái lập và khả năng quan sát các lần training là rất quan trọng; Weights & Biases giải quyết vấn đề này bằng cách tự động ghi lại hyperparameter, metric hệ thống và file đầu ra, cho phép các team so sánh những experiment khác nhau và xác định hiệu quả các cấu hình có hiệu suất tốt nhất.
Các khả năng cốt lõi trong Machine Learning#
Giá trị chính của Weights & Biases nằm ở khả năng tổ chức quy trình thường hỗn loạn khi training các model deep learning. Nền tảng này cung cấp một bộ công cụ tích hợp trực tiếp với các framework phổ biến như PyTorch và hệ sinh thái Ultralytics.
- Theo dõi Experiment: Tính năng này ghi lại tất cả tham số cấu hình, chẳng hạn như learning rate, batch size và kiến trúc model. Tính năng cũng ghi lại các metric động như hàm loss và độ chính xác theo thời gian, rồi hiển thị chúng trong các biểu đồ tương tác.
- Tối ưu hóa Hyperparameter: W&B Sweeps tự động hóa quy trình tinh chỉnh hyperparameter. Bằng cách khám phá các tổ hợp tham số khác nhau, người dùng có thể tối đa hóa các metric hiệu suất của model như Độ chính xác trung bình (mAP) mà không cần can thiệp thủ công.
- Quản lý Artifact: Để đảm bảo theo dõi đầy đủ nguồn gốc, W&B Artifacts quản lý phiên bản của dataset và checkpoint của model. Điều này cho phép người dùng truy vết chính xác phiên bản dữ liệu nào đã tạo ra một model cụ thể, một thành phần quan trọng của giám sát model đáng tin cậy.
- Giám sát hệ thống: Nền tảng theo dõi mức sử dụng phần cứng, bao gồm mức sử dụng GPU, mức tiêu thụ bộ nhớ và nhiệt độ. Điều này giúp xác định các điểm nghẽn và đảm bảo phân bổ tài nguyên hiệu quả trong các phiên training tiêu tốn nhiều năng lực tính toán.
Các ứng dụng trong thực tế#
Weights & Biases được sử dụng rộng rãi trong nhiều ngành để tăng tốc triển khai các giải pháp thị giác máy tính và NLP.
-
Nghiên cứu và Phát triển cộng tác: Các team nghiên cứu AI quy mô lớn sử dụng W&B để chia sẻ tức thời kết quả experiment. Ví dụ, một team phát triển hệ thống nhận thức cho xe tự hành có thể phân công nhiều kỹ sư training các kiến trúc phát hiện đối tượng khác nhau. W&B tổng hợp các lần training này vào một dashboard duy nhất, cho phép team cùng phân tích kiến trúc nào xử lý các trường hợp biên tốt nhất, từ đó rút ngắn các chu kỳ lặp.
-
Bảo trì Model trong Production: Trong các môi trường công nghiệp, chẳng hạn như kiểm soát chất lượng sản xuất, model phải được retrain định kỳ với dữ liệu mới để ngăn data drift. W&B giúp các kỹ sư so sánh hiệu suất của model production tiềm năng với baseline hiện tại, đảm bảo chỉ những model có precision và recall vượt trội mới được triển khai lên thiết bị biên.
Tích hợp với Ultralytics YOLO#
Tích hợp giữa Weights & Biases và Ultralytics diễn ra liền mạch, cung cấp các hình ảnh trực quan phong phú cho các tác vụ phát hiện đối tượng, phân đoạn và ước tính pose. Khi training một model hiện đại như YOLO26, tính năng tích hợp tự động ghi lại các metric, dự đoán bounding box và ma trận nhầm lẫn.
Đoạn mã này minh họa cách tận dụng khả năng ghi log tự động. Chỉ cần cài đặt client, quy trình training sẽ đồng bộ kết quả lên cloud.
from ultralytics import YOLO
# Ensure the wandb client is installed
# pip install wandb
# Load the YOLO26 model (latest generation)
model = YOLO("yolo26n.pt")
# Train the model on the COCO8 dataset
# The integration automatically detects wandb and logs metrics
model.train(data="coco8.yaml", epochs=5, project="YOLO26_Experiments", name="run_01")Phân biệt: Tham số nền tảng và tham số mạng neural#
Điều quan trọng là phải phân biệt nền tảng "Weights & Biases" với các khái niệm nền tảng của mạng neural là weights và biases.
- Weights và Biases (Tham số): Trong một mạng neural, "weights" là các tham số có thể học, quyết định độ mạnh của kết nối giữa các neuron, còn "biases" là các tham số bổ sung cho phép dịch chuyển hàm activation. Đây là các giá trị toán học được tối ưu hóa trong quá trình lan truyền ngược.
- Weights & Biases (Nền tảng): Đây là công cụ phần mềm bên ngoài được thảo luận trên trang này. Mặc dù nền tảng theo dõi các giá trị và gradient của weights và biases trong mạng neural để phân tích, đây là một lớp quản lý nằm trên dữ liệu training và quy trình, chứ không phải bản thân các thành phần toán học đó.
Đối với người dùng muốn quản lý toàn bộ vòng đời, bao gồm gán nhãn và triển khai cùng với việc theo dõi experiment, Ultralytics Platform cũng cung cấp các công cụ mạnh mẽ bổ trợ cho khả năng ghi log metric chi tiết của tích hợp Weights & Biases.









