Loss.mae constructor
Loss.mae()
Mean Absolute Error loss function for batch
mse(y, yP) = 1/n * sum |y - yP|
Example:
final y = Matrix.column([0, 1, 0]);
final yP = Matrix.column([0.1, 0.1, 0.8]);
final mae = Loss.mae();
double loss = mae.function(y, yP);
print(loss); // output: 0.6
Implementation
Loss.mae() {
function = (Matrix y, Matrix yP, [dynamic parameter]) {
return (y - yP).apply((double x) => x.abs()).reduceSum() / y.n / y.m;
};
dfunction = (Matrix y, Matrix yP, [dynamic parameter]) {
return (yP - y).apply((double x) => x > 0 ? 1 : -1).scaled(1 / y.n);
};
name = 'mae';
}