Эта статья возникла из личного публичного аккаунта:TechFlow, оригинальность это не просто, прошу внимания
Сегодняшняя статья рассказывает об энтропии в области машинного обучения.
Когда я читал статью, я обнаружил, что понимание кросс-энтропии было несколько забыто.После ее просмотра у меня появились некоторые новые понимания. Так что напишите эту статью и поделитесь ею с вами.
Понятие энтропии используется очень широко, лично мне кажется, что более классическое его применение — в термодинамике, отражающей степень хаоса в системе. Согласно второму закону термодинамики энтропия изолированной системы не убывает. Например, коробка с шариками для пинг-понга: если коробку перевернуть, шарики для пинг-понга разлетятся, и ее энтропия увеличится. Если энтропия должна быть уменьшена, то над системой должна быть совершена работа, а значит, должна быть внешняя сила, чтобы положить разбросанные шарики для пинг-понга обратно в коробку, иначе распределение шариков для пинг-понга станет только больше и более разрозненно.
Шеннона, создателя теории информации, осенило: поскольку все микроскопические и макроскопические проблемы в природе имеют энтропию, то и информация тоже. Таким образом, он впервые ввел понятие энтропии в область теории информации.Подобно концепции термодинамики, энтропия в теории информации относится к степени путаницы в количестве информации, а также может пониматься как размер количества информации. .
количество информации
В качестве простого примера, какое из следующих двух предложений является более информативным?
- Я не выиграл в лотерею сегодня
- Я выиграл в лотерею сегодня
С текстовой точки зрения количество слов в этих двух предложениях одинаково, и описываемые события в основном те же, но очевидно, что количество информации во втором предложении намного больше, чем в первом предложении, и Причина очень проста, потому что вероятность выиграть в лотерею больше, чем Не выиграть в лотерею, гораздо ниже.
Я думаю, все также понимают, что чем ниже вероятность события передачи информации, тем большим объемом информации оно обладает. Мы используем логарифмическую функцию для количественной оценки количества информации о событии:
Поскольку вероятность возникновения события находится в диапазоне от 0 до 1, диапазон log(p(X)) находится в диапазоне от отрицательной бесконечности до 0, и мы добавляем отрицательный знак, чтобы превратить его в положительное значение. Функция нарисована так:
Информационная энтропия
Наша формула выше определяет количество информации, но здесь есть проблема, мы определяем количество информации только для результата события X. Событие может иметь более одного возможного исхода. Мы надеемся определить информационный объем всего события, с которым на самом деле легко справиться.Мы можем вычислить математическое ожидание информационного объема всего события.Это математическое ожидание и есть информационная энтропия.
Ожидаемая формула, которую мы все должны помнить:
Мы можем получить информационную энтропию H(x), подставив формулу количества информации:
Относительная энтропия (расхождение KL)
Прежде чем мы введем относительную энтропию, давайте попробуем подумать над вопросом, зачем нам нужно понятие относительной энтропии?
Причина очень проста, потому что мы хотим измерить разницу между нашей обученной моделью и фактическими данными, а цель относительной энтропии — оценить и проверить эффект обучения модели. То есть относительная энтропия используется для измерения разницы между двумя распределениями вероятностей, Мы используем эту разницу для измерения разницы между результатом предсказания модели и реальными данными. Имея это в виду, давайте посмотрим на определение относительной энтропии:
если поставитьрассматривать как все результаты события, котороеМожно понять как результат события. тогда всеиЕго можно рассматривать как два распределения вероятности события X.Истинное распределение выборки мы можем найти. иявляется распределением выходных данных нашей модели. Чем меньше расхождение KL, тем ближе два распределения и тем лучше модель.
Простой взгляд на приведенную выше формулу дивергенции KL может сбить с толку, и я не понимаю, почему она может отражать сходство между двумя распределениями P и Q. Поскольку в этой формуле отсутствуют два ограничения:
для одногоконечнобольшеменьше. Но из-за всехСумма равна 1, текущее значение i больше, а значение другого i меньше.
Давайте сначала почувствуем это интуитивно, а потом докажем.
мы предполагаем, чтоЕсть только два значения 0 и 1, то есть событие только происходит или не происходит. Предположим снова, Давайте рисоватьИзображение:
Как мы и ожидали, функция возрастает с ростомувеличивается и уменьшается. Но это всего лишь одно значение x, не забывайте, мы вычисляем относительную энтропию для всего распределения, так что же произойдет, если мы добавим еще одно значение x?
Из изображения функции легко увидеть, что при Q(x)=0,5 дивергенция KL принимает минимальное значение, а минимальное значение равно 0. Делаем вариант вышеприведенной формулы:
Левая часть этой формулыНа самом деле это, для некоторого события X определена его информационная энтропия, т. е.постоянная,также является константой. Логарифмическая функция — вогнутая функция, а -log — выпуклая. мы кладемКак константу видно, чтоявляется выпуклой функцией.
Выпуклые функции имеют неравенство Дженсена:, то есть: ожидаемое значение функции переменной больше, чем ожидаемое значение функции переменной, что является немного скороговоркой.
Мы используем это неравенство, чтобы попытаться доказать:
Во-первых, мы деформируем исходную формулу:
Тогда воспользуемся неравенством:
Итак, расхождение KL — неотрицательное значение, но почему оно принимает минимальное значение, когда P и Q равны? Вынимаем правую сторону в одиночку, мы делаем.
мы исследуемчтобы судить о связи между P и Q.
Поскольку log(x) является выпуклой функцией, мы используем неравенство Дженсена, чтобы получить:
мы приносим
так, Сейчас, знак равенства имеет место тогда и только тогда, когда P=Q.
перекрестная энтропия
С помощью приведенной выше серии доказательств мы можем определить, что расхождение KL может отражать расстояние между двумя распределениями вероятностей. Поскольку P является известным распределением выборки, мы можем использовать расхождение KL, чтобы отразить расстояние между результатами, полученными моделью Q и P. Чем ближе расстояние, тем лучше эффект подгонки модели и тем сильнее способность.
Мы приводим C(P, Q), определенное выше, в определение KL-дивергенции и находим, что:
Для определенного набора образцовявляется фиксированным значением, поэтому мы можем опустить левоеНе беспокойтесь об этом, просто посмотрите направо. C(P, Q), которую мы только что определили справа, на самом деле является перекрестной энтропией.
Проще говоря, перекрестная энтропия является результатом дивергенции KL, удаляющей фиксированное фиксированное значение. Дивергенция KL может отражать сходство распределений P и Q, как и кросс-энтропия, а расчет кросс-энтропии более прост, чем дивергенция KL.
Если мы рассмотрим только сценарий бинарной классификации, то
так какРезультат известен и:. мы заказываем
Таким образом, приведенную выше формулу можно преобразовать в:
Эта формула является объяснением теории информации кросс-энтропийной формулы для задачи двух классов, наиболее часто встречающейся в книгах по машинному обучению.Мы часто используем ее, но очень мало данных, которые полностью выводят все входы и выходы. Что касается нас, изучающих алгоритмы, я лично считаю, что только углубляясь в детали, мы можем действительно улучшить и понять, что это такое и почему это так. Понимая это, мы действительно можем хорошо проводить собеседования.
Конечно, это еще не конец. Есть еще проблема.Есть много формул,которые могут отражать расстояние между моделью и реальным распределением.Почему мы выбираем только кросс-энтропию при обучении модели?Могут ли работать другие формулы? Зачем?
анализировать
Давайте посмотрим на реальный пример, чтобы понять. Предположим, у нас есть модель для:Выберите MSE (Mean Squared Error) в качестве функции потерь. Предположим для выборки x=2, y=0,Так,В настоящее время.
В настоящее время.
мы спрашиваем об этомЧастная производная от :
Итак, если мы будем учиться с помощью градиентного спуска,.
Эта формула выглядит нормально, но она скрывает проблему, то есть градиент, который мы вычисляем таким образом, слишком мал. Обучение модели с помощью градиентного спуска требует много времени для сходимости.
Что, если мы заменим функцию потерь на кросс-энтропию?
Давайте рассмотрим формулу после того, как перекрестная энтропия найдет градиент:
Мы вводим указанные выше конкретные значения и можем рассчитать, что если мы используем перекрестное обучение, вычисляемый нами градиент составляет 1,96, что намного больше, чем 0,04, рассчитанное выше. Очевидно, что скорость сходимости обученной модели будет намного выше, поэтому мы используем кросс-энтропию в качестве функции потерь для обучения модели классификации.
Причина в том, что если мы используем MSE для обучения модели, сигмовидная функция неизбежно будет получена в процессе нахождения градиента. Именно потому, что производная сигмоиды очень мала, наш градиентный спуск такой медленный. Так почему же производная сигмовидной функции такая маленькая? Давайте посмотрим на его изображение, чтобы знать:
Глядя на изображение выше, вы можете обнаружить, что когда абсолютное значение x больше 4, то есть две стороны изображения, расстояние которых от начала координат больше 4, функция image становится очень плоской. Что касается наклона касательной изображения производной функции отклика, то, очевидно, наклоны этих участков очень малы, а параметры в начале заданы несколько необоснованно, и в эти интервалы легко попасть. Тогда итерация по градиентному спуску, естественно, будет очень медленной.
Итак, будь то машинное обучение или глубокое обучение, мы обычно редко выполняем градиентный спуск по сигмовидной функции. В предыдущих статьях о логистической регрессии мы вывели формулу кросс-энтропии через максимальное правдоподобие, Сегодня мы используем знания теории информации, чтобы вывести плюсы и минусы кросс-энтропии. Исходные положения и идеи двух идей различны, но полученные результаты одинаковы. Объяснение дается в красоте математики, потому что теория информации является многомерной теорией, и она фактически отражает наиболее существенные законы информационного поля. Так же, как в физике существуют тысячи формул, все они должны подчиняться закону сохранения энергии и закону сохранения материи. Будь то машинное обучение или глубокое обучение, это не что иное, как различные приложения в области информации, и, естественно, оно не может выйти за рамки теории информации. Я не знаю, видите ли вы это, чувствуете ли вы себя немного просветленным и немного шокированным?
Сегодняшняя статья здесь.Формул много,но процесс вывода не сложный.Надеюсь все не испугаются и смогут разобраться спокойно. Если вы чувствуете, что что-то приобрели, пожалуйста,Отсканируйте код и обратите вниманиеНу, твоя поддержка - моя самая большая мотивация.