diff options
Diffstat (limited to 'training/export_cnn_v2_shader.py')
| -rwxr-xr-x | training/export_cnn_v2_shader.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/training/export_cnn_v2_shader.py b/training/export_cnn_v2_shader.py index ad5749c..dc475d8 100755 --- a/training/export_cnn_v2_shader.py +++ b/training/export_cnn_v2_shader.py @@ -35,9 +35,12 @@ def export_layer_shader(layer_idx, weights, kernel_size, output_dir, is_output_l ) radius = kernel_size // 2 - activation = "" if is_output_layer else "output[c] = max(0.0, sum); // ReLU" if is_output_layer: - activation = "output[c] = clamp(sum, 0.0, 1.0); // Sigmoid approximation" + activation = "output[c] = clamp(sum, 0.0, 1.0); // Output layer" + elif layer_idx == 0: + activation = "output[c] = clamp(sum, 0.0, 1.0); // Layer 0: clamp [0,1]" + else: + activation = "output[c] = max(0.0, sum); // Middle layers: ReLU" shader_code = f"""// CNN v2 Layer {layer_idx} - Auto-generated (uniform 12D→4D) // Kernel: {kernel_size}×{kernel_size}, In: 12D (4 prev + 8 static), Out: 4D |
