Model Soups
Khám phá cách Model Soups cải thiện độ chính xác và độ bền bằng cách lấy trung bình các trọng số của các model Ultralytics YOLO. Tìm hiểu cách tăng hiệu suất mà không làm tăng độ trễ.
Model Soups đề cập đến một kỹ thuật học máy, trong đó trọng số của nhiều mạng nơ-ron, được tinh chỉnh từ cùng một base model tiền huấn luyện với các siêu tham số khác nhau, được tính trung bình với nhau để tạo ra một model đơn nhất và mạnh mẽ hơn. Cách tiếp cận này cho phép các nhà phát triển cải thiện độ chính xác tổng thể và khả năng tổng quát hóa mà không làm tăng chi phí tính toán trong quá trình suy luận (inference).
Khi tinh chỉnh một model, các kỹ sư thường thực hiện một đợt hyperparameter tuning rộng rãi để tìm ra cấu hình có hiệu suất tốt nhất. Theo truyền thống, model đơn lẻ tốt nhất sẽ được chọn và phần còn lại sẽ bị loại bỏ. Tuy nhiên, việc tạo ra model soup tận dụng các đặc trưng đa dạng được học bởi tất cả các model trong đợt quét. Bằng cách tính trung bình trực tiếp model weights của chúng, mạng kết quả thường vượt trội hơn model đơn lẻ tốt nhất, kết hợp hiệu quả thế mạnh của chúng đồng thời giảm thiểu overfitting. Quá trình này có hiệu suất cao và có thể dễ dàng quản lý trong các môi trường cộng tác như Ultralytics Platform.
Các ứng dụng trong thực tế#
Model Soups đặc biệt hiệu quả trong các kịch bản bị hạn chế về tài nguyên tính toán nhưng đòi hỏi độ chính xác và tính ổn định cao.
- Thị giác Xe tự hành: Khi triển khai các hệ thống object detection trên ô tô tự lái, các model phải tổng quát hóa trên các điều kiện ánh sáng và thời tiết đa dạng. Bằng cách tính trung bình nhiều model được huấn luyện với các kỹ thuật tăng cường dữ liệu và tốc độ học khác nhau, các kỹ sư tạo ra một soup có độ bền vững cao, duy trì inference latency thấp. Điều này đảm bảo tốc độ xử lý thời gian thực rất quan trọng đối với autonomous navigation không bị ảnh hưởng.
- Chẩn đoán Y tế Di động: Trong các ứng dụng edge AI, chẳng hạn như chạy image classification trên điện thoại thông minh để sàng lọc da liễu ban đầu, năng lực tính toán bị hạn chế nghiêm trọng. Model soup cung cấp độ chính xác được nâng cao cần thiết cho độ tin cậy lâm sàng đồng thời đảm bảo dung lượng cuối cùng vừa vặn trên mobile edge devices mà không làm cạn kiệt pin hoặc yêu cầu kết nối đám mây.
Phân biệt các khái niệm liên quan#
Để điều hướng bối cảnh deep learning optimization, điều quan trọng là phải phân biệt Model Soups với các kỹ thuật tương tự:
- Model Ensemble: Ensembling kết hợp các dự đoán (output) của nhiều model độc lập. Mặc dù điều này cải thiện độ chính xác, nhưng nó đòi hỏi phải chạy mọi model trong quá trình suy luận, làm nhân lên chi phí tính toán. Model Soups tính trung bình các trọng số trước khi suy luận, giữ cho chi phí tính toán giống hệt với một model duy nhất.
- Model Merging: Đây là một thuật ngữ rộng hơn để kết hợp các model có thể đã được huấn luyện trên các tác vụ hoặc tập dữ liệu hoàn toàn khác nhau. Model Soups là một tập hợp con cụ thể của việc hợp nhất, trong đó tất cả các model bắt nguồn từ cùng một pre-trained base architecture chính xác và được tinh chỉnh trên cùng một tác vụ mục tiêu.
Ví dụ về triển khai#
Việc tạo ra một model soup đồng nhất liên quan đến việc truy cập PyTorch state dictionary của nhiều model đã được huấn luyện và tính trung bình toán học các tensor của chúng. Dưới đây là một ví dụ ngắn gọn về cách có thể đạt được điều này bằng cách sử dụng quy trình làm việc Ultralytics YOLO26 được hỗ trợ gốc bởi PyTorch framework.
import torch
# Load the PyTorch state dictionaries from two fine-tuned YOLO26 models
model1 = torch.load("yolo26_run1.pt")["model"].state_dict()
model2 = torch.load("yolo26_run2.pt")["model"].state_dict()
# Create a uniform model soup by averaging the model weights
soup_dict = {key: (model1[key] + model2[key]) / 2.0 for key in model1.keys()}
# The resulting soup_dict can now be loaded into a new YOLO26 instanceBằng cách tận dụng kỹ thuật này, các chuyên gia thị giác máy tính có thể dễ dàng thúc đẩy các chỉ số hiệu suất như khả năng zero-shot learning và tính mạnh mẽ tổng quát mà không phải hy sinh tốc độ triển khai cần thiết cho các kiến trúc AI hướng biên hiện đại.






