improve xor example with relu activation fn
This commit is contained in:
parent
0e2308b472
commit
562613ad4b
@ -1,9 +1,10 @@
|
||||
use aicaramba::functions::*;
|
||||
use aicaramba::matrix::Mat;
|
||||
use aicaramba::neural_net::NeuralNet;
|
||||
|
||||
fn main() {
|
||||
let mut net = NeuralNet::new(vec![2, 3, 1], SIGMOID, MSE, 0.05);
|
||||
let epochs = 10_000;
|
||||
let mut net = NeuralNet::new(vec![2, 3, 1], RELU, MSE, 0.05);
|
||||
let epochs = 500;
|
||||
|
||||
let inputs = vec![
|
||||
vec![0.0, 0.0],
|
||||
@ -14,5 +15,11 @@ fn main() {
|
||||
|
||||
let expected = vec![vec![0.0], vec![1.0], vec![1.0], vec![0.0]];
|
||||
|
||||
net.train_basic(inputs, expected, epochs);
|
||||
net.train_basic(inputs.clone(), expected, epochs);
|
||||
|
||||
for input in inputs {
|
||||
let output = net.forward(Mat::from(input.clone()));
|
||||
let o = output.into_iter().collect::<Vec<_>>();
|
||||
println!("{} ^ {} = {:.20}", input[0], input[1], o[0]);
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user