From f047461e33027babc102df2038121ef86c3a45e6 Mon Sep 17 00:00:00 2001
From: lukas leufen <l.leufen@fz-juelich.de>
Date: Mon, 15 Aug 2022 17:23:04 +0200
Subject: [PATCH] fix list bug

---
 mlair/model_modules/convolutional_networks.py | 2 +-
 mlair/run_modules/model_setup.py              | 9 ++++++---
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/mlair/model_modules/convolutional_networks.py b/mlair/model_modules/convolutional_networks.py
index 2270c1ee..7bdd2ce2 100644
--- a/mlair/model_modules/convolutional_networks.py
+++ b/mlair/model_modules/convolutional_networks.py
@@ -75,7 +75,7 @@ class CNNfromConfig(AbstractModelClass):
         # apply to model
         self.set_model()
         self.set_compile_options()
-        self.set_custom_objects(loss=custom_loss([keras.losses.mean_squared_error, var_loss]), var_loss=var_loss)
+        self.set_custom_objects(loss=self.compile_options["loss"][0], var_loss=var_loss)
 
     def set_model(self):
         x_input = keras.layers.Input(shape=self._input_shape)
diff --git a/mlair/run_modules/model_setup.py b/mlair/run_modules/model_setup.py
index bf09ac6f..b51a3f9c 100644
--- a/mlair/run_modules/model_setup.py
+++ b/mlair/run_modules/model_setup.py
@@ -224,10 +224,13 @@ class ModelSetup(RunEnvironment):
             if v is None:
                 continue
             if isinstance(v, list):
-                if isinstance(v[0], dict):
-                    v = ["{" + vi + "}" for vi in [",".join(f"{_f(str(uk))}:{_f(str(uv))}" for uk, uv in d.items()) for d in v]]
+                if len(v) > 0:
+                    if isinstance(v[0], dict):
+                        v = ["{" + vi + "}" for vi in [",".join(f"{_f(str(uk))}:{_f(str(uv))}" for uk, uv in d.items()) for d in v]]
+                    else:
+                        v = ",".join(_f(str(u)) for u in v)
                 else:
-                    v = ",".join(_f(str(u)) for u in v)
+                    v = "[]"
             if "<" in str(v):
                 v = _f(str(v))
             df.loc[k] = str(v)
-- 
GitLab