Информатика / Кодирование информации
Перекрёстная энтропия дискретного распределения
Перекрёстная энтропия дискретного распределения даёт не только вычислительную запись, но и правило, какие данные определяют результат и как проверить его численно. Формула применяется к строго указанной модели; ниже разобраны предпосылки, два решённых задания и границы корректной интерпретации.
Формула
При q=0,5 значение равно 1 бит; избыток над ним равен KL(P||Q).
Обозначения
- $x$
- аргумент, состояние или вектор данных конкретной задачи, единицы исходной модели
- $n,k,i,j$
- целые индексы узла, шага либо компоненты, безразмерные
- $ε / err$
- допуск или оценка вычислительной ошибки, если она используется, единицы результата
Условия применения
P и Q должны быть распределениями на одном наборе событий. Для каждого p_i>0 требуется q_i>0, иначе сумма бесконечна; нулевые p_i не влияют. Основание 2 даёт биты, а переход к натуральному логарифму меняет только масштаб в 1/ln 2.
Ограничения
Результат нельзя переносить на похожую по словам, но другую модель. Оценка ошибки может быть локальной, а сходимость — зависеть от гладкости, обусловленности или начальных данных. Округление, вырождение матрицы и нарушения ограничений меняют смысл вычисления. Число после знака равенства не заменяет проверку: следует показать, какая именно формула применена, в каких единицах получен ответ и почему условия выполнены. Для информационных величин особенно важно не смешивать биты и натуральные единицы.
Подробное объяснение
Перекрёстная энтропия спрашивает, сколько в среднем бит потребует код, рассчитанный на Q, когда данные на самом деле приходят по P. Поэтому именно P стоит в весах, а Q — внутри логарифма.
Равенство H(P,Q)=H(P)+D_KL(P||Q) сразу объясняет минимум: при Q=P лишняя стоимость отсутствует. Если модель даёт малую вероятность частому событию, средняя цена резко растёт.
В обучении классификатора P часто является one-hot меткой, а Q — выходом softmax. Тогда потеря одного наблюдения равна −log вероятности правильного класса, что связывает формулу с максимальным правдоподобием.
Нельзя принимать log₂ и натуральный логарифм за одно и то же: первый даёт биты, второй — наты. Оптимум модели одинаков, но численное значение и масштаб градиентов различаются.
В первом примере −0,5log₂0,75≈0,207519 и −0,5log₂0,25=1; сумма 1,207519. Энтропия честного P равна одному, поэтому избыток 0,207519 совпадает с KL(P||Q). Это проверяет направление обоих распределений в формуле.
Как пользоваться формулой
- Выпишите H(P,Q)=-\sum_i p_i\log_2q_i и отметьте искомую величину; не заменяйте её одноимённым параметром из другой модели.
- Подготовьте данные в требуемой форме: проверьте индексы, знак, область аргумента, нормировку либо размерность.
- Выполните первое задание по действиям и сохраните промежуточные значения каждого коэффициента, отношения или суммы.
- Проверьте результат естественным способом: симметрией, точным частным случаем, невязкой или исходным ограничением.
- Разберите второе задание: изменённые данные показывают границу применимости и предупреждают типичную ошибку метода.
Историческая справка
Перекрёстная энтропия выросла из шенноновского анализа средней длины кодирования и стала стандартной записью для потери при вероятностном прогнозе. Если данные следуют P, а код или модель рассчитаны как Q, среднее число бит определяется −Σp log q. В 1951 году работа Кульбака и Лейблера сделала особенно прозрачной связь H(P,Q)=H(P)+D_KL(P||Q). В современной статистике эта формула объясняет, почему максимизация правдоподобия эквивалентна минимизации средней логарифмической потери.
Термин cross entropy вошёл в статистику и теорию кодирования как запись средней длины кода, выбранного по модельному распределению. Связь с дивергенцией Кульбака—Лейблера после статьи 1951 года сделала выражение основой логарифмической функции потерь.
Историческая линия формулы
Перекрёстная энтропия не принадлежит одному изолированному историческому акту: она следует из теории кодирования Шеннона и связи с дивергенцией Кульбака—Лейблера. В формуле важно направление: веса берутся из P, а логарифм — из Q. Источник в карточке указан для различения исторического имени, публикации и современной вычислительной формы; эти уровни не следует смешивать.
Пример
Для P=(0,5;0,5), Q=(0,75;0,25): H(P,Q)=−0,5log₂0,75−0,5log₂0,25≈1,207519 бита. Энтропия P равна 1, разность равна D_KL≈0,207519. В первом примере −0,5log₂0,75≈0,207519 и −0,5log₂0,25=1; сумма 1,207519. Энтропия честного P равна одному, поэтому избыток 0,207519 совпадает с KL(P||Q). Это проверяет направление обоих распределений в формуле. Перекрёстная энтропия спрашивает, сколько в среднем бит потребует код, рассчитанный на Q, когда данные на самом деле приходят по P. Поэтому именно P стоит в весах, а Q — внутри логарифма.
Частая ошибка
Нельзя усреднять log q_i с весами q_i: это была бы энтропия Q. Нельзя допускать q_i=0 для наблюдаемого класса. Не следует путать перекрёстную энтропию с KL, забывая H(P). И нельзя называть результат в битах при использовании ln без деления на ln2. В разборе «Перекрёстная энтропия дискретного распределения» проверяют именно обозначения и условия данной записи.
Практика
Задачи с решением
Перекрёстная энтропия при P=Q
Условие. Вычислите H(P,Q) при P=Q=(0,5;0,5).
Решение. −0,5log₂0,5−0,5log₂0,5=0,5+0,5=1.
Ответ. H(P,Q)=1 бит.
Штраф за малую вероятность
Условие. Вычислите H((1;0),(0,25;0,75)).
Решение. Ненулевой вес только у первого события: −log₂0,25=2.
Ответ. H(P,Q)=2 бита.
Дополнительные источники
- https://onlinelibrary.wiley.com/doi/pdf/10.1002/j.1538-7305.1948.tb01338.x
- https://doi.org/10.1214/aoms/1177729694
Связанные формулы
Информатика
Дивергенция Кульбака—Лейблера для дискретных распределений
Дивергенция Кульбака—Лейблера для дискретных распределений даёт не только вычислительную запись, но и правило, какие данные определяют результат и как проверить его численно. Формула применяется к строго указанной модели; ниже разобраны предпосылки, два решённых задания и границы корректной интерпретации.
Информатика
Взаимная информация двух дискретных величин
Взаимная информация двух дискретных величин даёт не только вычислительную запись, но и правило, какие данные определяют результат и как проверить его численно. Формула применяется к строго указанной модели; ниже разобраны предпосылки, два решённых задания и границы корректной интерпретации.
Информатика
Ёмкость двоичного симметричного канала
Ёмкость двоичного симметричного канала даёт не только вычислительную запись, но и правило, какие данные определяют результат и как проверить его численно. Формула применяется к строго указанной модели; ниже разобраны предпосылки, два решённых задания и границы корректной интерпретации.