Перейти к содержимому

Тренировка модели с Ultralytics YOLO

Ultralytics YOLO Экосистема и интеграции

Введение

Обучение модели глубокого обучения заключается в подаче ей данных и настройке параметров таким образом, чтобы она могла делать точные прогнозы. Режим Train в Ultralytics YOLO11 разработан для эффективного и результативного обучения моделей обнаружения объектов, полностью использующих современные аппаратные возможности. Это руководство призвано рассказать обо всех деталях, необходимых тебе для того, чтобы начать обучение собственных моделей с помощью надежного набора функций YOLO11.



Смотри: Как обучить модель YOLO на твоем пользовательском наборе данных в Google Colab.

Почему ты выбираешь Ultralytics YOLO для обучения?

Вот несколько весомых причин, чтобы выбрать режим "Поезд" в YOLO11:

  • Эффективность: Используй максимум возможностей своего оборудования, будь то установка с однимGPU или масштабирование на несколько GPU.
  • Универсальность: Обучайся на пользовательских наборах данных, а также на легкодоступных, таких как COCO, VOC и ImageNet.
  • Удобство для пользователя: простые, но мощные интерфейсы CLI и Python обеспечивают простоту обучения.
  • Гибкость гиперпараметров: Широкий спектр настраиваемых гиперпараметров для тонкой настройки производительности модели.

Ключевые особенности режима поезда

Ниже перечислены некоторые примечательные особенности режима "Поезд" в YOLO11:

  • Автоматическая загрузка данных: Стандартные наборы данных, такие как COCO, VOC и ImageNet, загружаются автоматически при первом использовании.
  • Поддержка несколькихGPU : Масштабируй свои тренировочные усилия без проблем на нескольких GPU, чтобы ускорить процесс.
  • Конфигурация гиперпараметров: Возможность изменять гиперпараметры через конфигурационные файлы YAML или аргументы CLI .
  • Визуализация и мониторинг: Отслеживание показателей обучения в реальном времени и визуализация процесса обучения для более глубокого понимания.

Наконечник

  • Такие наборы данных YOLO11, как COCO, VOC, ImageNet и многие другие, автоматически загружаются при первом использовании, то есть yolo train data=coco.yaml

Примеры использования

Обучи YOLO11n на наборе данных COCO8 для 100 Эпохи при размере изображения 640. Тренировочное устройство можно указать с помощью device аргумент. Если аргумент не передан GPU device=0 будет использоваться, если он доступен, в противном случае device='cpu' будет использоваться. Полный список аргументов для тренировки смотри в разделе "Аргументы" ниже.

ОдиночныйGPU и CPU пример тренировки

Устройство определяется автоматически. Если доступен GPU , то он будет использован, в противном случае тренировка начнется на CPU.

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.yaml")  # build a new model from YAML
model = YOLO("yolo11n.pt")  # load a pretrained model (recommended for training)
model = YOLO("yolo11n.yaml").load("yolo11n.pt")  # build from YAML and transfer weights

# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Build a new model from YAML and start training from scratch
yolo detect train data=coco8.yaml model=yolo11n.yaml epochs=100 imgsz=640

# Start training from a pretrained *.pt model
yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640

# Build a new model from YAML, transfer pretrained weights to it and start training
yolo detect train data=coco8.yaml model=yolo11n.yaml pretrained=yolo11n.pt epochs=100 imgsz=640

МультиGPU тренировка

Обучение с использованием несколькихGPU позволяет более эффективно использовать доступные аппаратные ресурсы, распределяя обучающую нагрузку между несколькими GPU. Эта функция доступна как через Python API, так и через интерфейс командной строки. Чтобы включить мультиGPU обучение, укажи идентификаторы устройств GPU , которые ты хочешь использовать.

Пример тренировки с несколькимиGPU

Чтобы тренироваться с 2 GPU, CUDA устройствами 0 и 1, используй следующие команды. По мере необходимости расширяйся на дополнительные GPU.

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")  # load a pretrained model (recommended for training)

