auto_diff/serde/
compute_graph.rs

1
2
3#[cfg(all(test, feature = "use-serde"))]
4mod tests {
5    use crate::compute_graph::Net;
6    use crate::var::Var;
7    use rand::prelude::*;
8
9    #[test]
10    fn test_serde_net() {
11	let mut rng = StdRng::seed_from_u64(671);
12	let n = 10;
13	let data = Var::normal(&mut rng, &vec![n, 2], 0., 2.);
14	let result = data.matmul(&Var::new(&vec![2., 3.], &vec![2, 1])).unwrap() + Var::new(&vec![1.], &vec![1]);
15
16        let serialized = serde_pickle::to_vec(&*result.dump_net().borrow(), true).unwrap();
17        let deserialized: Net = serde_pickle::from_slice(&serialized).unwrap();
18        //println!("{:?}", deserialized);
19        //assert_eq!(*result.dump_net().borrow(), deserialized);
20    }
21
22}