Первоисточник:zhuanlan.zhihu.com/FaceRec
Потеря 0-1 (две классификации), перекрестная энтропийная потеря (классификация), потеря Softmax (мультиклассификация), потеря шарнира (SVM), среднеквадратическая ошибка (линейная регрессия), модифицированная потеря Хьюбера (классификация), экспоненциальная потеря (Adaboost)
1 0-1 Loss
- Вообще говоря, модель машинного обучения с двумя классами состоит из двух частей: линейный вывод, как правило, s = wx; нелинейный вывод, такой как сигмоидальная функция.
, через сигмовидную функцию значение g(s) ограничено между [0,1], если s ≥ 0, g(s) ≥ 0,5, прогноз положительный, если s
- Есть два способа представления положительных и отрицательных классов: {+1, -1} или {1, 0}. При использовании y={+1, -1} предсказание верно, если ys ≥ 0, и неверно, если ys
- s ≥ 0, y = +1: правильный прогноз
- s ≥ 0, y = -1: ошибка предсказания
- s
- s
- 0-1 Loss — простейший вид функции потерь. Для задачи бинарной классификации, если предсказанный класс y^ отличается от истинного класса y, то L=1; если y_^= y, то L=0.
- L представляет функцию потерь, ось абсцисс — ys, а на следующем рисунке показана кривая потерь:
- Достоинства: Очень интуитивно понятный и простой для понимания
- Недостаток: Raw Loss редко используется в практических приложениях.
- Потеря накладывает одинаковый штраф на каждую неправильно классифицированную точку (потеря равна 1) и относится к ним одинаково, так что больший штраф не может быть применен к точке с относительно большой ошибкой (ys намного меньше 0), что неразумно.
- Разрывные, невыпуклые и невыводимые, трудно использовать алгоритмы оптимизации градиента.
2 Перекрестная потеря энтропии
- Для логистической регрессии и классификации Softmax следует использовать в сочетании с Sigmoid (двухклассовая) или Softmax (многоклассовая). Логистическая регрессия - проблема классификации
- Кросс-энтропия получена с точки зрения теории информации Шеннона:
- Количество информации: I(x)=−log(p(x)), чем больше вероятность события, тем меньше количество информации, которое оно имеет.
- Энтропия: для случайной величины X ожидаемая информация E[I(x)] обо всех ее возможных значениях называется энтропией.
- Ожидание: сумма произведений всех возможных значений xi дискретных случайных величин и соответствующей вероятности p(xi) называется ожиданием E(x). Это обобщение простого среднего арифметического, аналогичное взвешенному среднему.
- Относительная энтропия: также известная как дивергенция KL и расстояние KL, это мера расстояния между двумя случайными распределениями, D(p||q). Он может измерить недопустимость гипотетического распределения q, когда истинное распределение равно p.
- Цель машинного обучения состоит в том, чтобы надеяться, что рассчитанное распределение вероятностей q будет как можно ближе к реальному распределению вероятностей p, так что относительная энтропия будет близка к минимальному значению 0.
- Перекрестная энтропия: вторая половина формулы относительной энтропии — это перекрестная энтропия, которая также отражает сходство распределения p q. Чем меньше значение, тем больше сходство.
- Поскольку реальное распределение вероятностей фиксировано, первая половина формулы относительной энтропии становится константой, поэтому, когда относительная энтропия достигает минимального значения, это также означает, что перекрестная энтропия достигла минимального значения. Оптимизация q эквивалентна нахождению минимального значения перекрестной энтропии.
- Функция перекрестной энтропийной потери логистической регрессии для двоичной классификации: сигмоид используется для y^ для двоичной классификации, а выходная метка {0,1} выглядит следующим образом: когда y=1, но y^ не равно 1, ошибка изменяется как y ^ становится меньше Большой:
- Для множественной классификации y^ использует Softmax, L=-yi*log(yi^), i — реальная категория
- Вывод с точки зрения максимального правдоподобия: нахождение минимального значения перекрестной энтропии также эквивалентно нахождению оценки максимального правдоподобия. Вероятность P предсказанной категории, когда выходная метка равна {0,1}, может быть записана как введение -log делает вероятность P(y|x) больше -log P(y|x) меньше:
- Второй член игнорируется, когда истинная метка выборки y = 1; первый член игнорируется, когда y = 0.
- Кривая потерь, когда выходная метка y представлена {1,0}:
- Когда y=1, L=-log(y^), замените y^=1/(1+e^-s) сигмоиды, чтобы получить кривую потерь, линейный выход s больше нуля, а L меньше, левая фигура, ось абсцисс
- Когда y=0, L=-log(1-y^), чем меньше s, тем меньше L.
- Когда выходная метка y представлена {-1,+1}: потеря перекрестной энтропии такая же, но представление другое, замените указанное выше s на ys. Интегрирование ys по оси абсцисс легко проводится и имеет практический физический смысл.
- Преимущества: одна из наиболее широко используемых функций потерь
- Во всей области действительных чисел потери изменяются примерно линейно, особенно когда ys
- Перекрестная энтропия Loss постоянно выводится, что удобно для расчета вывода.
- Модель менее возмущена выбросами
Ссылаться на:Ссылка 1 Вывод формулы кросс-энтропийной функции потерь
3 Softmax Loss
- В основном используется для задач мультиклассификации нейронных сетей.
Различие концепций
- Регрессия Softmax: общая форма логистической регрессии, функция логистической активации расширена до категорий C, а регрессия Softmax с C = 2 является логистической регрессией.
- Классификатор Softmax: мультиклассовый классификатор. Нейронная сеть без скрытых слоев имеет линейную границу решения между любыми двумя классами, но может быть разделена на классы (несколько нейронных блоков) с использованием нескольких различных линейных функций. Чем глубже сеть, тем более сложные нелинейные границы решений можно изучить.
- Слой Softmax: в последнем выходном слое нейронной сети есть несколько единиц в нескольких категориях.После вычисления значения линейного прогноза z каждой единицы функция активации Softmax используется для расчета каждой вероятности.
- Последний уровень моделей прогнозирования, таких как AlexNet/VGG/ResNet/MobileNet, магистральной сети классификации изображений, называется «Softmax», а последний уровень моделей обучения и проверки — «Точность» + «SoftmaxWithLoss». Потому что классификация изображений должна отделять только глубокие функции.
- Функция Softmax (функция активации): формула для отображения z в вероятность выглядит следующим образом.Также требуется вектор z_i, потому что все выходные данные нормализованы в вероятности, а выходные данные также являются вектором. Обычно используется на выходном слое.
- Обе функции активации Sigmoid и ReLu имеют дело только с действительным числом z, и на выходе также является действительным числом. Выходной слой бинарной классификации использует функцию Sigmoid, а скрытый слой использует функцию ReLu.
- Softmax-Loss (функция потерь Softmax): функция потерь нейронной сети с выходным слоем Softmax, функция потерь классификатора Softmax и результат вычисления функции активации Softmax в качестве входных данных функции потерь классификатора Softmax.
- Hardmax: установите самый большой элемент в z равным 1, а все остальные позиции равны 0. А отображение Softmax от z к вероятности более мягкое и представляет собой конкретное значение вероятности.
Функция активации Softmax для поиска вероятности мультикласса
- Роль логистической регрессии заключается в преобразовании линейных прогнозируемых значений в вероятности класса, Функция Softmax определяется следующим образом:
- Верхний слой классической глубокой нейронной сети на самом деле является классификатором логистической регрессии.
- Пусть zi=wx+bбудет результатом линейного предсказания i-й категории, Приведение его в Softmax фактически означает сначала взять индекс каждого zi, чтобы он стал неотрицательным (чтобы избежать смещения положительных и отрицательных значений во время дополнение), а затем разделите на сумму всех элементов, чтобы нормализовать его на вероятность каждой категории от 0 до 1. Теперь каждое oi=σi(z) можно интерпретировать как вероятность того, что данные x принадлежат нескольким категориям i (m категорий, данные x имеют много признаков x0, x1, x2...), или вероятность (вероятность).
- Примечание. В логистической регрессии zi преобразуется в значение вероятности от 0 до 1 с помощью сигмовидной функции активации, и вычисляется вероятность того, что данные x принадлежат этому правильному классу y=1.
Функция потерь для классификатора Softmax (кросс-энтропийные потери), мультиномиальные логистические потери
- Целевая функция (функция стоимости, функция потерь) логистической регрессии устанавливается в соответствии с принципом максимального правдоподобия, Предполагая, что категория, соответствующая данным x, равна y, o_y - это вероятность того, что x принадлежит правильной категории y, рассчитанной Функция софтмакс. Максимальное правдоподобие заключается в максимизации o_y, обычно с использованием отрицательного логарифмического правдоподобия вместо правдоподобия, то есть для минимизации значения -log(o_y), два результата математически эквивалентны. Таким образом, минимизация функции стоимости заключается в минимизации:
- Функция потерь, обычно используемая в классификации Softmax, выглядит следующим образом: (объяснил Ву Энда)
- Правильный образец y2=1, другие образцы равны 0 и отбрасываются (формула представляет собой функцию кросс-энтропийных потерь)
- Минимизация функции потерь, максимальная вероятность, максимизация -log(o_y), максимизация o_y. (o_y есть y2^)
- Проигрыш J для всей обучающей выборки представляет собой среднее значение суммы всех потерь, которым предшествует проигрыш для одной обучающей выборки. Разложением этой функции потерь является алгебраическая формула параметров w b каждого слоя сети и каждого узла, и для них также вычисляется градиент при вычислении градиента. Во время градиентного спуска требуется градиент функции потерь к весам всех единиц во всех слоях, и все веса обновляются одновременно.
Softmax-Loss
- Softmax-Loss заключается в замене функции активации Softmax на вышеуказанную функцию потерь L и участии в значении активации Softmax s_yi фактической категории и сумме s_j значения активации Softmax всех категорий. На следующем рисунке представлено представление в cs231n (R — это обычный термин, W снижает сложность):
- Softmax-Loss на самом деле является комбинацией функции softmax и функции перекрестной потери энтропии (Cross Entropy Loss).
- Функция активации Softmax и Multinomial Logistic Loss могут быть объединены в слой Softmax-loss, а могут быть разделены, что является более гибким после разделения, но возникает проблема численной стабильности, а также увеличивается объем вычислений.
- Кривая потерь: при s >0 Softmax стремится к нулю.
- Преимущества: Softmax также меньше беспокоят выбросы.
взвешенная потеря softmax
- Если мы проблема классификации, то есть только два типа, но разница в количестве выборок между двумя типами очень велика. Например, в задаче обнаружения краев важность краевых пикселей больше, чем значение некраевых пикселей, и в это время выборки могут целенаправленно взвешиваться.
- wc — это вес, c=0 представляет краевые пиксели, c=1 представляет некраевые пиксели, тогда мы можем сделать w0=1, w1=0,001, то есть увеличить вес краевых пикселей. Конечно, можно использовать и адаптивные веса.
Ссылаться на:Softmax и Softmax-Loss Дорога к ИИ
4 Потеря шарнира
- Потеря шарнира обычно используется в машине опорных векторов SVM (классификатор больших расстояний), что отражает идею максимизации расстояния SVM.
- Преимущества: Когда Loss>0, это линейная функция, что удобно для вывода алгоритма градиентного спуска.
Потеря шарнира используется для бинарной классификации
- В качестве примера возьмем линейную выходную модель SVM, y^=s=wx, L — это следующая формула, а кривая потерь принимает ys=y*y^ как горизонтальную ось.
- Если y*y^
- При выходной метке y=-1, -1
- Если y*y^>=1, потери равны 0 и классификация верна.
- При выходной метке y=-1, y^=1 потери в этом диапазоне равны 0
Потеря шарнира для максимального расстояния
- Представляет собой расстояние между положительными и отрицательными оценками выборки:
- Когда y'>y+m, потери = 0, то есть прогнозируемое значение положительной выборки больше, чем прогнозируемое значение отрицательной выборки плюс интервал.
- y — оценка положительных образцов, y' — оценка отрицательных образцов, а m — расстояние между ними.
- Есть надежда, что чем выше положительная оценка выборки, тем лучше, а чем ниже отрицательная оценка выборки, тем лучше, но разница между двумя оценками достаточна, чтобы быть не более m, и вознаграждение за увеличение разрыва отсутствует.
- Представление в cs231n:
5 Среднеквадратическая ошибка (MSE, среднеквадратическая ошибка)
- Для задач линейной регрессии он относится к методу наименьших квадратов (МНК).
- Основной принцип метода наименьших квадратов заключается в том, что наиболее подходящей прямой линией должна быть прямая линия, минимизирующая сумму расстояний от каждой точки до линии регрессии, то есть наименьшая сумма квадратов.
- Используйте среднеквадратичную ошибку (MSE) в качестве меры:
- Почему линейная регрессия не может использовать кросс-энтропию? Формула кросс-энтропии. Для задач линейной регрессии, если берется любое значение, такое как -1,5, log(-1,5) не может быть рассчитан, поэтому кросс-энтропия обычно не используется для оптимизации задачи регрессии.
- Почему нельзя использовать MSE для задач классификации? В задаче классификации нужно вычислить вероятность каждой метки в виде одного горячего, а затем использовать argmax для определения классификации, при расчете вероятности обычно используется softmax. Проблема с вычислением потерь с помощью MSE заключается в том, что кривая, выдаваемая Softmax, колеблется, есть много локальных экстремумов, и это проблема невыпуклой оптимизации. Кросс-энтропийный расчет потерь по-прежнему остается задачей выпуклой оптимизации, которую можно решить с помощью градиентного спуска.
Ссылаться на:Дисперсия, MSE и другие формулы Зачем использовать кросс-энтропию для задач классификации и MSE для задач регрессии
6 Modified Huber Loss
- SGDClassifier в scikit-learn использует его.
- Потеря Хубера также может быть применена к задачам классификации, называемым модифицированной потерей Хьюбера:
- Кривая потерь: модифицированная потеря Хубера сочетает в себе преимущества MSE, потери шарнира и потери перекрестной энтропии.
- Преимущества: с одной стороны, когда ys > 1, можно генерировать разреженные решения, чтобы повысить эффективность обучения; с другой стороны, штраф для выборок ys
7 Экспоненциальная потеря
- В основном используется в AdaBoost
- Экспоненциальная потеря:
- Экспоненциальная потеря похожа на кросс-энтропийную потерю, но она экспоненциально убывает с большим градиентом.
- Недостатки: больше помех от аномальных точек
Сравните допустимость каждой потери с выбросами
- Нарисуйте 5 видов потерь, диапазон значений ys на левом изображении — [-2, +2], а диапазон на правом изображении — [-5, +5]:
- Экспоненциальная потеря намного больше, чем другие потери. С точки зрения обучения, если в выборке есть выбросы, функция «Экспоненциальная потеря» придаст выбросам более высокий штрафной вес, но это может снизить общую производительность модели за счет прогнозирующего эффекта других нормальных точек данных.
- По сравнению с экспоненциальной потерей, остальные четыре потери, включая потери Softmax, имеют лучшую «терпимость» к выбросам, меньше помех от выбросов и более надежные модели.