pub struct ContrastivePredictiveCoding {
pub embedding_dim: usize,
pub hidden_dim: usize,
pub context_length: usize,
pub prediction_steps: usize,
pub temperature: f64,
pub learning_rate: f64,
pub batch_size: usize,
pub max_epochs: usize,
pub negative_samples: usize,
pub random_state: Option<u64>,
}Expand description
Contrastive Predictive Coding (CPC) for semi-supervised learning
CPC learns representations by predicting future observations from past contexts in a contrastive manner. It maximizes mutual information between contexts and positive samples while minimizing it for negative samples.
Fields§
§embedding_dim: usizeembedding_dim
hidden_dim
context_length: usizecontext_length
prediction_steps: usizeprediction_steps
temperature: f64temperature
learning_rate: f64learning_rate
batch_size: usizebatch_size
max_epochs: usizemax_epochs
negative_samples: usizenegative_samples
random_state: Option<u64>random_state
Implementations§
Source§impl ContrastivePredictiveCoding
impl ContrastivePredictiveCoding
pub fn new() -> Self
pub fn embedding_dim(self, embedding_dim: usize) -> Self
pub fn context_length(self, context_length: usize) -> Self
pub fn prediction_steps(self, prediction_steps: usize) -> Self
pub fn temperature(self, temperature: f64) -> Result<Self>
pub fn learning_rate(self, learning_rate: f64) -> Self
pub fn batch_size(self, batch_size: usize) -> Result<Self>
pub fn max_epochs(self, max_epochs: usize) -> Self
pub fn negative_samples(self, negative_samples: usize) -> Self
pub fn random_state(self, random_state: u64) -> Self
Trait Implementations§
Source§impl Clone for ContrastivePredictiveCoding
impl Clone for ContrastivePredictiveCoding
Source§fn clone(&self) -> ContrastivePredictiveCoding
fn clone(&self) -> ContrastivePredictiveCoding
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 moreSource§impl Debug for ContrastivePredictiveCoding
impl Debug for ContrastivePredictiveCoding
Source§impl Estimator for ContrastivePredictiveCoding
impl Estimator for ContrastivePredictiveCoding
Source§type Config = ContrastivePredictiveCoding
type Config = ContrastivePredictiveCoding
Configuration type for the estimator
Source§type Error = ContrastiveLearningError
type Error = ContrastiveLearningError
Error type for the estimator
Source§fn validate_config(&self) -> Result<(), SklearsError>
fn validate_config(&self) -> Result<(), SklearsError>
Validate estimator configuration with detailed error context
Source§fn check_compatibility(
&self,
n_samples: usize,
n_features: usize,
) -> Result<(), SklearsError>
fn check_compatibility( &self, n_samples: usize, n_features: usize, ) -> Result<(), SklearsError>
Check if estimator is compatible with given data dimensions
Source§fn metadata(&self) -> EstimatorMetadata
fn metadata(&self) -> EstimatorMetadata
Get estimator metadata
Source§impl Fit<ArrayBase<ViewRepr<&f64>, Dim<[usize; 2]>>, ArrayBase<ViewRepr<&i32>, Dim<[usize; 1]>>> for ContrastivePredictiveCoding
impl Fit<ArrayBase<ViewRepr<&f64>, Dim<[usize; 2]>>, ArrayBase<ViewRepr<&i32>, Dim<[usize; 1]>>> for ContrastivePredictiveCoding
Source§type Fitted = FittedContrastivePredictiveCoding
type Fitted = FittedContrastivePredictiveCoding
The fitted model type
Source§fn fit(
self,
X: &ArrayView2<'_, f64>,
y: &ArrayView1<'_, i32>,
) -> Result<Self::Fitted>
fn fit( self, X: &ArrayView2<'_, f64>, y: &ArrayView1<'_, i32>, ) -> Result<Self::Fitted>
Fit the model to the provided data with validation
Source§fn fit_with_validation(
self,
x: &X,
y: &Y,
_x_val: Option<&X>,
_y_val: Option<&Y>,
) -> Result<(Self::Fitted, FitMetrics), SklearsError>where
Self: Sized,
fn fit_with_validation(
self,
x: &X,
y: &Y,
_x_val: Option<&X>,
_y_val: Option<&Y>,
) -> Result<(Self::Fitted, FitMetrics), SklearsError>where
Self: Sized,
Fit with custom validation and early stopping
Auto Trait Implementations§
impl Freeze for ContrastivePredictiveCoding
impl RefUnwindSafe for ContrastivePredictiveCoding
impl Send for ContrastivePredictiveCoding
impl Sync for ContrastivePredictiveCoding
impl Unpin for ContrastivePredictiveCoding
impl UnwindSafe for ContrastivePredictiveCoding
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> 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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> StableApi for Twhere
T: Estimator,
impl<T> StableApi for Twhere
T: Estimator,
Source§const STABLE_SINCE: &'static str = "0.1.0"
const STABLE_SINCE: &'static str = "0.1.0"
API version this type was stabilized in
Source§const HAS_EXPERIMENTAL_FEATURES: bool = false
const HAS_EXPERIMENTAL_FEATURES: bool = false
Whether this API has any experimental features