Function dfdx::tensor_ops::prelu
source · pub fn prelu<S: Shape, E: Dtype, D: Device<E>, T: Tape<E, D> + Merge<R>, R: Default>(
lhs: Tensor<S, E, D, T>,
rhs: Tensor<S, E, D, R>
) -> Tensor<S, E, D, T>
Expand description
Parametric Rectified Linear Unit (PReLU). max(0, lhs) + rhs*min(0, lhs)
In other words, for each element i:
- if
lhs[i] < 0
, uselhs[i] * rhs[i]
- if
lhs[i] >= 0
, uselhs[i]
Examples:
let t = dev.tensor([-1.0, 0.0, 1.0, 2.0]);
let a = dev.tensor([0.05,0.05,0.05,0.05]);
let r = t.prelu(a);
assert_eq!(r.array(), [-0.05, 0.0, 1.0, 2.0]);