Skip to main content

AutodiffModule

Trait AutodiffModule 

Source
pub trait AutodiffModule<B>:
    Module<B>
    + Send
    + Debug
where B: AutodiffBackend,
{ type InnerModule: Module<<B as AutodiffBackend>::InnerBackend>; // Required methods fn valid(&self) -> Self::InnerModule; fn from_inner(module: Self::InnerModule) -> Self; }
Expand description

Module with auto-differentiation backend.

Required Associated Types§

Source

type InnerModule: Module<<B as AutodiffBackend>::InnerBackend>

Inner module without auto-differentiation.

Required Methods§

Source

fn valid(&self) -> Self::InnerModule

Returns the same module, but on the inner backend without auto-differentiation.

Source

fn from_inner(module: Self::InnerModule) -> Self

Wraps an inner module back into an auto-diff module.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<B> AutodiffModule<B> for bool
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for f32
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for f64
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for i8
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for i16
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for i32
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for i64
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for isize
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for u8
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for u16
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for u32
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for u64
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for usize
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for String
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for PhantomData<B>
where B: AutodiffBackend,

Source§

impl<B, L0, L1> AutodiffModule<B> for (L0, L1)

Source§

impl<B, L0, L1, L2> AutodiffModule<B> for (L0, L1, L2)

Source§

impl<B, L0, L1, L2, L3> AutodiffModule<B> for (L0, L1, L2, L3)

Source§

impl<B, L0, L1, L2, L3, L4> AutodiffModule<B> for (L0, L1, L2, L3, L4)

Source§

impl<B, L0, L1, L2, L3, L4, L5> AutodiffModule<B> for (L0, L1, L2, L3, L4, L5)

Source§

impl<B, L0, L1, L2, L3, L4, L5, L6> AutodiffModule<B> for (L0, L1, L2, L3, L4, L5, L6)

Source§

impl<B, L0, L1, L2, L3, L4, L5, L6, L7> AutodiffModule<B> for (L0, L1, L2, L3, L4, L5, L6, L7)

Source§

impl<B, L0, L1, L2, L3, L4, L5, L6, L7, L8> AutodiffModule<B> for (L0, L1, L2, L3, L4, L5, L6, L7, L8)

Source§

impl<B, L0, L1, L2, L3, L4, L5, L6, L7, L8, L9> AutodiffModule<B> for (L0, L1, L2, L3, L4, L5, L6, L7, L8, L9)

Source§

impl<T, B> AutodiffModule<B> for Option<T>

Source§

impl<T, B> AutodiffModule<B> for Vec<T>

Source§

impl<const N: usize, T, B> AutodiffModule<B> for [T; N]

Implementors§

Source§

impl<B> AutodiffModule<B> for Activation<B>

Source§

impl<B> AutodiffModule<B> for Normalization<B>

Source§

impl<B> AutodiffModule<B> for HardSwish
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for BinaryCrossEntropyLoss<B>

Source§

impl<B> AutodiffModule<B> for CTCLoss
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for CosineEmbeddingLoss
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for CrossEntropyLoss<B>

Source§

impl<B> AutodiffModule<B> for HuberLoss
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for KLDivLoss
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for LpLoss
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for MseLoss
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for PoissonNllLoss
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for RNNTLoss
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for SmoothL1Loss
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for CrossAttention<B>

Source§

impl<B> AutodiffModule<B> for MultiHeadAttention<B>

Source§

impl<B> AutodiffModule<B> for Conv1d<B>

Source§

impl<B> AutodiffModule<B> for Conv2d<B>

Source§

impl<B> AutodiffModule<B> for Conv3d<B>

Source§

impl<B> AutodiffModule<B> for ConvTranspose1d<B>

Source§

impl<B> AutodiffModule<B> for ConvTranspose2d<B>

Source§

impl<B> AutodiffModule<B> for ConvTranspose3d<B>

Source§

impl<B> AutodiffModule<B> for DeformConv2d<B>

Source§

impl<B> AutodiffModule<B> for Interpolate1d
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for Interpolate2d
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for AdaptiveAvgPool1d
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for AdaptiveAvgPool2d
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for AvgPool1d
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for AvgPool2d
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for MaxPool1d
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for MaxPool2d
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for PositionWiseFeedForward<B>

Source§

impl<B> AutodiffModule<B> for TransformerDecoder<B>

Source§

impl<B> AutodiffModule<B> for TransformerDecoderLayer<B>

Source§

impl<B> AutodiffModule<B> for TransformerEncoder<B>

Source§

impl<B> AutodiffModule<B> for TransformerEncoderLayer<B>

Source§

impl<B> AutodiffModule<B> for BatchNorm<B>

Source§

impl<B> AutodiffModule<B> for BiGru<B>

Source§

impl<B> AutodiffModule<B> for BiLstm<B>

Source§

impl<B> AutodiffModule<B> for BiRnn<B>

Source§

impl<B> AutodiffModule<B> for Celu
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for Dropout
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for Elu
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for Embedding<B>

Source§

impl<B> AutodiffModule<B> for GLU
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for GateController<B>

Source§

impl<B> AutodiffModule<B> for GaussianNoise
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for Gelu
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for GroupNorm<B>

Source§

impl<B> AutodiffModule<B> for Gru<B>

Source§

impl<B> AutodiffModule<B> for HardShrink
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for HardSigmoid
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for InstanceNorm<B>

Source§

impl<B> AutodiffModule<B> for LayerNorm<B>

Source§

impl<B> AutodiffModule<B> for LeakyRelu
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for Linear<B>

Source§

impl<B> AutodiffModule<B> for LocalResponseNorm
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for Lstm<B>

Source§

impl<B> AutodiffModule<B> for PRelu<B>

Source§

impl<B> AutodiffModule<B> for PositionalEncoding<B>

Source§

impl<B> AutodiffModule<B> for Relu
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for RmsNorm<B>

Source§

impl<B> AutodiffModule<B> for Rnn<B>

Source§

impl<B> AutodiffModule<B> for RotaryEncoding<B>

Source§

impl<B> AutodiffModule<B> for Selu
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for Shrink
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for Sigmoid
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for SoftShrink
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for Softplus
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for Softsign
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for SwiGlu<B>

Source§

impl<B> AutodiffModule<B> for Tanh
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for ThresholdedRelu
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for Unfold4d
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for bf16
where B: AutodiffBackend,

Source§

impl<B> AutodiffModule<B> for f16
where B: AutodiffBackend,

Source§

impl<B, T> AutodiffModule<B> for Ignored<T>
where B: AutodiffBackend, T: Sync + Send + Debug + Clone,

Source§

impl<const D: usize, B> AutodiffModule<B> for Param<Tensor<B, D>>
where B: AutodiffBackend,

Source§

impl<const D: usize, B> AutodiffModule<B> for Param<Tensor<B, D, Bool>>
where B: AutodiffBackend,

Source§

impl<const D: usize, B> AutodiffModule<B> for Param<Tensor<B, D, Int>>
where B: AutodiffBackend,

Source§

impl<const D: usize, B> AutodiffModule<B> for RunningState<Tensor<B, D>>
where B: AutodiffBackend,

Source§

impl<const D: usize, B, K> AutodiffModule<B> for Tensor<B, D, K>