Function autograd::ops::jacobians
[−]
[src]
pub fn jacobians(
y: &Tensor,
xs: &[&Tensor],
objective_len: usize
) -> Vec<Tensor>
Computes jacobians for variables.
Arguments
y
- Target of differentiation.xs
- Tensors with which differentiateys
.y_size
- (flattened) size ofy
Returns
Jacobians for each variable. Each one is matrix of shape (y_size, x size)
.
extern crate autograd as ag; let mut ctx = ag::Context::new(); let ref a = ag::variable(ag::ndarray_ext::standard_normal(&[4, 2]), &mut ctx); let ref b = ag::variable(ag::ndarray_ext::standard_normal(&[2, 3]), &mut ctx); let ref c = ag::matmul(a, b); let ref j = ag::jacobians(c, &[a, b], 4*3); assert_eq!(j[0].eval(&mut ctx).shape(), &[4*3, 4*2]); assert_eq!(j[1].eval(&mut ctx).shape(), &[4*3, 2*3]);