code: def get_cloud_probability_maps(self, X):
          
          band_num = X.shape[-1]
          exp_bands = 13 if self.all_bands else len(self.BAND_IDXS)
          if band_num != exp_bands:
              raise ValueError("Parameter 'all_bands' is set to {}. Therefore expected band data with {} bands, "
                               "got {} bands".format(self.all_bands, exp_bands, band_num))
  
          if self.all_bands:
              X = X[..., self.BAND_IDXS]
  
          return self.classifier.image_predict_proba(X)[..., 1]
docs: Runs the cloud detection on the input images (dimension n_images x n x m x 10
          or n_images x n x m x 13) and returns an array of cloud probability maps (dimension
          n_images x n x m). Pixel values close to 0 indicate clear-sky-like pixels, while
          values close to 1 indicate pixels covered with clouds.
  
          :param X: input Sentinel-2 image obtained with Sentinel-Hub's WMS/WCS request
                    (see https://github.com/sentinel-hub/sentinelhub-py)
          :type X: numpy array (shape n_images x n x m x 10 or n x m x 13)
          :return: cloud probability map
          :rtype: numpy array (shape n_images x n x m)