QuantumModule

Trait QuantumModule 

Source
pub trait QuantumModule: Send + Sync {
    // Required methods
    fn forward(&mut self, input: &SciRS2Array) -> Result<SciRS2Array>;
    fn parameters(&self) -> Vec<Parameter>;
    fn train(&mut self, mode: bool);
    fn training(&self) -> bool;
    fn zero_grad(&mut self);
    fn name(&self) -> &str;
}
Expand description

Base trait for all quantum ML modules

Required Methods§

Source

fn forward(&mut self, input: &SciRS2Array) -> Result<SciRS2Array>

Forward pass

Source

fn parameters(&self) -> Vec<Parameter>

Get all parameters

Source

fn train(&mut self, mode: bool)

Set training mode

Source

fn training(&self) -> bool

Check if module is in training mode

Source

fn zero_grad(&mut self)

Zero gradients of all parameters

Source

fn name(&self) -> &str

Module name for debugging

Implementors§