blob: b56a69e9de7b264eac875b393f245641365db7b7 (
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 i = 0; i < size; ++i) { \
out[i] = f(in[i]); \
}
#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)
|