Skip to main content

Deep Learning for empirical DownScaling

Project description

Tensorflow - Version Python - Version Open in Colab

Deep Learning for empirical DownScaling

DL4DS (Deep Learning for empirical DownScaling) is a Python package that implements state-of-the-art and novel deep learning algorithms for empirical downscaling of gridded Earth science data.

The general architecture of DL4DS is shown on the image below. A low-resolution gridded dataset can be downscaled, with the help of (an arbitrary number of) auxiliary predictor and static variables, and a high-resolution reference dataset. The mapping between the low- and high-resolution data is learned with either a supervised or a conditional generative adversarial DL model.

drawing

The training can be done from explicit pairs of high- and low-resolution samples (MOS-style, e.g., high-res observations and low-res numerical weather prediction model output) or only with a HR dataset (PerfectProg-style, e.g., high-res observations or high-res model output).

A wide variety of network architectures have been implemented in DL4DS. The main modelling approaches can be combined into many different architectures:

Downscaling type Training (loss type) Sample type Backbone section Upsampling method
MOS (explicit pairs of HR and LR data) Supervised (non-adversarial) Spatial Plain convolutional Pre-upsampling via interpolation
PerfectProg (implicit pairs, only HR data) Conditional Adversarial Spatio-temporal Residual Post-upsampling via sub-pixel convolution
Dense Post-upsampling via resize convolution
Unet (PIN, Spatial samples) Post-upsampling via deconvolution
Convnext (Spatial samples)

In DL4DS, we implement a channel attention mechanism to exploit inter-channel relationship of features by providing a weight for each channel in order to enhance those that contribute the most to the optimizaiton and learning process. Aditionally, a Localized Convolutional Block (LCB) is located in the output module of the networks in DL4DS. With the LCB we learn location-specific information via a locally connected layer with biases.

DL4DS is built on top of Tensorflow/Keras and supports distributed GPU training (data parallelism) thanks to Horovod.

API documentation

Check out the API documentation here.

Installation

pip install dl4ds

Example notebooks

A first Colab notebook can be found in the notebooks folder. Click the badge at the top to open the notebook on Google Colab.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dl4ds-1.8.0.tar.gz (51.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dl4ds-1.8.0-py3-none-any.whl (62.3 kB view details)

Uploaded Python 3

File details

Details for the file dl4ds-1.8.0.tar.gz.

File metadata

  • Download URL: dl4ds-1.8.0.tar.gz
  • Upload date:
  • Size: 51.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.13

File hashes

Hashes for dl4ds-1.8.0.tar.gz
Algorithm Hash digest
SHA256 37fed6141e7b4eeffe32758f014a80f9f796b28005247845772ac4bf1d384822
MD5 da6da6b673f3f3c3bee4eca2c367c0a6
BLAKE2b-256 2943c79ea9f078aa89348fa7d649bb3a3402a384b0b2e14d6bfda93f9b77e839

See more details on using hashes here.

File details

Details for the file dl4ds-1.8.0-py3-none-any.whl.

File metadata

  • Download URL: dl4ds-1.8.0-py3-none-any.whl
  • Upload date:
  • Size: 62.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.13

File hashes

Hashes for dl4ds-1.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 35ee0a3f6a75770b3096ce321c4724fb17c0065854aa23fe618a95e16b1b858c
MD5 d1feb39c738fd905e4bf6d1d6282a992
BLAKE2b-256 e7cd594728a1dbccbadeb21b62466fe93d96aa2597d14451fd138140850cdfe0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page