1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use ndarray::Array1;

// TODO: Documentation
pub fn mean_squared_error(
    observed_array: Array1<f64>,
    predicted_array: Array1<f64>,
) -> Array1<f64> {
    (&observed_array - &predicted_array).mapv(|value| value.powi(2))
}

// TODO: Documentation
pub fn deriv_mean_squared_error(
    observed_array: Array1<f64>,
    predicted_array: Array1<f64>,
) -> Array1<f64> {
    -2f64 * (&observed_array - &predicted_array)
}