Struct SimpleModel

Source
pub struct SimpleModel<T = f64> {
    pub config: StandardModelConfig<T>,
    pub features: ModelFeatures,
    pub params: ModelParams<T>,
}

Fields§

§config: StandardModelConfig<T>§features: ModelFeatures§params: ModelParams<T>

Implementations§

Source§

impl<T> SimpleModel<T>

Source

pub fn new(config: StandardModelConfig<T>, features: ModelFeatures) -> Self
where T: Clone + Default,

Source

pub fn init(self) -> Self

Source

pub const fn config(&self) -> &StandardModelConfig<T>

Source

pub fn config_mut(&mut self) -> &mut StandardModelConfig<T>

Source

pub const fn features(&self) -> ModelFeatures

Source

pub const fn params(&self) -> &ModelParams<T>

Source

pub fn params_mut(&mut self) -> &mut ModelParams<T>

Trait Implementations§

Source§

impl<A, S, D> Forward<ArrayBase<S, D>> for SimpleModel<A>
where A: Float + FromPrimitive + ScalarOperand, D: Dimension, S: Data<Elem = A>, Params<A>: Forward<Array<A, D>, Output = Array<A, D>>,

Source§

type Output = ArrayBase<OwnedRepr<A>, D>

Source§

fn forward(&self, input: &ArrayBase<S, D>) -> Result<Self::Output>

a single forward step
Source§

fn forward_then<F>(&self, input: &Rhs, then: F) -> Result<Self::Output, Error>
where F: FnOnce(Self::Output) -> Self::Output,

this method enables the forward pass to be generically activated using some closure. This is useful for isolating the logic of the forward pass from that of the activation function and is often used by layers and models.
Source§

impl<T> Model<T> for SimpleModel<T>

Source§

type Config = StandardModelConfig<T>

The configuration type for the model
Source§

type Layout = ModelFeatures

the type of layout used by the model
Source§

fn config(&self) -> &StandardModelConfig<T>

returns an immutable reference to the models configuration; this is typically used to access the models hyperparameters (i.e. learning rate, momentum, etc.) and other related control parameters.
Source§

fn config_mut(&mut self) -> &mut StandardModelConfig<T>

returns a mutable reference to the models configuration; useful for setting hyperparams
Source§

fn layout(&self) -> ModelFeatures

returns a copy of the model’s current layout (features); a type providing the model with a particular number of features for the various layers of a deep neural network. Read more
Source§

fn params(&self) -> &ModelParams<T>

returns an immutable reference to the model parameters
Source§

fn params_mut(&mut self) -> &mut ModelParams<T>

returns a mutable reference to the model’s parameters
Source§

fn predict<U, V>(&self, inputs: &U) -> Result<V, NeuralError>
where Self: Predict<U, Output = V>,

propagates the input through the model; each layer is applied in sequence meaning that the output of each previous layer is the input to the next layer. This pattern repeats until the output layer returns the final result. Read more
Source§

fn train<U, V, W>( &mut self, dataset: &DatasetBase<U, V>, ) -> Result<W, NeuralError>
where Self: Train<U, V, Output = W>,

a convience method that trains the model using the provided dataset; this method requires that the model implements the Train trait and that the dataset
Source§

impl<A, S, T> Train<ArrayBase<S, Dim<[usize; 1]>>, ArrayBase<T, Dim<[usize; 1]>>> for SimpleModel<A>
where A: Float + FromPrimitive + NumAssign + ScalarOperand + Debug, S: Data<Elem = A>, T: Data<Elem = A>,

Source§

type Output = A

Source§

fn train( &mut self, input: &ArrayBase<S, Ix1>, target: &ArrayBase<T, Ix1>, ) -> Result<Self::Output, NeuralError>

Source§

fn train_for( &mut self, input: &X, target: &Y, epochs: usize, ) -> Result<Self::Output, NeuralError>

Source§

impl<A, S, T> Train<ArrayBase<S, Dim<[usize; 2]>>, ArrayBase<T, Dim<[usize; 2]>>> for SimpleModel<A>
where A: Float + FromPrimitive + NumAssign + ScalarOperand + Debug, S: Data<Elem = A>, T: Data<Elem = A>,

Source§

type Output = A

Source§

fn train( &mut self, input: &ArrayBase<S, Ix2>, target: &ArrayBase<T, Ix2>, ) -> Result<Self::Output, NeuralError>

Source§

fn train_for( &mut self, input: &X, target: &Y, epochs: usize, ) -> Result<Self::Output, NeuralError>

Auto Trait Implementations§

§

impl<T> Freeze for SimpleModel<T>

§

impl<T> RefUnwindSafe for SimpleModel<T>
where T: RefUnwindSafe,

§

impl<T> Send for SimpleModel<T>
where T: Send,

§

impl<T> Sync for SimpleModel<T>
where T: Sync,

§

impl<T> Unpin for SimpleModel<T>
where T: Unpin,

§

impl<T> UnwindSafe for SimpleModel<T>

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> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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<M, U, V> Predict<U> for M
where M: Forward<U, Output = V>,

Source§

type Output = V

Source§

fn __private__(&self) -> Seal

Source§

fn predict(&self, input: &U) -> Result<<M as Predict<U>>::Output, NeuralError>

Source§

impl<M, U, A, D> PredictWithConfidence<U> for M
where A: Float + FromPrimitive + ScalarOperand, D: Dimension, M: Predict<U, Output = ArrayBase<OwnedRepr<A>, D>>,

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

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more