summaryrefslogtreecommitdiff
path: root/workspaces/main/shaders/cnn/cnn_activation.wgsl
blob: 4fe771ee985f82910e03119c9db0e582a710f4dd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// CNN activation functions
// 4 functions: tanh, ReLU, sigmoid, leaky_relu

fn cnn_tanh(x: vec4<f32>) -> vec4<f32> {
  return tanh(x);
}

fn cnn_relu(x: vec4<f32>) -> vec4<f32> {
  return max(vec4<f32>(0.0), x);
}

fn cnn_sigmoid(x: vec4<f32>) -> vec4<f32> {
  return 1.0 / (1.0 + exp(-x));
}

fn cnn_leaky_relu(x: vec4<f32>, alpha: f32) -> vec4<f32> {
  return max(alpha * x, x);
}