Jump to Content

NeuralHydrology --- A Python library for Deep Learning research in hydrology

Frederik Kratzert
Martin Gauch
Daniel Klotz
Journal of Open Source Software, vol. 7(71) (2022), pp. 4050

Abstract

Summary: This manuscript is intended to be submitted to the Journal of Open Source Software for the Python library NeuralHydrology https://github.com/neuralhydrology/neuralhydrology I created this library during my PhD at the JKU in Linz and it was open sourced in 2019 and is currently maintained by myself, two former colleagues from the JKU and Grey Nearing (@gsnearing). The purpose of this library is to make machine learning more accessible to hydrologists, who have usually a) little training in programming and b) no machine learning classes/experience. The NeuralHydrology library is designed to make state of the art models for e.g. rainfall-runoff modeling easily accessible (training and evaluation can be configured from a YAML config file, no coding required) but also easily extendable (e.g. new datasets, models, loss functions etc.) for a more research oriented use case. The library is fully documented and has a number of tutorials. We used this library in the past years for all of our publications and research. Since its publication, it is also being used by several other groups in their day-to-day research and in their journal publications. The JOSS publication is meant to make this library more easy to reference (as requested by users of this library). JOSS publications are usually a 1-2 page description and during the review period the focus is more on the code/documentation etc. itself than on the written paper. Note on the document: JOSS paper's are submitted as Markdown + Bibtex and then rendered into a PDF. I can't render the Markdown offline and since I should not submit the document somewhere online before approval, I can only share the Markdown file.