# Train the model with 2 GPUs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device=[0, 1])
# Start training from a pretrained *.pt model using GPUs 0 and 1
yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640 device=0,1

Обучение Apple Silicon MPS

Благодаря поддержке кремниевых чипов Apple, интегрированных в модели Ultralytics YOLO , теперь можно обучать свои модели на устройствах, использующих мощный фреймворк Metal Performance Shaders (MPS). Фреймворк MPS предлагает высокопроизводительный способ выполнения задач по вычислениям и обработке изображений на пользовательском кремнии Apple.

Чтобы включить обучение на кремниевых чипах Apple, при запуске процесса обучения тебе следует указать в качестве устройства 'mps'. Ниже приведен пример того, как это можно сделать в Python и через командную строку:

MPS Пример тренировки

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")  # load a pretrained model (recommended for training)

# Train the model with MPS
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device="mps")
# Start training from a pretrained *.pt model using MPS
yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640 device=mps

Используя вычислительную мощь кремниевых чипов Apple, это позволяет эффективнее обрабатывать учебные задачи. За более подробным руководством и расширенными возможностями настройки обращайся к документацииPyTorch MPS .

Возобновление прерванных тренировок

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

Когда обучение возобновляется, Ultralytics YOLO загружает веса из последней сохраненной модели, а также восстанавливает состояние оптимизатора, планировщика скорости обучения и номер эпохи. Это позволяет тебе беспрепятственно продолжить процесс обучения с того места, где он был прерван.

Ты можешь легко возобновить тренировки в Ultralytics YOLO , установив resume аргумент в пользу True при вызове train и укажи путь к .pt файл, содержащий частично обученные веса модели.

Ниже приведен пример того, как возобновить прерванную тренировку с помощью Python и через командную строку:

Пример подготовки резюме

from ultralytics import YOLO

# Load a model
model = YOLO("path/to/last.pt")  # load a partially trained model

# Resume training
results = model.train(resume=True)
# Resume an interrupted training
yolo train resume model=path/to/last.pt

По настройке resume=True, the train Функция продолжит тренировку с того места, где она остановилась, используя состояние, сохраненное в файле 'path/to/last.pt'. Если в процессе тренировки не было достигнуто resume аргумент опущен или установлен в значение False, the train Функция начнет новую тренировку.

Помни, что контрольные точки сохраняются в конце каждой эпохи по умолчанию или через фиксированные промежутки времени с помощью команды save_period аргумент, поэтому для возобновления тренировочного забега ты должен завершить хотя бы 1 эпоху.

Настройки поезда

Настройки обучения для моделей YOLO включают в себя различные гиперпараметры и конфигурации, используемые в процессе обучения. Эти настройки влияют на производительность, скорость и точность модели. К ключевым настройкам обучения относятся размер партии, скорость обучения, импульс и затухание веса. Кроме того, выбор оптимизатора, функции потерь и состава тренировочного набора данных может повлиять на процесс обучения. Тщательная настройка и эксперименты с этими настройками очень важны для оптимизации производительности.

