astrai 2.2.0

A pretty bad neural network library
Documentation
use super::*;

impl Network {
	pub fn get_params_list(&self) -> Vec<f64> {
        let mut params = Vec::new();

        for connection in self.connections.iter() {
            params.push(connection.weight);
        }

        for layer in self.layers.iter() {
            for bias in layer.bias.iter() {
                params.push(*bias);
            }
        }

        params
    }

    pub fn apply_params(&mut self, params: Vec<f64>) {
        let mut param_idx = 0;

        for connection in self.connections.iter_mut() {
            connection.weight = params[param_idx];
            param_idx += 1;
        }

        for layer in self.layers.iter_mut() {
            for bias in layer.bias.iter_mut() {
                *bias = params[param_idx];
                param_idx += 1;
            }
        }
    }
}