pub trait EncodingOpswhere
Self: Sized,{
type Mat;
type Scalar;
// Required method
fn positional_embedding_columns(&self, emb_dim: usize) -> Result<Self::Mat>;
}Required Associated Types§
Required Methods§
Sourcefn positional_embedding_columns(&self, emb_dim: usize) -> Result<Self::Mat>
fn positional_embedding_columns(&self, emb_dim: usize) -> Result<Self::Mat>
Sinusoidal Positional Encoding
emb_dim- embedding dimension, sayd- returns each column’s embedding results (row x 2d)
for each element r of each column c:
ret[r, 2i] = sin(x[r,c]/10000^(2i/d))
ret[r, 2i + 1] = cos(x[r,c]/10000^(2i/d))
where i in [0, d/2-1]
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".