array_slice_op
Structs
Struct: ArraySlice
Fields
Methods
compute_shape(mut curr: ArrayShape, args: List[ArrayShape])
Computes the shape of an array after slicing.
__call__(mut curr: Array, args: List[Array])
Performs the forward pass for the slice operation. It sets the base of the argument to be the base of the current array and computes the shape of the current array via its dedicated ArraySahpe fwd fucntion.
jvp(primals: List[Array], tangents: List[Array]) -> Array
vjp(primals: List[Array], grad: Array, out: Array) -> List[Array]
Computes the vector-Jacobian product for the slice operation.
Args
-
primals
:List[Array]
A list containing the primal input array. -
grad
:Array
The gradient of the output with respect to some scalar function. -
out
:Array
The output of the forward pass (unused in this function).
Returns
List[Array]
- A list containing the gradient with respect to the input.
Note: The vector-Jacobian product for slice is computed by padding the gradient with zeros along the axes that were sliced.
fwd(arg0: Array, slices: List[Slice]) -> Array
Slices the input array based on the given slices.
Functions
array_slice
array_slice(arg0: Array, slices: List[Slice]) -> Array
Last updated on