MultiTargetModel

Struct MultiTargetModel 

Source
pub struct MultiTargetModel<R: Records, L> { /* private fields */ }
Expand description

Merge models with single target to multi-target models

Many models assume that the target variables are uncorrelated and support therefore only a single target variable. This wrapper allows the user to merge multiple models with only a single-target variable into a multi-target model.

Implementations§

Source§

impl<R: Records, L> MultiTargetModel<R, L>

Source

pub fn new(models: Vec<Box<dyn PredictInplace<R, Array1<L>>>>) -> Self

Create a wrapper model from a list of single-target models

The type parameter of the single-target models are only constraint to implement the prediction trait and can otherwise contain any object. This allows the mixture of different models into the same wrapper. If you want to use the same model for all predictions, just use the FromIterator implementation.

Trait Implementations§

Source§

impl<F, D: Data<Elem = F>, L, P: PredictInplace<ArrayBase<D, Ix2>, Array1<L>> + 'static> FromIterator<P> for MultiTargetModel<ArrayBase<D, Ix2>, L>

Source§

fn from_iter<I: IntoIterator<Item = P>>(iter: I) -> Self

Creates a value from an iterator. Read more
Source§

impl<L: Default, F, D: Data<Elem = F>> PredictInplace<ArrayBase<D, Dim<[usize; 2]>>, ArrayBase<OwnedRepr<L>, Dim<[usize; 2]>>> for MultiTargetModel<ArrayBase<D, Ix2>, L>

Source§

fn predict_inplace(&self, arr: &ArrayBase<D, Ix2>, targets: &mut Array2<L>)

Predict something in place
Source§

fn default_target(&self, x: &ArrayBase<D, Ix2>) -> Array2<L>

Create targets that predict_inplace works with.

Auto Trait Implementations§

§

impl<R, L> Freeze for MultiTargetModel<R, L>

§

impl<R, L> !RefUnwindSafe for MultiTargetModel<R, L>

§

impl<R, L> !Send for MultiTargetModel<R, L>

§

impl<R, L> !Sync for MultiTargetModel<R, L>

§

impl<R, L> Unpin for MultiTargetModel<R, L>

§

impl<R, L> !UnwindSafe for MultiTargetModel<R, L>

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.

Source§

impl<'a, F, D, DM, T, O> Predict<&'a ArrayBase<D, DM>, T> for O
where D: Data<Elem = F>, DM: Dimension, O: PredictInplace<ArrayBase<D, DM>, T>,

Source§

fn predict(&self, records: &'a ArrayBase<D, DM>) -> T

Source§

impl<'a, F, R, T, S, O> Predict<&'a DatasetBase<R, T>, S> for O
where R: Records<Elem = F>, O: PredictInplace<R, S>,

Source§

fn predict(&self, ds: &'a DatasetBase<R, T>) -> S

Source§

impl<F, D, E, T, O> Predict<ArrayBase<D, Dim<[usize; 2]>>, DatasetBase<ArrayBase<D, Dim<[usize; 2]>>, T>> for O
where D: Data<Elem = F>, T: AsTargets<Elem = E>, O: PredictInplace<ArrayBase<D, Dim<[usize; 2]>>, T>,

Source§

fn predict( &self, records: ArrayBase<D, Dim<[usize; 2]>>, ) -> DatasetBase<ArrayBase<D, Dim<[usize; 2]>>, T>

Source§

impl<F, R, T, E, S, O> Predict<DatasetBase<R, T>, DatasetBase<R, S>> for O
where R: Records<Elem = F>, S: AsTargets<Elem = E>, O: PredictInplace<R, S>,

Source§

fn predict(&self, ds: DatasetBase<R, T>) -> DatasetBase<R, S>

Source§

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

Source§

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>,

Source§

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.
Source§

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

Source§

fn vzip(self) -> V