Глоссарий

Сигмовидный

Открой для себя мощь сигмоидальной функции в искусственном интеллекте. Узнай, как она обеспечивает нелинейность, помогает в бинарной классификации и стимулирует развитие ML!

Обучай модели YOLO просто
с помощью Ultralytics HUB.

Узнай больше

Сигмоидная функция - это широко используемая функция активации в машинном обучении (ML) и глубоком обучении (DL). Она характеризуется своей "S"-образной кривой, математически известной как сигмоидальная кривая. Основная роль сигмоидальной функции - принимать на вход любое вещественное число и сжимать его в выходное значение между 0 и 1. Это свойство делает ее особенно полезной для преобразования выходных данных модели в вероятностные оценки, представляющие вероятность определенного исхода или принадлежности к классу.

Как работает сигмоид

Функция Sigmoid отображает входные значения в диапазон (0, 1). Большие положительные значения на входе приводят к выходу, близкому к 1, большие отрицательные значения на входе приводят к выходу, близкому к 0, а входное значение 0 приводит к выходу 0,5. Это преобразование гладкое и дифференцируемое, а значит, мы можем вычислить его градиент в любой точке. Эта дифференцируемость очень важна для обучения нейронных сетей (НС) с помощью оптимизационных алгоритмов вроде градиентного спуска, которые опираются на градиенты, вычисляемые в процессе обратного распространения, для обновления весов модели.

Приложения в машинном обучении

Сигмоидные функции имеют несколько важных применений в ML:

  1. Бинарная классификация: В задачах бинарной классификации (когда на выходе получается один из двух классов, например, да/нет, спам/не спам) сигмоидальная функция часто используется в конечном выходном слое модели, такой как логистическая регрессия или нейронная сеть. Выходное значение между 0 и 1 интерпретируется как вероятность того, что входные данные принадлежат положительному классу. Затем применяется порог (обычно 0,5), чтобы принять окончательное решение о классификации.
  2. Многопометная классификация: В отличие от многоклассовой классификации, где каждый вход принадлежит только одному классу (с этим часто справляется Softmax), многометочная классификация позволяет входу принадлежать нескольким классам одновременно. Сигмоида может быть применена независимо к каждому выходному нейрону, давая вероятность того, что на нем присутствует конкретная метка.
  3. Механизмы стробирования: Сигмоидные функции являются фундаментальными компонентами стробирующих механизмов рекуррентных нейронных сетей, таких как LSTM (Long Short-Term Memory) и GRUs (Gated Recurrent Units). Эти ворота управляют потоком информации, решая, какую информацию сохранить, а какую отбросить, и диапазон выхода сигмоиды от 0 до 1 естественным образом представляет степень, в которой ворота "открыты" или "закрыты".
  4. Уверенность в обнаружении объектов: В некоторых моделях обнаружения объектов, например в ранних версиях Ultralytics YOLOв выходном слое используются сигмоидальные функции (или похожие логистические функции) для предсказания показателя уверенности - вероятности того, что объект находится в пределах предложенного ограничительного поля, и того, насколько точно это поле соответствует действительности. Ты можешь изучить различные модели YOLO в разделе "МоделиUltralytics ".

Примеры из реальной жизни

  • Вероятность медицинского диагноза: Модель, обученная на данных о пациенте, может использовать выходной слой сигмоида для предсказания вероятности (между 0 и 1) того, что у пациента есть определенное заболевание, основываясь на его симптомах и результатах анализов. Это поможет врачам в принятии решений. Узнай, как ИИ используется в анализе медицинских изображений и более широких решениях ИИ в здравоохранении.
  • Анализ настроения: Чтобы определить, выражает ли фрагмент текста (например, отзыв о товаре) позитивные или негативные настроения, сигмоидальная функция может вывести вероятность того, что настроения будут позитивными. Узнай больше об анализе настроения.

Сравнение с другими функциями активации

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

  • Сигмоид против ReLU (Rectified Linear Unit): ReLU (и его разновидности вроде Leaky ReLU) часто предпочитают использовать в скрытых слоях, потому что он не страдает от проблемы исчезающего градиента так сильно, как Sigmoid для положительных входов, и вычислительно дешевле. Однако выходы ReLU лежат в диапазоне от 0 до бесконечности, что делает его непригодным для непосредственного вывода вероятностей.
  • Сигмоид против Tanh (гиперболический тангенс): Tanh также имеет S-образную форму, но отображает входные данные на диапазон (-1, 1). Его выход ориентирован на ноль, что иногда может привести к более быстрой сходимости во время обучения по сравнению с ненулевым ориентированным выходом Сигмоида (от 0 до 1). Однако Tanh также страдает от проблемы исчезающего градиента.
  • Сигмоид против Софтмакса: Softmax используется для решения задач многоклассовой классификации. Он берет вектор оценок и преобразует его в распределение вероятностей, где все вероятности выходов суммируются в 1. Сигмоид, напротив, рассматривает каждый выходной нейрон независимо, что подходит для бинарных задач или задач с несколькими метками, где сумма выходов не должна равняться 1. Такие фреймворки, как PyTorch предоставляют реализации для всех этих распространенных функций активации.

Ограничения

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

Несмотря на эти ограничения, сигмоидная функция остается ценным инструментом, особенно для выходных слоев в задачах бинарной классификации и в рамках таких специфических архитектур, как LSTM и GRU. Ты можешь управлять и обучать модели, используя различные функции активации, на таких платформах, как Ultralytics HUB.

Читать полностью