Перекрестная энтропия

Notebook-as-a-book illustration








Жоаннес Верморель, январь 2018 г.

Перекрестная энтропия — это показатель, который можно использовать для оценки точности вероятностных прогнозов. Перекрестная энтропия тесно связана с оценкой максимального правдоподобия. Перекрестная энтропия крайне важна для современных систем прогнозирования, потому что она делает возможным создание высокоточных прогнозов, даже для альтернативных показателей. В цепях поставок перекрестная энтропия используется для оценки моделей, применяемых для расчета вероятностей редких событий, которые часто бывают самыми затратными. Данный показатель разработан на основе тех же принципов, что и более простые показатели точности, такие как средняя квадратическая ошибка или средняя абсолютная ошибка в процентах.

Частотная вероятность и байесовская вероятность

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

Использование же перекрестной энтропии основано на байесовском подходе. В данном случае задача решается в обратном порядке. Для количественного описания неизвестного феномена с точки зрения байесовского подхода сначала необходимо выбрать модель, дающую вероятностную оценку феномена. Затем при регулярном наблюдении можно оценить, насколько модель соответствует реальной частоте возникновения феномена. По мере увеличения количества случаев возникновения феномена качество оценки модели повышается.

Оба подхода, и частотный, и байесовский, являются допустимыми и полезными. В цепях поставок байесовский подход использовать проще, поскольку сбор данных зачастую дорог, а соответствующие процедуры недостаточно гибкие, ведь получение заказов на тот или иной продукт не зависит напрямую от компании.

Логика перекрестной энтропии

Прежде чем рассматривать алгебраическую формулировку перекрестной энтропии, разберемся с логикой, лежащей в ее основе. Предположим, что у нас есть вероятностная модель (далее просто модель), которая предназначена для интерпретации событий прошлого и прогнозирования будущего. Каждому случаю в прошлом модель присваивает оценку вероятности точного повторения такого случая. Можно создать модель, которая просто запомнит все прошлые случаи и присвоит им вероятность, равную 1, однако такая модель не позволит что-либо узнать о будущем. Таким образом, интересная модель должна неким образом упрощать прошлые события и присваивать им вероятность менее 1.

Принимая байесовский подход, мы можем оценить вероятность того, что модель создает все случаи возникновения феномена. Если в будущем все случаи считать независимыми (независимыми одинаково распределенными случайными величинами (IID)), то вероятность того, что модель создала имеющийся набор случаев, является результатом оценки всех вероятностей для каждого случая в прошлом, выполненной с помощью модели.

Математическое произведение тысяч переменных, значение которых обычно меньше 0,5 (предположим, что мы работаем с достаточно неопределенным феноменом), должно представлять собой невероятно малое число. Например, даже если взять превосходную модель прогнозирования спроса, какова вероятность того, что она сможет выдать все данные о продажах компании за год? Несмотря на то, что оценка данного значения — очень непростая задача, совершенно ясно, что число получится крайне малое.

Таким образом, для сглаживания данной проблемы, которая также известна как «исчезновение порядка», используются логарифмы. Логарифмы можно использовать для перевода произведений в суммы, что позволяет эффективно решать проблему исчезновения порядка.

Формальное определение перекрестной энтропии

Для двух несвязанных друг с другом случайных переменных $p$ и $q$, перекрестная энтропия определяется следующим образом: $$H(p, q) = -\sum_x p(x)\, \log q(x). \!$$ Данное определение не является симметричным. $P$ должно представлять собой «истинное» распределение, наблюдаемое лишь частично, тогда как $Q$ — «неестественное» распределение, полученное с помощью сконструированной статистической модели.

В теории информации перекрестную энтропию можно понимать как ожидаемую длину кодированных сообщений в битах при использовании $Q$ вместо $P$. Данный вопрос выходит за рамки нашей темы, и он не так важен для цепей поставок.

На практике, поскольку переменная $P$ неизвестна, перекрестная энтропия оценивается эмпирически на основании наблюдений, исходя из простого предположения, что все зафиксированные случаи наблюдения феномена имеют одинаковую вероятность, то есть $p(x)=1/N$, где $N$ представляет собой количество случаев наблюдения. $$H(q) = - \frac{1}{N} \sum_x \log q(x). \!$$ Интересно, что эта формула идентична формуле среднего логарифмического правдоподобия. Оптимизация перекрестной энтропии или логарифмического правдоподобия, по большому счету, — это одно и то же как по смыслу, так и в числовом отношении.

Преимущества перекрестной энтропии

С 1990-х по начало 2010-х большинство статистов были убеждены, что самым эффективным способом оптимизации показателя, например средней абсолютной ошибки в процентах (САОП), с чисто математической точки зрения, было создание алгоритма оптимизации специально под данный показатель. Однако специалисты по глубокому обучению обнаружили, что это не так. Числовая оптимизация — это очень сложная задача, и большинство показателей не подходит для эффективной и крупномасштабной числовой оптимизации. Кроме того, в это же время специалисты по обработке данных осознали, что все задачи, связанные с прогнозированием, представляли собой задачи числовой оптимизации.

С точки зрения цепей поставок, это означает, что для оптимизации показателей прогнозирования, таких как САОП или СКО (средняя квадратическая ошибка), лучше всего оптимизировать перекрестную энтропию. К 2017 году компания Lokad получила значительный объем эмпирических данных, подтверждающих данное предположение. Кроме того, перекрестная энтропия превосходит еще один показатель точности вероятностных прогнозов: непрерывную приоритетную вероятность (CRPS), даже если итоговые модели оцениваются по CRPS.

Пока что не до конца понятно, почему перекрестная энтропия оказалась таким удобных показателем для числовой оптимизации. Иэн Гудфеллоу и др. приводят следующий веский аргумент: перекрестная энтропия дает очень большие градиентные значения, которые особенно ценны для градиентного спуска, который является наиболее успешным методом оптимизации масштаба на данный момент.

CRPS и перекрестная энтропия

При работе с цепями поставок перекрестная энтропия значительно превосходит CRPS как показатель эффективности вероятностных прогнозов, потому что она делает больший упор на редкие события. Рассмотрим вероятностную модель спроса, среднее значение которого составляет 1000 единиц товара, причем полная масса распределения сконцентрирована в сегменте от 990 до 1010. Предположим, что объем спроса в следующий раз составит 1011.

С точки зрения CRPS, модель будет считаться достаточно эффективной, так как наблюдаемый спрос будет отличаться от среднего прогноза лишь на 10 единиц. С точки зрения перекрестной энтропии, напротив, такая модель будет считаться ошибочной: она предсказывала, что спрос в объеме 1011 имеет нулевую вероятность — это очень резкое предположение, которое оказалось неверным, так как спрос составил именно 1011 единиц товара.

Использование CRPS часто приводит к выбору моделей, допускающих абсурдные предположения типа «событие XY никогда не произойдет», причем такие события на самом деле могут происходить и происходят. Это во многом показывает, почему перекрестная энтропия дает более качественные результаты. При использовании метода перекрестной энтропии выбираются модели, которые не «ломаются», когда происходят невероятные события. Такие события могут происходить в цепях поставок, и если к ним не готовиться, они могут обойтись очень дорого.