pub struct TransformerEncoderLayer { /* private fields */ }Expand description
A single Transformer encoder layer.
Consists of multi-head self-attention followed by a position-wise feedforward network, each with residual connections and layer normalization.
§Shape
- Input: (N, S, E) if batch_first (default)
- Output: (N, S, E)
where N=batch, S=source seq len, E=d_model.
Implementations§
Source§impl TransformerEncoderLayer
impl TransformerEncoderLayer
Sourcepub fn new(d_model: usize, nhead: usize, dim_feedforward: usize) -> Self
pub fn new(d_model: usize, nhead: usize, dim_feedforward: usize) -> Self
Creates a new TransformerEncoderLayer (post-norm, default).
§Arguments
d_model- Embedding dimensionnhead- Number of attention headsdim_feedforward- Hidden dimension of feedforward network (default 2048)
Sourcepub fn new_with_pre_norm(
d_model: usize,
nhead: usize,
dim_feedforward: usize,
pre_norm: bool,
) -> Self
pub fn new_with_pre_norm( d_model: usize, nhead: usize, dim_feedforward: usize, pre_norm: bool, ) -> Self
Creates a TransformerEncoderLayer with configurable norm ordering.
Trait Implementations§
Source§impl Module for TransformerEncoderLayer
impl Module for TransformerEncoderLayer
Source§fn named_parameters(&self) -> HashMap<String, Parameter>
fn named_parameters(&self) -> HashMap<String, Parameter>
Returns named parameters of this module.
Source§fn num_parameters(&self) -> usize
fn num_parameters(&self) -> usize
Returns the number of trainable parameters.
Source§fn set_training(&mut self, _training: bool)
fn set_training(&mut self, _training: bool)
Sets the training mode.
Source§fn is_training(&self) -> bool
fn is_training(&self) -> bool
Returns whether the module is in training mode.
Auto Trait Implementations§
impl Freeze for TransformerEncoderLayer
impl !RefUnwindSafe for TransformerEncoderLayer
impl Send for TransformerEncoderLayer
impl Sync for TransformerEncoderLayer
impl Unpin for TransformerEncoderLayer
impl UnsafeUnpin for TransformerEncoderLayer
impl !UnwindSafe for TransformerEncoderLayer
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more