Дивергенция KL (Кульбака-Лейблера) часто упоминается в области машинного обучения. Он измеряет сходство двух распределений P и Q.

Но мы редко видим, как дивергенция KL используется в качестве цели оптимизации, а чаще мы видим, что перекрестная энтропия используется. Мы дадим введение в KL-дивергенцию и посмотрим, почему KL-дивергенция актуальна в ML?

Что такое KL Divergence на самом деле?

Посмотрите иллюстрацию, чтобы получить некоторое представление о дивергенции KL (пропустите эту часть, если вас интересует только ее связь с перекрестной энтропией)

Что такое обозначения P и Q?

  • P - фактическое распределение.
  • Q - прогнозируемое распределение

Пример: в задаче классификации изображений собаки и кошки вы можете подумать о распределении по двум классам (собака и кошка). Для данного набора функций (т. е. для данного изображения) вы бы присвоили 100% метке изображения и 0% другим классам.

Пример

Мы присваиваем класс 0 собаке и класс 1 кошке.

Наземные метки обычно настраиваются, как показано ниже, для задачи классификации (1 из многих).

Распространение P:

Прогноз (предсказанный ярлык по модели):

  • Изображение с меткой собаки будет иметь распределение P = [100%, 0%]
  • Изображение с кошкой будет иметь распределение P = [0%, 100%]

Распространение Q:

Во время прогнозирования модель может предсказать распределение Q = [90% 10%], что означает, что на 90% она уверена, что изображение — это собака, а на 10% — что это кошка.

Учитывая приведенные выше распределения P и Q, KL-дивергенцию можно рассчитать по всем возможным изображениям (признакам) и усреднить по всем отдельным KL-дивергенциям.

Наблюдение: хочется, чтобы P = Q как можно больше

Когда распределение P совпадает с Q, расхождение KL равно 0, поскольку log(1) = 0.

В том же примере собак и кошек, когда P = [100% 0%], Q = [100% 0%] для изображения, расхождение KL равно 0. При наличии большого количества изображений это может на практике это невозможно, но это означает, что чем ближе Q подобен P, тем меньше будет расхождение KL. В этом смысле расхождение KL — это метрика, для которой мы можем оптимизировать.

Как Q связан с моделью ML?

Q — распределение классов. Однако Q не является фиксированным распределением. Когда вы рассматриваете Q (функции) как функцию функции одного изображения, Q — это модель ML, которую вы обучаете. Подумайте о выводе softmax вашей нейронной сети или логистической регрессии. Q(features) выводит распределение, которое является прогнозом. Процесс обучения модели заключается в оптимизации Q путем изменения параметра модели, чтобы он был близок к P по доступным данным. Это достигается за счет минимизации расхождения KL.

Почему мы минимизируем перекрестную энтропию вместо дивергенции KL в ML?

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

Мы можем переписать дивергенцию KL следующим образом в дискретном случае:

Вы можете распознать элементы как энтропию и перекрестную энтропию.

  • логарифм вероятности (‹=1) всегда отрицательный
  • отрицательная сторона гарантирует, что энтропия и перекрестная энтропия = 9

Учитывая проблему ML, фактическое распределение P базовых данных не меняется, поэтому мы можем рассматривать энтропию (P) как константу. У нас есть контроль над функцией Q, которая изменяется при обновлении параметров модели. Другими словами, минимизация расхождения KL путем обновления Q аналогична минимизации перекрестной энтропии путем обновления Q.

Примечание: в этой постановке задачи MLE (оценка максимального правдоподобия) на самом деле нет разницы между минимизацией расхождения KL или перекрестной энтропией. Однако в байесовском выводе (вариационном выводе) мы не можем просто минимизировать перекрестную энтропию, но вместо этого ELBO (нижняя граница доказательства) (ссылка).

Может ли дивергенция KL быть отрицательной?

Нет, потому что перекрестная энтропия H(P,Q) всегда больше или равна энтропии H(P)

  • Дивергенция KL минимизируется, когда P = Q, то есть когда перекрестная энтропия (P||Q) минимизируется, чтобы быть такой же, как чистая энтропия P
  • Другими словами, даже если вся неопределенность прогноза (также известная как редуцируемая/системная/эпистемическая/незнание агента/отсутствие данных) убрана, в результате чего мы получили наилучшую возможную модель, но у нас остается неустранимая неопределенность (также известная как алеаторический/статистический/стохастический/врожденный/случайный).

Первоначально опубликовано на https://datajello.com 1 января 2022 г.