blob: 4c8a9e4512d60cff40c51a0b8145bafa6d0ab994 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#pragma once
#include <neuralnet/types.h>
#include <math.h>
static inline R sigmoid(R x) { return 1. / (1. + exp(-x)); }
static inline R relu(R x) { return fmax(0, x); }
#define NN_MAP_ARRAY(f, in, out, size) \
for (int ii = 0; ii < size; ++ii) { \
out[ii] = f(in[ii]); \
}
#define sigmoid_array(in, out, size) NN_MAP_ARRAY(sigmoid, in, out, size)
#define relu_array(in, out, size) NN_MAP_ARRAY(relu, in, out, size)
|