АргументПо умолчаниюОписание
modelNoneУказывает файл модели для обучения. Принимает путь либо к .pt предварительно обученная модель или .yaml файл конфигурации. Необходим для определения структуры модели или инициализации весов.
dataNoneПуть к файлу конфигурации набора данных (например, coco8.yaml). В этом файле содержатся специфические для набора данных параметры, включая пути к тренировочным и Данные проверки, названия классов и их количество.
epochs100Общее количество тренировочных эпох. Каждая эпоха представляет собой полный проход по всему набору данных. Регулировка этого значения может повлиять на продолжительность тренировки и производительность модели.
timeNoneМаксимальное время тренировки в часах. Если установлено, то оно отменяет значение epochs аргумент, позволяющий автоматически прекратить тренировку по истечении указанной продолжительности. Полезно для сценариев тренировок с ограниченным временем.
patience100Количество эпох, которое нужно подождать, пока не улучшатся показатели валидации, чтобы досрочно прекратить обучение. Помогает предотвратить чрезмерную подгонку, останавливая обучение, когда производительность достигает плато.
batch16Размер партии, с тремя режимами: установить как целое число (например, batch=16), авторежим для 60-процентного использования памяти GPU (batch=-1) или автоматический режим с заданной долей использования (batch=0.70).
imgsz640Целевой размер изображения для обучения. Перед подачей в модель все изображения изменяются до этого размера. Влияет на точность модели и вычислительную сложность.
saveTrueВключает сохранение контрольных точек тренировки и финальных весов модели. Полезно для возобновления тренировки или развертывания модели.
save_period-1Частота сохранения контрольных точек модели, указывается в эпохах. Значение -1 отключает эту функцию. Полезно для сохранения промежуточных моделей во время длительных тренировок.
cacheFalseВключает кэширование изображений наборов данных в памяти (True/ram), на диске (disk), или отключить его (False). Повышает скорость тренировок за счет снижения дискового ввода-вывода ценой увеличения использования памяти.
deviceNoneУказывается вычислительное устройство (устройства) для тренировки: один GPU (device=0), несколько графических процессоров (device=0,1), CPU (device=cpu), или MPS для кремния Apple (device=mps).
workers8Количество рабочих потоков для загрузки данных (на RANK если тренировка мультиGPU ). Влияет на скорость предварительной обработки данных и подачи их в модель, особенно полезно в мультиGPU установках.
projectNoneИмя директории проекта, в которой сохраняются результаты тренировок. Позволяет организовать хранение различных экспериментов.
nameNoneНазвание тренировочного прогона. Используется для создания подкаталога в папке проекта, где будут храниться журналы тренировок и результаты.
exist_okFalseЕсли значение True, это позволяет перезаписать существующий каталог с проектом/именем. Полезно для итеративных экспериментов без необходимости вручную очищать предыдущие результаты.
pretrainedTrueОпределяет, начинать ли обучение с предварительно обученной модели. Может быть булевым значением или строковым путем к конкретной модели, из которой загружаются веса. Повышает эффективность обучения и производительность модели.
optimizer'auto'Выбери оптимизатор для тренировки. Варианты включают в себя SGD, Adam, AdamW, NAdam, RAdam, RMSProp и т.д., или auto для автоматического выбора на основе конфигурации модели. Влияет на скорость сходимости и стабильность.
seed0Задает случайное зерно для тренировки, обеспечивая воспроизводимость результатов в прогонах с одинаковыми конфигурациями.
deterministicTrueПринуждает использовать детерминированные алгоритмы, что обеспечивает воспроизводимость, но может повлиять на производительность и скорость из-за ограничения на недетерминированные алгоритмы.
single_clsFalseВо время обучения все классы в многоклассовых наборах данных рассматриваются как один класс. Полезно для задач бинарной классификации или когда внимание сосредоточено на присутствии объекта, а не на классификации.
rectFalseВключает прямоугольную тренировку, оптимизируя состав партии для минимальной набивки. Это может повысить эффективность и скорость, но может повлиять на точность модели.
cos_lrFalseИспользует косинусный планировщик скорости обучения, настраивая скорость обучения по косинусной кривой в течение эпох. Помогает управлять скоростью обучения для лучшей сходимости.
close_mosaic10Отключает увеличение мозаичных данных в последние N эпох, чтобы стабилизировать тренировку перед завершением. Установка значения 0 отключает эту функцию.
resumeFalseВозобнови тренировку с последней сохраненной контрольной точки. Автоматически загружает веса модели, состояние оптимизатора и количество эпох, продолжая тренировку без проблем.
ampTrueВключает автоматическое обучение со смешанной точностью (AMP), уменьшая расход памяти и, возможно, ускоряя обучение с минимальным влиянием на точность.
fraction1.0Указывает, какую часть набора данных использовать для обучения. Позволяет тренироваться на подмножестве полного набора данных, что полезно для экспериментов или при ограниченных ресурсах.
profileFalseПозволяет профилировать скорости ONNX и TensorRT во время тренировки, что полезно для оптимизации развертывания модели.
freezeNoneЗамораживай первые N слоев модели или указанные слои по индексу, уменьшая количество обучаемых параметров. Полезно для тонкой настройки или трансферного обучения.
lr00.01Начальная скорость обучения (т.е. SGD=1E-2, Adam=1E-3) . Настройка этого значения имеет решающее значение для процесса оптимизации, влияя на то, как быстро обновляются веса моделей.
lrf0.01Конечная скорость обучения как доля от начальной скорости = (lr0 * lrf), используемые вместе с планировщиками для регулировки скорости обучения с течением времени.
momentum0.937Момент-фактор для SGD или beta1 для оптимизаторов Адама, влияющий на включение прошлых градиентов в текущее обновление.
weight_decay0.0005Член регуляризации L2, штрафующий большие веса, чтобы предотвратить перебор.
warmup_epochs3.0Количество эпох для разогрева скорости обучения, постепенно увеличивая скорость обучения от низкого значения до начальной скорости обучения, чтобы стабилизировать обучение на ранних этапах.
warmup_momentum0.8Начальный импульс для фазы разминки, постепенно подстраиваясь под заданный импульс в течение всего периода разминки.
warmup_bias_lr0.1Скорость обучения параметров смещения во время фазы разминки, помогающая стабилизировать обучение модели в начальных эпохах.
box7.5Вес компонента box loss в функции потерь, влияющий на то, насколько большое внимание уделяется точному предсказанию координат bounding box.
cls0.5Вес классификационных потерь в общей функции потерь, влияющий на важность правильного предсказания класса относительно других компонентов.
dfl1.5Вес фокусной потери распределения, используемый в некоторых версиях YOLO для более тонкой классификации.
pose12.0Вес потери позы в моделях, обученных для оценки позы, влияет на акцент на точное предсказание ключевых точек позы.
kobj2.0Вес потери объектности ключевой точки в моделях оценки позы, балансирующий между уверенностью в обнаружении и точностью позы.
label_smoothing0.0Применяет сглаживание меток, смягчая жесткие метки до смеси целевой метки и равномерного распределения по меткам, что может улучшить обобщение.
nbs64Номинальный размер партии для нормализации потерь.
overlap_maskTrueОпределяет, нужно ли объединять маски объектов в одну маску для тренировки, или же держать их отдельно для каждого объекта. В случае перекрытия меньшая маска накладывается поверх большей во время слияния.
mask_ratio4Коэффициент понижения дискретизации для масок сегментации, влияющий на разрешение масок, используемых во время обучения.
dropout0.0Показатель отсева для регуляризации в задачах классификации, предотвращающий перебор с помощью случайного исключения единиц во время обучения.
valTrueВключает валидацию во время обучения, позволяя периодически оценивать производительность модели на отдельном наборе данных.
plotsFalseГенерирует и сохраняет графики метрик обучения и проверки, а также примеры предсказаний, обеспечивая визуальное представление о производительности модели и прогрессе обучения.

