Cost

Trait Cost 

Source
pub trait Cost<Truth, Target = f64> {
    // Required methods
    fn outer_derivative(&self, prediction: &Target, truth: Truth) -> Target;
    fn cost(&self, prediction: Target, truth: Truth) -> f64;
}
Expand description

Representing a cost function whose value is supposed be minimized by the training algorithm.

The cost function is a quantity that describes how deviations of the prediction from the true, observed target values should be penalized during the optimization of the prediction.

Algorithms like stochastic gradient descent use the gradient of the cost function. When calculating the gradient, it is important to apply the outer-derivative of the cost function to the prediction, with the inner-derivative of the model to the coefficient changes (chain-rule of calculus). This inner-derivative must be supplied as the argument derivative_of_model to Cost::gradient.

Implementations of this trait can be found in cost

Required Methods§

Source

fn outer_derivative(&self, prediction: &Target, truth: Truth) -> Target

The outer derivative of the cost function with respect to the prediction.

Source

fn cost(&self, prediction: Target, truth: Truth) -> f64

Value of the cost function.

Implementors§