diff --git a/climax/main/downscale_train.py b/climax/main/downscale_train.py
index f5de32bfb6563fcd20aacdf3d8dbc36fef6f9fb9..937776eb437444dfaea03980363c211f06fff61b 100644
--- a/climax/main/downscale_train.py
+++ b/climax/main/downscale_train.py
@@ -22,7 +22,7 @@ from pysegcnn.core.trainer import NetworkTrainer, LogConfig
 from pysegcnn.core.models import Network
 from pysegcnn.core.logging import log_conf
 from climax.core.dataset import ERA5Dataset, NetCDFDataset
-from climax.core.loss import BernoulliGammaLoss, BernoulliGenParetoLoss
+from climax.core.loss import MSELoss, L1Loss
 from climax.main.config import (ERA5_PLEVELS, ERA5_PREDICTORS, PREDICTAND,
                                 CALIB_PERIOD, DOY, SHUFFLE, BATCH_SIZE, LR,
                                 LAMBDA, NORM, TRAIN_CONFIG, NET, LOSS, FILTERS,
@@ -110,9 +110,9 @@ if __name__ == '__main__':
     # define number of output fields
     # check whether modelling pr with probabilistic approach
     outputs = len(Obs_ds.data_vars)
-    if PREDICTAND == 'pr' and (isinstance(LOSS, BernoulliGammaLoss) or
-                               isinstance(LOSS, BernoulliGenParetoLoss)):
-        outputs = 3
+    if PREDICTAND == 'pr':
+        outputs = (1 if (isinstance(LOSS, MSELoss) or isinstance(LOSS, L1Loss))
+                   else 3)
 
     # instanciate network
     inputs = len(Era5_ds.data_vars) + 2 if DOY else len(Era5_ds.data_vars)
diff --git a/climax/main/downscale_train_season.py b/climax/main/downscale_train_season.py
index ccac375142bd8131e3141dd2276d9b76b6b1084e..19fc89b3d7adf82cb410696acee93fe553c5d58b 100644
--- a/climax/main/downscale_train_season.py
+++ b/climax/main/downscale_train_season.py
@@ -22,7 +22,7 @@ from pysegcnn.core.trainer import NetworkTrainer, LogConfig
 from pysegcnn.core.models import Network
 from pysegcnn.core.logging import log_conf
 from climax.core.dataset import ERA5Dataset, NetCDFDataset
-from climax.core.loss import BernoulliGammaLoss, BernoulliGenParetoLoss
+from climax.core.loss import MSELoss, L1Loss
 from climax.main.config import (ERA5_PLEVELS, ERA5_PREDICTORS, PREDICTAND,
                                 CALIB_PERIOD, DOY, SHUFFLE, BATCH_SIZE, LR,
                                 LAMBDA, NORM, TRAIN_CONFIG, NET, LOSS, FILTERS,
@@ -161,9 +161,9 @@ if __name__ == '__main__':
         # define number of output fields
         # check whether modelling pr with probabilistic approach
         outputs = len(Obs_train.data_vars)
-        if PREDICTAND == 'pr' and (isinstance(LOSS, BernoulliGammaLoss) or
-                                   isinstance(LOSS, BernoulliGenParetoLoss)):
-            outputs = 3
+        if PREDICTAND == 'pr':
+            outputs = (1 if (isinstance(LOSS, MSELoss) or
+                       isinstance(LOSS, L1Loss)) else 3)
 
         # instanciate network
         inputs = (len(Era5_train.data_vars) + 2 if DOY else