Metadata-Version: 2.1
Name: deepclimate
Version: 0.1.3
Summary: A deep learning framework for climate modelling and data analysis
Home-page: https://github.com/midhunmachari/DeepClimate
Author: Midhun Murukesh
Author-email: midhunmachari@gmail.com
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: numpy
Requires-Dist: pandas
Requires-Dist: scipy
Requires-Dist: netcdf4
Requires-Dist: tensorflow==2.17.0
Requires-Dist: xarray>=2024.11.0

# **DeepClimate**

*A Python package for climate modelling and data analysis with deep learning.*

**Latest Version:** 0.1.0
**Status:** Alpha

## **Description** 

[**DeepClimate**](https://pypi.org/project/deepclimate) is an intuitive Python library designed to simplify the training and evaluation of deep neural networks tailored for climate science. Whether you're working on emulation, downscaling, or bias correction of climate datasets, DeepClimate offers tools and pre-built deep learning models to accelerate your research and applications.

# Installing the package
```bash
pip install deepclimate
```

## **Features**  
- Built-in support for state-of-the-art deep learning architectures and training strategies (e.g., CNN, U-Net, GAN, etc.).  
- Custom loss functions for climate modeling and other climate-specific metrics.  
- Tools for data preprocessing, visualization, and evaluation.    

### **Objectives:**
1. Easy-to-use interface for novice users.
2. Develop a deep learning framework for training deep learning models with climate data.
3. Create custom modules for physics-informed training of deep learning models.
4. Custom training loss functions and evaluation metrics related to the climate science community.
5. An open library to host deep learning architectures from the literature.

### **Applications:**
- Climate data downscaling and bias-correction
- Weather/Climate prediction models.
- Hydro-meteorological research.
- Climate data analysis

### **Basic usage**

```python
# Import library modules
from deepclimate.tensorflow.train import ModelTraining
from deepclimate.tensorflow.models import LinearDense

# Load training and validation data
X_train, y_train = ...                # Prepare the training dataset (numpy array)
X_val,   y_val   = ...                # Prepare the validation dataset (numpy array)

model = LinearDense(...)             # Construct the model architecture

# Initialize the ModelTraining class with specified parameters
mt = ModelTraining(
    generator = model,                # Generator architecture (model) to be used
    loss_fn   = 'loss',               # Loss function for training 
    lr_init   = 0.0001,               # Initial learning rate for the optimizer
    )

# Train the model using the specified training and validation data, and other parameters
mt.train(
    train_data = (X_train, y_train),  # Training data (input features and target labels)
    val_data   = (X_val, y_val),      # Validation data (input features and target labels)
    epochs     = int,                  # Number of epochs to train the model (can be adjusted)
    batch_size = int,                  # Batch size for training and validation
    )
```

### **IMPORTANT NOTE**
- The package is under development. Stay connected.

