use crate::{prelude::*, LearningRate, Optimizer};
#[derive(Debug, Serialize, Deserialize)]
pub struct Training {
pub optimizer: Optimizer,
pub learning_rate: LearningRate
}
impl Default for Training {
fn default() -> Self {
let optimizer = Optimizer::Adafactor;
let learning_rate = LearningRate::default();
Training { optimizer, learning_rate }
}
}
impl Training {
pub fn new() -> Self {
Default::default()
}
pub fn with_optimizer(mut self, optimizer: Optimizer) -> Self {
self.optimizer = optimizer;
self
}
pub fn with_learning_rate(mut self, learning_rate: LearningRate) -> Self {
self.learning_rate = learning_rate;
self
}
}