示例#1
0
def median_absolute_percentage_error(y_true, y_pred):
    y_true, y_pred = norm_v2_single(y_true), norm_v2_single(y_pred)
    #y_true, y_pred = np.array(y_true)+np.max(y_true), np.array(y_pred)+np.max(y_pred)
    ape = []
    for k in range(len(y_true)):
        if abs(y_pred[k]) > 1e-3 and abs(y_true[k]) > 1e-3:
            ape.append(abs((y_pred[k] - y_true[k]) / y_true[k]))
    return np.median(np.array(ape)) * 100
def mean_percentage_r_error(y_true, y_pred):
    y_true, y_pred = norm_v2_single(y_true), norm_v2_single(y_pred)
    #y_true, y_pred = np.array(y_true) + np.max(y_true), np.array(y_pred) + np.max(y_pred)
    y_true, y_pred = np.abs(y_true) , np.abs(y_pred)
    ape = []
    for k in range(len(y_true)):
        if abs(y_pred[k]) > 1e-3 and abs(y_true[k]) > 1e-3:
            ape.append(pow(((y_true[k] - y_pred[k]) / y_true[k]), 2))
    return sqrt(np.mean(np.array(ape)))
示例#3
0
def mean_percentage_r_error(y_true, y_pred):
    y_true, y_pred = norm_v2_single(y_true), norm_v2_single(y_pred)
    #y_true, y_pred = np.array(y_true) + np.max(y_true), np.array(y_pred) + np.max(y_pred)
    y_true, y_pred = np.abs(y_true), np.abs(y_pred)
    #indices = np.where(y_true > 0)[1]
    #y_true, y_pred = y_true[indices], y_pred[indices]
    z1 = f1(y_true, 20)
    #z2 = f2(y_true, 20)
    ape = []
    for k in range(len(y_true)):
        if abs(y_true[k]) != 0 and k not in z1:
            ape.append(pow(((y_true[k] - y_pred[k]) / y_true[k]), 2))
    return sqrt(np.mean(np.array(ape)))