Перейти к содержанию

Облачное обучение

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

graph LR
    A[Configure] --> B[Start Training]
    B --> C[Provision GPU]
    C --> D[Download Dataset]
    D --> E[Train]
    E --> F[Stream Metrics]
    F --> G[Save Checkpoints]
    G --> H[Complete]

    style A fill:#2196F3,color:#fff
    style B fill:#FF9800,color:#fff
    style E fill:#9C27B0,color:#fff
    style H fill:#4CAF50,color:#fff

Диалог обучения

Начните обучение из пользовательского интерфейса платформы, нажав Новая модель на любой странице проекта (или Обучить со страницы набора данных). Диалоговое окно обучения имеет две вкладки: Облачное обучение и Локальное обучение.

Платформа Ultralytics: Вкладка «Облако» в диалоговом окне обучения

Шаг 1: Выбор базовой модели

Выберите из официальных моделей YOLO26 или ваших собственных обученных моделей:

КатегорияОписание
ОфициальныйВсе 25 моделей YOLO26 (5 размеров x 5 задач)
Ваши моделиВаши завершенные модели для дообучения

Официальные модели организованы по типу задачи (Detect, Segment, Pose, OBB, Classify) с размерами от nano до xlarge.

Шаг 2: Выбор набора данных

Выберите набор данных для обучения (см. Наборы данных):

ВариантОписание
ОфициальныйПодготовленные наборы данных от Ultralytics
Ваши наборы данныхНаборы данных, которые вы загрузили

Требования к датасету

Наборы данных должны быть в ready статус, при котором имеется как минимум 1 изображение в обучающей выборке, 1 изображение в валидационной или тестовой выборке и как минимум 1 размеченное изображение.

Несоответствие задачи

Появляется предупреждение о несоответствии задач, если задача модели (например, detect) не соответствует задаче набора данных (например, segment). Обучение завершится ошибкой, если вы продолжите работу с несоответствующими задачами. Убедитесь, что и модель, и набор данных используют один и тот же тип задачи, как описано в руководствах по задачам.

Шаг 3: Настройка параметров

Установите основные параметры обучения:

ПараметрОписаниеПо умолчанию
ЭпохиКоличество итераций обучения100
Размер пакетаОбразцы за итерацию16
Размер изображенияРазрешение ввода (выпадающий список 320/416/512/640/1280 или 32-4096 в редакторе yaml)640
Имя запускаОпциональное имя для запуска обученияавто

Шаг 4: Расширенные настройки (Необязательно)

Разверните Расширенные настройки, чтобы получить доступ к полнофункциональному редактору параметров на основе yaml с более чем 40 параметрами обучения, сгруппированными по категориям (см. справочник по конфигурации):

ГруппаПараметры
Скорость обученияlr0, lrf, momentum, weight_decay, warmup_epochs, warmup_momentum, warmup_bias_lr
ОптимизаторSGD, MuSGD, Adam, AdamW, NAdam, RAdam, RMSProp, Adamax
Веса потерьбокс, класс, DFL, поза, kobj, сглаживание меток
Аугментация цветаhsv_h, hsv_s, hsv_v
Геометрическая аугментацияградусы, перемещение, масштабирование, сдвиг, перспектива
Аугментация Flip & Mix.flipud, fliplr, mosaic, MixUp, copy_paste
Управление обучениемpatience, seed, deterministic, amp, cos_lr, close_mosaic, save_period
Набор данныхдоля, заморозка, single_cls, rect, multi_scale, возобновить

Параметры учитывают задачу (например, copy_paste отображается только для задач segment, pose/kobj только для задач позы). А Изменено Значок появляется, когда значения отличаются от значений по умолчанию, и вы можете сбросить все до значений по умолчанию с помощью кнопки сброса.

Пример: Настройка аугментации для небольших наборов данных

For small datasets (<1000 images), increase augmentation to reduce overfitting:

mosaic: 1.0       # Keep mosaic on
mixup: 0.3        # Add mixup blending
copy_paste: 0.3   # Add copy-paste (segment only)
fliplr: 0.5       # Horizontal flip
degrees: 10.0     # Slight rotation
scale: 0.9        # Aggressive scaling

Шаг 5: Выберите GPU (Вкладка «Облако»)

Выберите ваш GPU из Ultralytics Cloud:

Платформа Ultralytics: Выбор GPU и стоимость в диалоговом окне обучения

