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

Exploding Gradient

Узнай, как взрыв градиентов влияет на глубокое обучение, и открой для себя проверенные методы смягчения проблемы, такие как отсечение градиентов (gradient clipping), для обеспечения стабильного обучения Ultralytics YOLO26.

Взрыв градиентов происходит во время обучения искусственных нейронных сетей, когда градиенты — значения, используемые для обновления весов сети, — накапливаются и становятся чрезмерно большими. Это явление обычно возникает во время backpropagation (обратного распространения ошибки), процесса, при котором сеть вычисляет ошибку и корректирует себя для повышения точности. Когда эти сигналы ошибки многократно умножаются через глубокие слои, они могут расти экспоненциально, что приводит к огромным обновлениям model weights. Эта нестабильность не позволяет модели сойтись, фактически разрушая процесс обучения и часто приводя к тому, что функция потерь выдает NaN (Not a Number) значения.

Link to this sectionМеханика нестабильности#

Чтобы понять, почему градиенты взрываются, полезно взглянуть на структуру архитектур deep learning. В глубоких сетях, таких как Recurrent Neural Networks (RNNs) или очень глубокие сверточные нейронные сети (CNN), градиент для ранних слоев является произведением коэффициентов всех последующих слоев. Если эти коэффициенты больше 1.0, многократное умножение работает как эффект снежного кома.

Это создает сценарий, в котором optimizer делает слишком большие шаги, проскакивая оптимальное решение в ландшафте ошибок. Это распространенная проблема при обучении на сложных данных с использованием стандартных алгоритмов, таких как Stochastic Gradient Descent (SGD).

Link to this sectionМетоды предотвращения и смягчения последствий#

Современная разработка ИИ использует несколько стандартных методов, чтобы предотвратить выход градиентов из-под контроля, обеспечивая надежное model training.

  • Gradient Clipping (отсечение градиентов): Это наиболее прямое вмешательство. Оно включает в себя установку порогового значения. Если норма вектора градиента превышает этот порог, она уменьшается (отсекается) до соответствия лимиту. Этот метод является стандартным в фреймворках natural language processing и позволяет модели продолжать стабильное обучение.
  • Batch Normalization (пакетная нормализация): Нормализуя входные данные каждого слоя так, чтобы их среднее значение было равно нулю, а дисперсия — единице, Batch Normalization предотвращает получение слишком больших или слишком малых значений. Это структурное изменение значительно сглаживает ландшафт оптимизации.
  • Weight Initialization (инициализация весов): Стратегии правильной инициализации, такие как Xavier initialization (или инициализация Глорота), задают начальные веса так, чтобы дисперсия активаций оставалась неизменной во всех слоях.
  • Residual Connections (остаточные соединения): Архитектуры, такие как Residual Networks (ResNets), вводят пропускные соединения (skip connections). Эти пути позволяют градиентам проходить через сеть, не проходя через каждую нелинейную функцию активации, что смягчает мультипликативный эффект.
  • Advanced Optimizers (продвинутые оптимизаторы): Алгоритмы, такие как Adam optimizer, используют адаптивные темпы обучения (learning rates) для отдельных параметров, что позволяет им справляться с изменяющимися масштабами градиентов лучше, чем базовый SGD.

Link to this sectionВзрывающиеся против затухающих градиентов#

Проблема взрывающегося градиента часто обсуждается вместе с ее противоположностью — vanishing gradient (затухающим градиентом). Оба явления возникают из правила цепочки (chain rule) математического анализа, используемого при обратном распространении ошибки, но проявляются они по-разному.

  • Exploding Gradient: Градиенты становятся слишком большими (больше 1.0). Это приводит к нестабильным обновлениям весов, переполнению численных значений и расходимости. Это часто исправляется с помощью отсечения градиентов (gradient clipping).
  • Vanishing Gradient: Градиенты становятся слишком малыми (меньше 1.0) и приближаются к нулю. Это заставляет ранние слои сети полностью прекратить обучение. Это часто исправляется с помощью функций активации, таких как ReLU или их модификаций (leaky variants).

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

Управление величиной градиента критически важно для развертывания надежных ИИ-решений в различных отраслях.

  1. Generative AI и языковое моделирование: Обучение Large Language Models (LLMs) или таких моделей, как GPT-4, требует обработки очень длинных последовательностей текста. Без таких механизмов, как отсечение градиентов и нормализация слоев (Layer Normalization), накопленные градиенты за сотни временных шагов немедленно привели бы к провалу обучения. Стабильные градиенты гарантируют, что модель изучит сложные грамматические структуры и контекст.

  2. Продвинутое компьютерное зрение: В задачах типа object detection современные модели, такие как YOLO26, используют глубокие архитектуры с сотнями слоев. Ultralytics YOLO26 включает в себя продвинутую нормализацию и остаточные блоки нативно, гарантируя, что ты сможешь обучать модели на огромных наборах данных, таких как COCO, без ручной настройки порогов градиента. Эта стабильность важна при использовании Ultralytics Platform для автоматизированных рабочих процессов обучения.

Link to this sectionПример кода на Python#

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

import torch
import torch.nn as nn

# Define a simple model and optimizer
model = nn.Linear(10, 1)
optimizer = torch.optim.SGD(model.parameters(), lr=0.1)

# Simulate a training step
loss = torch.tensor(100.0, requires_grad=True)  # Simulated high loss
loss.backward()

# Clip gradients in place to a maximum norm of 1.0
# This prevents the weight update from being too drastic
torch.nn.utils.clip_grad_norm_(model.parameters(), max_norm=1.0)

# Update weights using the safe, clipped gradients
optimizer.step()

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. Оптимизируй мониторинг посевов, отслеживание скота и точное земледелие для получения более высоких и «умных» урожаев.

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

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

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