Встречай YOLO26: ИИ компьютерного зрения нового поколения.
Ultralytics
Назад к глоссарию Ultralytics

Batch Size

Узнай, как размер батча (batch size) влияет на скорость и точность обучения в машинном обучении. Исследуй аппаратные ограничения и оптимизируй Ultralytics YOLO26 с помощью AutoBatch.

В области machine learning и особенно deep learning, Размер пакета (Batch Size) обозначает количество обучающих примеров, используемых за одну итерацию обучения модели. Вместо того чтобы подавать все training data в нейронную сеть целиком — что часто вычислительно невозможно из-за ограничений памяти, — набор данных разбивается на небольшие подмножества, называемые пакетами (батчами). Модель обрабатывает один пакет, вычисляет ошибку и обновляет свои внутренние model weights через backpropagation перед переходом к следующему пакету. Этот гиперпараметр играет ключевую роль в определении как скорости обучения, так и стабильности процесса обучения.

Link to this sectionДинамика обучения с использованием пакетов#

Выбор размера пакета фундаментально меняет то, как алгоритм оптимизации, обычно являющийся вариантом stochastic gradient descent, навигирует по ландшафту функции потерь.

  • Малые размеры пакета: Использование небольшого количества (например, 8 или 16) приводит к «зашумленным» обновлениям. Хотя оценка градиента менее точна для набора данных в целом, этот шум иногда помогает модели избежать локальных минимумов, что потенциально ведет к лучшей обобщающей способности. Однако меньшие пакеты требуют большего количества обновлений за эпоху, что может сделать обучение более медленным по настенным часам из-за накладных расходов.
  • Большие размеры пакета: Большой пакет (например, 128 или 256) обеспечивает более точную оценку градиента, что ведет к более плавной сходимости loss function. Это позволяет эффективно использовать массовую параллелизацию на современном оборудовании, значительно ускоряя вычисления. Однако, если пакет слишком велик, модель может застрять в острых, субоптимальных минимумах, что ведет к overfitting и снижению способности к обобщению на новых данных.

Link to this sectionВлияние на оборудование и память#

Практикам часто приходится выбирать размер пакета исходя из ограничений оборудования, а не чисто теоретических предпочтений. Модели глубокого обучения, особенно крупные архитектуры, такие как трансформеры или продвинутые сверточные сети, хранятся в видеопамяти (VRAM) GPU.

При использовании NVIDIA CUDA для ускорения, VRAM должна вмещать параметры модели, пакет входных данных и промежуточные активации, необходимые для вычисления градиентов. Если размер пакета превышает доступную память, обучение прервется с ошибкой «Out of Memory» (OOM). Методы, такие как обучение со mixed precision, часто применяются для снижения использования памяти, позволяя использовать большие размеры пакетов на том же оборудовании.

Link to this sectionРазграничение похожих концепций#

Для эффективной настройки обучения важно отличать размер пакета от других временных терминов в цикле обучения.

  • Batch Size vs. Epoch: Эпоха представляет собой один полный проход по всему обучающему набору данных. Размер пакета определяет, на сколько частей разбиваются данные внутри этой эпохи. Например, если у тебя есть 1000 изображений и размер пакета 100, потребуется 10 итераций для завершения одной эпохи.
  • Batch Size vs. Iteration: Итерация (или шаг) — это процесс обработки одного пакета и обновления весов. Общее количество итераций при обучении — это количество пакетов за эпоху, умноженное на общее количество эпох.
  • Batch Size vs. Batch Normalization: Хотя они и имеют схожее название, пакетная нормализация (Batch Normalization) — это специфический тип слоя, который нормализует входы слоя на основе среднего значения и дисперсии текущего пакета. Этот метод сильно зависит от размера пакета; если размер пакета слишком мал (например, 2), статистические оценки становятся ненадежными, что может ухудшить производительность.

Link to this sectionРеальные приложения#

Регулировка размера пакета — это рутинная необходимость при развертывании решений компьютерного зрения в различных отраслях.

  1. Высокоточная медицинская визуализация: В области AI in healthcare специалисты часто работают с 3D-объемными данными, такими как МРТ или КТ-сканы. Эти файлы невероятно плотные и требовательные к памяти. Чтобы выполнять задачи, такие как medical image analysis или сложная image segmentation, не обрушивая систему, инженеры часто уменьшают размер пакета до очень малого числа, иногда даже до 1. Здесь приоритетом является обработка деталей высокого разрешения, а не скорость обучения.

  2. Промышленный контроль качества: И наоборот, в AI in manufacturing скорость имеет первостепенное значение. Автоматизированные системы, проверяющие продукты на конвейерной ленте, должны обрабатывать тысячи изображений в час. Во время inference, инженеры могут объединять входящие потоки с камер в более крупные пакеты, чтобы максимизировать использование устройств edge AI, обеспечивая высокую пропускную способность для обнаружения дефектов в реальном времени.

Link to this sectionНастройка размера пакета в Python#

При использовании Ultralytics Python package, установка размера пакета выполняется просто. Ты можешь указать фиксированное целое число или использовать динамическую настройку batch=-1, которая задействует функцию AutoBatch для автоматического вычисления максимального размера пакета, с которым твое оборудование может безопасно работать.

The following example demonstrates how to train a YOLO26 model—the latest standard for speed and accuracy—using a specific batch setting.

from ultralytics import YOLO

# Load the YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")

# Train on the COCO8 dataset
# batch=16 is manually set.
# Alternatively, use batch=-1 for auto-tuning based on available GPU memory.
results = model.train(data="coco8.yaml", epochs=5, batch=16)