GPUVRAMСтоимость/час
RTX 2000 Ada16 ГБ$0.24
RTX A450020 ГБ$0.24
RTX A500024 ГБ$0.26
RTX 4000 Ada20 ГБ$0.38
L424 ГБ$0.39
A4048 ГБ$0.40
RTX 309024 ГБ$0.46
RTX A600048 ГБ$0.49
RTX 409024 ГБ$0.59
RTX 6000 Ada48 ГБ$0.77
L40S48 ГБ$0.86
RTX 509032 ГБ$0.89
L4048 ГБ$0.99
A100 PCIe80 ГБ$1.39
A100 SXM80 ГБ$1.49
RTX PRO 600096 ГБ$1.89
H100 PCIe80 ГБ$2.39
H100 SXM80 ГБ$2.69
H100 NVL94 ГБ$3.07
H200 NVL143 ГБ$3.39
H200 SXM141 ГБ$3.59
B200180 ГБ$4.99

Выбор GPU

  • RTX PRO 6000: 96 ГБ поколения Blackwell, рекомендуется по умолчанию для большинства задач.
  • A100 SXM: Требуется для больших размеров пакетов или крупных моделей
  • H100/H200: Максимальная производительность для обучения с жесткими временными ограничениями (для H200 требуется версия Pro или Enterprise)
  • B200: архитектура NVIDIA для передовых рабочих нагрузок (требуется версия Pro или Enterprise)

Диалоговое окно показывает ваш текущий баланс и кнопку «Пополнить». Расчетная стоимость и продолжительность вычисляются на основе вашей конфигурации (размер модели, изображения набора данных, эпохи, скорость GPU).

Шаг 6: Начать обучение

Нажмите Начать обучение, чтобы запустить задачу. Платформа:

  1. Выделяет экземпляр GPU
  2. Загружает ваш набор данных
  3. Начинает обучение
  4. Передает метрики в реальном времени

Жизненный цикл задачи обучения

Задачи обучения проходят следующие статусы:

СтатусОписание
ОжидаетсяЗадание отправлено, ожидание выделения GPU
ЗапускGPU выделено, загрузка набора данных и модели
ЗапускОбучение в процессе, метрики передаются в реальном времени
ЗавершеноОбучение успешно завершено
НеудачноОбучение не удалось (подробности см. в логах консоли)
ОтмененоОбучение было отменено пользователем

Бесплатные кредиты

Новые аккаунты получают приветственные кредиты — $5 для личных электронных писем и $25 для корпоративных электронных писем. Проверьте свой баланс в Настройках > Оплата.

Платформа Ultralytics: Прогресс обучения с графиками

Мониторинг обучения

Просмотр хода обучения в реальном времени на вкладке Обучение страницы модели:

Подвкладка диаграмм

Динамические графики обучения модели платформы Ultralytics

МетрикаОписание
ПотериПотери при обучении и валидации
mAPСредняя точность
ТочностьКорректные положительные предсказания
Полнота (Recall)Обнаруженные истинные значения

Подвкладка консоли

Вывод консоли в реальном времени с поддержкой цветов ANSI, индикаторами прогресса и обнаружением ошибок.

Подвкладка "Система"

Использование GPU, памяти, температуры, CPU и диска в реальном времени.

Контрольные точки

Контрольные точки сохраняются автоматически:

  • Каждая эпоха: Сохраняются последние веса
  • Лучшая модель: Сохраняется контрольная точка с наивысшим mAP
  • Финальная модель: Веса по завершении обучения

Отменить обучение

Нажмите Отменить обучение на странице модели, чтобы остановить выполняющуюся задачу:

  • Вычислительный экземпляр завершен
  • Начисление кредитов прекращается
  • Контрольные точки, сохраненные до этого момента, сохраняются.

Удаленное обучение

graph LR
    A[Local GPU] --> B[Train]
    B --> C[ultralytics Package]
    C --> D[Stream Metrics]
    D --> E[Platform Dashboard]

    style A fill:#FF9800,color:#fff
    style C fill:#2196F3,color:#fff
    style E fill:#4CAF50,color:#fff

Обучение на собственном оборудовании с потоковой передачей метрик на платформу.

Требования к версии пакета

Для интеграции с платформой требуется Ultralytics>=8.4.14. Более ранние версии НЕ будут работать с платформой.

pip install -U ultralytics

Настройка ключа API

  1. Перейти Settings > Profile (раздел API Keys)
  2. Создайте новый ключ (или платформа автоматически создает его при открытии вкладки «Локальное обучение»)
  3. Установите переменную окружения:
