Struct nn::NN
[-] [+]
[src]
pub struct NN { // some fields omitted }
Neural network
Methods
impl NN
fn new(layers_sizes: &[u32]) -> NN
Each number in the layers_sizes
parameter specifies a
layer in the network. The number itself is the number of nodes in that
layer. The first number is the input layer, the last
number is the output layer, and all numbers between the first and
last are hidden layers. There must be at least two layers in the network.
fn run(&self, inputs: &[f64]) -> Vec<f64>
Runs the network on an input and returns a vector of the results.
The number of f64
s in the input must be the same
as the number of input nodes in the network. The length of the results
vector will be the number of nodes in the output layer of the network.
fn train<'b>(&'b mut self, examples: &'b [(Vec<f64>, Vec<f64>)]) -> Trainer
Takes in vector of examples and returns a Trainer
struct that is used
to specify options that dictate how the training should proceed.
No actual training will occur until the go()
method on the
Trainer
struct is called.
fn to_json(&self) -> String
Encodes the network as a JSON string.
fn from_json(encoded: &str) -> NN
Builds a new network from a JSON string.