Softmax-регрессия: вычисление градиента, формулы и график в электронных таблицах.

«Рождественский календарь» по машинному обучению, день 14: Регрессия Softmax в Excel.

Понимание многоклассовой классификации с использованием Softmax

Делиться

3a41874f00116d7518173051472d729b

С помощью логистической регрессии мы научились классифицировать объекты на два класса.

А что произойдет, если классов будет больше двух?

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

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

Понимание модели Softmax

Прежде чем обучать модель, давайте сначала разберемся, что это за модель .

Регрессия Softmax пока не связана с оптимизацией.
В первую очередь речь идет о том, как вычисляются прогнозы .

Небольшой набор данных, содержащий 3 класса.

Рассмотрим небольшой набор данных с одним признаком x и тремя классами.

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

Распространенный способ представления этого — однократное кодирование (one-hot encoding) , где каждый класс представлен своим собственным индикатором.

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

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

17c8d638599d295e9dc6ceceeb7c8967

Описание модели

Так что же это за модель, собственно?

Оценка за класс

В логистической регрессии оценка модели представляет собой простое линейное выражение: оценка = a * x + b.

Функция Softmax Regression делает то же самое, но для каждого класса используется один показатель:

score_0 = a0 * x + b0
score_1 = a1 * x + b1
score_2 = a2 * x + b2

На данном этапе эти баллы представляют собой просто реальные числа.
Это ещё не вероятности.

Преобразование оценок в вероятности: шаг Softmax

Функция Softmax преобразует три значения в три вероятности. Каждая вероятность положительна, и сумма всех трех равна 1.

Вычисления выполняются напрямую:

  1. Возведите каждое значение в степень.
  2. Вычислите сумму всех экспоненциальных функций.
  3. Разделите каждую экспоненту на эту сумму.

Это даёт нам значения p0, p1 и p2 для каждой строки.

Эти значения отражают степень достоверности модели для каждого класса.

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

dd814719376151c5502be4cee7200357

Визуализация модели Softmax

На данном этапе модель полностью определена.

У нас есть:

  • один линейный балл на класс
  • Шаг Softmax, который преобразует эти оценки в вероятности.

Обучение модели заключается в простой корректировке коэффициентов aka_kak​ и bkb_kbk​ таким образом, чтобы эти вероятности максимально соответствовали наблюдаемым классам.

После того как коэффициенты будут найдены, мы можем визуализировать поведение модели .

Для этого мы берем диапазон входных значений, например, x от 0 до 7, и вычисляем: score0, score1, score2 и соответствующие вероятности p0, p1, p2.

Построение графика этих вероятностей дает три плавные кривые, по одной для каждого класса.

4583b7b949ae88055bb9a7b9ffadc407

Результат очень наглядный.

При малых значениях x вероятность попадания в класс 0 высока.
По мере увеличения x эта вероятность уменьшается, в то время как вероятность принадлежности к классу 1 возрастает.
При больших значениях x вероятность принадлежности к классу 2 становится доминирующей.

При каждом значении x сумма трех вероятностей равна 1.
Модель не принимает поспешных решений; вместо этого она выражает степень своей уверенности в каждом классе.

Этот график позволяет легко понять поведение алгоритма Softmax-регрессии.

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

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

Кросс-энтропийная потеря и градиентный спуск

Теперь, когда модель определена, нам нужен способ оценить её качество и метод улучшения её коэффициентов .

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

Оценка модели: функция потерь кросс-энтропии.

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

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

потеря = – log (p истинного класса)

Если модель присваивает правильным классам высокую вероятность, то потери невелики.
Если присваивается низкая вероятность, потери становятся значительными.

В Excel это очень просто реализовать.

Мы выбираем правильную вероятность на основе значения y и применяем логарифм:

loss = -LN( CHOOSE(y + 1, p0, p1, p2) )

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

c3d17c0834884e5d21bb4f21339aa683

Вычисление остатков

Для обновления коэффициентов мы начинаем с вычисления остатков , по одному для каждого класса.

Для каждой строки:

  • residual_0 = p0 минус 1, если y равно 0, в противном случае — 0.
  • residual_1 = p1 минус 1, если y равно 1, в противном случае — 0.
  • residual_2 = p2 минус 1, если y равно 2, в противном случае — 0.

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

Эти остатки показывают, насколько предсказанные вероятности отличаются от ожидаемых.

Вычисление градиентов

Градиенты получаются путем объединения остатков со значениями признаков.

Для каждого класса k:

  • Градиент функции ak равен среднему значению остатка k * x.
  • Градиент bk равен среднему значению residual_k.

В Excel это реализуется с помощью простых формул, таких как SUMPRODUCT и AVERAGE.

На данном этапе все предельно ясно:
Вы видите остатки, градиенты и вклад каждой точки данных.

5d8585d02481adb6fa1aa59878e0b243

Обновление коэффициентов

После того как градиенты известны, мы обновляем коэффициенты, используя градиентный спуск.

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

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

  • текущий номер итерации
  • шесть коэффициентов (a0, b0, a1, b1, a2, b2)
  • потеря
  • градиенты

Вторая строка соответствует нулевой итерации с начальными коэффициентами.