export ULTRALYTICS_API_KEY="your_api_key"

Обучение с потоковой передачей

Используйте project и name параметры для потоковой передачи метрик:

yolo train model=yolo26n.pt data=coco.yaml epochs=100 \
  project=username/my-project name=experiment-1
from ultralytics import YOLO

model = YOLO("yolo26n.pt")
model.train(
    data="coco.yaml",
    epochs=100,
    project="username/my-project",
    name="experiment-1",
)

Вкладка Локальное обучение в диалоговом окне обучения показывает предварительно настроенную команду с вашим API-ключом, выбранными параметрами и включенными расширенными аргументами.

Использование наборов данных платформы

Обучение с использованием наборов данных, хранящихся на платформе, с помощью ul:// Формат URI:

yolo train model=yolo26n.pt data=ul://username/datasets/my-dataset epochs=100 \
  project=username/my-project name=exp1
from ultralytics import YOLO

model = YOLO("yolo26n.pt")
model.train(
    data="ul://username/datasets/my-dataset",
    epochs=100,
    project="username/my-project",
    name="exp1",
)

Параметр ul:// Формат URI автоматически загружает и настраивает ваш набор данных. Модель автоматически связывается с набором данных на платформе (см. Использование наборов данных платформы).

Оплата

Стоимость обучения основывается на использовании GPU:

Оценка стоимости

Перед началом обучения платформа оценивает общую стоимость следующим образом:

  1. Оценка секунд на эпоху на основе размера набора данных, сложности модели, размера изображения, размера пакета и скорости GPU.
  2. Расчет общего времени обучения путем умножения секунд на эпоху на количество эпох, затем добавление накладных расходов на запуск
  3. Расчет оценочной стоимости из общего количества часов обучения, умноженного на почасовую ставку GPU.

Факторы, влияющие на стоимость:

ФакторВлияние
Размер набора данныхБольше изображений = большее время обучения (базовый показатель: ~2,8 с вычислений на 1000 изображений на RTX 4090)
Размер моделиБольшие модели (m, l, x) обучаются медленнее, чем (n, s)
Количество эпохПрямой множитель времени обучения
Размер изображенияБольший imgsz увеличивает вычислительную нагрузку: 320px=0.25x, 640px=1.0x (базовое значение), 1280px=4.0x
Размер пакетаБольшие пакеты более эффективны (пакет 32 = ~0.85x времени, пакет 8 = ~1.2x времени по сравнению с базовым пакетом 16)
Скорость GPUБолее быстрые GPU сокращают время обучения (например, H100 SXM ~ в 3,4 раза быстрее, чем RTX 4090)
Накладные расходы при запускеДо 5 минут для инициализации экземпляра, загрузки данных и прогрева (масштабируется в зависимости от размера набора данных)

Примеры стоимости

Оценки

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

СценарийGPUОриентировочная стоимость
500 изображений, YOLO26n, 50 эпохRTX 4090~0,50 $
1000 изображений, YOLO26n, 100 эпохRTX PRO 6000~5 $
5000 изображений, YOLO26s, 100 эпохH100 SXM~23 $

Процесс выставления счетов

graph LR
    A[Estimate Cost] --> B[Balance Check]
    B --> C[Train]
    C --> D[Charge Actual Runtime]

    style A fill:#2196F3,color:#fff
    style B fill:#FF9800,color:#fff
    style C fill:#9C27B0,color:#fff
    style D fill:#4CAF50,color:#fff

Порядок тарификации облачного обучения:

  1. Оценка: Стоимость рассчитывается до начала обучения
  2. Проверка баланса: Доступные кредиты проверяются перед запуском
  3. Обучение: Задача выполняется на выбранном вычислительном ресурсе
  4. Оплата: Окончательная стоимость рассчитывается исходя из фактического времени выполнения.

Защита потребителей

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

Выставление счетов в зависимости от статуса задания

СтатусЗаряжено?
ЗавершеноДа — фактическое GPU использования GPU
ОтмененоДа — GPU с момента запуска до отмены
НеудачноНет — за неудачные попытки плата не взимается
ЗастрялЧастичная оплата — оплачивается только фактическое время обучения

Ответственность за ошибки не несем

Если тренировочный запуск завершился сбоем из-за ошибки в настройках, нехватки памяти или по любой другой причине, с вас не будет взиматься плата. Оплата производится только за время успешного выполнения вычислений. Зависшие задания (без активности в течение 4 и более часов) автоматически завершаются, и оплата взимается только за время, в течение которого GPU активно GPU обучение, а не за время простоя.

