StreamingObjective

Trait StreamingObjective 

Source
pub trait StreamingObjective {
    // Required methods
    fn evaluate(
        &self,
        parameters: &ArrayView1<'_, f64>,
        datapoint: &StreamingDataPoint,
    ) -> f64;
    fn gradient(
        &self,
        parameters: &ArrayView1<'_, f64>,
        datapoint: &StreamingDataPoint,
    ) -> Array1<f64>;

    // Provided method
    fn hessian(
        self_parameters: &ArrayView1<'_, f64>,
        _datapoint: &StreamingDataPoint,
    ) -> Option<Array2<f64>> { ... }
}
Expand description

Trait for objective functions in streaming optimization

Required Methods§

Source

fn evaluate( &self, parameters: &ArrayView1<'_, f64>, datapoint: &StreamingDataPoint, ) -> f64

Evaluate the objective function for a single data point

Source

fn gradient( &self, parameters: &ArrayView1<'_, f64>, datapoint: &StreamingDataPoint, ) -> Array1<f64>

Compute the gradient for a single data point

Provided Methods§

Source

fn hessian( self_parameters: &ArrayView1<'_, f64>, _datapoint: &StreamingDataPoint, ) -> Option<Array2<f64>>

Compute the Hessian for a single data point (optional)

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§