pub struct ContrastiveLearning { /* private fields */ }Expand description
Contrastive learning pre-trainer
Learns representations by maximizing agreement between augmented views of the same signal while minimizing agreement with different signals.
Implementations§
Source§impl ContrastiveLearning
impl ContrastiveLearning
Sourcepub fn new(signal_dim: usize, config: ContrastiveConfig) -> Self
pub fn new(signal_dim: usize, config: ContrastiveConfig) -> Self
Create a new contrastive learning pre-trainer
Sourcepub fn contrastive_loss(
&mut self,
signals: &[Array1<f32>],
) -> TokenizerResult<f32>
pub fn contrastive_loss( &mut self, signals: &[Array1<f32>], ) -> TokenizerResult<f32>
Compute contrastive loss (NT-Xent)
Sourcepub fn encoder_weights(&self) -> &Array2<f32>
pub fn encoder_weights(&self) -> &Array2<f32>
Get encoder weights
Trait Implementations§
Source§impl Clone for ContrastiveLearning
impl Clone for ContrastiveLearning
Source§fn clone(&self) -> ContrastiveLearning
fn clone(&self) -> ContrastiveLearning
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ContrastiveLearning
impl RefUnwindSafe for ContrastiveLearning
impl Send for ContrastiveLearning
impl Sync for ContrastiveLearning
impl Unpin for ContrastiveLearning
impl UnwindSafe for ContrastiveLearning
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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