В строке 3 вычисляются обновленные коэффициенты с использованием градиентов из строки 2.

Протягивая формулы вниз на сотни строк, мы имитируем градиентный спуск на протяжении множества итераций.

Тогда вы сможете ясно увидеть:

  • коэффициенты постепенно стабилизируются
  • итерация за итерацией приводит к уменьшению потерь

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

218d7d1d8ac4fafbf831be77bae6e3ca

Логистическая регрессия как частный случай регрессии Softmax

Логистическая регрессия и регрессия Softmax часто представляются как разные модели.

В действительности, это одна и та же идея, но в разных масштабах.

Функция Softmax Regression вычисляет один линейный показатель для каждого класса и преобразует эти показатели в вероятности путем их сравнения.
Когда имеется только два класса, это сравнение зависит только от разницы между двумя показателями .

Эта разница является линейной функцией входных данных, и применение функции Softmax в данном случае приводит к получению в точности логистической (сигмоидной) функции.

Иными словами, логистическая регрессия — это просто регрессия Softmax, примененная к двум классам, с удалением избыточных параметров.

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

6a59604bbbe845326c485ed97a0c55fe

Заключение

Метод Softmax-регрессии не предлагает нового способа мышления.

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

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

Суть проигрыша та же.
Градиенты имеют одинаковую структуру.
Оптимизация осуществляется с помощью того же градиентного спуска, который нам уже известен.

Меняется только количество параллельных оценок .

Ещё один способ обработки многоклассовой классификации?

Функция Softmax — не единственный способ решения задач многоклассовой классификации в моделях, основанных на весах.

Существует и другой подход, менее изящный с концептуальной точки зрения, но очень распространенный на практике:
Классификация «один против всех» или «один против одного» .

Вместо создания единой многоклассовой модели мы обучаем несколько бинарных моделей и объединяем их результаты.
Эта стратегия широко используется в методе опорных векторов (SVM) .

Завтра мы рассмотрим метод опорных векторов (SVM).
И вы увидите, что это можно объяснить довольно необычным способом… и, как обычно, прямо в Excel.

Источник: towardsdatascience.com

✅ Найденные теги: «Рождественский, Excel, Softmax, машинное обучение, новости, Регрессия, Рождественский Календарь

ОСТАВЬТЕ СВОЙ КОММЕНТАРИЙ

Каталог бесплатных опенсорс-решений, которые можно развернуть локально и забыть о подписках

галерея

Pandas против Polar: полное сравнение синтаксиса, скорости и памяти.
Искусственный интеллект и машинное обучение, светящиеся линии и точки над коробкой.
Бегун в яркой форме бежит по дороге с горным пейзажем на фоне.
Женщина с чашкой чая сидит на диване, наслаждаясь утренним солнцем в гостиной.
Правительство Великобритании поддерживает развитие медицинских технологий в рамках новой программы доступа к медицинским технологиям для Национальной службы здравоохранения (NHS) — Сеть медицинских устройств.
ideipro logotyp
Руководители обсуждают, как ИИ меняет структуру рабочей силы в здравоохранении, часть 2 | MobiHealthNews
Искусственный интеллект в медицинской визуализации, ожидание процесса.
ideipro logotyp
Image Not Found
Pandas против Polar: полное сравнение синтаксиса, скорости и памяти.

Pandas против Polar: полное сравнение синтаксиса, скорости и памяти.

Нужна помощь в выборе подходящей библиотеки для работы с фреймами данных на Python? В этой статье сравниваются Pandas и Polar, чтобы помочь вам определиться. Изображение предоставлено автором. # Введение Если вы работаете с данными в Python, вы…

Мар 6, 2026
Искусственный интеллект и машинное обучение, светящиеся линии и точки над коробкой.

Прекратите спрашивать, является ли модель интерпретируемой.

Начните задавать себе вопрос, на какой вопрос должно ответить объяснение. Делиться Изображение предоставлено автором: создано с помощью Gemini. Большинство дискуссий об интерпретируемости в ИИ начинаются с неправильного вопроса. Исследователи, практики и даже регулирующие органы часто спрашивают, является…

Мар 6, 2026
Бегун в яркой форме бежит по дороге с горным пейзажем на фоне.

Ультрамарафоны могут негативно сказаться на крови.

Пробежка на 170 километров по горной местности приводила к тому, что красные кровяные клетки накапливали больше возрастных повреждений, чем у менее амбициозных спортсменов. В спорте всего должно быть в меру. REUTERS/Люси Николсон Хотя физические упражнения важны для…

Мар 6, 2026
Женщина с чашкой чая сидит на диване, наслаждаясь утренним солнцем в гостиной.

Ваш утренний кофе однажды может помочь в борьбе с раком.

Новая система редактирования генов использует кофеин в качестве триггера, позволяя ученым активировать CRISPR внутри модифицированных клеток — и даже активировать Т-клетки, борющиеся с раком. Изображение: Shutterstock Может ли такой распространенный продукт, как кофе, сыграть роль в лечении…

Мар 6, 2026

Впишите свой почтовый адрес и мы будем присылать вам на почту самые свежие новости в числе самых первых