我必须使用平均绝对误差来实现损失函数,而无需调用内置函数。下面的代码正确吗?因为我的损失值迅速从28.xx升至0.00028。
同时,RMSE等其他损失函数具有更标准的损失曲线
loss = tf.reduce_sum(tf.abs(y_pred - Y) / nFeatures)
答案 0 :(得分:1)
您可以基于MAE公式实现自己的丢失函数:
import tensorflow as tf
MAE = tf.reduce_mean(tf.abs(y_true - y_pred))
您还可以在此answer
中查看自定义损失函数或
import numpy as np
MAE = np.average(np.abs(y_true - y_pred), weights=sample_weight, axis=0)
或
from tensorflow.python.ops import math_ops
MAE = math_ops.abs(y_true - y_pred)