Struct changeforest::Control

source ·
pub struct Control {
    pub minimal_relative_segment_length: f64,
    pub minimal_gain_to_split: Option<f64>,
    pub model_selection_alpha: f64,
    pub model_selection_n_permutations: usize,
    pub number_of_wild_segments: usize,
    pub seeded_segments_alpha: f64,
    pub seed: u64,
    pub random_forest_parameters: RandomForestParameters,
    pub forbidden_segments: Option<Vec<(usize, usize)>>,
}
Expand description

Storage container for hyperparameters.

Fields§

§minimal_relative_segment_length: f64

Segments with length smaller than 2 * n * minimal_relative_segment_length will not be split.

§minimal_gain_to_split: Option<f64>

Only keep split point if the gain exceeds minimal_gain_to_split. Relevant for change in mean. Note that this is relative to the number of observations. Use value motivated by BIC minimal_gain_to_split = log(n_samples) * n_features / n_samples if None.

§model_selection_alpha: f64

Type two error in model selection to be approximated. Relevant for classifier- based changepoint detection.

§model_selection_n_permutations: usize

Number of permutations for model selection in classifier-based change point detection.

§number_of_wild_segments: usize

Number of randomly drawn segments. Corresponds to parameter M in https://arxiv.org/pdf/1411.0858.pdf.

§seeded_segments_alpha: f64

Decay parameter in seeded binary segmentation. Should be in [1/2, 1), with a value close to 1 resulting in many segments. Corresponds to \alpha in https://arxiv.org/pdf/2002.06633.pdf.

§seed: u64

Seed used for segmentation.

§random_forest_parameters: RandomForestParameters

Hyperparameters for random forests.

§forbidden_segments: Option<Vec<(usize, usize)>>

Segments of indexes were no segmentation is allowed.

Implementations§

source§

impl Control

source

pub fn default() -> Control

source

pub fn with_minimal_relative_segment_length( self, minimal_relative_segment_length: f64 ) -> Self

source

pub fn with_minimal_gain_to_split( self, minimal_gain_to_split: Option<f64> ) -> Self

source

pub fn with_model_selection_alpha(self, model_selection_alpha: f64) -> Self

source

pub fn with_model_selection_n_permutations( self, model_selection_n_permutations: usize ) -> Self

source

pub fn with_number_of_wild_segments( self, number_of_wild_segments: usize ) -> Self

source

pub fn with_seeded_segments_alpha(self, seeded_segments_alpha: f64) -> Self

source

pub fn with_seed(self, seed: u64) -> Self

source

pub fn with_random_forest_parameters( self, random_forest_parameters: RandomForestParameters ) -> Self

source

pub fn with_forbidden_segments( self, forbidden_segments: Option<Vec<(usize, usize)>> ) -> Self

Trait Implementations§

source§

impl Clone for Control

source§

fn clone(&self) -> Control

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V