sMAPE (Symmetric Mean Absolute Percentage Error) — симметричная средняя абсолютная процентная ошибка.

Что такое sMAPE?

sMAPE — это улучшенная версия классической метрики MAPE, разработанная для решения ее основных проблем. Если MAPE асимметрична и неограничена снизу, то sMAPE симметрична и ограничена.

Формула sMAPE

Стандартная формула выглядит так:

sMAPE = (1/n) × Σ [ 2 × |yᵢ - ŷᵢ| / (|yᵢ| + |ŷᵢ|) ] × 100%

Где:

  • yᵢ — фактическое значение
  • ŷᵢ — предсказанное значение
  • n — количество наблюдений

Зачем нужен sMAPE? Решение проблем MAPE

Проблемы MAPE, которые решает sMAPE:

  1. Асимметрия штрафов

    • MAPE: Штрафует за недооценку сильнее, чем за переоценку
    • sMAPE: Симметрично относится к обеим типам ошибок
  2. Неограниченность сверху

    • MAPE: Может стремиться к бесконечности
    • sMAPE: Всегда ограничена между 0% и 200%

Пример расчета

Рассмотрим тот же пример с ценами на дома (в тыс. $):

Реальная цена (yᵢ)Предсказанная цена (ŷᵢ)Расчет
200210`2 ×
300290`2 ×
400380`2 ×
500510`2 ×
600550`2 ×

Сумма: 0.0488 + 0.0339 + 0.0513 + 0.0198 + 0.0870 = 0.2408

sMAPE = (0.2408 / 5) × 100% ≈ 4.82%


Сравнение с MAPE

Давайте сравним на одном примере:

Ситуация: Фактическое значение = 100

СценарийПрогнозMAPEsMAPE
Недооценка5050%66.7%
Переоценка15050%66.7%

Видно, что sMAPE одинаково наказывает за оба типа ошибок, в отличие от MAPE.


Преимущества sMAPE

  1. Симметричность: Одинаково относится к завышению и занижению прогноза
  2. Ограниченность: Значения всегда в диапазоне [0%, 200%]
  3. Устойчивость: Менее чувствительна к экстремальным значениям, чем MAPE
  4. Сравнимость: Позволяет лучше сравнивать модели на разных наборах данных

Недостатки sMAPE

  1. Все еще проблемы с нулевыми значениями: Если и фактическое, и предсказанное значения равны 0, получаем неопределенность 0/0
  2. Сложность интерпретации: Менее интуитивна, чем обычная MAPE
  3. Может быть нестабильной: При очень малых значениях знаменателя метрика становится неустойчивой

Когда использовать sMAPE?

Используйте sMAPE, когда:

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

Лучше использовать другие метрики, когда:

  • В данных есть нулевые значения
  • Вам нужна максимально простая интерпретация для бизнеса
  • Вы предпочитаете более устойчивые метрики вроде MASE или Weighted MAPE

Резюме

sMAPE — это полезная альтернатива MAPE, которая решает проблему асимметричного штрафования ошибок. Хотя у нее есть свои ограничения, она остается популярной метрикой в прогнозировании, особенно когда важна симметричная оценка точности.

Для полной картины следует использовать sMAPE вместе с другими метриками (MAE, RMSE, MASE), чтобы получить комплексное представление о качестве вашей модели.