Skip to main content

TargetTransform

Trait TargetTransform 

Source
pub trait TargetTransform {
    type State;

    // Required methods
    fn fit(y: &[f64]) -> Result<Self::State, TransformError>;
    fn transform(state: &Self::State, y: f64) -> f64;
    fn inverse(state: &Self::State, value: f64) -> f64;

    // Provided methods
    fn fit_transform(
        y: &[f64],
    ) -> Result<(Self::State, Vec<f64>), TransformError> { ... }
    fn transform_slice(
        state: &Self::State,
        y: &[f64],
    ) -> Result<Vec<f64>, TransformError> { ... }
    fn transform_into(
        state: &Self::State,
        y: &[f64],
        out: &mut [f64],
    ) -> Result<(), TransformError> { ... }
    fn inverse_slice(
        state: &Self::State,
        values: &[f64],
    ) -> Result<Vec<f64>, TransformError> { ... }
    fn inverse_into(
        state: &Self::State,
        values: &[f64],
        out: &mut [f64],
    ) -> Result<(), TransformError> { ... }
}
Expand description

Transform целевой переменной с состоянием, оцениваемым на обучающем target.

Required Associated Types§

Source

type State

Состояние transform-а, сохраняемое вместе с обученной моделью.

Required Methods§

Source

fn fit(y: &[f64]) -> Result<Self::State, TransformError>

Оценивает состояние transform-а по обучающему target.

§Errors

Возвращает TransformError, если target пуст, содержит не-finite значения или нарушает domain-инварианты конкретного transform-а.

Source

fn transform(state: &Self::State, y: f64) -> f64

Преобразует одно значение target.

Source

fn inverse(state: &Self::State, value: f64) -> f64

Возвращает значение на исходную шкалу.

Provided Methods§

Source

fn fit_transform(y: &[f64]) -> Result<(Self::State, Vec<f64>), TransformError>

Оценивает состояние и преобразует весь target.

§Errors

Возвращает ошибку из Self::fit или Self::transform_slice.

Source

fn transform_slice( state: &Self::State, y: &[f64], ) -> Result<Vec<f64>, TransformError>

Преобразует срез target в новый Vec.

§Errors

Возвращает TransformError::NonFiniteValue, если вход содержит NaN или infinity. Конкретные transform-ы могут усиливать проверку domain-а, например требовать строго положительные значения.

Source

fn transform_into( state: &Self::State, y: &[f64], out: &mut [f64], ) -> Result<(), TransformError>

Преобразует срез target в caller-provided output buffer.

§Errors

Возвращает TransformError::LengthMismatch, если длина out не совпадает с длиной входа. Возвращает TransformError::NonFiniteValue, если вход содержит NaN или infinity. Конкретные transform-ы могут усиливать проверку domain-а.

Source

fn inverse_slice( state: &Self::State, values: &[f64], ) -> Result<Vec<f64>, TransformError>

Возвращает срез значений на исходную шкалу в новый Vec.

§Errors

Возвращает TransformError::NonFiniteValue, если значения на transform-шкале содержат NaN или infinity.

Source

fn inverse_into( state: &Self::State, values: &[f64], out: &mut [f64], ) -> Result<(), TransformError>

Возвращает transform-scale values на исходную шкалу в caller-provided buffer.

§Errors

Возвращает TransformError::LengthMismatch, если длина out не совпадает с длиной входа. Возвращает TransformError::NonFiniteValue, если вход содержит NaN или infinity.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§