Примечание о параметрах размера пакета

The batch аргумент может быть настроен тремя способами:

  • Фиксированный размер партии: Задайте целочисленное значение (например, batch=16), указывая непосредственно количество изображений в пакете.
  • Автоматический режим (60% GPU Memory):Использование batch=-1 чтобы автоматически настроить размер партии для использования памяти примерно на 60% CUDA .
  • Автоматический режим с долей использования: Задайте значение дроби (например, batch=0.70), чтобы отрегулировать размер партии в зависимости от указанной доли используемой памяти GPU .

Настройки дополнения и гиперпараметры

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

АргументТипПо умолчаниюДиапазонОписание
hsv_hfloat0.0150.0 - 1.0Корректирует оттенок изображения на долю цветового круга, внося вариативность цвета. Помогает модели обобщать различные условия освещения.
hsv_sfloat0.70.0 - 1.0Изменяет насыщенность изображения на доли, влияя на интенсивность цветов. Полезно для имитации различных условий окружающей среды.
hsv_vfloat0.40.0 - 1.0Изменяет значение (яркость) изображения на долю, помогая модели хорошо проявить себя при различных условиях освещения.
degreesfloat0.0-180 - +180Произвольно поворачивает изображение в заданном диапазоне градусов, улучшая способность модели распознавать объекты с различной ориентацией.
translatefloat0.10.0 - 1.0Переводит изображение по горизонтали и вертикали на долю размера изображения, помогая научиться обнаруживать частично видимые объекты.
scalefloat0.5>=0.0Масштабируй изображение по коэффициенту усиления, имитируя объекты на разных расстояниях от камеры.
shearfloat0.0-180 - +180Обрезай изображение на заданный градус, имитируя эффект предметов, рассматриваемых под разными углами.
perspectivefloat0.00.0 - 0.001Применяет к изображению случайное преобразование перспективы, улучшая способность модели понимать объекты в трехмерном пространстве.
flipudfloat0.00.0 - 1.0Переворачивает изображение с заданной вероятностью, увеличивая вариативность данных без ущерба для характеристик объекта.
fliplrfloat0.50.0 - 1.0Переворачивай изображение слева направо с заданной вероятностью, что полезно для изучения симметричных объектов и увеличения разнообразия датасетов.
bgrfloat0.00.0 - 1.0Переворачивай каналы изображения из RGB в BGR с заданной вероятностью, что полезно для повышения устойчивости к неправильному упорядочиванию каналов.
mosaicfloat1.00.0 - 1.0Объединяет четыре тренировочных изображения в одно, имитируя различные композиции сцены и взаимодействие объектов. Высокоэффективно для понимания сложных сцен.
mixupfloat0.00.0 - 1.0Смешивай два изображения и их метки, создавая составное изображение. Усиливает способность модели к обобщению, вводя шум от меток и визуальную изменчивость.
copy_pastefloat0.00.0 - 1.0Копирует объекты с одного изображения и вставляет их на другое, что полезно для увеличения количества экземпляров объектов и изучения окклюзии объектов.
copy_paste_modestrflip-Выбор метода увеличения Copy-Paste среди вариантов ("flip", "mixup").
auto_augmentstrrandaugment-Автоматическое применение предопределенной политики аугментации (randaugment, autoaugment, augmix), оптимизируя для задач классификации за счет разнообразия визуальных признаков.
erasingfloat0.40.0 - 0.9Случайно стирает часть изображения во время обучения классификации, побуждая модель сосредоточиться на менее очевидных признаках для распознавания.
crop_fractionfloat1.00.1 - 1.0Обрезает классификационное изображение до меньшего размера, чтобы подчеркнуть центральные особенности и адаптироваться к масштабам объектов, уменьшая фоновые отвлекающие факторы.

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

