Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас
Глоссарий

Эпоха

Узнайте об эпохах в машинном обучении - как они влияют на обучение модели, предотвращают перебор и оптимизируют производительность с помощью Ultralytics YOLO.

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

Механика обучения с течением времени

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

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

Эпохи против партий против итераций

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

  • Эпоха: Процесс однократного прохождения всего набора данных через сеть.
  • Размер партии: Количество образцов, обрабатываемых перед обновлением весов модели. Загрузить в память массивный набор данных сразу за один раз часто бывает невозможно, поэтому данные делятся на более мелкие группы, называемые партиями.
  • Итерация: Один шаг обновления, на котором модель обрабатывает одну партию и выполняет обратного распространения для корректировки весов.

Например, если у вас есть набор данных из 10 000 изображений и задан размер партии 100, то для завершения одной эпохи потребуется 100 итераций. чтобы завершить одну эпоху.

Определение оптимального количества эпох

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

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

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

Применение в реальном мире

Понятие эпохи является универсальным для различных доменах машинного обучения (ML).

  • Автономное вождение: Разработка Для создания автономного транспортного средства требуются надежные модели обнаружения объектов модели обнаружения объектов, обученные на массивных наборах данных, содержащих миллионы уличных сцен. Такая модель, как YOLO11 может быть обучена в течение сотен эпох, чтобы убедиться. чтобы она могла надежно идентифицировать пешеходов и дорожные знаки в различных погодных условиях. Тщательное обучение обеспечивает система достигает высокой Средняя точность (mAP) перед развертывания.
  • Сельскохозяйственный мониторинг: В В точном сельском хозяйстве беспилотники используют компьютерное зрение для мониторинга состояния сельскохозяйственных культур. Поскольку наборы данных по сельскому хозяйству могут быть меньшими или очень специфичными, исследователи могут использовать трансферное обучение и тренироваться в течение меньшего количества эпох для точной настройки предварительно обученной модели, используя увеличение данных для искусственного расширения чтобы искусственно расширить набор данных и предотвратить чрезмерную подгонку.

Пример кода: Обучение с помощью эпох

При использовании ultralytics библиотеке, указание количества эпох является простым. Адрес train() метод принимает epochs аргумент, который управляет тем, сколько раз модель итерируется над предоставленными данными.

from ultralytics import YOLO

# Load the YOLO11 model (recommended for latest performance)
model = YOLO("yolo11n.pt")

# Train the model for 50 epochs on the COCO8 dataset
# The 'epochs' argument defines the total passes through the data
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)

Этот фрагмент демонстрирует, как запустить тренировочный прогон, в ходе которого модель будет уточнять свое понимание набора данных "coco8" 50 раз. Для будущих усовершенствований Ultralytics в настоящее время разрабатывает YOLO26, которая будет поддерживать сквозное обучение с еще большей эффективностью, запуск которой ожидается в в конце 2025 года.

Присоединяйтесь к сообществу Ultralytics

Присоединяйтесь к будущему ИИ. Общайтесь, сотрудничайте и развивайтесь вместе с мировыми новаторами

Присоединиться сейчас