Способы оплаты

МетодОписание
Баланс счетаПредоплаченные кредиты
Оплата за заданиеСписание по завершении задания

Минимальный баланс

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

Просмотр стоимости обучения

После обучения подробные расходы можно просмотреть на вкладке Биллинг:

  • Разбивка стоимости по эпохам
  • Общее время работы GPU
  • Скачать отчет о расходах

Ultralytics Platform: Детали оплаты обучения

Советы по обучению

Выбор подходящего размера модели

МодельПараметрыЛучше всего подходит для
YOLO26n2.4MУстройства реального времени, периферийные устройства
YOLO26s9.5MСбалансированная скорость/точность
YOLO26m20.4MПовышенная точность
YOLO26l24.8MПроизводственная точность
YOLO26x55.7MМаксимальная точность

Оптимизация времени обучения

Стратегии экономии затрат

  1. Начните с малого: Проведите тестирование с 10-20 эпохами на бюджетном GPU, чтобы убедиться в работоспособности вашего набора данных и конфигурации.
  2. Используйте подходящий GPU: RTX PRO 6000 хорошо справляется с большинством рабочих нагрузок
  3. Валидация набора данных: Исправьте проблемы с разметкой, прежде чем тратить ресурсы на обучение.
  4. Ранний мониторинг: Отмените обучение, если потери стабилизируются — вы платите только за фактически использованное вычислительное время.

Устранение неполадок

ПроблемаРешение
Обучение зависло на 0%Проверьте формат набора данных, повторите попытку
Недостаточно памятиУменьшите размер пакета или используйте более мощный GPU
Низкая точностьУвеличьте количество эпох, проверьте качество данных
Медленное обучениеРассмотрите более быстрый GPU
Ошибка несоответствия задачУбедитесь, что задачи модели и набора данных совпадают

Часто задаваемые вопросы

Сколько времени занимает обучение?

Время обучения зависит от:

  • Размер набора данных
  • Размер модели
  • Количества эпох
  • Выбранный GPU

Типичное время (1000 изображений, 100 эпох):

МодельRTX PRO 6000A100
YOLO26n20 мин20 мин
YOLO26m40 мин40 мин
YOLO26x80 мин80 мин

Можно ли обучать ночью?

Да, обучение продолжается до завершения. Вы получите уведомление по окончании обучения. Убедитесь, что на вашем счете достаточно средств для обучения на основе эпох.

Что произойдет, если у меня закончатся средства?

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

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

Отрицательный баланс

Отрицательный баланс препятствует только запуску новых заданий на обучение. Существующие развертывания и другие функции платформы продолжают работать в обычном режиме. Чтобы избежать перебоев в работе, пополните баланс в разделе «Настройки» > «Оплата» или включите функцию автоматического пополнения.

Что произойдет, если стоимость обучения окажется выше сметы?

Расчетные затраты являются приблизительными — фактическая продолжительность обучения может варьироваться в зависимости от таких факторов, как скорость загрузки данных, GPU и поведение модели при сходимости. Если фактические затраты превысят расчетные, ваш баланс может стать отрицательным (см. выше). Платформа не прерывает обучение на основании расчетных данных.

Для управления затратами:

  • Отслеживайте ход обучения в режиме реального времени и при необходимости прекращайте его досрочно
  • Включите функцию автоматического пополнения, чтобы баланс пополнялся автоматически
  • Начните с более коротких циклов (меньшего количества эпох), чтобы скорректировать ожидания

Могу ли я использовать пользовательские аргументы обучения?

Да, разверните раздел Расширенные настройки в диалоговом окне обучения, чтобы получить доступ к редактору yaml с более чем 40 настраиваемыми параметрами. Нестандартные значения включены как в облачные, так и в локальные команды обучения.

Редактор YAML также поддерживает импорт конфигураций из предыдущих циклов обучения:

  • Копирование из существующей модели: на странице любой готовой модели на карточке «Настройки обучения» есть кнопка «Копировать как JSON ». Скопируйте JSON-код и вставьте его прямо в редактор YAML — он автоматически распознает формат JSON и импортирует все параметры.
  • Вставьте YAML или JSON: вставьте в редактор любую допустимую конфигурацию обучения в формате YAML или JSON. Параметры проверяются автоматически: значения, выходящие за пределы допустимого диапазона, ограничиваются, а также отображаются предупреждения.
  • Перетаскивание файлов: Перетащите .yaml или .json файл непосредственно в редактор, чтобы импортировать его параметры.

