#[derive(Debug, Clone)]
pub struct TransferConfig {
pub enabled: bool,
pub similarity_threshold: f64,
pub transfer_method: TransferLearningMethod,
pub source_weight: f64,
pub adaptation_strategy: DomainAdaptationStrategy,
}
impl Default for TransferConfig {
fn default() -> Self {
Self {
enabled: true,
similarity_threshold: 0.7,
transfer_method: TransferLearningMethod::ModelTransfer,
source_weight: 0.1,
adaptation_strategy: DomainAdaptationStrategy::Gradual,
}
}
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub enum TransferLearningMethod {
ModelTransfer,
HyperparameterTransfer,
KernelTransfer,
InitialPointTransfer,
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub enum DomainAdaptationStrategy {
Immediate,
Gradual,
Weighted,
}