Глоссарий

Softmax

Узнай, как Softmax преобразует оценки в вероятности для задач классификации в ИИ, обеспечивая успешное распознавание изображений и NLP.

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

Узнай больше

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

Как работает Softmax

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

Применение Softmax

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

  • Классификация изображений: В таких моделях, как Ultralytics YOLO когда они настроены на классификацию, Softmax используется на последнем слое для определения вероятности принадлежности изображения к заранее определенным классам, таким как "кошка", "собака" или "автомобиль". Например, при заданном изображении выход Softmax может быть [0.85, 0.10, 0.05] для классов ['собака', 'кошка', 'птица'], что означает 85%-ную вероятность того, что на изображении присутствует собака. Изучи различные наборы данных для классификации изображений, используемые для обучения таких моделей.
  • Обработка естественного языка (NLP): Softmax широко используется в задачах NLP. В анализе настроений он может выводить вероятности для таких настроений, как "позитивное", "негативное" или "нейтральное". В машинном переводе или языковом моделировании он предсказывает распределение вероятностей по всему словарному запасу для следующего слова в последовательности. Такие ресурсы, как Allen Institute for AI (AI2), часто способствуют достижениям в области НЛП.

Softmax по сравнению с другими функциями активации

Важно отличать Softmax от других функций активации, используемых в нейронных сетях:

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

Роль в оценке модели

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

В общем, Softmax - это критически важный компонент в архитектуре многоклассовых классификационных моделей, позволяющий получать интерпретируемые вероятностные результаты в различных областях ИИ, от компьютерного зрения до NLP. Для управления жизненным циклом моделей, использующих Softmax, платформы вроде Ultralytics HUB предлагают инструменты для обучения, развертывания и мониторинга.

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