pub struct RMSNorm {
pub config: LayerNormConfig,
}Expand description
RMS (Root Mean Square) normalization
A simplified variant of layer normalization that only computes RMS:
RMSNorm(x) = x / RMS(x) * γ
where RMS(x) = √(mean(x²) + ε)Fields§
§config: LayerNormConfigConfiguration
Implementations§
Source§impl RMSNorm
impl RMSNorm
Sourcepub fn new(config: LayerNormConfig) -> Result<Self>
pub fn new(config: LayerNormConfig) -> Result<Self>
Create a new RMS normalization component
Sourcepub fn build_rmsnorm_graph(&self, graph: &mut EinsumGraph) -> Result<Vec<usize>>
pub fn build_rmsnorm_graph(&self, graph: &mut EinsumGraph) -> Result<Vec<usize>>
Build einsum graph for RMS normalization
Input tensors:
- 0: x (input)
[batch, seq_len, d_model] - 1: gamma (scale)
[d_model](if elementwise_affine)
Output tensors:
- output:
[batch, seq_len, d_model](normalized)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for RMSNorm
impl RefUnwindSafe for RMSNorm
impl Send for RMSNorm
impl Sync for RMSNorm
impl Unpin for RMSNorm
impl UnwindSafe for RMSNorm
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