Math Vector Library Machine Learning Extension
Programming Reference Manual C/C++
Version 1.0 DD-00004-010

4.4 vmlrelud - ReLU activation (first derivative)

#include <mvecml.h>

void vmlrelud (int n, double *y, int incy, const double *x, int incx);
void vmlreludf(int n, float *y, int incy, const float *x, int incx);

Given an input vector x  and a result vector y  this function computes the first derivative of the ReLU activation function of the values in the x  vector and stores the result in the y  vector.

   {
  .  0 where x< 0∨ x= 0
y =  1 where x> 0

The case where x =0  is normally undefined, for proper behavior in the application scenario of machine learning this function substitutes 0  as a result on those elements to handle this condition gracefully.

4.4.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  .

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  .