Обучение Ultralytics : копирование диалога настроек обучения в файл JSON

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

Можно ли обучать модель со страницы набора данных?

Да, кнопка «Обучить» на страницах наборов данных открывает диалоговое окно обучения с предварительно выбранным и заблокированным набором данных. Затем вы выбираете проект и модель для начала обучения.

Справочник параметров обучения

ПараметрТипПо умолчаниюДиапазонОписание
epochsint1001-10000Количество эпох обучения
batchint161-512Размер пакета (batch size)
imgszint64032-4096Размер входного изображения
patienceint1001-1000Терпение ранней остановки
seedint00-2147483647Зерно случайных чисел для воспроизводимости
deterministicboolИстина-Детерминированный режим обучения
ampboolИстина-Автоматическая смешанная точность
close_mosaicint100-50Отключить мозаику в последних N эпохах
save_periodint-1-1-100Сохранять контрольную точку каждые N эпох
workersint80-64Количество рабочих процессов загрузчика данных
cacheВыбратьложьОЗУ/диск/falseКэшировать изображения
ПараметрТипПо умолчаниюДиапазонОписание
lr0float0.010.0001-0.1Начальная скорость обучения
lrffloat0.010.01-1.0Конечный коэффициент LR
momentumfloat0.9370.6-0.98Моментум SGD
weight_decayfloat0.00050.0-0.001L2-регуляризация
warmup_epochsfloat3.00-5Эпохи разминки
warmup_momentumfloat0.80.5-0.95Прогрев моментума
warmup_bias_lrfloat0.10.0-0.2Прогрев смещения LR
cos_lrboolFalse-Косинусный планировщик LR
ПараметрТипПо умолчаниюДиапазонОписание
hsv_hfloat0.0150.0-0.1Аугментация оттенка HSV
hsv_sfloat0.70.0-1.0Насыщенность HSV
hsv_vfloat0.40.0-1.0Значение HSV
degreesfloat0.0-45-45Угол поворота
translatefloat0.10.0-1.0Доля смещения
scalefloat0.50.0-1.0Коэффициент масштабирования
shearfloat0.0-10-10Градусы сдвига
perspectivefloat0.00.0-0.001Перспективное преобразование
fliplrfloat0.50.0-1.0Вероятность горизонтального отражения
flipudfloat0.00.0-1.0Вероятность вертикального отражения
mosaicfloat1.00.0-1.0Мозаичная аугментация
mixupfloat0.00.0-1.0Аугментация MixUp
copy_pastefloat0.00.0-1.0Копирование-вставка (segment)
ПараметрТипПо умолчаниюДиапазонОписание
fractionfloat1.00.1-1.0Доля набора данных для использования
freezeintnull0-100Количество замораживаемых слоев
single_clsboolFalse-Обрабатывать все классы как один класс
rectboolFalse-Прямоугольное обучение
multi_scalefloat0.00.0-1.0Многомасштабный диапазон обучения
valboolИстина-Выполнять валидацию во время обучения
resumeboolFalse-Возобновить обучение с контрольной точки
ЗначениеОписание
autoАвтоматический выбор (по умолчанию)
SGDСтохастический градиентный спуск
MuSGDОптимизатор Muon SGD
AdamОптимизатор Adam
AdamWAdam с затуханием весов
NAdamОптимизатор NAdam
RAdamоптимизатор RAdam
RMSPropОптимизатор RMSProp
AdamaxОптимизатор Adamax
ПараметрТипПо умолчаниюДиапазонОписание
boxfloat7.51-50Вес потерь ограничивающей рамки
clsfloat0.50.2-4Вес потери классификации
dflfloat1.50.4-6Фокальная функция потерь распределения
posefloat12.01-50Вес потери pose (только pose)
kobjfloat1.00.5-10Объектность ключевых точек (поза)
label_smoothingfloat0.00.0-0.1Коэффициент сглаживания меток

Параметры, специфичные для задачи

Некоторые параметры применимы только к конкретным задачам:

  • Только задачи detect (detect, segment, pose, obb — не classify): box, dfl, degrees, translate, shear, perspective, mosaic, mixup, close_mosaic
  • Только segment: copy_paste
  • Только pose: pose (вес функции потерь), kobj (объектность ключевых точек)


📅 Создано 2 месяцев назад ✏️ Обновлено 2 дней назад
glenn-jochermykolaxboikosergiuwaxmannLaughing-q

Комментарии