Персональный сайт Red Stone:redstonewill.com
Говоря о функции кросс-энтропийных потерь «Cross Entropy Loss», сразу приходит на ум ее формула:
Мы уже хорошо знакомы с этой кросс-энтропийной функцией, и в большинстве случаев полезно использовать ее напрямую. Но как это произошло? Почему он характеризует разницу между истинными метками выборки и предсказанными вероятностями? Существуют ли другие варианты приведенной выше кросс-энтропийной функции? Может быть, многие друзья не очень ясно! Не беда, я отвечу на вышеуказанные вопросы максимально доступным языком.
1. Математический принцип функции потерь перекрестной энтропии
Мы знаем, что в двухклассовых моделях задач: таких как логистическая регрессия «Логистическая регрессия», нейронная сеть «Нейронная сеть» и т. д., метки реальных выборок равны [0, 1], представляющие отрицательный и положительный классы соответственно. В конце модели обычно используется сигмоидальная функция для вывода значения вероятности, которое отражает вероятность быть предсказанным как положительный класс: чем больше вероятность, тем больше вероятность.
Выражение и график сигмовидной функции следующие:
где s — выход предыдущего слоя модели, а сигмовидная функция имеет следующие характеристики: при s = 0 g(s) = 0,5, при s >> 0 g ≈ 1, при s
Мы сказали, что прогнозируемый вывод, вывод сигмовидной функции, представляет вероятность того, что текущая метка выборки равна 1:
Очевидно, что вероятность того, что текущая метка выборки равна 0, может быть выражена как:
Дело в том, что если мы объединим два вышеупомянутых случая с точки зрения максимального правдоподобия:
Не имеет значения, если вы не знаете максимальную вероятность. Мы можем посмотреть на это так:
Когда метка реальной выборки y = 0, первый член приведенной выше формулы равен 1, и уравнение вероятности преобразуется в:
Когда метка реальной выборки y = 1, второй член приведенной выше формулы равен 1, и уравнение вероятности преобразуется в:
Выражения вероятности в обоих случаях точно такие же, как и раньше, за исключением того, что мы объединили два случая вместе.
Сосредоточьтесь на выражении вероятности после интегрирования, мы надеемся, что вероятность P(y|x) максимально велика. Во-первых, мы вводим логарифмическую функцию для P(y|x), потому что логарифмическая операция не влияет на монотонность самой функции. Тогда есть:
Мы хотим, чтобы log P(y|x) был как можно больше, и наоборот, пока отрицательное значение log P(y|x) - log P(y|x) как можно меньше. Тогда мы можем ввести функцию потерь, и пусть Loss = -log P(y|x). Тогда функция потерь получается как:
Очень просто, мы вывели функцию потерь одной выборки.Если мы вычислим общую функцию потерь выборок N, нам нужно только сложить потери N:
Таким образом, мы полностью реализовали процесс вывода кросс-энтропийной функции потерь.
2. Интуитивное понимание функции потерь перекрестной энтропии
Могут быть читатели, которые скажут, что я уже знаю процесс вывода функции кросс-энтропийных потерь. Но можем ли мы понять это выражение с более интуитивной точки зрения? Вместо того, чтобы просто запомнить формулу. хороший вопрос! Далее мы анализируем функцию кросс-энтропии с точки зрения графики, чтобы углубить ваше понимание.
Во-первых, выпишите функцию кросс-энтропийных потерь для одного образца:
Мы знаем, что при у = 1:
В это время взаимосвязь между L и прогнозируемым выходом показана на следующем рисунке:
Глядя на графику L, все просто и понятно! Абсцисса — это результат прогнозирования, а ордината — функция кросс-энтропийных потерь L. Очевидно, чем ближе прогнозируемый выход к истинной метке образца 1, тем меньше функция потерь L; чем ближе прогнозируемый выход к 0, тем больше L. Таким образом, тенденция изменения функции полностью соответствует фактическим потребностям.
Когда у = 0:
В это время взаимосвязь между L и прогнозируемым выходом показана на следующем рисунке:
Точно так же, чем ближе прогнозируемый результат к истинной метке образца 0, тем меньше функция потерь L; чем ближе прогнозируемая функция к 1, тем больше L. Меняющаяся тенденция функции также полностью соответствует фактическим потребностям.
Из двух приведенных выше рисунков это может помочь нам получить более интуитивное представление о функции потери перекрестной энтропии. Независимо от того, равна ли истинная метка выборки y 0 или 1, L представляет разницу между предсказанным выходом и y.
Кроме того, важно отметить, что из графика видно, что чем больше прогнозируемый результат отличается от y, тем больше значение L, то есть «штраф» для текущей модели больше. , и это нелинейный рост, уровень, напоминающий экспоненциальный рост. Это определяется характеристиками самой логарифмической функции. Преимущество этого заключается в том, что модель будет стремиться приблизить прогнозируемый результат к истинной метке выборки y.
3. Другие формы функции кросс-энтропийных потерь
Какие? Существуют ли другие формы функции кросс-энтропийных потерь? Верно! То, что я только что представил, является типичной формой. Далее я получу новую функцию кросс-энтропийных потерь под другим углом.
Эта форма предполагает, что метки реальных образцов равны +1 и -1, что соответствует положительному и отрицательному классам соответственно. Известно, что сигмовидная функция обладает следующими свойствами:
Сначала поместим это свойство здесь, оно пригодится позже.
Ну, мы сказали ранее, что когда y = +1, выполняется следующее уравнение:
Если y = -1 и введение свойства сигмовидной функции, справедливо следующее уравнение:
Дело здесь в том, что, поскольку y принимает значение +1 или -1, вы можете ввести значение y и интегрировать две приведенные выше формулы вместе:
Это легче понять.Приведенные выше две формулы можно получить, установив y = +1 и y = -1 соответственно.
Далее также вводится функция журнала для получения:
Чтобы максимизировать вероятность, наоборот, до тех пор, пока его отрицательное число является наименьшим. Тогда соответствующую функцию потерь можно определить как:
Помните выражение для сигмовидной функции? Введите g(ys) в:
Что ж, L — это функция кросс-энтропийных потерь, которую я хочу вывести. Если это N выборок, его функция перекрестной энтропийной потери:
Далее мы посмотрим на это с точки зрения графической интуиции. Когда у = +1:
В это время взаимосвязь между L и функцией оценки s предыдущего слоя показана на следующем рисунке:
Абсцисса s, ордината L. Очевидно, что чем ближе s к истинной метке образца 1, тем меньше функция потерь L, чем ближе s к -1, тем больше L.
С другой стороны, когда y = -1:
В это время взаимосвязь между L и функцией оценки s предыдущего слоя показана на следующем рисунке:
Точно так же, чем ближе s к истинной метке образца -1, тем меньше функция потерь L; чем ближе s к +1, тем больше L.
4. Резюме
В этой статье в основном представлены математический принцип и процесс вывода функции кросс-энтропийных потерь, а также представлены две формы функции кросс-энтропийных потерь с разных точек зрения. Первая форма более распространена в практических приложениях, таких как сложные модели, такие как нейронные сети; вторая в основном используется для простых моделей логистической регрессии.