#[non_exhaustive]pub struct CombinedSingleSsdGrads<B: Backend> {
pub d_v_bnlmhp: F<B, 6>,
pub d_da_bnlh: F<B, 4>,
pub d_b_bnlmhr: F<B, 6>,
pub d_c_bnlmhr: F<B, 6>,
pub d_gamma_bnlh: F<B, 4>,
pub d_scale_bnlh: F<B, 4>,
pub d_initial_state_bhpr: F<B, 4>,
}Expand description
Per-input gradients produced by combined_backward for the Single-SSD.
Adds d_gamma_bnlh and d_scale_bnlh over the double-ssd form
crate::mamba3::double_ssd::ssd::serial_recalculated::combined_backward::CombinedGrads.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.d_v_bnlmhp: F<B, 6>Gradient of the raw input v.
d_da_bnlh: F<B, 4>Gradient of Δ·A (da).
d_b_bnlmhr: F<B, 6>Gradient of the input projection B.
d_c_bnlmhr: F<B, 6>Gradient of the output projection C.
d_gamma_bnlh: F<B, 4>Gradient of the same-step trapezoid weight γ.
d_scale_bnlh: F<B, 4>Gradient of the key scale scale = γ + (1−λ₊₁)·Δ₊₁.
d_initial_state_bhpr: F<B, 4>Gradient of the initial SSM state.
Auto Trait Implementations§
impl<B> Freeze for CombinedSingleSsdGrads<B>where
<B as BackendTypes>::FloatTensorPrimitive: Freeze,
impl<B> RefUnwindSafe for CombinedSingleSsdGrads<B>where
<B as BackendTypes>::FloatTensorPrimitive: RefUnwindSafe,
impl<B> Send for CombinedSingleSsdGrads<B>
impl<B> Sync for CombinedSingleSsdGrads<B>
impl<B> Unpin for CombinedSingleSsdGrads<B>where
<B as BackendTypes>::FloatTensorPrimitive: Unpin,
impl<B> UnsafeUnpin for CombinedSingleSsdGrads<B>where
<B as BackendTypes>::FloatTensorPrimitive: UnsafeUnpin,
impl<B> UnwindSafe for CombinedSingleSsdGrads<B>where
<B as BackendTypes>::FloatTensorPrimitive: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more