def sMAPE()

in fclib/fclib/evaluation/evaluation_utils.py [0:0]


def sMAPE(predictions, actuals):
    """
    Implements Symmetric Mean Absolute Percent Error (sMAPE).

    Args:
        predictions (array like): a vector of predicted values.
        actuals (array like): a vector of actual values.

    Returns:
        numpy.float: sMAPE value
    """
    if not (isinstance(actuals, pd.Series) and isinstance(predictions, pd.Series)):
        predictions, actuals = pd.Series(predictions), pd.Series(actuals)

    return ((predictions - actuals).abs() / (predictions.abs() + actuals.abs())).mean()