Loss.mse constructor
Loss.mse()
Mean Square Error loss function for batch
mse(y, yP) = 1/n * sum (y - yP)^2
Example:
final y = Matrix.column([0, 1, 0]);
final yP = Matrix.column([0.1, 0.1, 0.8]);
final mse = Loss.mse();
double loss = mse.function(y, yP);
print(loss); // output: 0.48666666666666675
Implementation
Loss.mse() {
function = (Matrix y, Matrix yP, [dynamic parameter]) {
return (y - yP)
.apply((double x) => math.pow(x, 2).toDouble())
.reduceSum() /
y.n /
y.m;
};
dfunction = (Matrix y, Matrix yP, [dynamic parameter]) {
return (yP - y).scaled(2 / y.n);
};
name = 'mse';
}