extern crate rand;
use rand::{Rng};
extern crate revonet;
use revonet::neuro::*;
fn main() {
const INPUT_SIZE: usize = 20;
const OUTPUT_SIZE: usize = 2;
let mut rng = rand::thread_rng(); let mut net: MultilayeredNetwork = MultilayeredNetwork::new(INPUT_SIZE, OUTPUT_SIZE);
net.add_hidden_layer(30 as usize, ActivationFunctionType::Sigmoid)
.add_hidden_layer(20 as usize, ActivationFunctionType::Sigmoid)
.build(&mut rng, NeuralArchitecture::Multilayered);
let (ws, bs) = net.get_weights(); assert!(ws.len() == 3); assert!(bs.len() == 3);
let rnd_input = (0..INPUT_SIZE).map(|_| rng.gen::<f32>()).collect::<Vec<f32>>();
println!("NN outputs: {:?}", net.compute(&rnd_input));
}