neural_network_rs/neural_network/optimizer/
mod.rs

1pub mod adam_optimizer;
2pub mod rmsprop_optimizer;
3pub mod sgd_optimzer;
4
5use ndarray::Array2;
6
7use crate::neural_network::{layer::Layer, Summary};
8
9pub trait Optimizer: Summary {
10    fn update_params(
11        &mut self,
12        layers: &mut Vec<Layer>,
13        nabla_bs: &Vec<Array2<f64>>,
14        nabla_ws: &Vec<Array2<f64>>,
15    );
16
17    fn initialize(&mut self, layers: &Vec<Layer>);
18
19    fn pre_update(&mut self);
20
21    fn post_update(&mut self);
22}