Информация

Подробнее о тренировочных операциях с аугментацией читай в справочном разделе.

Запись в журнале

При обучении модели YOLO11 тебе может показаться полезным отслеживать ее работу с течением времени. Вот тут-то и вступает в игру логирование. Ultralytics' YOLO обеспечивает поддержку трех типов логгеров - Comet, ClearML и TensorBoard.

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

Comet

Comet Это платформа, которая позволяет ученым, изучающим данные, и разработчикам отслеживать, сравнивать, объяснять и оптимизировать эксперименты и модели. Она предоставляет такие функциональные возможности, как метрики в реальном времени, различия в коде и отслеживание гиперпараметров.

Чтобы использовать Comet:

Пример

# pip install comet_ml
import comet_ml

comet_ml.init()

Не забудь войти в свой аккаунт Comet на их сайте и получить свой API-ключ. Тебе нужно будет добавить его в переменные окружения или в свой скрипт для регистрации экспериментов.

ClearML

ClearML Это платформа с открытым исходным кодом, которая автоматизирует отслеживание экспериментов и помогает эффективно распределять ресурсы. Она призвана помочь командам более эффективно управлять, выполнять и воспроизводить свою работу в области ML.

Чтобы использовать ClearML:

Пример

# pip install clearml
import clearml

clearml.browser_login()

После запуска этого скрипта тебе нужно будет войти в свой аккаунт ClearML в браузере и аутентифицировать свою сессию.

TensorBoard

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

Чтобы использовать TensorBoard в Google Colab:

Пример

