Model Soups
Узнай, как «супы моделей» (Model Soups) повышают точность и надежность путем усреднения весов моделей Ultralytics YOLO. Научись повышать производительность без увеличения задержки.
Model Soups — это метод машинного обучения, при котором веса нескольких нейронных сетей, дообученных на основе одной и той же предобученной модели с использованием различных гиперпараметров, усредняются для создания одной, более устойчивой модели. Этот подход позволяет тебе повысить общую точность и обобщающую способность без увеличения вычислительных затрат во время инференса.
При дообучении модели ты обычно проводишь масштабный поиск hyperparameter tuning, чтобы найти наиболее эффективную конфигурацию. Традиционно выбирается одна лучшая модель, а остальные отбрасываются. Однако создание Model Soup позволяет использовать разнообразие признаков, изученных всеми моделями в процессе поиска. Путем прямого усреднения их model weights результирующая сеть часто превосходит по характеристикам лучшую отдельную модель, эффективно объединяя их сильные стороны и минимизируя overfitting. Этот процесс высокоэффективен и легко управляется в таких средах для совместной работы, как Ultralytics Platform.
Link to this sectionРеальные приложения#
Model Soups чрезвычайно эффективны в сценариях, где вычислительные ресурсы ограничены, но требуются высокая точность и надежность.
- Компьютерное зрение для автономного транспорта: При развертывании систем object detection в самоуправляемых автомобилях модели должны демонстрировать обобщающую способность в различных условиях освещения и погоды. Усредняя несколько моделей, обученных с использованием различных методов аугментации данных и скоростей обучения, ты создаешь высокоустойчивый «суп», который сохраняет низкую inference latency. Это гарантирует, что скорость обработки в реальном времени, критически важная для autonomous navigation, останется неизменной.
- Мобильная медицинская диагностика: В приложениях Edge AI, таких как выполнение image classification на смартфонах для первичного дерматологического скрининга, вычислительная мощность сильно ограничена. Model Soup обеспечивает прирост точности, необходимый для клинической надежности, гарантируя при этом, что итоговый размер модели легко помещается на mobile edge devices, не разряжая аккумулятор и не требуя подключения к облаку.
Link to this sectionРазграничение связанных понятий#
Чтобы ориентироваться в области deep learning optimization, важно отличать Model Soups от схожих методов:
- Model Ensemble: Ансамблирование объединяет предсказания (выходные данные) нескольких независимых моделей. Хотя это повышает точность, оно требует запуска каждой модели во время инференса, умножая вычислительные затраты. Model Soups усредняют веса до инференса, сохраняя вычислительную стоимость на уровне одной модели.
- Model Merging: Это более широкий термин для объединения моделей, которые могли быть обучены для совершенно разных задач или на разных наборах данных. Model Soups — это специфическое подмножество слияния, где все модели происходят из одной и той же pre-trained base architecture и дообучаются для одной целевой задачи.
Link to this sectionПример реализации#
Создание универсального Model Soup включает доступ к PyTorch state dictionary нескольких обученных моделей и математическое усреднение их тензоров. Ниже приведен краткий пример того, как это можно реализовать с помощью рабочего процесса Ultralytics YOLO26, нативно поддерживаемого 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 instanceBy leveraging this technique, computer vision practitioners can easily boost performance metrics like zero-shot learning capabilities and general robustness without sacrificing the deployment speed required for modern, edge-first AI architectures.