Для управления масштабными экспериментами и визуализации того, как различные размеры пакетов влияют на метрики обучения, инструменты, такие как Ultralytics Platform, предоставляют комплексную среду для логирования и сравнения прогонов. Правильная hyperparameter tuning размера пакета часто является финальным шагом для выжимания максимальной производительности из твоей модели.

Explore solutions

Real-time AI that works with your team

ИИ в робототехнике

Делай свои машины умнее с помощью моделей Ultralytics YOLO. ИИ машинного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.

Узнать больше
Real-time AI that works with your team

ИИ в логистике

Оптимизируй логистику с помощью моделей Ultralytics YOLO. Vision AI позволяет инспектировать посылки, сортировать их, отслеживать транспортные средства и контролировать безопасность на складе в реальном времени.

Узнать больше
Real-time AI that works with your team

ИИ в розничной торговле

Переосмысли ритейл с помощью моделей Ultralytics YOLO. Vision AI расширяет возможности отслеживания запасов, мониторинга полок, управления очередями и более глубокого понимания клиентов.

Узнать больше
Real-time AI that works with your team

ИИ в здравоохранении

Создавай решения для здравоохранения с помощью моделей Ultralytics YOLO. ИИ для зрения в медицине ускоряет анализ медицинских изображений, делает диагностику более точной, а мониторинг пациентов — эффективнее.

Узнать больше
Real-time AI that works with your team

ИИ в производстве

Оптимизируй производство с помощью моделей Ultralytics YOLO. Vision AI управляет контролем качества, обнаружением дефектов, соблюдением СИЗ и автоматизацией сборочных линий.

Узнать больше
Real-time AI that works with your operation

ИИ в автомобильной отрасли

Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. ИИ для зрения повышает безопасность дорожного движения, помогает водителю и способствует автоматизации транспортных средств для создания более «умных» дорог.

Узнать больше
Real-time AI tailored to your operation

ИИ в сельском хозяйстве

Внедряй ИИ в «умное» сельское хозяйство с помощью моделей Ultralytics YOLO. Оптимизируй мониторинг посевов, отслеживание скота и точное земледелие для получения более высоких и «умных» урожаев.

Узнать больше
Real-time AI that works with your team

ИИ в робототехнике

Делай свои машины умнее с помощью моделей Ultralytics YOLO. ИИ машинного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.

Узнать больше
Real-time AI that works with your team

ИИ в логистике

Оптимизируй логистику с помощью моделей Ultralytics YOLO. Vision AI позволяет инспектировать посылки, сортировать их, отслеживать транспортные средства и контролировать безопасность на складе в реальном времени.

Узнать больше
Real-time AI that works with your team

ИИ в розничной торговле

Переосмысли ритейл с помощью моделей Ultralytics YOLO. Vision AI расширяет возможности отслеживания запасов, мониторинга полок, управления очередями и более глубокого понимания клиентов.

Узнать больше
Real-time AI that works with your team

ИИ в здравоохранении

Создавай решения для здравоохранения с помощью моделей Ultralytics YOLO. ИИ для зрения в медицине ускоряет анализ медицинских изображений, делает диагностику более точной, а мониторинг пациентов — эффективнее.

Узнать больше
Real-time AI that works with your team

ИИ в производстве

Оптимизируй производство с помощью моделей Ultralytics YOLO. Vision AI управляет контролем качества, обнаружением дефектов, соблюдением СИЗ и автоматизацией сборочных линий.

Узнать больше
Real-time AI that works with your operation

ИИ в автомобильной отрасли

Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. ИИ для зрения повышает безопасность дорожного движения, помогает водителю и способствует автоматизации транспортных средств для создания более «умных» дорог.

Узнать больше
Real-time AI tailored to your operation

ИИ в сельском хозяйстве

Внедряй ИИ в «умное» сельское хозяйство с помощью моделей Ultralytics YOLO. Оптимизируй мониторинг посевов, отслеживание скота и точное земледелие для получения более высоких и «умных» урожаев.

Узнать больше
Real-time AI that works with your team

ИИ в робототехнике

Делай свои машины умнее с помощью моделей Ultralytics YOLO. ИИ машинного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.

Узнать больше
Real-time AI that works with your team

ИИ в логистике

Оптимизируй логистику с помощью моделей Ultralytics YOLO. Vision AI позволяет инспектировать посылки, сортировать их, отслеживать транспортные средства и контролировать безопасность на складе в реальном времени.

Узнать больше
Real-time AI that works with your team

ИИ в розничной торговле

Переосмысли ритейл с помощью моделей Ultralytics YOLO. Vision AI расширяет возможности отслеживания запасов, мониторинга полок, управления очередями и более глубокого понимания клиентов.

Узнать больше
Real-time AI that works with your team

ИИ в здравоохранении

Создавай решения для здравоохранения с помощью моделей Ultralytics YOLO. ИИ для зрения в медицине ускоряет анализ медицинских изображений, делает диагностику более точной, а мониторинг пациентов — эффективнее.

Узнать больше
Real-time AI that works with your team

ИИ в производстве

Оптимизируй производство с помощью моделей Ultralytics YOLO. Vision AI управляет контролем качества, обнаружением дефектов, соблюдением СИЗ и автоматизацией сборочных линий.

Узнать больше
Real-time AI that works with your operation

ИИ в автомобильной отрасли

Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. ИИ для зрения повышает безопасность дорожного движения, помогает водителю и способствует автоматизации транспортных средств для создания более «умных» дорог.

Узнать больше
Real-time AI tailored to your operation

ИИ в сельском хозяйстве

Внедряй ИИ в «умное» сельское хозяйство с помощью моделей Ultralytics YOLO. Оптимизируй мониторинг посевов, отслеживание скота и точное земледелие для получения более высоких и «умных» урожаев.

Узнать больше

Давай строить будущее ИИ вместе!

Начни свой путь в будущее машинного обучения