From 7673e830a77c78f499c82909ca51d52e282a3609 Mon Sep 17 00:00:00 2001
From: leufen1 <l.leufen@fz-juelich.de>
Date: Fri, 12 Mar 2021 12:44:41 +0100
Subject: [PATCH] kernel size can be set from outside

---
 mlair/model_modules/convolutional_networks.py | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/mlair/model_modules/convolutional_networks.py b/mlair/model_modules/convolutional_networks.py
index 0a16be7c..5146fe52 100644
--- a/mlair/model_modules/convolutional_networks.py
+++ b/mlair/model_modules/convolutional_networks.py
@@ -22,7 +22,7 @@ class CNN(AbstractModelClass):
     _requirements = ["lr", "beta_1", "beta_2", "epsilon", "decay", "amsgrad"]
 
     def __init__(self, input_shape: list, output_shape: list, activation="relu", activation_output="linear",
-                 optimizer="adam", regularizer=None, **kwargs):
+                 optimizer="adam", regularizer=None, kernel_size=1, **kwargs):
 
         assert len(input_shape) == 1
         assert len(output_shape) == 1
@@ -35,6 +35,7 @@ class CNN(AbstractModelClass):
         self.activation_output_name = activation_output
         self.kernel_initializer = self._initializer.get(activation, "glorot_uniform")
         self.kernel_regularizer = self._set_regularizer(regularizer, **kwargs)
+        self.kernel_size = kernel_size
         self.optimizer = self._set_optimizer(optimizer, **kwargs)
 
         # apply to model
@@ -81,7 +82,7 @@ class CNN(AbstractModelClass):
         Build the model.
         """
         x_input = keras.layers.Input(shape=self._input_shape)
-        kernel = (5, 1)
+        kernel = (self.kernel_size, 1)
         pad_size = PadUtils.get_padding_for_same(kernel)
         x_in = Padding2D("SymPad2D")(padding=pad_size, name="SymPad1")(x_input)
         x_in = keras.layers.Conv2D(filters=16, kernel_size=kernel,
-- 
GitLab