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

4.29 vmlsmht - SMHT activation

#include <mvecml.h> 
 
void vmlsmht(int n, double *restrict y, int incy, 
             double a, double b, double c, double d, const double *restrict x, int incx); 
void vmlsmhtf(int n, float *restrict y, int incy, 
              float a, float b, float c, float d, const float *restrict x, int incx); 
 
void vmlsmht_64(long n, double *restrict y, long incy, 
                double a, double b, double c, double d, const double *restrict x, long incx); 
void vmlsmhtf_64(long n, float *restrict y, long incy, 
                 float a, float b, float c, float d, const float *restrict x, long incx);

Given an input vector x  , a result vector y  and constants λ and α this function computes the Soboleva modified hyperbolic tangent (SMHT) activation function of the values in the x  vector and stores the result in the y  vector.

  .eax-e-bx
y= ecx+e-dx

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

B - REAL

ENTRY: Constant b .

C - REAL

ENTRY: Constant c .

D - REAL

ENTRY: Constant d .

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.