# Symmetric mean absolute percentage error

(Redirected from SMAPE)

Symmetric mean absolute percentage error (SMAPE or sMAPE) is an accuracy measure based on percentage (or relative) errors. It is usually defined as follows:

$\mbox{SMAPE} = \frac{1}{n}\sum_{t=1}^n \frac{\left|F_t-A_t\right|}{(A_t+F_t)/2}$

where At is the actual value and Ft is the forecast value.

The absolute difference between At and Ft is divided by half the sum of the actual value At and the forecast value Ft. The value of this calculation is summed for every fitted point t and divided again by the number of fitted points n. The earliest reference to this formula appears to be Armstrong (1985, p. 348) where it is called "adjusted MAPE". It has been later discussed, modified and re-proposed by Flores (1986).

In contrast to the mean absolute percentage error, SMAPE has both a lower bound and an upper bound. Indeed, the formula above provides a result between 0% and 200%. However a percentage error between 0% and 100% is much easier to interpret. That is the reason why the formula below is often used in practice (i.e. no factor 0.5 in denominator):

$\mbox{SMAPE} = \frac{1}{n}\sum_{t=1}^n \frac{\left|F_t-A_t\right|}{A_t+F_t}$

However, one problem with SMAPE is that it is not as symmetric as it sounds since over- and under-forecasts are not treated equally. Let's consider the following example by applying the second SMAPE formula:

• Over-forecasting: At = 100 and Ft = 110 give SMAPE = 4.76%
• Under-forecasting: At = 100 and Ft = 90 give SMAPE = 5.26%.

There is a third version of SMAPE, which allows to measure the direction of the bias in the data by generating a positive and a negative error on line item level. Furthermore it is better protected against outliers and the bias effect mentioned in the previous paragraph than the two other formulas. The formula is:

$\mbox{SMAPE} = \frac{\sum_{t=1}^n \left|F_t-A_t\right|}{\sum_{t=1}^n (A_t+F_t)}$

A limitation to SMAPE is that incase the Actual value or Forecasted value is 0, the value of error will boom up to the upper-limit of error. (200% for the first formula and 100% for the second formula)