(forecast: Forecast, target: Target)
return np.sqrt(np.mean(np.power((forecast - target), 2))) / (np.mean(np.abs(target)))
Normalized RMSE as defined in https://www.cs.utexas.edu/~rofuyu/papers/tr-mf-nips.pdf

    :param forecast: Forecast values. Shape: batch, time
    :param target: Target values. Shape: batch, time
    :return: Error values
Normalized RMSE as defined in https://www.cs.utexas.edu/~rofuyu/papers/tr-mf-nips.pdf
Normalized RMSE as defined in https : // www . cs . utexas . edu / ~rofuyu / papers / tr - mf - nips . pdf
def nrmse(forecast: Forecast, target: Target) -> float:
    """
    Normalized RMSE as defined in https://www.cs.utexas.edu/~rofuyu/papers/tr-mf-nips.pdf

    :param forecast: Forecast values. Shape: batch, time
    :param target: Target values. Shape: batch, time
    :return: Error values
    """
    return np.sqrt(np.mean(np.power((forecast - target), 2))) / (np.mean(np.abs(target)))
def nrmse ( forecast : Forecast , target : Target ) -> float : return np . sqrt ( np . mean ( np . power ( ( forecast - target ) , 2 ) ) ) / ( np . mean ( np . abs ( target ) ) )