load_ext tensorboard
tensorboard --logdir ultralytics/runs  # replace with 'runs' directory

Чтобы использовать TensorBoard локально, выполни приведенную ниже команду и просмотри результаты на сайте http://localhost:6006/.

Пример

tensorboard --logdir ultralytics/runs  # replace with 'runs' directory

Это загрузит TensorBoard и направит его в директорию, где сохранены твои журналы тренировок.

После настройки логгера ты можешь приступать к тренировке модели. Все показатели тренировки будут автоматически регистрироваться в выбранной тобой платформе, и ты сможешь обращаться к этим логам, чтобы отслеживать эффективность своей модели с течением времени, сравнивать разные модели и выявлять области для улучшения.

ВОПРОСЫ И ОТВЕТЫ

Как обучить модель обнаружения объектов с помощью Ultralytics YOLO11?

Чтобы обучить модель обнаружения объектов с помощью Ultralytics YOLO11, ты можешь использовать либо Python API, либо CLI. Ниже приведен пример для обоих вариантов:

ОдиночныйGPU и CPU пример тренировки

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640

Более подробную информацию ты найдешь в разделе " Настройки поезда ".

Каковы ключевые особенности режима "Поезд" Ultralytics YOLO11?

Основные особенности режима "Поезд" Ultralytics YOLO11 включают в себя:

  • Автоматическая загрузка наборов данных: Автоматически загружай стандартные наборы данных, такие как COCO, VOC и ImageNet.
  • Поддержка несколькихGPU : Масштабируй обучение на нескольких GPU для более быстрой обработки.
  • Конфигурация гиперпараметров: Настраивай гиперпараметры через YAML-файлы или аргументы CLI .
  • Визуализация и мониторинг: Отслеживай показатели тренировок в реальном времени, чтобы лучше понять суть происходящего.

Эти функции делают тренировку эффективной и настраиваемой под твои нужды. Подробнее об этом читай в разделе " Ключевые особенности режима тренировки ".

Как возобновить тренировку после прерванного занятия в Ultralytics YOLO11?

Чтобы возобновить тренировку после прерванного занятия, установи resume аргумент в пользу True и укажи путь к последней сохраненной контрольной точке.

Пример подготовки резюме

from ultralytics import YOLO

# Load the partially trained model
model = YOLO("path/to/last.pt")

# Resume training
results = model.train(resume=True)
yolo train resume model=path/to/last.pt

За дополнительной информацией обращайся к разделу " Возобновление прерванных тренировок ".

Можно ли тренировать модели YOLO11 на кремниевых чипах Apple?

Да, Ultralytics YOLO11 поддерживает обучение на кремниевых чипах Apple, использующих фреймворк Metal Performance Shaders (MPS). Укажи 'mps' в качестве устройства для обучения.

MPS Пример тренировки

from ultralytics import YOLO

# Load a pretrained model
model = YOLO("yolo11n.pt")

# Train the model on Apple silicon chip (M1/M2/M3/M4)
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device="mps")
yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640 device=mps

Более подробную информацию ты найдешь в разделе " Обучение Apple Silicon MPS ".

Каковы общие параметры тренировок и как их настроить?

Ultralytics YOLO11 позволяет тебе настроить множество параметров обучения, таких как размер партии, скорость обучения, эпохи и многое другое с помощью аргументов. Вот краткий обзор:

АргументПо умолчаниюОписание
modelNoneПуть к файлу с моделью для обучения.
dataNoneПуть к файлу конфигурации набора данных (например, coco8.yaml).
epochs100Общее количество тренировочных эпох.
batch16Размер партии, настраиваемый как в целочисленном, так и в автоматическом режиме.
imgsz640Целевой размер изображения для тренировки.
deviceNoneВычислительное устройство (устройства) для тренировок типа cpu, 0, 0,1, или mps.
saveTrueВключает сохранение контрольных точек тренировки и финальных весов модели.

Подробное руководство по настройкам тренировок ты найдешь в разделе " Настройки тренировок ".

📅 Создано 1 год назад ✏️ Обновлено 14 дней назад

Комментарии