Math Vector Library 1.1 Machine Learning Extension
Programming Reference Manual Fortran
Version 1.1 DD-00004-111

4.34 vmlcelud - CELU activation (first derivative)

subroutine vmlcelud(n, y, incy, a, b, c, d, x, incx) 
subroutine vmlceludf(n, y, incy, a, b, c, d, x, incx) 
 
subroutine vmlcelud_64(n, y, incy, a, b, c, d, x, incx) 
subroutine vmlceludf_64(n, y, incy, a, b, c, d, x, incx)

Given an input vector x, a result vector y and constants λ and α this function computes the first derivative of the Continuously Differentiable Exponential Linear Unit (CELU) activation function of the values in the x vector and stores the result in the  y vector.

  .{1       wherex> 0
y=     (x)
    exp a   wherex≤ 0
4.34.1 Parameters

N - INTEGER

ENTRY: Number of elements of x and y.
CONSTRAINT: n ≥1.

Y - ARRAY OF REAL

EXIT: Result vector y.
CONSTRAINT: Must contain n× incy elements.
CONSTRAINT: Must not overlap with array x.

INCY - INTEGER

ENTRY: Stride for the vector y.
CONSTRAINT: incy̸= 0.
BEHAVIOR: A negative stride will traverse the array in reverse.

A - REAL

ENTRY: Constant a .

X - ARRAY OF REAL

ENTRY: Input vector x.
CONSTRAINT: Must contain n× incx elements.
CONSTRAINT: Must not overlap with array y.

INCX - INTEGER

ENTRY: Stride for the vector x.
CONSTRAINT: incx̸= 0.
BEHAVIOR: A negative stride will traverse the array in reverse.