bakaano-hydro

A distributed hydrology-guided neural network model for streamflow prediction

https://github.com/confidence-duku/bakaano-hydro

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.0%) to scientific vocabulary

Keywords

climate-risk data-driven-model flood-forecasting hydrology hydrology-modeling machine-learning rainfall-runoff-model river-basin-systems river-discharge streamflow
Last synced: 6 months ago · JSON representation ·

Repository

A distributed hydrology-guided neural network model for streamflow prediction

Basic Info
  • Host: GitHub
  • Owner: confidence-duku
  • License: apache-2.0
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 257 MB
Statistics
  • Stars: 6
  • Watchers: 1
  • Forks: 2
  • Open Issues: 0
  • Releases: 3
Topics
climate-risk data-driven-model flood-forecasting hydrology hydrology-modeling machine-learning rainfall-runoff-model river-basin-systems river-discharge streamflow
Created about 1 year ago · Last pushed 8 months ago
Metadata Files
Readme License Citation

README.md

DOI License PyPI version GitHub release Last Commit Python

Bakaano-Hydro

Description

Bakaano-Hydro is a distributed hydrology-guided neural network model for streamflow prediction. It uniquely integrates physically based hydrological principles with the generalization capacity of machine learning in a spatially explicit and physically meaningful way. This makes it particularly valuable in data-scarce regions, where traditional hydrological models often struggle due to sparse observations and calibration limitations, and where current state-of-the-art data-driven models are constrained by lumped modeling approaches that overlook spatial heterogeneity and the inability to capture hydrological connectivity.

By learning spatially distributed, physically meaningful runoff and routing dynamics, Bakaano-Hydro is able to generalize across diverse catchments and hydro-climatic regimes. This hybrid design enables the model to simulate streamflow more accurately and reliably—even in ungauged or poorly monitored basins—while retaining interpretability grounded in hydrological processes.

The name Bakaano comes from Fante, a language spoken along the southern coast of Ghana. Loosely translated as "by the river side" or "stream-side", it reflects the lived reality of many vulnerable riverine communities across the Global South - those most exposed to flood risk and often least equipped to adapt.

image

Key Features

  • Distributed architecture: Captures spatial heterogeneity of hydrological processes using gridded runoff and flow routing.
  • Hybrid modeling: Combines physically based hydrology with deep learning for enhanced accuracy and realism.
  • Scalable and generalizable: Trains a single model across basins, regions, or continents—no need for basin-specific calibration.
  • Reliable in data-scarce regions: Designed to perform well even with sparse observational data.
  • High-performance ready: Compatible with GPU acceleration for fast training and inference on large-scale datasets.
  • Seamless integration: Modular components allow for easy adaptation with other runoff models, routing schemes, or neural network architectures.
  • Automated end-to-end pipeline: From climate data ingestion and preprocessing to runoff simulation, routing, and streamflow prediction—Bakaano-Hydro automates the entire workflow with minimal user intervention.
  • Easy deployment: Installable via pip and designed with reproducibility in mind.
  • Versatile applications: Suitable for streamflow forecasting, climate adaptation planning, flood risk assessment, and more.

Installation

Bakaano-Hydro is built on TensorFlow and is designed to leverage GPU acceleration for training. This requires a system with an NVIDIA GPU installed or bundled CUDA and cuDNN runtime libraries. GPU acceleration is strongly recommended for training deep learning components and running large-scale simulations, as it significantly improves speed and scalability.

If you have a compatible NVIDIA GPU and drivers installed, install with:

bash pip install bakaano-hydro[gpu]

This will automatically install the correct version of TensorFlow along with CUDA and cuDNN runtime libraries

If you do not have access to a GPU, you can still install and use Bakaano-Hydro in CPU mode (e.g., for inference, testing or small-scale evaluation):

bash pip install bakaano-hydro

Note: Training on CPU is supported but will be significantly slower, especially on large datasets or deep learning tasks.

Getting started / Example notebooks

Bakaano-Hydro requires three primary data or inputs

  1. Shapefile of study area or river basin
  2. Observed streamflow data in NetCDF format from Global Runoff Data Center (https://portal.grdc.bafg.de/applications/public.html?publicuser=PublicUser#dataDownload/Home). Because Bakaano-Hydro aims to use only open-source data, it currently accepts observed streamflow data only from GRDC.
  3. Registration at Google Earth Engine (https://code.earthengine.google.com/register). Bakaano-Hydro retrieves, NDVI, tree cover and meteorological variables from ERA5-land or CHIRPS from Google Earth Engine Data Catalog. This platform requires prior registration for subsequent authentication during execution of the model

Model execution then involves only a few guided steps. See the quick start notebook https://github.com/confidence-duku/bakaano-hydro/blob/main/quick_start.ipynb for guidance.

Code architecture

bakaanohydro-2025-04-16-132235

Support

For assistance, please contact Confidence Duku (confidence.duku@wur.nl)

Contributing

No contributions are currently accepted.

Authors and acknowledgment

See CITATION.cff file.

Bakaano-Hydro was developed as part of Wageningen University & Research Investment theme 'Data-driven discoveries in a changing climate' and also as part of the KB program 'Climate resilient land use'.

License

Apache License

Citation (CITATION.cff)

cff-version: 1.2.0
title: Bakaano-Hydro: A distributed hydrology-guided deep learning model for streamflow prediction
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Confidence
    family-names: Duku
    email: confidence.duku@wur.nl
    affiliation: >-
      Wageningen University & Research
    orcid: "https://orcid.org/0000-0002-1670-3451"
repository-code: >-
  https://github.com/confidence-duku/bakaano-hydro
abstract: >-
  A distributed hydrology-guided neural network model for streamflow simulation
keywords:
  - Simulation
version: "1.0"

GitHub Events

Total
  • Release event: 4
  • Watch event: 6
  • Delete event: 15
  • Public event: 1
  • Push event: 143
  • Pull request event: 97
  • Fork event: 2
  • Create event: 19
Last Year
  • Release event: 4
  • Watch event: 6
  • Delete event: 15
  • Public event: 1
  • Push event: 143
  • Pull request event: 97
  • Fork event: 2
  • Create event: 19

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 42 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 11
  • Total maintainers: 1
pypi.org: bakaano-hydro

Distributed hydrology-guided neural network for streamflow prediction

  • Versions: 11
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 42 Last month
Rankings
Dependent packages count: 9.3%
Stargazers count: 30.1%
Average: 30.8%
Forks count: 31.5%
Dependent repos count: 52.3%
Maintainers (1)
Last synced: 6 months ago