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

Чтобы лучше понять кросс-энтропийные потери, давайте сначала рассмотрим концепцию энтропии.

Энтропия – это мера неопределенности в распределении вероятностей. Распределение вероятностей с высокой энтропией более неопределенно, а распределение с низкой энтропией более достоверно.

Кросс-энтропия измеряет разницу между двумя распределениями вероятностей.

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

  • Красный: 50%
  • Синий: 30%
  • Зеленый: 20%

Допустим, ваша модель предсказывает следующее распределение вероятностей для цветов:

  • Красный: 60%
  • Синий: 25%
  • Зеленый: 15%

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

Математически функция кросс-энтропийных потерь может быть определена как:

Cross-Entropy = L(y, t) = -∑(t_i * ln(y_i))

Где y — прогнозируемое распределение вероятностей, t — истинное распределение вероятностей, а суммирование проводится по всем классам или категориям.

Давайте возьмем реальную задачу классификации и посмотрим, как эта функция может работать -

У вас есть модель машинного обучения, которая классифицирует изображения кошек, собак и лошадей. Целевой вектор t для изображения собаки будет [0, 1, 0], где 1 указывает правильную категорию (собака). Предположим, что выходные вероятности модели для этого изображения равны [0.4, 0.4, 0.2]. Перекрестная энтропийная потеря для этого изображения будет:

[L(y, t) = — (0 \times \ln 0,4) — (1 \times \ln 0,4) — (0 \times \ln 0,2) = 0,92]

В этом примере потеря перекрестной энтропии, равная 0,92, указывает на то, что модель не очень уверена в своем прогнозе, поскольку она присваивает 40%-ную вероятность обеим категориям кошек и собак. Если бы модель была более точной, потери перекрестной энтропии были бы ниже. Например, если выходные вероятности модели для изображения лошади были [0.1, 0.2, 0.7], а истинный целевой вектор был [0, 0, 1], потеря кросс-энтропии была бы:

[L(y, t) = — (0 \times \ln 0,1) — (0 \times \ln 0,2) — (1 \times \ln 0,7) = 0,36]

Эта более низкая кросс-энтропийная потеря указывает на то, что модель более уверена в своем прогнозе, присваивая правильную категорию (лошадь) с вероятностью 70%.

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

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